diff --git a/Assets/EOSManager.prefab b/Assets/EOSManager.prefab deleted file mode 100644 index 9d871ee..0000000 --- a/Assets/EOSManager.prefab +++ /dev/null @@ -1,59 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!1 &2209092976737935735 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 901605347204557884} - - component: {fileID: 1404666848870070223} - m_Layer: 0 - m_Name: EOSManager - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &901605347204557884 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2209092976737935735} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 0} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &1404666848870070223 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2209092976737935735} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 016d8460ff2ae644db4fc92d25ce1a79, type: 3} - m_Name: - m_EditorClassIdentifier: - apiKeys: {fileID: 11400000, guid: bc676c2f8679fc348bdd5b0422e4f235, type: 2} - authInterfaceLogin: 0 - authInterfaceCredentialType: 6 - devAuthToolPort: 7878 - devAuthToolCredentialName: - connectInterfaceCredentialType: 0 - deviceModel: PC Windows 64bit - displayName: User - epicLoggerLevel: 200 - collectPlayerMetrics: 1 - checkForEpicLauncherAndRestart: 0 - delayedInitialization: 1 - platformTickIntervalInSeconds: 0 - tickBudgetInMilliseconds: 0 diff --git a/Assets/EOSManager.prefab.meta b/Assets/EOSManager.prefab.meta deleted file mode 100644 index b8534b4..0000000 --- a/Assets/EOSManager.prefab.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 023dc204246f92344887fd8ce2ea894c -PrefabImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/EosApiKey.asset b/Assets/EosApiKey.asset deleted file mode 100644 index f2ccb5a..0000000 --- a/Assets/EosApiKey.asset +++ /dev/null @@ -1,21 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!114 &11400000 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 2006c7a2843279e4598781ed39185dd0, type: 3} - m_Name: EosApiKey - m_EditorClassIdentifier: - epicProductName: 'Trouble in Terrorist Town: Source Crossed' - epicProductVersion: 1.0 - epicProductId: cefb3408547045fcb28a9dbd58d48ed7 - epicSandboxId: 739f95d42e6748379737c4ff061114c7 - epicDeploymentId: ff56985eeafc4dcbbbd63a0cd079bee9 - epicClientId: xyza7891oqIuT2qadgDUXnl76eBKgaI0 - epicClientSecret: AfGaldrVkjgxQD6eY1PlfsejJFhNs6QXmmzDSTL4QIk diff --git a/Assets/EosApiKey.asset.meta b/Assets/EosApiKey.asset.meta deleted file mode 100644 index c250c0d..0000000 --- a/Assets/EosApiKey.asset.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: bc676c2f8679fc348bdd5b0422e4f235 -NativeFormatImporter: - externalObjects: {} - mainObjectFileID: 11400000 - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Image.prefab b/Assets/Image.prefab new file mode 100644 index 0000000..68bc724 --- /dev/null +++ b/Assets/Image.prefab @@ -0,0 +1,214 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &8160286336252841090 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8160286336252841091} + - component: {fileID: 8160286336252841093} + - component: {fileID: 8160286336252841092} + m_Layer: 0 + m_Name: Image + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &8160286336252841091 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8160286336252841090} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 8160286337366833968} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 595.58, y: 60.9502} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &8160286336252841093 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8160286336252841090} + m_CullTransparentMesh: 1 +--- !u!114 &8160286336252841092 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8160286336252841090} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.3207547, g: 0.3207547, b: 0.3207547, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!1 &8160286337366833983 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8160286337366833968} + - component: {fileID: 8160286337366833970} + - component: {fileID: 8160286337366833969} + m_Layer: 0 + m_Name: Text (TMP) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &8160286337366833968 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8160286337366833983} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 8160286336252841091} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 595.58, y: 50} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &8160286337366833970 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8160286337366833983} + m_CullTransparentMesh: 1 +--- !u!114 &8160286337366833969 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8160286337366833983} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: Player [connectionId] + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4294967295 + m_fontColor: {r: 1, g: 1, b: 1, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 44.75 + m_fontSizeBase: 36 + m_fontWeight: 400 + m_enableAutoSizing: 1 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 2 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} diff --git a/Assets/Image.prefab.meta b/Assets/Image.prefab.meta new file mode 100644 index 0000000..bccaa77 --- /dev/null +++ b/Assets/Image.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 774dab2b72a79fb438b18e46bf5c6f5f +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/InputSystem.inputsettings.asset b/Assets/InputSystem.inputsettings.asset new file mode 100644 index 0000000..8a242b0 --- /dev/null +++ b/Assets/InputSystem.inputsettings.asset @@ -0,0 +1,35 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c46f07b5ed07e4e92aa78254188d3d10, type: 3} + m_Name: InputSystem.inputsettings + m_EditorClassIdentifier: + m_SupportedDevices: [] + m_UpdateMode: 1 + m_MaxEventBytesPerUpdate: 5242880 + m_MaxQueuedEventsPerUpdate: 1000 + m_CompensateForScreenOrientation: 1 + m_BackgroundBehavior: 0 + m_EditorInputBehaviorInPlayMode: 0 + m_DefaultDeadzoneMin: 0.125 + m_DefaultDeadzoneMax: 0.925 + m_DefaultButtonPressPoint: 0.5 + m_ButtonReleaseThreshold: 0.75 + m_DefaultTapTime: 0.2 + m_DefaultSlowTapTime: 0.5 + m_DefaultHoldTime: 0.4 + m_TapRadius: 5 + m_MultiTapDelayTime: 0.75 + m_DisableRedundantEventsMerging: 0 + m_iOSSettings: + m_MotionUsage: + m_Enabled: 0 + m_Description: diff --git a/Assets/InputSystem.inputsettings.asset.meta b/Assets/InputSystem.inputsettings.asset.meta new file mode 100644 index 0000000..99f7e38 --- /dev/null +++ b/Assets/InputSystem.inputsettings.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 57459ac3439177e4291e185cb9d40806 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport.meta deleted file mode 100644 index 3c87a4a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: fb097379647003348b59f3423899888c -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/BidirectionalDictionary.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/BidirectionalDictionary.cs deleted file mode 100644 index cc68a01..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/BidirectionalDictionary.cs +++ /dev/null @@ -1,120 +0,0 @@ -using System.Collections; -using System.Collections.Generic; - -/// -/// Copyright -/// MIT License -/// -/// Copyright Fizz Cube Ltd(c) 2018 -/// -/// Permission is hereby granted, free of charge, to any person obtaining a copy -/// of this software and associated documentation files (the "Software"), to deal -/// in the Software without restriction, including without limitation the rights -/// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -/// copies of the Software, and to permit persons to whom the Software is -/// furnished to do so, subject to the following conditions: -/// -/// The above copyright notice and this permission notice shall be included in all -/// copies or substantial portions of the Software. -/// -/// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -/// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -/// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -/// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -/// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -/// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -/// SOFTWARE. -/// -/// === -/// -/// Copyright Marco Hoffmann(c) 2020 -/// -/// Permission is hereby granted, free of charge, to any person obtaining a copy -/// of this software and associated documentation files (the "Software"), to deal -/// in the Software without restriction, including without limitation the rights -/// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -/// copies of the Software, and to permit persons to whom the Software is -///furnished to do so, subject to the following conditions: -/// -/// The above copyright notice and this permission notice shall be included in all -/// copies or substantial portions of the Software. -/// -/// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -/// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -/// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -/// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -/// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -/// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -/// SOFTWARE. -/// -/// MIT License -/// - -namespace EpicTransport { - - public class BidirectionalDictionary : IEnumerable { - private Dictionary t1ToT2Dict = new Dictionary(); - private Dictionary t2ToT1Dict = new Dictionary(); - - public IEnumerable FirstTypes => t1ToT2Dict.Keys; - public IEnumerable SecondTypes => t2ToT1Dict.Keys; - - public IEnumerator GetEnumerator() => t1ToT2Dict.GetEnumerator(); - - public int Count => t1ToT2Dict.Count; - - public void Add(T1 key, T2 value) { - t1ToT2Dict[key] = value; - t2ToT1Dict[value] = key; - } - - public void Add(T2 key, T1 value) { - t2ToT1Dict[key] = value; - t1ToT2Dict[value] = key; - } - - public T2 Get(T1 key) => t1ToT2Dict[key]; - - public T1 Get(T2 key) => t2ToT1Dict[key]; - - public bool TryGetValue(T1 key, out T2 value) => t1ToT2Dict.TryGetValue(key, out value); - - public bool TryGetValue(T2 key, out T1 value) => t2ToT1Dict.TryGetValue(key, out value); - - public bool Contains(T1 key) => t1ToT2Dict.ContainsKey(key); - - public bool Contains(T2 key) => t2ToT1Dict.ContainsKey(key); - - public void Remove(T1 key) { - if (Contains(key)) { - T2 val = t1ToT2Dict[key]; - t1ToT2Dict.Remove(key); - t2ToT1Dict.Remove(val); - } - } - public void Remove(T2 key) { - if (Contains(key)) { - T1 val = t2ToT1Dict[key]; - t1ToT2Dict.Remove(val); - t2ToT1Dict.Remove(key); - } - } - - public T1 this[T2 key] { - get => t2ToT1Dict[key]; - set { - t2ToT1Dict[key] = value; - t1ToT2Dict[value] = key; - } - } - - public T2 this[T1 key] { - get => t1ToT2Dict[key]; - set { - t1ToT2Dict[key] = value; - t2ToT1Dict[value] = key; - } - } - - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/BidirectionalDictionary.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/BidirectionalDictionary.cs.meta deleted file mode 100644 index 3ec7ec6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/BidirectionalDictionary.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: cc6ca8a3d04a86643a1850637ea2149b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Client.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Client.cs deleted file mode 100644 index 8d5e5dd..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Client.cs +++ /dev/null @@ -1,166 +0,0 @@ -using Epic.OnlineServices; -using Epic.OnlineServices.P2P; -using Mirror; -using System; -using System.Threading; -using System.Threading.Tasks; -using UnityEngine; - -namespace EpicTransport { - public class Client : Common { - - public SocketId socketId; - public ProductUserId serverId; - - public bool Connected { get; private set; } - public bool Error { get; private set; } - - private event Action OnReceivedData; - private event Action OnConnected; - public event Action OnDisconnected; - - private TimeSpan ConnectionTimeout; - - public bool isConnecting = false; - public string hostAddress = ""; - private ProductUserId hostProductId = null; - private TaskCompletionSource connectedComplete; - private CancellationTokenSource cancelToken; - - private Client(EosTransport transport) : base(transport) { - ConnectionTimeout = TimeSpan.FromSeconds(Math.Max(1, transport.timeout)); - } - - public static Client CreateClient(EosTransport transport, string host) { - Client c = new Client(transport); - - c.hostAddress = host; - c.socketId = new SocketId() { SocketName = RandomString.Generate(20) }; - - c.OnConnected += () => transport.OnClientConnected.Invoke(); - c.OnDisconnected += () => transport.OnClientDisconnected.Invoke(); - c.OnReceivedData += (data, channel) => transport.OnClientDataReceived.Invoke(new ArraySegment(data), channel); - - return c; - } - - public async void Connect(string host) { - cancelToken = new CancellationTokenSource(); - - try { - hostProductId = ProductUserId.FromString(host); - serverId = hostProductId; - connectedComplete = new TaskCompletionSource(); - - OnConnected += SetConnectedComplete; - - SendInternal(hostProductId, socketId, InternalMessages.CONNECT); - - Task connectedCompleteTask = connectedComplete.Task; - - if (await Task.WhenAny(connectedCompleteTask, Task.Delay(ConnectionTimeout/*, cancelToken.Token*/)) != connectedCompleteTask) { - Debug.LogError($"Connection to {host} timed out."); - OnConnected -= SetConnectedComplete; - OnConnectionFailed(hostProductId); - } - - OnConnected -= SetConnectedComplete; - } catch (FormatException) { - Debug.LogError($"Connection string was not in the right format. Did you enter a ProductId?"); - Error = true; - OnConnectionFailed(hostProductId); - } catch (Exception ex) { - Debug.LogError(ex.Message); - Error = true; - OnConnectionFailed(hostProductId); - } finally { - if (Error) { - OnConnectionFailed(null); - } - } - - } - - public void Disconnect() { - if (serverId != null) { - CloseP2PSessionWithUser(serverId, socketId); - - serverId = null; - } else { - return; - } - - SendInternal(hostProductId, socketId, InternalMessages.DISCONNECT); - - Dispose(); - cancelToken?.Cancel(); - - WaitForClose(hostProductId, socketId); - } - - private void SetConnectedComplete() => connectedComplete.SetResult(connectedComplete.Task); - - protected override void OnReceiveData(byte[] data, ProductUserId clientUserId, int channel) { - if (ignoreAllMessages) { - return; - } - - if (clientUserId != hostProductId) { - Debug.LogError("Received a message from an unknown"); - return; - } - - OnReceivedData.Invoke(data, channel); - } - - protected override void OnNewConnection(OnIncomingConnectionRequestInfo result) { - if (ignoreAllMessages) { - return; - } - - if (deadSockets.Contains(result.SocketId.SocketName)) { - Debug.LogError("Received incoming connection request from dead socket"); - return; - } - - if (hostProductId == result.RemoteUserId) { - EOSSDKComponent.GetP2PInterface().AcceptConnection( - new AcceptConnectionOptions() { - LocalUserId = EOSSDKComponent.LocalUserProductId, - RemoteUserId = result.RemoteUserId, - SocketId = result.SocketId - }); - } else { - Debug.LogError("P2P Acceptance Request from unknown host ID."); - } - } - - protected override void OnReceiveInternalData(InternalMessages type, ProductUserId clientUserId, SocketId socketId) { - if (ignoreAllMessages) { - return; - } - - switch (type) { - case InternalMessages.ACCEPT_CONNECT: - Connected = true; - OnConnected.Invoke(); - Debug.Log("Connection established."); - break; - case InternalMessages.DISCONNECT: - Connected = false; - Debug.Log("Disconnected."); - - OnDisconnected.Invoke(); - break; - default: - Debug.Log("Received unknown message type"); - break; - } - } - - public void Send(byte[] data, int channelId) => Send(hostProductId, socketId, data, (byte) channelId); - - protected override void OnConnectionFailed(ProductUserId remoteId) => OnDisconnected.Invoke(); - public void EosNotInitialized() => OnDisconnected.Invoke(); - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Client.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Client.cs.meta deleted file mode 100644 index e8dd8b5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Client.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: da6dd127548ffec44bac84a182dad080 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Common.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Common.cs deleted file mode 100644 index a9d34ab..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Common.cs +++ /dev/null @@ -1,288 +0,0 @@ - -using Epic.OnlineServices; -using Epic.OnlineServices.P2P; -using System; -using System.Collections; -using System.Collections.Generic; -using UnityEngine; - -namespace EpicTransport { - public abstract class Common { - - private PacketReliability[] channels; - private int internal_ch => channels.Length; - - protected enum InternalMessages : byte { - CONNECT, - ACCEPT_CONNECT, - DISCONNECT - } - - protected struct PacketKey { - public ProductUserId productUserId; - public byte channel; - } - - private OnIncomingConnectionRequestCallback OnIncomingConnectionRequest; - ulong incomingNotificationId = 0; - private OnRemoteConnectionClosedCallback OnRemoteConnectionClosed; - ulong outgoingNotificationId = 0; - - protected readonly EosTransport transport; - - protected List deadSockets; - public bool ignoreAllMessages = false; - - // Mapping from PacketKey to a List of Packet Lists - protected Dictionary>> incomingPackets = new Dictionary>>(); - - protected Common(EosTransport transport) { - channels = transport.Channels; - - deadSockets = new List(); - - AddNotifyPeerConnectionRequestOptions addNotifyPeerConnectionRequestOptions = new AddNotifyPeerConnectionRequestOptions(); - addNotifyPeerConnectionRequestOptions.LocalUserId = EOSSDKComponent.LocalUserProductId; - addNotifyPeerConnectionRequestOptions.SocketId = null; - - OnIncomingConnectionRequest += OnNewConnection; - OnRemoteConnectionClosed += OnConnectFail; - - incomingNotificationId = EOSSDKComponent.GetP2PInterface().AddNotifyPeerConnectionRequest(addNotifyPeerConnectionRequestOptions, - null, OnIncomingConnectionRequest); - - AddNotifyPeerConnectionClosedOptions addNotifyPeerConnectionClosedOptions = new AddNotifyPeerConnectionClosedOptions(); - addNotifyPeerConnectionClosedOptions.LocalUserId = EOSSDKComponent.LocalUserProductId; - addNotifyPeerConnectionClosedOptions.SocketId = null; - - outgoingNotificationId = EOSSDKComponent.GetP2PInterface().AddNotifyPeerConnectionClosed(addNotifyPeerConnectionClosedOptions, - null, OnRemoteConnectionClosed); - - if (outgoingNotificationId == 0 || incomingNotificationId == 0) { - Debug.LogError("Couldn't bind notifications with P2P interface"); - } - - incomingPackets = new Dictionary>>(); - - this.transport = transport; - - } - - protected void Dispose() { - EOSSDKComponent.GetP2PInterface().RemoveNotifyPeerConnectionRequest(incomingNotificationId); - EOSSDKComponent.GetP2PInterface().RemoveNotifyPeerConnectionClosed(outgoingNotificationId); - - transport.ResetIgnoreMessagesAtStartUpTimer(); - } - - protected abstract void OnNewConnection(OnIncomingConnectionRequestInfo result); - - private void OnConnectFail(OnRemoteConnectionClosedInfo result) { - if (ignoreAllMessages) { - return; - } - - OnConnectionFailed(result.RemoteUserId); - - switch (result.Reason) { - case ConnectionClosedReason.ClosedByLocalUser: - throw new Exception("Connection cLosed: The Connection was gracecfully closed by the local user."); - case ConnectionClosedReason.ClosedByPeer: - throw new Exception("Connection closed: The connection was gracefully closed by remote user."); - case ConnectionClosedReason.ConnectionClosed: - throw new Exception("Connection closed: The connection was unexpectedly closed."); - case ConnectionClosedReason.ConnectionFailed: - throw new Exception("Connection failed: Failled to establish connection."); - case ConnectionClosedReason.InvalidData: - throw new Exception("Connection failed: The remote user sent us invalid data.."); - case ConnectionClosedReason.InvalidMessage: - throw new Exception("Connection failed: The remote user sent us an invalid message."); - case ConnectionClosedReason.NegotiationFailed: - throw new Exception("Connection failed: Negotiation failed."); - case ConnectionClosedReason.TimedOut: - throw new Exception("Connection failed: Timeout."); - case ConnectionClosedReason.TooManyConnections: - throw new Exception("Connection failed: Too many connections."); - case ConnectionClosedReason.UnexpectedError: - throw new Exception("Unexpected Error, connection will be closed"); - case ConnectionClosedReason.Unknown: - default: - throw new Exception("Unknown Error, connection has been closed."); - } - } - - protected void SendInternal(ProductUserId target, SocketId socketId, InternalMessages type) { - EOSSDKComponent.GetP2PInterface().SendPacket(new SendPacketOptions() { - AllowDelayedDelivery = true, - Channel = (byte) internal_ch, - Data = new byte[] { (byte) type }, - LocalUserId = EOSSDKComponent.LocalUserProductId, - Reliability = PacketReliability.ReliableOrdered, - RemoteUserId = target, - SocketId = socketId - }); - } - - - protected void Send(ProductUserId host, SocketId socketId, byte[] msgBuffer, byte channel) { - Result result = EOSSDKComponent.GetP2PInterface().SendPacket(new SendPacketOptions() { - AllowDelayedDelivery = true, - Channel = channel, - Data = msgBuffer, - LocalUserId = EOSSDKComponent.LocalUserProductId, - Reliability = channels[channel], - RemoteUserId = host, - SocketId = socketId - }); - - if(result != Result.Success) { - Debug.LogError("Send failed " + result); - } - } - - private bool Receive(out ProductUserId clientProductUserId, out SocketId socketId, out byte[] receiveBuffer, byte channel) { - Result result = EOSSDKComponent.GetP2PInterface().ReceivePacket(new ReceivePacketOptions() { - LocalUserId = EOSSDKComponent.LocalUserProductId, - MaxDataSizeBytes = P2PInterface.MaxPacketSize, - RequestedChannel = channel - }, out clientProductUserId, out socketId, out channel, out receiveBuffer); - - if (result == Result.Success) { - return true; - } - - receiveBuffer = null; - clientProductUserId = null; - return false; - } - - protected virtual void CloseP2PSessionWithUser(ProductUserId clientUserID, SocketId socketId) { - if (socketId == null) { - Debug.LogWarning("Socket ID == null | " + ignoreAllMessages); - return; - } - - if (deadSockets == null) { - Debug.LogWarning("DeadSockets == null"); - return; - } - - if (deadSockets.Contains(socketId.SocketName)) { - return; - } else { - deadSockets.Add(socketId.SocketName); - } - } - - - protected void WaitForClose(ProductUserId clientUserID, SocketId socketId) => transport.StartCoroutine(DelayedClose(clientUserID, socketId)); - private IEnumerator DelayedClose(ProductUserId clientUserID, SocketId socketId) { - yield return null; - CloseP2PSessionWithUser(clientUserID, socketId); - } - - public void ReceiveData() { - try { - // Internal Channel, no fragmentation here - SocketId socketId = new SocketId(); - while (transport.enabled && Receive(out ProductUserId clientUserID, out socketId, out byte[] internalMessage, (byte) internal_ch)) { - if (internalMessage.Length == 1) { - OnReceiveInternalData((InternalMessages) internalMessage[0], clientUserID, socketId); - return; // Wait one frame - } else { - Debug.Log("Incorrect package length on internal channel."); - } - } - - // Insert new packet at the correct location in the incoming queue - for (int chNum = 0; chNum < channels.Length; chNum++) { - while (transport.enabled && Receive(out ProductUserId clientUserID, out socketId, out byte[] receiveBuffer, (byte) chNum)) { - PacketKey incomingPacketKey = new PacketKey(); - incomingPacketKey.productUserId = clientUserID; - incomingPacketKey.channel = (byte)chNum; - - Packet packet = new Packet(); - packet.FromBytes(receiveBuffer); - - if (!incomingPackets.ContainsKey(incomingPacketKey)) { - incomingPackets.Add(incomingPacketKey, new List>()); - } - - int packetListIndex = incomingPackets[incomingPacketKey].Count; - for(int i = 0; i < incomingPackets[incomingPacketKey].Count; i++) { - if(incomingPackets[incomingPacketKey][i][0].id == packet.id) { - packetListIndex = i; - break; - } - } - - if (packetListIndex == incomingPackets[incomingPacketKey].Count) { - incomingPackets[incomingPacketKey].Add(new List()); - } - - int insertionIndex = -1; - - for (int i = 0; i < incomingPackets[incomingPacketKey][packetListIndex].Count; i++) { - if (incomingPackets[incomingPacketKey][packetListIndex][i].fragment > packet.fragment) { - insertionIndex = i; - break; - } - } - - if (insertionIndex >= 0) { - incomingPackets[incomingPacketKey][packetListIndex].Insert(insertionIndex, packet); - } else { - incomingPackets[incomingPacketKey][packetListIndex].Add(packet); - } - } - } - - // Find fully received packets - List> emptyPacketLists = new List>(); - foreach(KeyValuePair>> keyValuePair in incomingPackets) { - for(int packetList = 0; packetList < keyValuePair.Value.Count; packetList++) { - bool packetReady = true; - int packetLength = 0; - for (int packet = 0; packet < keyValuePair.Value[packetList].Count; packet++) { - Packet tempPacket = keyValuePair.Value[packetList][packet]; - if (tempPacket.fragment != packet || (packet == keyValuePair.Value[packetList].Count - 1 && tempPacket.moreFragments)) { - packetReady = false; - } else { - packetLength += tempPacket.data.Length; - } - } - - if (packetReady) { - byte[] data = new byte[packetLength]; - int dataIndex = 0; - - for (int packet = 0; packet < keyValuePair.Value[packetList].Count; packet++) { - Array.Copy(keyValuePair.Value[packetList][packet].data, 0, data, dataIndex, keyValuePair.Value[packetList][packet].data.Length); - dataIndex += keyValuePair.Value[packetList][packet].data.Length; - } - - OnReceiveData(data, keyValuePair.Key.productUserId, keyValuePair.Key.channel); - - //keyValuePair.Value[packetList].Clear(); - emptyPacketLists.Add(keyValuePair.Value[packetList]); - } - } - - for (int i = 0; i < emptyPacketLists.Count; i++) { - keyValuePair.Value.Remove(emptyPacketLists[i]); - } - emptyPacketLists.Clear(); - } - - - - } catch (Exception e) { - Debug.LogException(e); - } - } - - protected abstract void OnReceiveInternalData(InternalMessages type, ProductUserId clientUserID, SocketId socketId); - protected abstract void OnReceiveData(byte[] data, ProductUserId clientUserID, int channel); - protected abstract void OnConnectionFailed(ProductUserId remoteId); - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Common.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Common.cs.meta deleted file mode 100644 index 10e15f7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Common.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c04a0117f9769fb4b81d8ef911740d95 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/DevAuthTool.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/DevAuthTool.meta deleted file mode 100644 index d760ecc..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/DevAuthTool.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 49a600a9a9638fb4e88fff9af13c2d3d -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/DevAuthTool/EOS_DevAuthTool-darwin-x64-1.0.1.zip b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/DevAuthTool/EOS_DevAuthTool-darwin-x64-1.0.1.zip deleted file mode 100644 index 33d9bc4..0000000 Binary files a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/DevAuthTool/EOS_DevAuthTool-darwin-x64-1.0.1.zip and /dev/null differ diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/DevAuthTool/EOS_DevAuthTool-darwin-x64-1.0.1.zip.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/DevAuthTool/EOS_DevAuthTool-darwin-x64-1.0.1.zip.meta deleted file mode 100644 index d1dffce..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/DevAuthTool/EOS_DevAuthTool-darwin-x64-1.0.1.zip.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 4f53ec12866c26441b65b00cf8e3f981 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/DevAuthTool/EOS_DevAuthTool-win32-x64-1.0.1.zip b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/DevAuthTool/EOS_DevAuthTool-win32-x64-1.0.1.zip deleted file mode 100644 index 8905050..0000000 Binary files a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/DevAuthTool/EOS_DevAuthTool-win32-x64-1.0.1.zip and /dev/null differ diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/DevAuthTool/EOS_DevAuthTool-win32-x64-1.0.1.zip.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/DevAuthTool/EOS_DevAuthTool-win32-x64-1.0.1.zip.meta deleted file mode 100644 index fa0bda1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/DevAuthTool/EOS_DevAuthTool-win32-x64-1.0.1.zip.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: a25dae6fc3a1b1b4e8efa054c6573d3e -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/DevAuthTool/README.txt b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/DevAuthTool/README.txt deleted file mode 100644 index 4bed4fd..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/DevAuthTool/README.txt +++ /dev/null @@ -1,3 +0,0 @@ -Important: -Before unzipping create a folder that ends with '~' e.g. DevTool~ -The ~ character at the end prevents unity from importing the tool as asset. \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/DevAuthTool/README.txt.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/DevAuthTool/README.txt.meta deleted file mode 100644 index 6f0e33c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/DevAuthTool/README.txt.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: ed009554fea298a46b541e9a00259672 -TextScriptImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK.meta deleted file mode 100644 index 3651935..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: ed34d0299171cfe40bcf917e23161e11 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android.meta deleted file mode 100644 index f6975fa..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 605dc7d59b148ac4980b6f73567440d6 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android/aar.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android/aar.meta deleted file mode 100644 index 670b682..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android/aar.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 8741a0cbea8377744a1a7b5d0ab1375d -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android/aar/eos-sdk.aar b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android/aar/eos-sdk.aar deleted file mode 100644 index 77f04eb..0000000 Binary files a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android/aar/eos-sdk.aar and /dev/null differ diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android/aar/eos-sdk.aar.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android/aar/eos-sdk.aar.meta deleted file mode 100644 index 766a0a8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android/aar/eos-sdk.aar.meta +++ /dev/null @@ -1,32 +0,0 @@ -fileFormatVersion: 2 -guid: f54c64c6acf23bd4785182be70cac831 -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Android: Android - second: - enabled: 1 - settings: {} - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android/libs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android/libs.meta deleted file mode 100644 index aacc066..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android/libs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 468c59d5ae7f3844b9e9432f06693b3d -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android/libs/arm64-v8a.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android/libs/arm64-v8a.meta deleted file mode 100644 index 3fc76e2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android/libs/arm64-v8a.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 30d6ace08c4f54e4e8d7c1eeecff5a32 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android/libs/arm64-v8a/libEOSSDK.so b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android/libs/arm64-v8a/libEOSSDK.so deleted file mode 100644 index a759275..0000000 Binary files a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android/libs/arm64-v8a/libEOSSDK.so and /dev/null differ diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android/libs/arm64-v8a/libEOSSDK.so.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android/libs/arm64-v8a/libEOSSDK.so.meta deleted file mode 100644 index bd3b327..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android/libs/arm64-v8a/libEOSSDK.so.meta +++ /dev/null @@ -1,27 +0,0 @@ -fileFormatVersion: 2 -guid: 532681909f6a7be418f492315f74b6b3 -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Any: - second: - enabled: 1 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android/libs/armeabi-v7a.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android/libs/armeabi-v7a.meta deleted file mode 100644 index 4dc4903..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android/libs/armeabi-v7a.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 143bec3c2bc5ade4f90d7fefd117c647 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android/libs/armeabi-v7a/libEOSSDK.so b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android/libs/armeabi-v7a/libEOSSDK.so deleted file mode 100644 index bfe5325..0000000 Binary files a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android/libs/armeabi-v7a/libEOSSDK.so and /dev/null differ diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android/libs/armeabi-v7a/libEOSSDK.so.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android/libs/armeabi-v7a/libEOSSDK.so.meta deleted file mode 100644 index 72da2d3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Android/libs/armeabi-v7a/libEOSSDK.so.meta +++ /dev/null @@ -1,27 +0,0 @@ -fileFormatVersion: 2 -guid: f6ffc6c3e02e5da44a7074b723832dec -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Any: - second: - enabled: 1 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core.meta deleted file mode 100644 index 123ef4c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 964340b849000d744b32653db6bdec9f -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/BoxedData.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/BoxedData.cs deleted file mode 100644 index 9fcdf1a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/BoxedData.cs +++ /dev/null @@ -1,16 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. - -using System.Runtime.InteropServices; - -namespace Epic.OnlineServices -{ - internal sealed class BoxedData - { - public object Data { get; private set; } - - public BoxedData(object data) - { - Data = data; - } - } -} diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/BoxedData.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/BoxedData.cs.meta deleted file mode 100644 index 445d084..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/BoxedData.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9cf28f76f76ab5b4191ed789dec5ea5c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/Config.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/Config.cs deleted file mode 100644 index 8bd20ad..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/Config.cs +++ /dev/null @@ -1,97 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. - -#if DEBUG - #define EOS_DEBUG -#endif - -#if UNITY_EDITOR - #define EOS_EDITOR -#endif - -#if UNITY_EDITOR || UNITY_STANDALONE || UNITY_PS4 || UNITY_XBOXONE || UNITY_SWITCH || UNITY_IOS || UNITY_ANDROID - #define EOS_UNITY -#endif - -#if UNITY_EDITOR_WIN || UNITY_STANDALONE_WIN || PLATFORM_64BITS || PLATFORM_32BITS - #if UNITY_EDITOR_WIN || UNITY_64 || PLATFORM_64BITS - #define EOS_PLATFORM_WINDOWS_64 - #else - #define EOS_PLATFORM_WINDOWS_32 - #endif - -#elif UNITY_EDITOR_OSX || UNITY_STANDALONE_OSX - #define EOS_PLATFORM_OSX - -#elif UNITY_EDITOR_LINUX || UNITY_STANDALONE_LINUX - #define EOS_PLATFORM_LINUX - -#elif UNITY_PS4 - #define EOS_PLATFORM_PS4 - -#elif UNITY_XBOXONE - #define EOS_PLATFORM_XBOXONE - -#elif UNITY_SWITCH - #define EOS_PLATFORM_SWITCH - -#elif UNITY_IOS || __IOS__ - #define EOS_PLATFORM_IOS - -#elif UNITY_ANDROID || __ANDROID__ - #define EOS_PLATFORM_ANDROID - -#endif - -using System.Runtime.InteropServices; - -namespace Epic.OnlineServices -{ - public static class Config - { - public const string LibraryName = - #if EOS_PLATFORM_WINDOWS_32 && EOS_UNITY - "EOSSDK-Win32-Shipping" - #elif EOS_PLATFORM_WINDOWS_32 - "EOSSDK-Win32-Shipping.dll" - - #elif EOS_PLATFORM_WINDOWS_64 && EOS_UNITY - "EOSSDK-Win64-Shipping" - #elif EOS_PLATFORM_WINDOWS_64 - "EOSSDK-Win64-Shipping.dll" - - #elif EOS_PLATFORM_OSX && EOS_UNITY - "libEOSSDK-Mac-Shipping" - #elif EOS_PLATFORM_OSX - "libEOSSDK-Mac-Shipping.dylib" - - #elif EOS_PLATFORM_LINUX && EOS_UNITY - "libEOSSDK-Linux-Shipping.so" - #elif EOS_PLATFORM_LINUX - "libEOSSDK-Linux-Shipping.so" - - #elif EOS_PLATFORM_IOS && EOS_UNITY && !EOS_EDITOR - "__Internal" - #elif EOS_PLATFORM_IOS && EOS_UNITY - "EOSSDK" - #elif EOS_PLATFORM_IOS - "EOSSDK.framework/EOSSDK" - - #elif EOS_PLATFORM_ANDROID - "EOSSDK" - - #else - #error Unable to determine the name of the EOSSDK library. Ensure you have set the correct EOS compilation symbol for the current platform, such as EOS_PLATFORM_WINDOWS_32 or EOS_PLATFORM_WINDOWS_64, so that the correct EOSSDK library can be targeted. - "EOSSDK-UnknownPlatform-Shipping" - - #endif - ; - - public const CallingConvention LibraryCallingConvention = - #if EOS_PLATFORM_WINDOWS_32 - CallingConvention.StdCall - #else - CallingConvention.Cdecl - #endif - ; - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/Config.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/Config.cs.meta deleted file mode 100644 index 099eff5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/Config.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 98992bf0f67075d4fa670ad6baa3bc04 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/Handle.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/Handle.cs deleted file mode 100644 index cd0ec76..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/Handle.cs +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. - -using System; - -namespace Epic.OnlineServices -{ - public abstract class Handle : IEquatable - { - public IntPtr InnerHandle { get; internal set; } - - public Handle() - { - } - - public Handle(IntPtr innerHandle) - { - InnerHandle = innerHandle; - } - - public override bool Equals(object obj) - { - return Equals(obj as Handle); - } - - public override int GetHashCode() - { - return (int)(0x00010000 + InnerHandle.ToInt64()); - } - - public bool Equals(Handle other) - { - if (ReferenceEquals(other, null)) - { - return false; - } - - if (ReferenceEquals(this, other)) - { - return true; - } - - if (GetType() != other.GetType()) - { - return false; - } - - return InnerHandle == other.InnerHandle; - } - - public static bool operator ==(Handle lhs, Handle rhs) - { - if (ReferenceEquals(lhs, null)) - { - if (ReferenceEquals(rhs, null)) - { - return true; - } - - return false; - } - - return lhs.Equals(rhs); - } - - public static bool operator !=(Handle lhs, Handle rhs) - { - return !(lhs == rhs); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/Handle.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/Handle.cs.meta deleted file mode 100644 index 8d588ab..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/Handle.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 891c2d4ec1d130049ba03dfbec6aefa6 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/Helper.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/Helper.cs deleted file mode 100644 index 4023211..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/Helper.cs +++ /dev/null @@ -1,1441 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. - -using System; -using System.Collections.Generic; -using System.Linq; -using System.Runtime.InteropServices; -using System.Text; - -namespace Epic.OnlineServices -{ - internal class AllocationException : Exception - { - public AllocationException(string message) - : base(message) - { - } - } - - internal class ExternalAllocationException : AllocationException - { - public ExternalAllocationException(IntPtr address, Type type) - : base(string.Format("Attempting to allocate '{0}' over externally allocated memory at {1}", type, address.ToString("X"))) - { - } - } - - internal class CachedTypeAllocationException : AllocationException - { - public CachedTypeAllocationException(IntPtr address, Type foundType, Type expectedType) - : base(string.Format("Cached allocation is '{0}' but expected '{1}' at {2}", foundType, expectedType, address.ToString("X"))) - { - } - } - - internal class CachedArrayAllocationException : AllocationException - { - public CachedArrayAllocationException(IntPtr address, int foundLength, int expectedLength) - : base(string.Format("Cached array allocation has length {0} but expected {1} at {2}", foundLength, expectedLength, address.ToString("X"))) - { - } - } - - internal class DynamicBindingException : Exception - { - public DynamicBindingException(string bindingName) - : base(string.Format("Failed to hook dynamic binding for '{0}'", bindingName)) - { - } - } - - public static class Helper - { - internal class Allocation - { - public int Size { get; private set; } - - public object CachedData { get; private set; } - - public bool? IsCachedArrayElementAllocated { get; private set; } - - public Allocation(int size) - { - Size = size; - } - - public void SetCachedData(object data, bool? isCachedArrayElementAllocated = null) - { - CachedData = data; - IsCachedArrayElementAllocated = isCachedArrayElementAllocated; - } - } - - private class DelegateHolder - { - public Delegate Public { get; private set; } - public Delegate Private { get; private set; } - public Delegate[] StructDelegates { get; private set; } - public ulong? NotificationId { get; set; } - - public DelegateHolder(Delegate publicDelegate, Delegate privateDelegate, params Delegate[] structDelegates) - { - Public = publicDelegate; - Private = privateDelegate; - StructDelegates = structDelegates; - } - } - - private static Dictionary s_Allocations = new Dictionary(); - private static Dictionary s_Callbacks = new Dictionary(); - private static Dictionary s_StaticCallbacks = new Dictionary(); - - /// - /// Gets the number of unmanaged allocations currently active within the wrapper. Use this to find leaks related to the usage of wrapper code. - /// - /// The number of unmanaged allocations currently active within the wrapper. - public static int GetAllocationCount() - { - return s_Allocations.Count; - } - - // These functions are the front end when changing SDK values into wrapper values. - // They will either fetch or convert; whichever is most appropriate for the source and target types. -#region Marshal Getters - internal static bool TryMarshalGet(T[] source, out uint target) - { - return TryConvert(source, out target); - } - - internal static bool TryMarshalGet(IntPtr source, out T target) - where T : Handle, new() - { - return TryConvert(source, out target); - } - - internal static bool TryMarshalGet(TSource source, out TTarget target) - where TTarget : ISettable, new() - { - return TryConvert(source, out target); - } - - internal static bool TryMarshalGet(int source, out bool target) - { - return TryConvert(source, out target); - } - - internal static bool TryMarshalGet(bool source, out int target) - { - return TryConvert(source, out target); - } - - internal static bool TryMarshalGet(long source, out DateTimeOffset? target) - { - return TryConvert(source, out target); - } - - internal static bool TryMarshalGet(IntPtr source, out T[] target, int arrayLength, bool isElementAllocated) - { - return TryFetch(source, out target, arrayLength, isElementAllocated); - } - - internal static bool TryMarshalGet(IntPtr source, out T[] target, uint arrayLength, bool isElementAllocated) - { - return TryFetch(source, out target, (int)arrayLength, isElementAllocated); - } - - internal static bool TryMarshalGet(IntPtr source, out T[] target, int arrayLength) - { - return TryMarshalGet(source, out target, arrayLength, !typeof(T).IsValueType); - } - - internal static bool TryMarshalGet(IntPtr source, out T[] target, uint arrayLength) - { - return TryMarshalGet(source, out target, arrayLength, !typeof(T).IsValueType); - } - - internal static bool TryMarshalGet(TSource[] source, out TTarget[] target) - where TSource : struct - where TTarget : class, ISettable, new() - { - return TryConvert(source, out target); - } - - internal static bool TryMarshalGet(IntPtr source, out TTarget[] target, int arrayLength) - where TSource : struct - where TTarget : class, ISettable, new() - { - target = GetDefault(); - - TSource[] intermediateSource; - if (TryMarshalGet(source, out intermediateSource, arrayLength)) - { - return TryMarshalGet(intermediateSource, out target); - } - - return false; - } - - internal static bool TryMarshalGet(IntPtr source, out TTarget[] target, uint arrayLength) - where TSource : struct - where TTarget : class, ISettable, new() - { - int arrayLengthInt = (int)arrayLength; - return TryMarshalGet(source, out target, arrayLengthInt); - } - - internal static bool TryMarshalGet(IntPtr source, out T? target) - where T : struct - { - return TryFetch(source, out target); - } - - internal static bool TryMarshalGet(byte[] source, out string target) - { - return TryConvert(source, out target); - } - - internal static bool TryMarshalGet(IntPtr source, out object target) - { - target = null; - - BoxedData boxedData; - if (TryFetch(source, out boxedData)) - { - target = boxedData.Data; - return true; - } - - return false; - } - - internal static bool TryMarshalGet(IntPtr source, out string target) - { - return TryFetch(source, out target); - } - - internal static bool TryMarshalGet(T source, out T target, TEnum currentEnum, TEnum comparisonEnum) - { - target = GetDefault(); - - if ((int)(object)currentEnum == (int)(object)comparisonEnum) - { - target = source; - return true; - } - - return false; - } - - internal static bool TryMarshalGet(ISettable source, out TTarget target, TEnum currentEnum, TEnum comparisonEnum) - where TTarget : ISettable, new() - { - target = GetDefault(); - - if ((int)(object)currentEnum == (int)(object)comparisonEnum) - { - return TryConvert(source, out target); - } - - return false; - } - - internal static bool TryMarshalGet(int source, out bool? target, TEnum currentEnum, TEnum comparisonEnum) - { - target = GetDefault(); - - if ((int)(object)currentEnum == (int)(object)comparisonEnum) - { - bool targetConvert; - if (TryConvert(source, out targetConvert)) - { - target = targetConvert; - return true; - } - } - - return false; - } - - internal static bool TryMarshalGet(T source, out T? target, TEnum currentEnum, TEnum comparisonEnum) - where T : struct - { - target = GetDefault(); - - if ((int)(object)currentEnum == (int)(object)comparisonEnum) - { - target = source; - return true; - } - - return false; - } - - internal static bool TryMarshalGet(IntPtr source, out T target, TEnum currentEnum, TEnum comparisonEnum) - where T : Handle, new() - { - target = GetDefault(); - - if ((int)(object)currentEnum == (int)(object)comparisonEnum) - { - return TryMarshalGet(source, out target); - } - - return false; - } - - internal static bool TryMarshalGet(IntPtr source, out IntPtr? target, TEnum currentEnum, TEnum comparisonEnum) - { - target = GetDefault(); - - if ((int)(object)currentEnum == (int)(object)comparisonEnum) - { - return TryMarshalGet(source, out target); - } - - return false; - } - - internal static bool TryMarshalGet(IntPtr source, out string target, TEnum currentEnum, TEnum comparisonEnum) - { - target = GetDefault(); - - if ((int)(object)currentEnum == (int)(object)comparisonEnum) - { - return TryMarshalGet(source, out target); - } - - return false; - } - - internal static bool TryMarshalGet(IntPtr source, out TPublic target) - where TInternal : struct - where TPublic : class, ISettable, new() - { - target = GetDefault(); - - TInternal? targetInternal; - if (TryMarshalGet(source, out targetInternal)) - { - if (targetInternal.HasValue) - { - target = new TPublic(); - target.Set(targetInternal); - - return true; - } - } - - return false; - } - - internal static bool TryMarshalGet(IntPtr callbackInfoAddress, out TCallbackInfo callbackInfo, out IntPtr clientDataAddress) - where TCallbackInfoInternal : struct, ICallbackInfoInternal - where TCallbackInfo : class, ISettable, new() - { - callbackInfo = null; - clientDataAddress = IntPtr.Zero; - - TCallbackInfoInternal callbackInfoInternal; - if (TryFetch(callbackInfoAddress, out callbackInfoInternal)) - { - callbackInfo = new TCallbackInfo(); - callbackInfo.Set(callbackInfoInternal); - clientDataAddress = callbackInfoInternal.ClientDataAddress; - - return true; - } - - return false; - } -#endregion - - // These functions are the front end for changing wrapper values into SDK values. - // They will either allocate or convert; whichever is most appropriate for the source and target types. -#region Marshal Setters - internal static bool TryMarshalSet(ref T target, T source) - { - target = source; - - return true; - } - - internal static bool TryMarshalSet(ref TTarget target, object source) - where TTarget : ISettable, new() - { - return TryConvert(source, out target); - } - - internal static bool TryMarshalSet(ref IntPtr target, Handle source) - { - return TryConvert(source, out target); - } - - internal static bool TryMarshalSet(ref IntPtr target, T? source) - where T : struct - { - return TryAllocate(ref target, source); - } - - internal static bool TryMarshalSet(ref IntPtr target, T[] source, bool isElementAllocated) - { - return TryAllocate(ref target, source, isElementAllocated); - } - - internal static bool TryMarshalSet(ref IntPtr target, T[] source) - { - return TryMarshalSet(ref target, source, !typeof(T).IsValueType); - } - - internal static bool TryMarshalSet(ref IntPtr target, T[] source, out int arrayLength, bool isElementAllocated) - { - arrayLength = 0; - - if (TryMarshalSet(ref target, source, isElementAllocated)) - { - arrayLength = source.Length; - return true; - } - - return false; - } - - internal static bool TryMarshalSet(ref IntPtr target, T[] source, out uint arrayLength, bool isElementAllocated) - { - arrayLength = 0; - - int arrayLengthInternal = 0; - if (TryMarshalSet(ref target, source, out arrayLengthInternal, isElementAllocated)) - { - arrayLength = (uint)arrayLengthInternal; - return true; - } - - return false; - } - - internal static bool TryMarshalSet(ref IntPtr target, T[] source, out uint arrayLength) - { - return TryMarshalSet(ref target, source, out arrayLength, !typeof(T).IsValueType); - } - - internal static bool TryMarshalSet(ref long target, DateTimeOffset? source) - { - return TryConvert(source, out target); - } - - internal static bool TryMarshalSet(ref int target, bool source) - { - return TryConvert(source, out target); - } - - internal static bool TryMarshalSet(ref byte[] target, string source, int length) - { - return TryConvert(source, out target, length); - } - - internal static bool TryMarshalSet(ref IntPtr target, string source) - { - return TryAllocate(ref target, source); - } - - internal static bool TryMarshalSet(ref T target, T source, ref TEnum currentEnum, TEnum comparisonEnum, IDisposable disposable = null) - { - if (source != null) - { - TryMarshalDispose(ref disposable); - - if (TryMarshalSet(ref target, source)) - { - currentEnum = comparisonEnum; - return true; - } - } - - return false; - } - - internal static bool TryMarshalSet(ref TTarget target, ISettable source, ref TEnum currentEnum, TEnum comparisonEnum, IDisposable disposable = null) - where TTarget : ISettable, new() - { - if (source != null) - { - TryMarshalDispose(ref disposable); - - if (TryConvert(source, out target)) - { - currentEnum = comparisonEnum; - return true; - } - } - - return false; - } - - internal static bool TryMarshalSet(ref T target, T? source, ref TEnum currentEnum, TEnum comparisonEnum, IDisposable disposable = null) - where T : struct - { - if (source != null) - { - TryMarshalDispose(ref disposable); - - if (TryMarshalSet(ref target, source.Value)) - { - currentEnum = comparisonEnum; - return true; - } - } - - return true; - } - - internal static bool TryMarshalSet(ref IntPtr target, Handle source, ref TEnum currentEnum, TEnum comparisonEnum, IDisposable disposable = null) - { - if (source != null) - { - TryMarshalDispose(ref disposable); - - if (TryMarshalSet(ref target, source)) - { - currentEnum = comparisonEnum; - return true; - } - } - - return true; - } - - internal static bool TryMarshalSet(ref IntPtr target, string source, ref TEnum currentEnum, TEnum comparisonEnum, IDisposable disposable = null) - { - if (source != null) - { - TryMarshalDispose(ref target); - target = IntPtr.Zero; - - TryMarshalDispose(ref disposable); - - if (TryMarshalSet(ref target, source)) - { - currentEnum = comparisonEnum; - return true; - } - } - - return true; - } - - internal static bool TryMarshalSet(ref int target, bool? source, ref TEnum currentEnum, TEnum comparisonEnum, IDisposable disposable = null) - { - if (source != null) - { - TryMarshalDispose(ref disposable); - - if (TryMarshalSet(ref target, source.Value)) - { - currentEnum = comparisonEnum; - return true; - } - } - - return true; - } - - internal static bool TryMarshalSet(ref IntPtr target, TPublic source) - where TInternal : struct, ISettable - where TPublic : class - { - if (source != null) - { - TInternal targetInternal = new TInternal(); - targetInternal.Set(source); - - if (TryAllocate(ref target, targetInternal)) - { - return true; - } - } - - return false; - } - - internal static bool TryMarshalSet(ref IntPtr target, TPublic[] source, out int arrayLength) - where TInternal : struct, ISettable - where TPublic : class - { - arrayLength = 0; - - if (source != null) - { - TInternal[] targetInternal = new TInternal[source.Length]; - for (int index = 0; index < source.Length; ++index) - { - targetInternal[index].Set(source[index]); - } - - if (TryMarshalSet(ref target, targetInternal)) - { - arrayLength = source.Length; - return true; - } - - } - - return false; - } - - internal static bool TryMarshalSet(ref IntPtr target, TPublic[] source, out uint arrayLength) - where TInternal : struct, ISettable - where TPublic : class - { - arrayLength = 0; - - int arrayLengthInt; - if (TryMarshalSet(ref target, source, out arrayLengthInt)) - { - arrayLength = (uint)arrayLengthInt; - return true; - } - - return false; - } - - internal static bool TryMarshalSet(ref IntPtr target, TPublic[] source, out int arrayLength, bool isElementAllocated) - where TInternal : struct, ISettable - where TPublic : class - { - arrayLength = 0; - - if (source != null) - { - TInternal[] targetInternal = new TInternal[source.Length]; - for (int index = 0; index < source.Length; ++index) - { - targetInternal[index].Set(source[index]); - } - - if (TryMarshalSet(ref target, targetInternal, isElementAllocated)) - { - arrayLength = source.Length; - return true; - } - - } - - return false; - } - - internal static bool TryMarshalSet(ref IntPtr target, TPublic[] source, out uint arrayLength, bool isElementAllocated) - where TInternal : struct, ISettable - where TPublic : class - { - arrayLength = 0; - - int arrayLengthInt; - if (TryMarshalSet(ref target, source, out arrayLengthInt, isElementAllocated)) - { - arrayLength = (uint)arrayLengthInt; - return true; - } - - return false; - } - - internal static bool TryMarshalCopy(IntPtr target, byte[] source) - { - if (target != IntPtr.Zero && source != null) - { - Marshal.Copy(source, 0, target, source.Length); - return true; - } - - return false; - } - - internal static bool TryMarshalAllocate(ref IntPtr target, int size, out Allocation allocation) - { - TryMarshalDispose(ref target); - - target = Marshal.AllocHGlobal(size); - Marshal.WriteByte(target, 0, 0); - - allocation = new Allocation(size); - s_Allocations.Add(target, allocation); - - return true; - } - - internal static bool TryMarshalAllocate(ref IntPtr target, uint size, out Allocation allocation) - { - return TryMarshalAllocate(ref target, (int)size, out allocation); - } -#endregion - - // These functions are the front end for disposing of unmanaged memory that this wrapper has allocated. -#region Marshal Disposers - internal static bool TryMarshalDispose(ref TDisposable disposable) - where TDisposable : IDisposable - { - if (disposable != null) - { - disposable.Dispose(); - return true; - } - - return false; - } - - internal static bool TryMarshalDispose(ref IntPtr value) - { - return TryRelease(ref value); - } - - internal static bool TryMarshalDispose(ref IntPtr member, TEnum currentEnum, TEnum comparisonEnum) - { - if ((int)(object)currentEnum == (int)(object)comparisonEnum) - { - return TryRelease(ref member); - } - - return false; - } -#endregion - - // These functions are exposed to the wrapper to generally streamline blocks of generated code. -#region Helpers - internal static T GetDefault() - { - return default(T); - } - - internal static void AddCallback(ref IntPtr clientDataAddress, object clientData, Delegate publicDelegate, Delegate privateDelegate, params Delegate[] structDelegates) - { - TryAllocateCacheOnly(ref clientDataAddress, new BoxedData(clientData)); - s_Callbacks.Add(clientDataAddress, new DelegateHolder(publicDelegate, privateDelegate, structDelegates)); - } - - internal static void AddStaticCallback(string key, Delegate publicDelegate, Delegate privateDelegate) - { - s_StaticCallbacks[key] = new DelegateHolder(publicDelegate, privateDelegate); - } - - internal static bool TryAssignNotificationIdToCallback(IntPtr clientDataAddress, ulong notificationId) - { - if (notificationId != 0) - { - DelegateHolder delegateHolder = null; - if (s_Callbacks.TryGetValue(clientDataAddress, out delegateHolder)) - { - delegateHolder.NotificationId = notificationId; - return true; - } - } - // We can safely release if the notification id came back invalid - else - { - s_Callbacks.Remove(clientDataAddress); - TryRelease(ref clientDataAddress); - } - - return false; - } - - internal static bool TryRemoveCallbackByNotificationId(ulong notificationId) - { - var delegateHolderPairs = s_Callbacks.Where(pair => pair.Value.NotificationId.HasValue && pair.Value.NotificationId == notificationId); - if (delegateHolderPairs.Any()) - { - IntPtr clientDataAddress = delegateHolderPairs.First().Key; - - s_Callbacks.Remove(clientDataAddress); - TryRelease(ref clientDataAddress); - - return true; - } - - return false; - } - - internal static bool TryGetAndRemoveCallback(IntPtr callbackInfoAddress, out TCallback callback, out TCallbackInfo callbackInfo) - where TCallback : class - where TCallbackInfoInternal : struct, ICallbackInfoInternal - where TCallbackInfo : class, ICallbackInfo, ISettable, new() - { - callback = null; - callbackInfo = null; - - IntPtr clientDataAddress = IntPtr.Zero; - if (TryMarshalGet(callbackInfoAddress, out callbackInfo, out clientDataAddress) - && TryGetAndRemoveCallback(clientDataAddress, callbackInfo, out callback)) - { - return true; - } - - return false; - } - - internal static bool TryGetStructCallback(IntPtr callbackInfoAddress, out TDelegate callback, out TCallbackInfo callbackInfo) - where TDelegate : class - where TCallbackInfoInternal : struct, ICallbackInfoInternal - where TCallbackInfo : class, ISettable, new() - { - callback = null; - callbackInfo = null; - - IntPtr clientDataAddress = IntPtr.Zero; - if (TryMarshalGet(callbackInfoAddress, out callbackInfo, out clientDataAddress) - && TryGetStructCallback(clientDataAddress, out callback)) - { - return true; - } - - return false; - } -#endregion - - // These functions are used for allocating unmanaged memory. - // They should not be exposed outside of this helper. -#region Private Allocators - private static bool TryAllocate(ref IntPtr target, T source) - { - TryRelease(ref target); - - if (target != IntPtr.Zero) - { - throw new ExternalAllocationException(target, source.GetType()); - } - - if (source == null) - { - return false; - } - - Allocation allocation; - if (!TryMarshalAllocate(ref target, Marshal.SizeOf(typeof(T)), out allocation)) - { - return false; - } - - allocation.SetCachedData(source); - Marshal.StructureToPtr(source, target, false); - - return true; - } - - private static bool TryAllocate(ref IntPtr target, T? source) - where T : struct - { - TryRelease(ref target); - - if (target != IntPtr.Zero) - { - throw new ExternalAllocationException(target, source.GetType()); - } - - if (source == null) - { - return false; - } - - return TryAllocate(ref target, source.Value); - } - - private static bool TryAllocate(ref IntPtr target, string source) - { - TryRelease(ref target); - - if (target != IntPtr.Zero) - { - throw new ExternalAllocationException(target, source.GetType()); - } - - if (source == null) - { - return false; - } - - byte[] bytes; - if (TryConvert(source, out bytes)) - { - return TryAllocate(ref target, bytes, false); - } - - return false; - } - - private static bool TryAllocate(ref IntPtr target, T[] source, bool isElementAllocated) - { - TryRelease(ref target); - - if (target != IntPtr.Zero) - { - throw new ExternalAllocationException(target, source.GetType()); - } - - if (source == null) - { - return false; - } - - var itemSize = 0; - if (isElementAllocated) - { - itemSize = Marshal.SizeOf(typeof(IntPtr)); - } - else - { - itemSize = Marshal.SizeOf(typeof(T)); - } - - // Allocate the array - Allocation allocation; - if (!TryMarshalAllocate(ref target, source.Length * itemSize, out allocation)) - { - return false; - } - - allocation.SetCachedData(source, isElementAllocated); - - for (int itemIndex = 0; itemIndex < source.Length; ++itemIndex) - { - var item = (T)source.GetValue(itemIndex); - - if (isElementAllocated) - { - // Allocate the item - IntPtr newItemAddress = IntPtr.Zero; - - if (typeof(T) == typeof(string)) - { - TryAllocate(ref newItemAddress, (string)(object)item); - } - else if (typeof(T).BaseType == typeof(Handle)) - { - TryConvert((Handle)(object)item, out newItemAddress); - } - else - { - TryAllocate(ref newItemAddress, item); - } - - // Copy the item's address into the array - IntPtr itemAddress = new IntPtr(target.ToInt64() + itemIndex * itemSize); - Marshal.StructureToPtr(newItemAddress, itemAddress, false); - } - else - { - // Copy the data straight into memory - IntPtr itemAddress = new IntPtr(target.ToInt64() + itemIndex * itemSize); - Marshal.StructureToPtr(item, itemAddress, false); - } - } - - return true; - } - - private static bool TryAllocateCacheOnly(ref IntPtr target, T source) - { - TryRelease(ref target); - - if (target != IntPtr.Zero) - { - throw new ExternalAllocationException(target, source.GetType()); - } - - if (source == null) - { - return false; - } - - // The source should always be fetched directly from our cache, so the allocation is arbitrary. - Allocation allocation; - if (!TryMarshalAllocate(ref target, 1, out allocation)) - { - return false; - } - - allocation.SetCachedData(source); - - return true; - } -#endregion - - // These functions are used for releasing unmanaged memory. - // They should not be exposed outside of this helper. -#region Private Releasers - private static bool TryRelease(ref IntPtr target) - { - if (target == IntPtr.Zero) - { - return false; - } - - Allocation allocation = null; - if (!s_Allocations.TryGetValue(target, out allocation)) - { - return false; - } - - if (allocation.IsCachedArrayElementAllocated.HasValue) - { - var itemSize = 0; - if (allocation.IsCachedArrayElementAllocated.Value) - { - itemSize = Marshal.SizeOf(typeof(IntPtr)); - } - else - { - itemSize = Marshal.SizeOf(allocation.CachedData.GetType().GetElementType()); - } - - var array = allocation.CachedData as Array; - - for (int itemIndex = 0; itemIndex < array.Length; ++itemIndex) - { - if (allocation.IsCachedArrayElementAllocated.Value) - { - var itemAddress = new IntPtr(target.ToInt64() + itemIndex * itemSize); - itemAddress = Marshal.ReadIntPtr(itemAddress); - TryRelease(ref itemAddress); - } - else - { - var item = array.GetValue(itemIndex); - if (item is IDisposable) - { - var disposable = item as IDisposable; - if (disposable != null) - { - disposable.Dispose(); - } - } - } - } - } - - if (allocation.CachedData is IDisposable) - { - var disposable = allocation.CachedData as IDisposable; - if (disposable != null) - { - disposable.Dispose(); - } - } - - Marshal.FreeHGlobal(target); - s_Allocations.Remove(target); - target = IntPtr.Zero; - - return true; - } -#endregion - - // These functions are used for fetching unmanaged memory. - // They should not be exposed outside of this helper. -#region Private Fetchers - private static bool TryFetch(IntPtr source, out T target) - { - target = GetDefault(); - - if (source == IntPtr.Zero) - { - return false; - } - - // If this is an allocation containing cached data, we should be able to fetch it from the cache - if (s_Allocations.ContainsKey(source)) - { - Allocation allocation = s_Allocations[source]; - if (allocation.CachedData != null) - { - if (allocation.CachedData.GetType() == typeof(T)) - { - target = (T)allocation.CachedData; - return true; - } - else - { - throw new CachedTypeAllocationException(source, allocation.CachedData.GetType(), typeof(T)); - } - } - } - - target = (T)Marshal.PtrToStructure(source, typeof(T)); - return true; - } - - private static bool TryFetch(IntPtr source, out T? target) - where T : struct - { - target = GetDefault(); - - if (source == IntPtr.Zero) - { - return false; - } - - // If this is an allocation containing cached data, we should be able to fetch it from the cache - if (s_Allocations.ContainsKey(source)) - { - Allocation allocation = s_Allocations[source]; - if (allocation.CachedData != null) - { - if (allocation.CachedData.GetType() == typeof(T)) - { - target = (T?)allocation.CachedData; - return true; - } - else - { - throw new CachedTypeAllocationException(source, allocation.CachedData.GetType(), typeof(T)); - } - } - } - - target = (T?)Marshal.PtrToStructure(source, typeof(T)); - return true; - } - - private static bool TryFetch(IntPtr source, out T[] target, int arrayLength, bool isElementAllocated) - { - target = null; - - if (source == IntPtr.Zero) - { - return false; - } - - // If this is an allocation containing cached data, we should be able to fetch it from the cache - if (s_Allocations.ContainsKey(source)) - { - Allocation allocation = s_Allocations[source]; - if (allocation.CachedData != null) - { - if (allocation.CachedData.GetType() == typeof(T[])) - { - var cachedArray = (Array)allocation.CachedData; - if (cachedArray.Length == arrayLength) - { - target = cachedArray as T[]; - return true; - } - else - { - throw new CachedArrayAllocationException(source, cachedArray.Length, arrayLength); - } - } - else - { - throw new CachedTypeAllocationException(source, allocation.CachedData.GetType(), typeof(T[])); - } - } - } - - var itemSize = 0; - if (isElementAllocated) - { - itemSize = Marshal.SizeOf(typeof(IntPtr)); - } - else - { - itemSize = Marshal.SizeOf(typeof(T)); - } - - List items = new List(); - for (int itemIndex = 0; itemIndex < arrayLength; ++itemIndex) - { - IntPtr itemAddress = new IntPtr(source.ToInt64() + itemIndex * itemSize); - - if (isElementAllocated) - { - itemAddress = Marshal.ReadIntPtr(itemAddress); - } - - T item; - TryFetch(itemAddress, out item); - items.Add(item); - } - - target = items.ToArray(); - return true; - } - - private static bool TryFetch(IntPtr source, out string target) - { - target = null; - - if (source == IntPtr.Zero) - { - return false; - } - - // Find the null terminator - int length = 0; - while (Marshal.ReadByte(source, length) != 0) - { - ++length; - } - - byte[] bytes = new byte[length]; - Marshal.Copy(source, bytes, 0, length); - - target = Encoding.UTF8.GetString(bytes); - - return true; - } -#endregion - - // These functions are used for converting managed memory. - // They should not be exposed outside of this helper. -#region Private Converters - private static bool TryConvert(IntPtr source, out THandle target) - where THandle : Handle, new() - { - target = null; - - if (source != IntPtr.Zero) - { - target = new THandle(); - target.InnerHandle = source; - } - - return true; - } - - internal static bool TryConvert(TSource source, out TTarget target) - where TTarget : ISettable, new() - { - target = GetDefault(); - - if (source != null) - { - target = new TTarget(); - target.Set(source); - } - - return true; - } - - private static bool TryConvert(Handle source, out IntPtr target) - { - target = IntPtr.Zero; - - if (source != null) - { - target = source.InnerHandle; - } - - return true; - } - - private static bool TryConvert(byte[] source, out string target) - { - target = null; - - if (source == null) - { - return false; - } - - int length = 0; - foreach (byte currentByte in source) - { - if (currentByte == 0) - { - break; - } - - ++length; - } - - target = Encoding.UTF8.GetString(source.Take(length).ToArray()); - - return true; - } - - private static bool TryConvert(string source, out byte[] target, int length) - { - if (source == null) - { - source = ""; - } - - target = Encoding.UTF8.GetBytes(new string(source.Take(length).ToArray()).PadRight(length, '\0')); - - return true; - } - - private static bool TryConvert(string source, out byte[] target) - { - return TryConvert(source, out target, source.Length + 1); - } - - private static bool TryConvert(T[] source, out int target) - { - target = 0; - - if (source != null) - { - target = source.Length; - } - - return true; - } - - private static bool TryConvert(T[] source, out uint target) - { - target = 0; - - int targetInt; - if (TryConvert(source, out targetInt)) - { - target = (uint)targetInt; - return true; - } - - return false; - } - - internal static bool TryConvert(TSource[] source, out TTarget[] target) - where TTarget : ISettable, new() - { - target = GetDefault(); - - if (source != null) - { - target = new TTarget[source.Length]; - - for (int index = 0; index < source.Length; ++index) - { - target[index] = new TTarget(); - target[index].Set(source[index]); - } - } - - return true; - } - - private static bool TryConvert(int source, out bool target) - { - target = source != 0; - - return true; - } - - private static bool TryConvert(bool source, out int target) - { - target = source ? 1 : 0; - - return true; - } - - private static bool TryConvert(DateTimeOffset? source, out long target) - { - target = -1; - - if (source.HasValue) - { - DateTime unixStart = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc); - long unixTimestampTicks = (source.Value.UtcDateTime - unixStart).Ticks; - long unixTimestampSeconds = unixTimestampTicks / TimeSpan.TicksPerSecond; - target = unixTimestampSeconds; - } - - return true; - } - - private static bool TryConvert(long source, out DateTimeOffset? target) - { - target = null; - - if (source >= 0) - { - DateTime unixStart = new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc); - long unixTimeStampTicks = source * TimeSpan.TicksPerSecond; - target = new DateTimeOffset(unixStart.Ticks + unixTimeStampTicks, TimeSpan.Zero); - } - - return true; - } -#endregion - - // These functions exist to further streamline blocks of generated code. -#region Private Helpers - private static bool CanRemoveCallback(IntPtr clientDataAddress, TCallbackInfo callbackInfo) - where TCallbackInfo : ICallbackInfo - { - DelegateHolder delegateHolder = null; - if (s_Callbacks.TryGetValue(clientDataAddress, out delegateHolder)) - { - if (delegateHolder.NotificationId.HasValue) - { - return false; - } - } - - if (callbackInfo.GetResultCode().HasValue) - { - return Common.IsOperationComplete(callbackInfo.GetResultCode().Value); - } - - return true; - } - - private static bool TryGetAndRemoveCallback(IntPtr clientDataAddress, TCallbackInfo callbackInfo, out TCallback callback) - where TCallback : class - where TCallbackInfo : ICallbackInfo - { - callback = null; - - if (clientDataAddress != IntPtr.Zero && s_Callbacks.ContainsKey(clientDataAddress)) - { - callback = s_Callbacks[clientDataAddress].Public as TCallback; - if (callback != null) - { - if (CanRemoveCallback(clientDataAddress, callbackInfo)) - { - s_Callbacks.Remove(clientDataAddress); - TryRelease(ref clientDataAddress); - } - - return true; - } - } - - return false; - } - - internal static bool TryGetStaticCallback(string key, out TCallback callback) - where TCallback : class - { - callback = null; - - if (s_StaticCallbacks.ContainsKey(key)) - { - callback = s_StaticCallbacks[key].Public as TCallback; - if (callback != null) - { - return true; - } - } - - return false; - } - - private static bool TryGetStructCallback(IntPtr clientDataAddress, out TCallback structCallback) - where TCallback : class - { - structCallback = null; - - if (clientDataAddress != IntPtr.Zero && s_Callbacks.ContainsKey(clientDataAddress)) - { - structCallback = s_Callbacks[clientDataAddress].StructDelegates.FirstOrDefault(delegat => delegat.GetType() == typeof(TCallback)) as TCallback; - if (structCallback != null) - { - return true; - } - } - - return false; - } -#endregion - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/Helper.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/Helper.cs.meta deleted file mode 100644 index 50bc47a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/Helper.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3079a103fb51b45419a94bf57a63fc8c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/HelperExtensions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/HelperExtensions.cs deleted file mode 100644 index b7e79cf..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/HelperExtensions.cs +++ /dev/null @@ -1,27 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. - -namespace Epic.OnlineServices -{ - public static class HelperExtensions - { - /// - /// Checks whether the given result indicates that the operation has completed. Some operations may callback with a result indicating that they will callback again. - /// - /// The result to check. - /// Whether the operation has completed or not. - public static bool IsOperationComplete(this Result result) - { - return Common.IsOperationComplete(result); - } - - /// - /// Converts a byte array into a hex string, e.g. "A56904FF". - /// - /// The byte array to convert. - /// A hex string, e.g. "A56904FF". - public static string ToHexString(this byte[] byteArray) - { - return Common.ToString(byteArray); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/HelperExtensions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/HelperExtensions.cs.meta deleted file mode 100644 index c35e5d8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/HelperExtensions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b66a27433592be448af038ba9cb57d96 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/ICallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/ICallbackInfo.cs deleted file mode 100644 index 57f50eb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/ICallbackInfo.cs +++ /dev/null @@ -1,18 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. - -using System; - -namespace Epic.OnlineServices -{ - internal interface ICallbackInfo - { - object ClientData { get; } - - Result? GetResultCode(); - } - - internal interface ICallbackInfoInternal - { - IntPtr ClientDataAddress { get; } - } -} diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/ICallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/ICallbackInfo.cs.meta deleted file mode 100644 index df99b08..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/ICallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4aa748c37587f3248933d66e7e093816 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/ISettable.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/ISettable.cs deleted file mode 100644 index 810dde2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/ISettable.cs +++ /dev/null @@ -1,9 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. - -namespace Epic.OnlineServices -{ - public interface ISettable - { - void Set(object other); - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/ISettable.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/ISettable.cs.meta deleted file mode 100644 index 1d804ed..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/ISettable.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: bbcedd8572e5c1f4899c4237e53f97ca -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/MonoPInvokeCallbackAttribute.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/MonoPInvokeCallbackAttribute.cs deleted file mode 100644 index c58daf7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/MonoPInvokeCallbackAttribute.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. - -using System; - -namespace Epic.OnlineServices -{ - [AttributeUsage(AttributeTargets.Method)] - internal sealed class MonoPInvokeCallbackAttribute : Attribute - { - public MonoPInvokeCallbackAttribute(Type type) - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/MonoPInvokeCallbackAttribute.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/MonoPInvokeCallbackAttribute.cs.meta deleted file mode 100644 index a88522f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Core/MonoPInvokeCallbackAttribute.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: be91cddb4263e1b42ad685c6bd0e8b19 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/EOSSDK-Win32-Shipping.dll b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/EOSSDK-Win32-Shipping.dll deleted file mode 100644 index 449eaf0..0000000 Binary files a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/EOSSDK-Win32-Shipping.dll and /dev/null differ diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/EOSSDK-Win32-Shipping.dll.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/EOSSDK-Win32-Shipping.dll.meta deleted file mode 100644 index 806feb8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/EOSSDK-Win32-Shipping.dll.meta +++ /dev/null @@ -1,27 +0,0 @@ -fileFormatVersion: 2 -guid: 212a14d72c7c990469798ff9623cf288 -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Any: - second: - enabled: 1 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/EOSSDK-Win64-Shipping.dll b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/EOSSDK-Win64-Shipping.dll deleted file mode 100644 index 9073f8b..0000000 Binary files a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/EOSSDK-Win64-Shipping.dll and /dev/null differ diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/EOSSDK-Win64-Shipping.dll.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/EOSSDK-Win64-Shipping.dll.meta deleted file mode 100644 index b59dedf..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/EOSSDK-Win64-Shipping.dll.meta +++ /dev/null @@ -1,27 +0,0 @@ -fileFormatVersion: 2 -guid: 488dca3331ccfce41acd3f112457f0b4 -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Any: - second: - enabled: 1 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated.meta deleted file mode 100644 index 6d9ee00..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 3c90188131b747447af24bc49000c263 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements.meta deleted file mode 100644 index 1e080e3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 1b05ad5e499f3f64093016cd0dbb0a49 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/AchievementsInterface.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/AchievementsInterface.cs deleted file mode 100644 index 5e2bb74..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/AchievementsInterface.cs +++ /dev/null @@ -1,668 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - public sealed partial class AchievementsInterface : Handle - { - public AchievementsInterface() - { - } - - public AchievementsInterface(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// Timestamp value representing an undefined UnlockTime for and - /// - public const int AchievementUnlocktimeUndefined = -1; - - /// - /// The most recent version of the API. - /// - public const int AddnotifyachievementsunlockedApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int Addnotifyachievementsunlockedv2ApiLatest = 2; - - /// - /// The most recent version of the struct. - /// - public const int Copyachievementdefinitionv2ByachievementidApiLatest = 2; - - /// - /// The most recent version of the struct. - /// - public const int Copyachievementdefinitionv2ByindexApiLatest = 2; - - /// - /// The most recent version of the struct. - /// - public const int CopydefinitionbyachievementidApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int CopydefinitionbyindexApiLatest = 1; - - /// - /// DEPRECATED! Use instead. - /// - public const int Copydefinitionv2ByachievementidApiLatest = Copyachievementdefinitionv2ByachievementidApiLatest; - - /// - /// DEPRECATED! Use instead. - /// - public const int Copydefinitionv2ByindexApiLatest = Copyachievementdefinitionv2ByindexApiLatest; - - /// - /// The most recent version of the struct. - /// - public const int CopyplayerachievementbyachievementidApiLatest = 2; - - /// - /// The most recent version of the struct. - /// - public const int CopyplayerachievementbyindexApiLatest = 2; - - /// - /// The most recent version of the struct. - /// - public const int CopyunlockedachievementbyachievementidApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int CopyunlockedachievementbyindexApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int DefinitionApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int Definitionv2ApiLatest = 2; - - /// - /// The most recent version of the API. - /// - public const int GetachievementdefinitioncountApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetplayerachievementcountApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetunlockedachievementcountApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int PlayerachievementApiLatest = 2; - - public const int PlayerstatinfoApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int QuerydefinitionsApiLatest = 3; - - /// - /// The most recent version of the struct. - /// - public const int QueryplayerachievementsApiLatest = 2; - - /// - /// DEPRECATED! Use instead. - /// - public const int StatthresholdApiLatest = StatthresholdsApiLatest; - - /// - /// The most recent version of the struct. - /// - public const int StatthresholdsApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int UnlockachievementsApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int UnlockedachievementApiLatest = 1; - - /// - /// DEPRECATED! Use instead. - /// - /// Register to receive achievement unlocked notifications. - /// @note must call to remove the notification - /// - /// - /// Structure containing information about the achievement unlocked notification - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// A callback that is fired when an achievement unlocked notification for a user has been received - /// - /// handle representing the registered callback - /// - public ulong AddNotifyAchievementsUnlocked(AddNotifyAchievementsUnlockedOptions options, object clientData, OnAchievementsUnlockedCallback notificationFn) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var notificationFnInternal = new OnAchievementsUnlockedCallbackInternal(OnAchievementsUnlockedCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - - var funcResult = Bindings.EOS_Achievements_AddNotifyAchievementsUnlocked(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Register to receive achievement unlocked notifications. - /// @note must call to remove the notification - /// - /// - /// Structure containing information about the achievement unlocked notification - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// A callback that is fired when an achievement unlocked notification for a user has been received - /// - /// handle representing the registered callback - /// - public ulong AddNotifyAchievementsUnlockedV2(AddNotifyAchievementsUnlockedV2Options options, object clientData, OnAchievementsUnlockedCallbackV2 notificationFn) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var notificationFnInternal = new OnAchievementsUnlockedCallbackV2Internal(OnAchievementsUnlockedCallbackV2InternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - - var funcResult = Bindings.EOS_Achievements_AddNotifyAchievementsUnlockedV2(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// DEPRECATED! Use instead. - /// - /// Fetches an achievement definition from a given achievement ID. - /// - /// - /// - /// Structure containing the achievement ID being accessed - /// The achievement definition for the given achievement ID, if it exists and is valid, use when finished - /// - /// if the information is available and passed out in OutDefinition - /// if you pass a null pointer for the out parameter - /// if the achievement definition is not found - /// - public Result CopyAchievementDefinitionByAchievementId(CopyAchievementDefinitionByAchievementIdOptions options, out Definition outDefinition) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outDefinitionAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Achievements_CopyAchievementDefinitionByAchievementId(InnerHandle, optionsAddress, ref outDefinitionAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outDefinitionAddress, out outDefinition)) - { - Bindings.EOS_Achievements_Definition_Release(outDefinitionAddress); - } - - return funcResult; - } - - /// - /// DEPRECATED! Use instead. - /// - /// Fetches an achievement definition from a given index. - /// - /// - /// - /// Structure containing the index being accessed - /// The achievement definition for the given index, if it exists and is valid, use when finished - /// - /// if the information is available and passed out in OutDefinition - /// if you pass a null pointer for the out parameter - /// if the achievement definition is not found - /// - public Result CopyAchievementDefinitionByIndex(CopyAchievementDefinitionByIndexOptions options, out Definition outDefinition) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outDefinitionAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Achievements_CopyAchievementDefinitionByIndex(InnerHandle, optionsAddress, ref outDefinitionAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outDefinitionAddress, out outDefinition)) - { - Bindings.EOS_Achievements_Definition_Release(outDefinitionAddress); - } - - return funcResult; - } - - /// - /// Fetches an achievement definition from a given achievement ID. - /// - /// - /// Structure containing the achievement ID being accessed - /// The achievement definition for the given achievement ID, if it exists and is valid, use when finished - /// - /// if the information is available and passed out in OutDefinition - /// if you pass a null pointer for the out parameter - /// if the achievement definition is not found - /// if any of the userid options are incorrect - /// - public Result CopyAchievementDefinitionV2ByAchievementId(CopyAchievementDefinitionV2ByAchievementIdOptions options, out DefinitionV2 outDefinition) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outDefinitionAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Achievements_CopyAchievementDefinitionV2ByAchievementId(InnerHandle, optionsAddress, ref outDefinitionAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outDefinitionAddress, out outDefinition)) - { - Bindings.EOS_Achievements_DefinitionV2_Release(outDefinitionAddress); - } - - return funcResult; - } - - /// - /// Fetches an achievement definition from a given index. - /// - /// - /// Structure containing the index being accessed - /// The achievement definition for the given index, if it exists and is valid, use when finished - /// - /// if the information is available and passed out in OutDefinition - /// if you pass a null pointer for the out parameter - /// if the achievement definition is not found - /// if any of the userid options are incorrect - /// - public Result CopyAchievementDefinitionV2ByIndex(CopyAchievementDefinitionV2ByIndexOptions options, out DefinitionV2 outDefinition) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outDefinitionAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Achievements_CopyAchievementDefinitionV2ByIndex(InnerHandle, optionsAddress, ref outDefinitionAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outDefinitionAddress, out outDefinition)) - { - Bindings.EOS_Achievements_DefinitionV2_Release(outDefinitionAddress); - } - - return funcResult; - } - - /// - /// Fetches a player achievement from a given achievement ID. - /// - /// - /// Structure containing the Epic Online Services Account ID and achievement ID being accessed - /// The player achievement data for the given achievement ID, if it exists and is valid, use when finished - /// - /// if the information is available and passed out in OutAchievement - /// if you pass a null pointer for the out parameter - /// if the player achievement is not found - /// if you pass an invalid user ID - /// - public Result CopyPlayerAchievementByAchievementId(CopyPlayerAchievementByAchievementIdOptions options, out PlayerAchievement outAchievement) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outAchievementAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Achievements_CopyPlayerAchievementByAchievementId(InnerHandle, optionsAddress, ref outAchievementAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outAchievementAddress, out outAchievement)) - { - Bindings.EOS_Achievements_PlayerAchievement_Release(outAchievementAddress); - } - - return funcResult; - } - - /// - /// Fetches a player achievement from a given index. - /// - /// - /// Structure containing the Epic Online Services Account ID and index being accessed - /// The player achievement data for the given index, if it exists and is valid, use when finished - /// - /// if the information is available and passed out in OutAchievement - /// if you pass a null pointer for the out parameter - /// if the player achievement is not found - /// if you pass an invalid user ID - /// - public Result CopyPlayerAchievementByIndex(CopyPlayerAchievementByIndexOptions options, out PlayerAchievement outAchievement) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outAchievementAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Achievements_CopyPlayerAchievementByIndex(InnerHandle, optionsAddress, ref outAchievementAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outAchievementAddress, out outAchievement)) - { - Bindings.EOS_Achievements_PlayerAchievement_Release(outAchievementAddress); - } - - return funcResult; - } - - /// - /// DEPRECATED! Use instead. - /// - /// Fetches an unlocked achievement from a given achievement ID. - /// - /// - /// Structure containing the Epic Online Services Account ID and achievement ID being accessed - /// The unlocked achievement data for the given achievement ID, if it exists and is valid, use when finished - /// - /// if the information is available and passed out in OutAchievement - /// if you pass a null pointer for the out parameter - /// if the unlocked achievement is not found - /// - public Result CopyUnlockedAchievementByAchievementId(CopyUnlockedAchievementByAchievementIdOptions options, out UnlockedAchievement outAchievement) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outAchievementAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Achievements_CopyUnlockedAchievementByAchievementId(InnerHandle, optionsAddress, ref outAchievementAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outAchievementAddress, out outAchievement)) - { - Bindings.EOS_Achievements_UnlockedAchievement_Release(outAchievementAddress); - } - - return funcResult; - } - - /// - /// DEPRECATED! Use instead. - /// - /// Fetches an unlocked achievement from a given index. - /// - /// - /// Structure containing the Epic Online Services Account ID and index being accessed - /// The unlocked achievement data for the given index, if it exists and is valid, use when finished - /// - /// if the information is available and passed out in OutAchievement - /// if you pass a null pointer for the out parameter - /// if the unlocked achievement is not found - /// - public Result CopyUnlockedAchievementByIndex(CopyUnlockedAchievementByIndexOptions options, out UnlockedAchievement outAchievement) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outAchievementAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Achievements_CopyUnlockedAchievementByIndex(InnerHandle, optionsAddress, ref outAchievementAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outAchievementAddress, out outAchievement)) - { - Bindings.EOS_Achievements_UnlockedAchievement_Release(outAchievementAddress); - } - - return funcResult; - } - - /// - /// Fetch the number of achievement definitions that are cached locally. - /// - /// - /// The Options associated with retrieving the achievement definition count - /// - /// Number of achievement definitions or 0 if there is an error - /// - public uint GetAchievementDefinitionCount(GetAchievementDefinitionCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Achievements_GetAchievementDefinitionCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Fetch the number of player achievements that are cached locally. - /// - /// - /// The Options associated with retrieving the player achievement count - /// - /// Number of player achievements or 0 if there is an error - /// - public uint GetPlayerAchievementCount(GetPlayerAchievementCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Achievements_GetPlayerAchievementCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// DEPRECATED! Use , and filter for unlocked instead. - /// - /// Fetch the number of unlocked achievements that are cached locally. - /// - /// - /// The Options associated with retrieving the unlocked achievement count - /// - /// Number of unlocked achievements or 0 if there is an error - /// - public uint GetUnlockedAchievementCount(GetUnlockedAchievementCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Achievements_GetUnlockedAchievementCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Query for a list of definitions for all existing achievements, including localized text, icon IDs and whether an achievement is hidden. - /// - /// @note When the Social Overlay is enabled then this will be called automatically. The Social Overlay is enabled by default (see ). - /// - /// Structure containing information about the application whose achievement definitions we're retrieving. - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// This function is called when the query definitions operation completes. - /// - /// if the operation completes successfully - /// if any of the options are incorrect - /// - public void QueryDefinitions(QueryDefinitionsOptions options, object clientData, OnQueryDefinitionsCompleteCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnQueryDefinitionsCompleteCallbackInternal(OnQueryDefinitionsCompleteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Achievements_QueryDefinitions(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Query for a list of achievements for a specific player, including progress towards completion for each achievement. - /// - /// @note When the Social Overlay is enabled then this will be called automatically. The Social Overlay is enabled by default (see ). - /// - /// Structure containing information about the player whose achievements we're retrieving. - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// This function is called when the query player achievements operation completes. - /// - /// if the operation completes successfully - /// if any of the userid options are incorrect - /// if any of the other options are incorrect - /// - public void QueryPlayerAchievements(QueryPlayerAchievementsOptions options, object clientData, OnQueryPlayerAchievementsCompleteCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnQueryPlayerAchievementsCompleteCallbackInternal(OnQueryPlayerAchievementsCompleteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Achievements_QueryPlayerAchievements(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Unregister from receiving achievement unlocked notifications. - /// - /// - /// Handle representing the registered callback - public void RemoveNotifyAchievementsUnlocked(ulong inId) - { - Helper.TryRemoveCallbackByNotificationId(inId); - - Bindings.EOS_Achievements_RemoveNotifyAchievementsUnlocked(InnerHandle, inId); - } - - /// - /// Unlocks a number of achievements for a specific player. - /// - /// Structure containing information about the achievements and the player whose achievements we're unlocking. - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// This function is called when the unlock achievements operation completes. - /// - /// if the operation completes successfully - /// if any of the options are incorrect - /// - public void UnlockAchievements(UnlockAchievementsOptions options, object clientData, OnUnlockAchievementsCompleteCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnUnlockAchievementsCompleteCallbackInternal(OnUnlockAchievementsCompleteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Achievements_UnlockAchievements(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - [MonoPInvokeCallback(typeof(OnAchievementsUnlockedCallbackInternal))] - internal static void OnAchievementsUnlockedCallbackInternalImplementation(System.IntPtr data) - { - OnAchievementsUnlockedCallback callback; - OnAchievementsUnlockedCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnAchievementsUnlockedCallbackV2Internal))] - internal static void OnAchievementsUnlockedCallbackV2InternalImplementation(System.IntPtr data) - { - OnAchievementsUnlockedCallbackV2 callback; - OnAchievementsUnlockedCallbackV2Info callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnQueryDefinitionsCompleteCallbackInternal))] - internal static void OnQueryDefinitionsCompleteCallbackInternalImplementation(System.IntPtr data) - { - OnQueryDefinitionsCompleteCallback callback; - OnQueryDefinitionsCompleteCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnQueryPlayerAchievementsCompleteCallbackInternal))] - internal static void OnQueryPlayerAchievementsCompleteCallbackInternalImplementation(System.IntPtr data) - { - OnQueryPlayerAchievementsCompleteCallback callback; - OnQueryPlayerAchievementsCompleteCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnUnlockAchievementsCompleteCallbackInternal))] - internal static void OnUnlockAchievementsCompleteCallbackInternalImplementation(System.IntPtr data) - { - OnUnlockAchievementsCompleteCallback callback; - OnUnlockAchievementsCompleteCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/AchievementsInterface.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/AchievementsInterface.cs.meta deleted file mode 100644 index aee953f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/AchievementsInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 91b363f40f7831b46af876f05404ed1f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/AddNotifyAchievementsUnlockedOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/AddNotifyAchievementsUnlockedOptions.cs deleted file mode 100644 index 22ff21c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/AddNotifyAchievementsUnlockedOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Input parameters for the function. - /// - public class AddNotifyAchievementsUnlockedOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyAchievementsUnlockedOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(AddNotifyAchievementsUnlockedOptions other) - { - if (other != null) - { - m_ApiVersion = AchievementsInterface.AddnotifyachievementsunlockedApiLatest; - } - } - - public void Set(object other) - { - Set(other as AddNotifyAchievementsUnlockedOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/AddNotifyAchievementsUnlockedOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/AddNotifyAchievementsUnlockedOptions.cs.meta deleted file mode 100644 index a44b16c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/AddNotifyAchievementsUnlockedOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 27ac1b5bf7e7b7e44b0fd97384e00471 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/AddNotifyAchievementsUnlockedV2Options.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/AddNotifyAchievementsUnlockedV2Options.cs deleted file mode 100644 index 4190e8c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/AddNotifyAchievementsUnlockedV2Options.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Input parameters for the function. - /// - public class AddNotifyAchievementsUnlockedV2Options - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyAchievementsUnlockedV2OptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(AddNotifyAchievementsUnlockedV2Options other) - { - if (other != null) - { - m_ApiVersion = AchievementsInterface.Addnotifyachievementsunlockedv2ApiLatest; - } - } - - public void Set(object other) - { - Set(other as AddNotifyAchievementsUnlockedV2Options); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/AddNotifyAchievementsUnlockedV2Options.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/AddNotifyAchievementsUnlockedV2Options.cs.meta deleted file mode 100644 index a5d4b69..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/AddNotifyAchievementsUnlockedV2Options.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 210bbcd9a74f8db43ada84fcd51d8aca -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyAchievementDefinitionByAchievementIdOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyAchievementDefinitionByAchievementIdOptions.cs deleted file mode 100644 index c05a562..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyAchievementDefinitionByAchievementIdOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Input parameters for the function. - /// - public class CopyAchievementDefinitionByAchievementIdOptions - { - /// - /// Achievement ID to look for when copying definition from the cache - /// - public string AchievementId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyAchievementDefinitionByAchievementIdOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_AchievementId; - - public string AchievementId - { - set - { - Helper.TryMarshalSet(ref m_AchievementId, value); - } - } - - public void Set(CopyAchievementDefinitionByAchievementIdOptions other) - { - if (other != null) - { - m_ApiVersion = AchievementsInterface.CopydefinitionbyachievementidApiLatest; - AchievementId = other.AchievementId; - } - } - - public void Set(object other) - { - Set(other as CopyAchievementDefinitionByAchievementIdOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_AchievementId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyAchievementDefinitionByAchievementIdOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyAchievementDefinitionByAchievementIdOptions.cs.meta deleted file mode 100644 index 8227b16..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyAchievementDefinitionByAchievementIdOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: fa7ef783960cb3a418583f7df08be2b6 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyAchievementDefinitionByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyAchievementDefinitionByIndexOptions.cs deleted file mode 100644 index 0bee755..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyAchievementDefinitionByIndexOptions.cs +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Input parameters for the function. - /// - public class CopyAchievementDefinitionByIndexOptions - { - /// - /// Index of the achievement definition to retrieve from the cache - /// - public uint AchievementIndex { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyAchievementDefinitionByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_AchievementIndex; - - public uint AchievementIndex - { - set - { - m_AchievementIndex = value; - } - } - - public void Set(CopyAchievementDefinitionByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = AchievementsInterface.CopydefinitionbyindexApiLatest; - AchievementIndex = other.AchievementIndex; - } - } - - public void Set(object other) - { - Set(other as CopyAchievementDefinitionByIndexOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyAchievementDefinitionByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyAchievementDefinitionByIndexOptions.cs.meta deleted file mode 100644 index d26d824..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyAchievementDefinitionByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f76bab9e397b93a4e9c35ce563039a44 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyAchievementDefinitionV2ByAchievementIdOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyAchievementDefinitionV2ByAchievementIdOptions.cs deleted file mode 100644 index 358ecd9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyAchievementDefinitionV2ByAchievementIdOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Input parameters for the function. - /// - public class CopyAchievementDefinitionV2ByAchievementIdOptions - { - /// - /// Achievement ID to look for when copying the definition from the cache. - /// - public string AchievementId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyAchievementDefinitionV2ByAchievementIdOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_AchievementId; - - public string AchievementId - { - set - { - Helper.TryMarshalSet(ref m_AchievementId, value); - } - } - - public void Set(CopyAchievementDefinitionV2ByAchievementIdOptions other) - { - if (other != null) - { - m_ApiVersion = AchievementsInterface.Copyachievementdefinitionv2ByachievementidApiLatest; - AchievementId = other.AchievementId; - } - } - - public void Set(object other) - { - Set(other as CopyAchievementDefinitionV2ByAchievementIdOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_AchievementId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyAchievementDefinitionV2ByAchievementIdOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyAchievementDefinitionV2ByAchievementIdOptions.cs.meta deleted file mode 100644 index b0fa6bf..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyAchievementDefinitionV2ByAchievementIdOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d0be84c5a29f5a34ca63f0968ddce2fc -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyAchievementDefinitionV2ByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyAchievementDefinitionV2ByIndexOptions.cs deleted file mode 100644 index ba97502..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyAchievementDefinitionV2ByIndexOptions.cs +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Input parameters for the function. - /// - public class CopyAchievementDefinitionV2ByIndexOptions - { - /// - /// Index of the achievement definition to retrieve from the cache. - /// - public uint AchievementIndex { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyAchievementDefinitionV2ByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_AchievementIndex; - - public uint AchievementIndex - { - set - { - m_AchievementIndex = value; - } - } - - public void Set(CopyAchievementDefinitionV2ByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = AchievementsInterface.Copyachievementdefinitionv2ByindexApiLatest; - AchievementIndex = other.AchievementIndex; - } - } - - public void Set(object other) - { - Set(other as CopyAchievementDefinitionV2ByIndexOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyAchievementDefinitionV2ByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyAchievementDefinitionV2ByIndexOptions.cs.meta deleted file mode 100644 index b234770..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyAchievementDefinitionV2ByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 134fa143d5bcb7a4ca2569833d5f857f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyPlayerAchievementByAchievementIdOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyPlayerAchievementByAchievementIdOptions.cs deleted file mode 100644 index e16dd6b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyPlayerAchievementByAchievementIdOptions.cs +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Input parameters for the function. - /// - public class CopyPlayerAchievementByAchievementIdOptions - { - /// - /// The Product User ID for the user whose achievement is to be retrieved. - /// - public ProductUserId TargetUserId { get; set; } - - /// - /// Achievement ID to search for when retrieving player achievement data from the cache. - /// - public string AchievementId { get; set; } - - /// - /// The Product User ID for the user who is querying for a player achievement. For a Dedicated Server this should be null. - /// - public ProductUserId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyPlayerAchievementByAchievementIdOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_TargetUserId; - private System.IntPtr m_AchievementId; - private System.IntPtr m_LocalUserId; - - public ProductUserId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public string AchievementId - { - set - { - Helper.TryMarshalSet(ref m_AchievementId, value); - } - } - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(CopyPlayerAchievementByAchievementIdOptions other) - { - if (other != null) - { - m_ApiVersion = AchievementsInterface.CopyplayerachievementbyachievementidApiLatest; - TargetUserId = other.TargetUserId; - AchievementId = other.AchievementId; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as CopyPlayerAchievementByAchievementIdOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_TargetUserId); - Helper.TryMarshalDispose(ref m_AchievementId); - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyPlayerAchievementByAchievementIdOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyPlayerAchievementByAchievementIdOptions.cs.meta deleted file mode 100644 index 5b71fa6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyPlayerAchievementByAchievementIdOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 085d9d8848929194f8a2cac75a8b1023 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyPlayerAchievementByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyPlayerAchievementByIndexOptions.cs deleted file mode 100644 index 292f7a3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyPlayerAchievementByIndexOptions.cs +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Input parameters for the function. - /// - public class CopyPlayerAchievementByIndexOptions - { - /// - /// The Product User ID for the user whose achievement is to be retrieved. - /// - public ProductUserId TargetUserId { get; set; } - - /// - /// The index of the player achievement data to retrieve from the cache. - /// - public uint AchievementIndex { get; set; } - - /// - /// The Product User ID for the user who is querying for a player achievement. For a Dedicated Server this should be null. - /// - public ProductUserId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyPlayerAchievementByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_TargetUserId; - private uint m_AchievementIndex; - private System.IntPtr m_LocalUserId; - - public ProductUserId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public uint AchievementIndex - { - set - { - m_AchievementIndex = value; - } - } - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(CopyPlayerAchievementByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = AchievementsInterface.CopyplayerachievementbyindexApiLatest; - TargetUserId = other.TargetUserId; - AchievementIndex = other.AchievementIndex; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as CopyPlayerAchievementByIndexOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_TargetUserId); - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyPlayerAchievementByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyPlayerAchievementByIndexOptions.cs.meta deleted file mode 100644 index 1b550dc..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyPlayerAchievementByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 1a5d7cc06198b2d4ab4de19028eb4737 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyUnlockedAchievementByAchievementIdOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyUnlockedAchievementByAchievementIdOptions.cs deleted file mode 100644 index 0ccf79d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyUnlockedAchievementByAchievementIdOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Input parameters for the function. - /// - public class CopyUnlockedAchievementByAchievementIdOptions - { - /// - /// The Product User ID for the user who is copying the unlocked achievement - /// - public ProductUserId UserId { get; set; } - - /// - /// AchievementId of the unlocked achievement to retrieve from the cache - /// - public string AchievementId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyUnlockedAchievementByAchievementIdOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_UserId; - private System.IntPtr m_AchievementId; - - public ProductUserId UserId - { - set - { - Helper.TryMarshalSet(ref m_UserId, value); - } - } - - public string AchievementId - { - set - { - Helper.TryMarshalSet(ref m_AchievementId, value); - } - } - - public void Set(CopyUnlockedAchievementByAchievementIdOptions other) - { - if (other != null) - { - m_ApiVersion = AchievementsInterface.CopyunlockedachievementbyachievementidApiLatest; - UserId = other.UserId; - AchievementId = other.AchievementId; - } - } - - public void Set(object other) - { - Set(other as CopyUnlockedAchievementByAchievementIdOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_UserId); - Helper.TryMarshalDispose(ref m_AchievementId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyUnlockedAchievementByAchievementIdOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyUnlockedAchievementByAchievementIdOptions.cs.meta deleted file mode 100644 index 3ebb493..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyUnlockedAchievementByAchievementIdOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 1ec39b7c4f2d86f4da0e53b50aa735c6 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyUnlockedAchievementByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyUnlockedAchievementByIndexOptions.cs deleted file mode 100644 index a486c4e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyUnlockedAchievementByIndexOptions.cs +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Input parameters for the function. - /// - public class CopyUnlockedAchievementByIndexOptions - { - /// - /// The Product User ID for the user who is copying the unlocked achievement - /// - public ProductUserId UserId { get; set; } - - /// - /// Index of the unlocked achievement to retrieve from the cache - /// - public uint AchievementIndex { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyUnlockedAchievementByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_UserId; - private uint m_AchievementIndex; - - public ProductUserId UserId - { - set - { - Helper.TryMarshalSet(ref m_UserId, value); - } - } - - public uint AchievementIndex - { - set - { - m_AchievementIndex = value; - } - } - - public void Set(CopyUnlockedAchievementByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = AchievementsInterface.CopyunlockedachievementbyindexApiLatest; - UserId = other.UserId; - AchievementIndex = other.AchievementIndex; - } - } - - public void Set(object other) - { - Set(other as CopyUnlockedAchievementByIndexOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_UserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyUnlockedAchievementByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyUnlockedAchievementByIndexOptions.cs.meta deleted file mode 100644 index 0c855bb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/CopyUnlockedAchievementByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 45a46c9737464a847bf1ba5425fff47f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/Definition.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/Definition.cs deleted file mode 100644 index 1457e6a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/Definition.cs +++ /dev/null @@ -1,310 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Contains information about a single achievement definition with localized text. - /// - public class Definition : ISettable - { - /// - /// Achievement ID that can be used to uniquely identify the achievement. - /// - public string AchievementId { get; set; } - - /// - /// Text representing the Name to display in-game when achievement has been unlocked. - /// - public string DisplayName { get; set; } - - /// - /// Text representing the description to display in-game when achievement has been unlocked. - /// - public string Description { get; set; } - - /// - /// Text representing the name to display in-game when achievement is locked. - /// - public string LockedDisplayName { get; set; } - - /// - /// Text representing the description of what needs to be done to trigger the unlock of this achievement. - /// - public string LockedDescription { get; set; } - - /// - /// Text representing the description to display in-game when achievement is hidden. - /// - public string HiddenDescription { get; set; } - - /// - /// Text representing the description of what happens when the achievement is unlocked. - /// - public string CompletionDescription { get; set; } - - /// - /// Text representing the icon to display in-game when achievement is unlocked. - /// - public string UnlockedIconId { get; set; } - - /// - /// Text representing the icon to display in-game when achievement is locked. - /// - public string LockedIconId { get; set; } - - /// - /// True if achievement is hidden, false otherwise. - /// - public bool IsHidden { get; set; } - - /// - /// Array of stat thresholds that need to be satisfied to unlock the achievement. - /// - public StatThresholds[] StatThresholds { get; set; } - - internal void Set(DefinitionInternal? other) - { - if (other != null) - { - AchievementId = other.Value.AchievementId; - DisplayName = other.Value.DisplayName; - Description = other.Value.Description; - LockedDisplayName = other.Value.LockedDisplayName; - LockedDescription = other.Value.LockedDescription; - HiddenDescription = other.Value.HiddenDescription; - CompletionDescription = other.Value.CompletionDescription; - UnlockedIconId = other.Value.UnlockedIconId; - LockedIconId = other.Value.LockedIconId; - IsHidden = other.Value.IsHidden; - StatThresholds = other.Value.StatThresholds; - } - } - - public void Set(object other) - { - Set(other as DefinitionInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct DefinitionInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_AchievementId; - private System.IntPtr m_DisplayName; - private System.IntPtr m_Description; - private System.IntPtr m_LockedDisplayName; - private System.IntPtr m_LockedDescription; - private System.IntPtr m_HiddenDescription; - private System.IntPtr m_CompletionDescription; - private System.IntPtr m_UnlockedIconId; - private System.IntPtr m_LockedIconId; - private int m_IsHidden; - private int m_StatThresholdsCount; - private System.IntPtr m_StatThresholds; - - public string AchievementId - { - get - { - string value; - Helper.TryMarshalGet(m_AchievementId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_AchievementId, value); - } - } - - public string DisplayName - { - get - { - string value; - Helper.TryMarshalGet(m_DisplayName, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_DisplayName, value); - } - } - - public string Description - { - get - { - string value; - Helper.TryMarshalGet(m_Description, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Description, value); - } - } - - public string LockedDisplayName - { - get - { - string value; - Helper.TryMarshalGet(m_LockedDisplayName, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_LockedDisplayName, value); - } - } - - public string LockedDescription - { - get - { - string value; - Helper.TryMarshalGet(m_LockedDescription, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_LockedDescription, value); - } - } - - public string HiddenDescription - { - get - { - string value; - Helper.TryMarshalGet(m_HiddenDescription, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_HiddenDescription, value); - } - } - - public string CompletionDescription - { - get - { - string value; - Helper.TryMarshalGet(m_CompletionDescription, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_CompletionDescription, value); - } - } - - public string UnlockedIconId - { - get - { - string value; - Helper.TryMarshalGet(m_UnlockedIconId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_UnlockedIconId, value); - } - } - - public string LockedIconId - { - get - { - string value; - Helper.TryMarshalGet(m_LockedIconId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_LockedIconId, value); - } - } - - public bool IsHidden - { - get - { - bool value; - Helper.TryMarshalGet(m_IsHidden, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_IsHidden, value); - } - } - - public StatThresholds[] StatThresholds - { - get - { - StatThresholds[] value; - Helper.TryMarshalGet(m_StatThresholds, out value, m_StatThresholdsCount); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_StatThresholds, value, out m_StatThresholdsCount); - } - } - - public void Set(Definition other) - { - if (other != null) - { - m_ApiVersion = AchievementsInterface.DefinitionApiLatest; - AchievementId = other.AchievementId; - DisplayName = other.DisplayName; - Description = other.Description; - LockedDisplayName = other.LockedDisplayName; - LockedDescription = other.LockedDescription; - HiddenDescription = other.HiddenDescription; - CompletionDescription = other.CompletionDescription; - UnlockedIconId = other.UnlockedIconId; - LockedIconId = other.LockedIconId; - IsHidden = other.IsHidden; - StatThresholds = other.StatThresholds; - } - } - - public void Set(object other) - { - Set(other as Definition); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_AchievementId); - Helper.TryMarshalDispose(ref m_DisplayName); - Helper.TryMarshalDispose(ref m_Description); - Helper.TryMarshalDispose(ref m_LockedDisplayName); - Helper.TryMarshalDispose(ref m_LockedDescription); - Helper.TryMarshalDispose(ref m_HiddenDescription); - Helper.TryMarshalDispose(ref m_CompletionDescription); - Helper.TryMarshalDispose(ref m_UnlockedIconId); - Helper.TryMarshalDispose(ref m_LockedIconId); - Helper.TryMarshalDispose(ref m_StatThresholds); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/Definition.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/Definition.cs.meta deleted file mode 100644 index 6fd26f8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/Definition.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 759a26d7372f9fd46b31ef6c4f1482c0 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/DefinitionV2.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/DefinitionV2.cs deleted file mode 100644 index e646496..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/DefinitionV2.cs +++ /dev/null @@ -1,286 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Contains information about a single achievement definition with localized text. - /// - public class DefinitionV2 : ISettable - { - /// - /// Achievement ID that can be used to uniquely identify the achievement. - /// - public string AchievementId { get; set; } - - /// - /// Localized display name for the achievement when it has been unlocked. - /// - public string UnlockedDisplayName { get; set; } - - /// - /// Localized description for the achievement when it has been unlocked. - /// - public string UnlockedDescription { get; set; } - - /// - /// Localized display name for the achievement when it is locked or hidden. - /// - public string LockedDisplayName { get; set; } - - /// - /// Localized description for the achievement when it is locked or hidden. - /// - public string LockedDescription { get; set; } - - /// - /// Localized flavor text that can be used by the game in an arbitrary manner. This may be null if there is no data configured in the dev portal. - /// - public string FlavorText { get; set; } - - /// - /// URL of an icon to display for the achievement when it is unlocked. This may be null if there is no data configured in the dev portal. - /// - public string UnlockedIconURL { get; set; } - - /// - /// URL of an icon to display for the achievement when it is locked or hidden. This may be null if there is no data configured in the dev portal. - /// - public string LockedIconURL { get; set; } - - /// - /// true if the achievement is hidden; false otherwise. - /// - public bool IsHidden { get; set; } - - /// - /// Array of `` that need to be satisfied to unlock this achievement. Consists of Name and Threshold Value. - /// - public StatThresholds[] StatThresholds { get; set; } - - internal void Set(DefinitionV2Internal? other) - { - if (other != null) - { - AchievementId = other.Value.AchievementId; - UnlockedDisplayName = other.Value.UnlockedDisplayName; - UnlockedDescription = other.Value.UnlockedDescription; - LockedDisplayName = other.Value.LockedDisplayName; - LockedDescription = other.Value.LockedDescription; - FlavorText = other.Value.FlavorText; - UnlockedIconURL = other.Value.UnlockedIconURL; - LockedIconURL = other.Value.LockedIconURL; - IsHidden = other.Value.IsHidden; - StatThresholds = other.Value.StatThresholds; - } - } - - public void Set(object other) - { - Set(other as DefinitionV2Internal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct DefinitionV2Internal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_AchievementId; - private System.IntPtr m_UnlockedDisplayName; - private System.IntPtr m_UnlockedDescription; - private System.IntPtr m_LockedDisplayName; - private System.IntPtr m_LockedDescription; - private System.IntPtr m_FlavorText; - private System.IntPtr m_UnlockedIconURL; - private System.IntPtr m_LockedIconURL; - private int m_IsHidden; - private uint m_StatThresholdsCount; - private System.IntPtr m_StatThresholds; - - public string AchievementId - { - get - { - string value; - Helper.TryMarshalGet(m_AchievementId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_AchievementId, value); - } - } - - public string UnlockedDisplayName - { - get - { - string value; - Helper.TryMarshalGet(m_UnlockedDisplayName, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_UnlockedDisplayName, value); - } - } - - public string UnlockedDescription - { - get - { - string value; - Helper.TryMarshalGet(m_UnlockedDescription, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_UnlockedDescription, value); - } - } - - public string LockedDisplayName - { - get - { - string value; - Helper.TryMarshalGet(m_LockedDisplayName, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_LockedDisplayName, value); - } - } - - public string LockedDescription - { - get - { - string value; - Helper.TryMarshalGet(m_LockedDescription, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_LockedDescription, value); - } - } - - public string FlavorText - { - get - { - string value; - Helper.TryMarshalGet(m_FlavorText, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_FlavorText, value); - } - } - - public string UnlockedIconURL - { - get - { - string value; - Helper.TryMarshalGet(m_UnlockedIconURL, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_UnlockedIconURL, value); - } - } - - public string LockedIconURL - { - get - { - string value; - Helper.TryMarshalGet(m_LockedIconURL, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_LockedIconURL, value); - } - } - - public bool IsHidden - { - get - { - bool value; - Helper.TryMarshalGet(m_IsHidden, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_IsHidden, value); - } - } - - public StatThresholds[] StatThresholds - { - get - { - StatThresholds[] value; - Helper.TryMarshalGet(m_StatThresholds, out value, m_StatThresholdsCount); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_StatThresholds, value, out m_StatThresholdsCount); - } - } - - public void Set(DefinitionV2 other) - { - if (other != null) - { - m_ApiVersion = AchievementsInterface.Definitionv2ApiLatest; - AchievementId = other.AchievementId; - UnlockedDisplayName = other.UnlockedDisplayName; - UnlockedDescription = other.UnlockedDescription; - LockedDisplayName = other.LockedDisplayName; - LockedDescription = other.LockedDescription; - FlavorText = other.FlavorText; - UnlockedIconURL = other.UnlockedIconURL; - LockedIconURL = other.LockedIconURL; - IsHidden = other.IsHidden; - StatThresholds = other.StatThresholds; - } - } - - public void Set(object other) - { - Set(other as DefinitionV2); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_AchievementId); - Helper.TryMarshalDispose(ref m_UnlockedDisplayName); - Helper.TryMarshalDispose(ref m_UnlockedDescription); - Helper.TryMarshalDispose(ref m_LockedDisplayName); - Helper.TryMarshalDispose(ref m_LockedDescription); - Helper.TryMarshalDispose(ref m_FlavorText); - Helper.TryMarshalDispose(ref m_UnlockedIconURL); - Helper.TryMarshalDispose(ref m_LockedIconURL); - Helper.TryMarshalDispose(ref m_StatThresholds); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/DefinitionV2.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/DefinitionV2.cs.meta deleted file mode 100644 index d15f186..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/DefinitionV2.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9dbd42bf6b6d97b4eae1198f5594bccb -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/GetAchievementDefinitionCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/GetAchievementDefinitionCountOptions.cs deleted file mode 100644 index 361c651..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/GetAchievementDefinitionCountOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Input parameters for the function. - /// - public class GetAchievementDefinitionCountOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetAchievementDefinitionCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(GetAchievementDefinitionCountOptions other) - { - if (other != null) - { - m_ApiVersion = AchievementsInterface.GetachievementdefinitioncountApiLatest; - } - } - - public void Set(object other) - { - Set(other as GetAchievementDefinitionCountOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/GetAchievementDefinitionCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/GetAchievementDefinitionCountOptions.cs.meta deleted file mode 100644 index cc38d82..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/GetAchievementDefinitionCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 55492a353089274418fd66eeb5d01af7 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/GetPlayerAchievementCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/GetPlayerAchievementCountOptions.cs deleted file mode 100644 index b9836ca..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/GetPlayerAchievementCountOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Input parameters for the function. - /// - public class GetPlayerAchievementCountOptions - { - /// - /// The Product User ID for the user whose achievement count is being retrieved. - /// - public ProductUserId UserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetPlayerAchievementCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_UserId; - - public ProductUserId UserId - { - set - { - Helper.TryMarshalSet(ref m_UserId, value); - } - } - - public void Set(GetPlayerAchievementCountOptions other) - { - if (other != null) - { - m_ApiVersion = AchievementsInterface.GetplayerachievementcountApiLatest; - UserId = other.UserId; - } - } - - public void Set(object other) - { - Set(other as GetPlayerAchievementCountOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_UserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/GetPlayerAchievementCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/GetPlayerAchievementCountOptions.cs.meta deleted file mode 100644 index 713b911..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/GetPlayerAchievementCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 16211e28b6b235940bb4472dcab28016 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/GetUnlockedAchievementCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/GetUnlockedAchievementCountOptions.cs deleted file mode 100644 index d71911d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/GetUnlockedAchievementCountOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Input parameters for the function. - /// - public class GetUnlockedAchievementCountOptions - { - /// - /// Product User ID for which to retrieve the unlocked achievement count - /// - public ProductUserId UserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetUnlockedAchievementCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_UserId; - - public ProductUserId UserId - { - set - { - Helper.TryMarshalSet(ref m_UserId, value); - } - } - - public void Set(GetUnlockedAchievementCountOptions other) - { - if (other != null) - { - m_ApiVersion = AchievementsInterface.GetunlockedachievementcountApiLatest; - UserId = other.UserId; - } - } - - public void Set(object other) - { - Set(other as GetUnlockedAchievementCountOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_UserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/GetUnlockedAchievementCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/GetUnlockedAchievementCountOptions.cs.meta deleted file mode 100644 index 5b476d3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/GetUnlockedAchievementCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 5c303f38afb7de84fa3f1014f68187cf -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallback.cs deleted file mode 100644 index 583441f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Function prototype definition for notifications that come from - /// - /// A containing the output information and result - public delegate void OnAchievementsUnlockedCallback(OnAchievementsUnlockedCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnAchievementsUnlockedCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallback.cs.meta deleted file mode 100644 index 9499fc8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 55b3d527bbd8b914fa184c06814999a2 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallbackInfo.cs deleted file mode 100644 index 32111eb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallbackInfo.cs +++ /dev/null @@ -1,93 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Output parameters for the Function. - /// - public class OnAchievementsUnlockedCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID for the user who received the unlocked achievements notification - /// - public ProductUserId UserId { get; private set; } - - /// - /// This member is not used and will always be set to NULL. - /// - public string[] AchievementIds { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(OnAchievementsUnlockedCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - UserId = other.Value.UserId; - AchievementIds = other.Value.AchievementIds; - } - } - - public void Set(object other) - { - Set(other as OnAchievementsUnlockedCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct OnAchievementsUnlockedCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_UserId; - private uint m_AchievementsCount; - private System.IntPtr m_AchievementIds; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId UserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_UserId, out value); - return value; - } - } - - public string[] AchievementIds - { - get - { - string[] value; - Helper.TryMarshalGet(m_AchievementIds, out value, m_AchievementsCount, true); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallbackInfo.cs.meta deleted file mode 100644 index 3ce340f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 916dfd77669274945bdb33e77611ff5c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallbackV2.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallbackV2.cs deleted file mode 100644 index c41d716..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallbackV2.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Function prototype definition for notifications that come from - /// - /// An containing the output information and result - public delegate void OnAchievementsUnlockedCallbackV2(OnAchievementsUnlockedCallbackV2Info data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnAchievementsUnlockedCallbackV2Internal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallbackV2.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallbackV2.cs.meta deleted file mode 100644 index e0efdf9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallbackV2.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4ed4cccbb7e07c4498060aed0891ba82 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallbackV2Info.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallbackV2Info.cs deleted file mode 100644 index be20b64..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallbackV2Info.cs +++ /dev/null @@ -1,109 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Output parameters for the Function. - /// - public class OnAchievementsUnlockedCallbackV2Info : ICallbackInfo, ISettable - { - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID for the user who received the unlocked achievements notification - /// - public ProductUserId UserId { get; private set; } - - /// - /// The Achievement ID for the achievement that was unlocked. Pass this to to get the full achievement information. - /// - public string AchievementId { get; private set; } - - /// - /// POSIX timestamp when the achievement was unlocked. - /// - public System.DateTimeOffset? UnlockTime { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(OnAchievementsUnlockedCallbackV2InfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - UserId = other.Value.UserId; - AchievementId = other.Value.AchievementId; - UnlockTime = other.Value.UnlockTime; - } - } - - public void Set(object other) - { - Set(other as OnAchievementsUnlockedCallbackV2InfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct OnAchievementsUnlockedCallbackV2InfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_UserId; - private System.IntPtr m_AchievementId; - private long m_UnlockTime; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId UserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_UserId, out value); - return value; - } - } - - public string AchievementId - { - get - { - string value; - Helper.TryMarshalGet(m_AchievementId, out value); - return value; - } - } - - public System.DateTimeOffset? UnlockTime - { - get - { - System.DateTimeOffset? value; - Helper.TryMarshalGet(m_UnlockTime, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallbackV2Info.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallbackV2Info.cs.meta deleted file mode 100644 index 8c30187..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnAchievementsUnlockedCallbackV2Info.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9bd373a4bafc9d64aa4d754b308a0a8f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnQueryDefinitionsCompleteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnQueryDefinitionsCompleteCallback.cs deleted file mode 100644 index b0f0181..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnQueryDefinitionsCompleteCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// An containing the output information and result - public delegate void OnQueryDefinitionsCompleteCallback(OnQueryDefinitionsCompleteCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnQueryDefinitionsCompleteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnQueryDefinitionsCompleteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnQueryDefinitionsCompleteCallback.cs.meta deleted file mode 100644 index 62ce075..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnQueryDefinitionsCompleteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d2649e4091bc73f46ae05020210500a8 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnQueryDefinitionsCompleteCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnQueryDefinitionsCompleteCallbackInfo.cs deleted file mode 100644 index 4c8fc72..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnQueryDefinitionsCompleteCallbackInfo.cs +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Data containing the result information for a query definitions request. - /// - public class OnQueryDefinitionsCompleteCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// User-defined context that was passed into . - /// - public object ClientData { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(OnQueryDefinitionsCompleteCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - } - } - - public void Set(object other) - { - Set(other as OnQueryDefinitionsCompleteCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct OnQueryDefinitionsCompleteCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnQueryDefinitionsCompleteCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnQueryDefinitionsCompleteCallbackInfo.cs.meta deleted file mode 100644 index 914b474..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnQueryDefinitionsCompleteCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9ce8c14191410f440b85a80149866917 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnQueryPlayerAchievementsCompleteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnQueryPlayerAchievementsCompleteCallback.cs deleted file mode 100644 index 4349aa2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnQueryPlayerAchievementsCompleteCallback.cs +++ /dev/null @@ -1,15 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// - /// An containing the output information and result - public delegate void OnQueryPlayerAchievementsCompleteCallback(OnQueryPlayerAchievementsCompleteCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnQueryPlayerAchievementsCompleteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnQueryPlayerAchievementsCompleteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnQueryPlayerAchievementsCompleteCallback.cs.meta deleted file mode 100644 index f279047..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnQueryPlayerAchievementsCompleteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c4e8f9d54cf2b7747997ad7ba1e63b59 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnQueryPlayerAchievementsCompleteCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnQueryPlayerAchievementsCompleteCallbackInfo.cs deleted file mode 100644 index bf0dbb2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnQueryPlayerAchievementsCompleteCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Data containing the result information for querying a player's achievements request. - /// - public class OnQueryPlayerAchievementsCompleteCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into . - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the user who initiated this request. - /// - public ProductUserId UserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(OnQueryPlayerAchievementsCompleteCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - UserId = other.Value.UserId; - } - } - - public void Set(object other) - { - Set(other as OnQueryPlayerAchievementsCompleteCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct OnQueryPlayerAchievementsCompleteCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_UserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId UserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_UserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnQueryPlayerAchievementsCompleteCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnQueryPlayerAchievementsCompleteCallbackInfo.cs.meta deleted file mode 100644 index 55d6271..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnQueryPlayerAchievementsCompleteCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: dbb9f1c82f709624f8792999f3cadc7a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnUnlockAchievementsCompleteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnUnlockAchievementsCompleteCallback.cs deleted file mode 100644 index 3c5260b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnUnlockAchievementsCompleteCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// An containing the output information and result - public delegate void OnUnlockAchievementsCompleteCallback(OnUnlockAchievementsCompleteCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnUnlockAchievementsCompleteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnUnlockAchievementsCompleteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnUnlockAchievementsCompleteCallback.cs.meta deleted file mode 100644 index 8a92ac2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnUnlockAchievementsCompleteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: afdc780103e694e43ae0ca2579d57980 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnUnlockAchievementsCompleteCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnUnlockAchievementsCompleteCallbackInfo.cs deleted file mode 100644 index 1d0fa94..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnUnlockAchievementsCompleteCallbackInfo.cs +++ /dev/null @@ -1,105 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Data containing the result information for unlocking achievements request. - /// - public class OnUnlockAchievementsCompleteCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into . - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the user who initiated this request. - /// - public ProductUserId UserId { get; private set; } - - /// - /// The number of achievements that the operation unlocked. - /// - public uint AchievementsCount { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(OnUnlockAchievementsCompleteCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - UserId = other.Value.UserId; - AchievementsCount = other.Value.AchievementsCount; - } - } - - public void Set(object other) - { - Set(other as OnUnlockAchievementsCompleteCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct OnUnlockAchievementsCompleteCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_UserId; - private uint m_AchievementsCount; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId UserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_UserId, out value); - return value; - } - } - - public uint AchievementsCount - { - get - { - return m_AchievementsCount; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnUnlockAchievementsCompleteCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnUnlockAchievementsCompleteCallbackInfo.cs.meta deleted file mode 100644 index d7a1c76..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/OnUnlockAchievementsCompleteCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0fc5b2dd583f1db43879814f3f771d37 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/PlayerAchievement.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/PlayerAchievement.cs deleted file mode 100644 index f7b7970..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/PlayerAchievement.cs +++ /dev/null @@ -1,238 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Contains information about a single player achievement. - /// - public class PlayerAchievement : ISettable - { - /// - /// This achievement's unique identifier. - /// - public string AchievementId { get; set; } - - /// - /// Progress towards completing this achievement (as a percentage). - /// - public double Progress { get; set; } - - /// - /// The POSIX timestamp when the achievement was unlocked. If the achievement has not been unlocked, this value will be . - /// - public System.DateTimeOffset? UnlockTime { get; set; } - - /// - /// Array of structures containing information about stat thresholds used to unlock the achievement and the player's current values for those stats. - /// - public PlayerStatInfo[] StatInfo { get; set; } - - /// - /// Localized display name for the achievement based on this specific player's current progress on the achievement. - /// @note The current progress is updated when succeeds and when an achievement is unlocked. - /// - public string DisplayName { get; set; } - - /// - /// Localized description for the achievement based on this specific player's current progress on the achievement. - /// @note The current progress is updated when succeeds and when an achievement is unlocked. - /// - public string Description { get; set; } - - /// - /// URL of an icon to display for the achievement based on this specific player's current progress on the achievement. This may be null if there is no data configured in the dev portal. - /// @note The current progress is updated when succeeds and when an achievement is unlocked. - /// - public string IconURL { get; set; } - - /// - /// Localized flavor text that can be used by the game in an arbitrary manner. This may be null if there is no data configured in the dev portal. - /// - public string FlavorText { get; set; } - - internal void Set(PlayerAchievementInternal? other) - { - if (other != null) - { - AchievementId = other.Value.AchievementId; - Progress = other.Value.Progress; - UnlockTime = other.Value.UnlockTime; - StatInfo = other.Value.StatInfo; - DisplayName = other.Value.DisplayName; - Description = other.Value.Description; - IconURL = other.Value.IconURL; - FlavorText = other.Value.FlavorText; - } - } - - public void Set(object other) - { - Set(other as PlayerAchievementInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct PlayerAchievementInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_AchievementId; - private double m_Progress; - private long m_UnlockTime; - private int m_StatInfoCount; - private System.IntPtr m_StatInfo; - private System.IntPtr m_DisplayName; - private System.IntPtr m_Description; - private System.IntPtr m_IconURL; - private System.IntPtr m_FlavorText; - - public string AchievementId - { - get - { - string value; - Helper.TryMarshalGet(m_AchievementId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_AchievementId, value); - } - } - - public double Progress - { - get - { - return m_Progress; - } - - set - { - m_Progress = value; - } - } - - public System.DateTimeOffset? UnlockTime - { - get - { - System.DateTimeOffset? value; - Helper.TryMarshalGet(m_UnlockTime, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_UnlockTime, value); - } - } - - public PlayerStatInfo[] StatInfo - { - get - { - PlayerStatInfo[] value; - Helper.TryMarshalGet(m_StatInfo, out value, m_StatInfoCount); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_StatInfo, value, out m_StatInfoCount); - } - } - - public string DisplayName - { - get - { - string value; - Helper.TryMarshalGet(m_DisplayName, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_DisplayName, value); - } - } - - public string Description - { - get - { - string value; - Helper.TryMarshalGet(m_Description, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Description, value); - } - } - - public string IconURL - { - get - { - string value; - Helper.TryMarshalGet(m_IconURL, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_IconURL, value); - } - } - - public string FlavorText - { - get - { - string value; - Helper.TryMarshalGet(m_FlavorText, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_FlavorText, value); - } - } - - public void Set(PlayerAchievement other) - { - if (other != null) - { - m_ApiVersion = AchievementsInterface.PlayerachievementApiLatest; - AchievementId = other.AchievementId; - Progress = other.Progress; - UnlockTime = other.UnlockTime; - StatInfo = other.StatInfo; - DisplayName = other.DisplayName; - Description = other.Description; - IconURL = other.IconURL; - FlavorText = other.FlavorText; - } - } - - public void Set(object other) - { - Set(other as PlayerAchievement); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_AchievementId); - Helper.TryMarshalDispose(ref m_StatInfo); - Helper.TryMarshalDispose(ref m_DisplayName); - Helper.TryMarshalDispose(ref m_Description); - Helper.TryMarshalDispose(ref m_IconURL); - Helper.TryMarshalDispose(ref m_FlavorText); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/PlayerAchievement.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/PlayerAchievement.cs.meta deleted file mode 100644 index 663aa82..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/PlayerAchievement.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 316dde722dd739d468d71806ed2b59cb -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/PlayerStatInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/PlayerStatInfo.cs deleted file mode 100644 index 8112cfe..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/PlayerStatInfo.cs +++ /dev/null @@ -1,113 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Contains information about a collection of stat info data. - /// - /// - public class PlayerStatInfo : ISettable - { - /// - /// The name of the stat. - /// - public string Name { get; set; } - - /// - /// The current value of the stat. - /// - public int CurrentValue { get; set; } - - /// - /// The threshold value of the stat, used in determining when to unlock an achievement. - /// - public int ThresholdValue { get; set; } - - internal void Set(PlayerStatInfoInternal? other) - { - if (other != null) - { - Name = other.Value.Name; - CurrentValue = other.Value.CurrentValue; - ThresholdValue = other.Value.ThresholdValue; - } - } - - public void Set(object other) - { - Set(other as PlayerStatInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct PlayerStatInfoInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Name; - private int m_CurrentValue; - private int m_ThresholdValue; - - public string Name - { - get - { - string value; - Helper.TryMarshalGet(m_Name, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Name, value); - } - } - - public int CurrentValue - { - get - { - return m_CurrentValue; - } - - set - { - m_CurrentValue = value; - } - } - - public int ThresholdValue - { - get - { - return m_ThresholdValue; - } - - set - { - m_ThresholdValue = value; - } - } - - public void Set(PlayerStatInfo other) - { - if (other != null) - { - m_ApiVersion = AchievementsInterface.PlayerstatinfoApiLatest; - Name = other.Name; - CurrentValue = other.CurrentValue; - ThresholdValue = other.ThresholdValue; - } - } - - public void Set(object other) - { - Set(other as PlayerStatInfo); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Name); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/PlayerStatInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/PlayerStatInfo.cs.meta deleted file mode 100644 index c0f4d9c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/PlayerStatInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ced2df0b1e8734a4a900056b1f1f84ea -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/QueryDefinitionsOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/QueryDefinitionsOptions.cs deleted file mode 100644 index 87193fe..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/QueryDefinitionsOptions.cs +++ /dev/null @@ -1,86 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Input parameters for the function. - /// - public class QueryDefinitionsOptions - { - /// - /// Product User ID for user who is querying definitions. - /// The localized text returned will be based on the locale code of the given user if they have a linked Epic Online Services Account ID. - /// The localized text returned can also be overridden using to override the locale. - /// If the locale code is not overridden and LocalUserId is not valid, default text will be returned. - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// Deprecated - /// - public EpicAccountId EpicUserId_DEPRECATED { get; set; } - - /// - /// Deprecated - /// - public string[] HiddenAchievementIds_DEPRECATED { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryDefinitionsOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_EpicUserId_DEPRECATED; - private System.IntPtr m_HiddenAchievementIds_DEPRECATED; - private uint m_HiddenAchievementsCount_DEPRECATED; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public EpicAccountId EpicUserId_DEPRECATED - { - set - { - Helper.TryMarshalSet(ref m_EpicUserId_DEPRECATED, value); - } - } - - public string[] HiddenAchievementIds_DEPRECATED - { - set - { - Helper.TryMarshalSet(ref m_HiddenAchievementIds_DEPRECATED, value, out m_HiddenAchievementsCount_DEPRECATED, true); - } - } - - public void Set(QueryDefinitionsOptions other) - { - if (other != null) - { - m_ApiVersion = AchievementsInterface.QuerydefinitionsApiLatest; - LocalUserId = other.LocalUserId; - EpicUserId_DEPRECATED = other.EpicUserId_DEPRECATED; - HiddenAchievementIds_DEPRECATED = other.HiddenAchievementIds_DEPRECATED; - } - } - - public void Set(object other) - { - Set(other as QueryDefinitionsOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_EpicUserId_DEPRECATED); - Helper.TryMarshalDispose(ref m_HiddenAchievementIds_DEPRECATED); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/QueryDefinitionsOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/QueryDefinitionsOptions.cs.meta deleted file mode 100644 index 3cbfd07..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/QueryDefinitionsOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a60e3c7343dfeb44d89f0cd7375ca5e3 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/QueryPlayerAchievementsOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/QueryPlayerAchievementsOptions.cs deleted file mode 100644 index 45b578d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/QueryPlayerAchievementsOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Input parameters for the function. - /// - public class QueryPlayerAchievementsOptions - { - /// - /// The Product User ID for the user whose achievements are to be retrieved. - /// - public ProductUserId TargetUserId { get; set; } - - /// - /// The Product User ID for the user who is querying for player achievements. For a Dedicated Server this should be null. - /// - public ProductUserId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryPlayerAchievementsOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_TargetUserId; - private System.IntPtr m_LocalUserId; - - public ProductUserId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(QueryPlayerAchievementsOptions other) - { - if (other != null) - { - m_ApiVersion = AchievementsInterface.QueryplayerachievementsApiLatest; - TargetUserId = other.TargetUserId; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as QueryPlayerAchievementsOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_TargetUserId); - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/QueryPlayerAchievementsOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/QueryPlayerAchievementsOptions.cs.meta deleted file mode 100644 index 23c4fed..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/QueryPlayerAchievementsOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 29b0bdbb7c6af8848bcbfb9b79d79d19 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/StatThresholds.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/StatThresholds.cs deleted file mode 100644 index c997e0f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/StatThresholds.cs +++ /dev/null @@ -1,98 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Contains information about a collection of stat threshold data. - /// - /// The threshold will depend on the stat aggregate type: - /// LATEST (Tracks the latest value) - /// MAX (Tracks the maximum value) - /// MIN (Tracks the minimum value) - /// SUM (Generates a rolling sum of the value) - /// - /// - public class StatThresholds : ISettable - { - /// - /// The name of the stat. - /// - public string Name { get; set; } - - /// - /// The value that the stat must surpass to satisfy the requirement for unlocking an achievement. - /// - public int Threshold { get; set; } - - internal void Set(StatThresholdsInternal? other) - { - if (other != null) - { - Name = other.Value.Name; - Threshold = other.Value.Threshold; - } - } - - public void Set(object other) - { - Set(other as StatThresholdsInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct StatThresholdsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Name; - private int m_Threshold; - - public string Name - { - get - { - string value; - Helper.TryMarshalGet(m_Name, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Name, value); - } - } - - public int Threshold - { - get - { - return m_Threshold; - } - - set - { - m_Threshold = value; - } - } - - public void Set(StatThresholds other) - { - if (other != null) - { - m_ApiVersion = AchievementsInterface.StatthresholdsApiLatest; - Name = other.Name; - Threshold = other.Threshold; - } - } - - public void Set(object other) - { - Set(other as StatThresholds); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Name); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/StatThresholds.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/StatThresholds.cs.meta deleted file mode 100644 index 8e89a64..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/StatThresholds.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: bd2288a7805cc26488d332a2ff509c88 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/UnlockAchievementsOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/UnlockAchievementsOptions.cs deleted file mode 100644 index 8417970..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/UnlockAchievementsOptions.cs +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Input parameters for the function. - /// - public class UnlockAchievementsOptions - { - /// - /// The Product User ID for the user whose achievements we want to unlock. - /// - public ProductUserId UserId { get; set; } - - /// - /// An array of Achievement IDs to unlock. - /// - public string[] AchievementIds { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct UnlockAchievementsOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_UserId; - private System.IntPtr m_AchievementIds; - private uint m_AchievementsCount; - - public ProductUserId UserId - { - set - { - Helper.TryMarshalSet(ref m_UserId, value); - } - } - - public string[] AchievementIds - { - set - { - Helper.TryMarshalSet(ref m_AchievementIds, value, out m_AchievementsCount, true); - } - } - - public void Set(UnlockAchievementsOptions other) - { - if (other != null) - { - m_ApiVersion = AchievementsInterface.UnlockachievementsApiLatest; - UserId = other.UserId; - AchievementIds = other.AchievementIds; - } - } - - public void Set(object other) - { - Set(other as UnlockAchievementsOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_UserId); - Helper.TryMarshalDispose(ref m_AchievementIds); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/UnlockAchievementsOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/UnlockAchievementsOptions.cs.meta deleted file mode 100644 index e50ba44..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/UnlockAchievementsOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: fb4406abb38d8c34a96f3108cb0bc2fa -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/UnlockedAchievement.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/UnlockedAchievement.cs deleted file mode 100644 index bdee194..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/UnlockedAchievement.cs +++ /dev/null @@ -1,93 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Achievements -{ - /// - /// Contains information about a single unlocked achievement. - /// - public class UnlockedAchievement : ISettable - { - /// - /// Achievement ID that can be used to uniquely identify the unlocked achievement. - /// - public string AchievementId { get; set; } - - /// - /// If not then this is the POSIX timestamp that the achievement was unlocked. - /// - public System.DateTimeOffset? UnlockTime { get; set; } - - internal void Set(UnlockedAchievementInternal? other) - { - if (other != null) - { - AchievementId = other.Value.AchievementId; - UnlockTime = other.Value.UnlockTime; - } - } - - public void Set(object other) - { - Set(other as UnlockedAchievementInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct UnlockedAchievementInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_AchievementId; - private long m_UnlockTime; - - public string AchievementId - { - get - { - string value; - Helper.TryMarshalGet(m_AchievementId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_AchievementId, value); - } - } - - public System.DateTimeOffset? UnlockTime - { - get - { - System.DateTimeOffset? value; - Helper.TryMarshalGet(m_UnlockTime, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_UnlockTime, value); - } - } - - public void Set(UnlockedAchievement other) - { - if (other != null) - { - m_ApiVersion = AchievementsInterface.UnlockedachievementApiLatest; - AchievementId = other.AchievementId; - UnlockTime = other.UnlockTime; - } - } - - public void Set(object other) - { - Set(other as UnlockedAchievement); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_AchievementId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/UnlockedAchievement.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/UnlockedAchievement.cs.meta deleted file mode 100644 index a365bdb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Achievements/UnlockedAchievement.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: da69733683f54bb4aac4f665f61eff80 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Android.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Android.meta deleted file mode 100644 index f0addab..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Android.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: a40f1081133a3a74ba4e81e86bc9b8df -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Android/Platform.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Android/Platform.meta deleted file mode 100644 index 04c5616..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Android/Platform.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: dd14c90cd7aa875418a308492e50ced0 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Android/Platform/AndroidInitializeOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Android/Platform/AndroidInitializeOptions.cs deleted file mode 100644 index f5ebd54..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Android/Platform/AndroidInitializeOptions.cs +++ /dev/null @@ -1,171 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Platform -{ - /// - /// Options for initializing the Epic Online Services SDK. - /// - public class AndroidInitializeOptions - { - /// - /// A custom memory allocator, if desired. - /// - public System.IntPtr AllocateMemoryFunction { get; set; } - - /// - /// A corresponding memory reallocator. If the AllocateMemoryFunction is nulled, then this field must also be nulled. - /// - public System.IntPtr ReallocateMemoryFunction { get; set; } - - /// - /// A corresponding memory releaser. If the AllocateMemoryFunction is nulled, then this field must also be nulled. - /// - public System.IntPtr ReleaseMemoryFunction { get; set; } - - /// - /// The name of the product using the Epic Online Services SDK. - /// - /// The name string is required to be non-empty and at maximum of 64 characters long. - /// The string buffer can consist of the following characters: - /// A-Z, a-z, 0-9, dot, underscore, space, exclamation mark, question mark, and sign, hyphen, parenthesis, plus, minus, colon. - /// - public string ProductName { get; set; } - - /// - /// Product version of the running application. - /// - /// The name string has same requirements as the ProductName string. - /// - public string ProductVersion { get; set; } - - /// - /// A reserved field that should always be nulled. - /// - public System.IntPtr Reserved { get; set; } - - /// - /// This field is for system specific initialization if any. - /// - /// If provided then the structure will be located in /eos_.h. - /// The structure will be named EOS__InitializeOptions. - /// - public AndroidInitializeOptionsSystemInitializeOptions SystemInitializeOptions { get; set; } - - /// - /// The thread affinity override values for each category of thread. - /// - public InitializeThreadAffinity OverrideThreadAffinity { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AndroidInitializeOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_AllocateMemoryFunction; - private System.IntPtr m_ReallocateMemoryFunction; - private System.IntPtr m_ReleaseMemoryFunction; - private System.IntPtr m_ProductName; - private System.IntPtr m_ProductVersion; - private System.IntPtr m_Reserved; - private System.IntPtr m_SystemInitializeOptions; - private System.IntPtr m_OverrideThreadAffinity; - - public System.IntPtr AllocateMemoryFunction - { - set - { - m_AllocateMemoryFunction = value; - } - } - - public System.IntPtr ReallocateMemoryFunction - { - set - { - m_ReallocateMemoryFunction = value; - } - } - - public System.IntPtr ReleaseMemoryFunction - { - set - { - m_ReleaseMemoryFunction = value; - } - } - - public string ProductName - { - set - { - Helper.TryMarshalSet(ref m_ProductName, value); - } - } - - public string ProductVersion - { - set - { - Helper.TryMarshalSet(ref m_ProductVersion, value); - } - } - - public System.IntPtr Reserved - { - set - { - m_Reserved = value; - } - } - - public AndroidInitializeOptionsSystemInitializeOptions SystemInitializeOptions - { - set - { - Helper.TryMarshalSet(ref m_SystemInitializeOptions, value); - } - } - - public InitializeThreadAffinity OverrideThreadAffinity - { - set - { - Helper.TryMarshalSet(ref m_OverrideThreadAffinity, value); - } - } - - public void Set(AndroidInitializeOptions other) - { - if (other != null) - { - m_ApiVersion = PlatformInterface.InitializeApiLatest; - AllocateMemoryFunction = other.AllocateMemoryFunction; - ReallocateMemoryFunction = other.ReallocateMemoryFunction; - ReleaseMemoryFunction = other.ReleaseMemoryFunction; - ProductName = other.ProductName; - ProductVersion = other.ProductVersion; - Reserved = other.Reserved; - SystemInitializeOptions = other.SystemInitializeOptions; - OverrideThreadAffinity = other.OverrideThreadAffinity; - } - } - - public void Set(object other) - { - Set(other as AndroidInitializeOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_AllocateMemoryFunction); - Helper.TryMarshalDispose(ref m_ReallocateMemoryFunction); - Helper.TryMarshalDispose(ref m_ReleaseMemoryFunction); - Helper.TryMarshalDispose(ref m_ProductName); - Helper.TryMarshalDispose(ref m_ProductVersion); - Helper.TryMarshalDispose(ref m_Reserved); - Helper.TryMarshalDispose(ref m_SystemInitializeOptions); - Helper.TryMarshalDispose(ref m_OverrideThreadAffinity); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Android/Platform/AndroidInitializeOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Android/Platform/AndroidInitializeOptions.cs.meta deleted file mode 100644 index ac1ca3f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Android/Platform/AndroidInitializeOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e7df45f6b7ad84746b10516893503a1c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Android/Platform/AndroidInitializeOptionsSystemInitializeOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Android/Platform/AndroidInitializeOptionsSystemInitializeOptions.cs deleted file mode 100644 index 5c35608..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Android/Platform/AndroidInitializeOptionsSystemInitializeOptions.cs +++ /dev/null @@ -1,116 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Platform -{ - /// - /// Options for initializing mount paths required for some platforms. - /// - public class AndroidInitializeOptionsSystemInitializeOptions : ISettable - { - /// - /// Reserved, set to null - /// - public System.IntPtr Reserved { get; set; } - - /// - /// Full internal directory path. Can be null - /// - public string OptionalInternalDirectory { get; set; } - - /// - /// Full external directory path. Can be null - /// - public string OptionalExternalDirectory { get; set; } - - internal void Set(AndroidInitializeOptionsSystemInitializeOptionsInternal? other) - { - if (other != null) - { - Reserved = other.Value.Reserved; - OptionalInternalDirectory = other.Value.OptionalInternalDirectory; - OptionalExternalDirectory = other.Value.OptionalExternalDirectory; - } - } - - public void Set(object other) - { - Set(other as AndroidInitializeOptionsSystemInitializeOptionsInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AndroidInitializeOptionsSystemInitializeOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Reserved; - private System.IntPtr m_OptionalInternalDirectory; - private System.IntPtr m_OptionalExternalDirectory; - - public System.IntPtr Reserved - { - get - { - return m_Reserved; - } - - set - { - m_Reserved = value; - } - } - - public string OptionalInternalDirectory - { - get - { - string value; - Helper.TryMarshalGet(m_OptionalInternalDirectory, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_OptionalInternalDirectory, value); - } - } - - public string OptionalExternalDirectory - { - get - { - string value; - Helper.TryMarshalGet(m_OptionalExternalDirectory, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_OptionalExternalDirectory, value); - } - } - - public void Set(AndroidInitializeOptionsSystemInitializeOptions other) - { - if (other != null) - { - m_ApiVersion = PlatformInterface.AndroidinitializeoptionssysteminitializeoptionsApiLatest; - Reserved = other.Reserved; - OptionalInternalDirectory = other.OptionalInternalDirectory; - OptionalExternalDirectory = other.OptionalExternalDirectory; - } - } - - public void Set(object other) - { - Set(other as AndroidInitializeOptionsSystemInitializeOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Reserved); - Helper.TryMarshalDispose(ref m_OptionalInternalDirectory); - Helper.TryMarshalDispose(ref m_OptionalExternalDirectory); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Android/Platform/AndroidInitializeOptionsSystemInitializeOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Android/Platform/AndroidInitializeOptionsSystemInitializeOptions.cs.meta deleted file mode 100644 index 4c10c3f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Android/Platform/AndroidInitializeOptionsSystemInitializeOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 57b5833a3ee6b2b4dac4d3c6ebd119b6 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Android/Platform/PlatformInterface.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Android/Platform/PlatformInterface.cs deleted file mode 100644 index 4d53689..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Android/Platform/PlatformInterface.cs +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Platform -{ - public sealed partial class PlatformInterface : Handle - { - /// - /// The most recent version of the structure. - /// - public const int AndroidinitializeoptionssysteminitializeoptionsApiLatest = 2; - - public static Result Initialize(AndroidInitializeOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Initialize(optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Android/Platform/PlatformInterface.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Android/Platform/PlatformInterface.cs.meta deleted file mode 100644 index 202447a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Android/Platform/PlatformInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 91d2dafb12ada2c40819e5aef8662bc0 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient.meta deleted file mode 100644 index 32678cb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: b6ea4fc7c3c544943bae5aaeb06710d2 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AddExternalIntegrityCatalogOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AddExternalIntegrityCatalogOptions.cs deleted file mode 100644 index f71a4d2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AddExternalIntegrityCatalogOptions.cs +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatClient -{ - public class AddExternalIntegrityCatalogOptions - { - /// - /// UTF-8 path to the .bin catalog file to add - /// - public string PathToBinFile { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddExternalIntegrityCatalogOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_PathToBinFile; - - public string PathToBinFile - { - set - { - Helper.TryMarshalSet(ref m_PathToBinFile, value); - } - } - - public void Set(AddExternalIntegrityCatalogOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatClientInterface.AddexternalintegritycatalogApiLatest; - PathToBinFile = other.PathToBinFile; - } - } - - public void Set(object other) - { - Set(other as AddExternalIntegrityCatalogOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_PathToBinFile); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AddExternalIntegrityCatalogOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AddExternalIntegrityCatalogOptions.cs.meta deleted file mode 100644 index ff92f7b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AddExternalIntegrityCatalogOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 37835da4a29fb494a83661e48a363e04 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AddNotifyMessageToPeerOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AddNotifyMessageToPeerOptions.cs deleted file mode 100644 index e1f69c9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AddNotifyMessageToPeerOptions.cs +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatClient -{ - public class AddNotifyMessageToPeerOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyMessageToPeerOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(AddNotifyMessageToPeerOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatClientInterface.AddnotifymessagetopeerApiLatest; - } - } - - public void Set(object other) - { - Set(other as AddNotifyMessageToPeerOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AddNotifyMessageToPeerOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AddNotifyMessageToPeerOptions.cs.meta deleted file mode 100644 index 47406e1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AddNotifyMessageToPeerOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3ab712a264803b24991e0b02f5afc3a8 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AddNotifyMessageToServerOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AddNotifyMessageToServerOptions.cs deleted file mode 100644 index 9255538..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AddNotifyMessageToServerOptions.cs +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatClient -{ - public class AddNotifyMessageToServerOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyMessageToServerOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(AddNotifyMessageToServerOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatClientInterface.AddnotifymessagetoserverApiLatest; - } - } - - public void Set(object other) - { - Set(other as AddNotifyMessageToServerOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AddNotifyMessageToServerOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AddNotifyMessageToServerOptions.cs.meta deleted file mode 100644 index d5aa272..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AddNotifyMessageToServerOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0f20d6582521c684db396e8e6378ffeb -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AddNotifyPeerActionRequiredOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AddNotifyPeerActionRequiredOptions.cs deleted file mode 100644 index f3a5dd1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AddNotifyPeerActionRequiredOptions.cs +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatClient -{ - public class AddNotifyPeerActionRequiredOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyPeerActionRequiredOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(AddNotifyPeerActionRequiredOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatClientInterface.AddnotifypeeractionrequiredApiLatest; - } - } - - public void Set(object other) - { - Set(other as AddNotifyPeerActionRequiredOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AddNotifyPeerActionRequiredOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AddNotifyPeerActionRequiredOptions.cs.meta deleted file mode 100644 index 9a1fa80..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AddNotifyPeerActionRequiredOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: bb40b656855d7af4580923c0c83e034b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AddNotifyPeerAuthStatusChangedOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AddNotifyPeerAuthStatusChangedOptions.cs deleted file mode 100644 index b9feae8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AddNotifyPeerAuthStatusChangedOptions.cs +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatClient -{ - public class AddNotifyPeerAuthStatusChangedOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyPeerAuthStatusChangedOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(AddNotifyPeerAuthStatusChangedOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatClientInterface.AddnotifypeerauthstatuschangedApiLatest; - } - } - - public void Set(object other) - { - Set(other as AddNotifyPeerAuthStatusChangedOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AddNotifyPeerAuthStatusChangedOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AddNotifyPeerAuthStatusChangedOptions.cs.meta deleted file mode 100644 index a2af873..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AddNotifyPeerAuthStatusChangedOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 8c2c834c0c1490b41b5879f20d33e2be -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AntiCheatClientInterface.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AntiCheatClientInterface.cs deleted file mode 100644 index 0cd3c3a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AntiCheatClientInterface.cs +++ /dev/null @@ -1,563 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatClient -{ - public sealed partial class AntiCheatClientInterface : Handle - { - public AntiCheatClientInterface() - { - } - - public AntiCheatClientInterface(System.IntPtr innerHandle) : base(innerHandle) - { - } - - public const int AddexternalintegritycatalogApiLatest = 1; - - public const int AddnotifymessagetopeerApiLatest = 1; - - public const int AddnotifymessagetoserverApiLatest = 1; - - public const int AddnotifypeeractionrequiredApiLatest = 1; - - public const int AddnotifypeerauthstatuschangedApiLatest = 1; - - public const int BeginsessionApiLatest = 3; - - public const int EndsessionApiLatest = 1; - - public const int GetprotectmessageoutputlengthApiLatest = 1; - - /// - /// A special peer handle that represents the client itself. - /// It does not need to be registered or unregistered and is - /// used in OnPeerActionRequiredCallback to quickly signal to the user - /// that they will not be able to join online play. - /// - public const int PeerSelf = (-1); - - public const int PollstatusApiLatest = 1; - - public const int ProtectmessageApiLatest = 1; - - public const int ReceivemessagefrompeerApiLatest = 1; - - public const int ReceivemessagefromserverApiLatest = 1; - - public const int RegisterpeerApiLatest = 1; - - public const int UnprotectmessageApiLatest = 1; - - public const int UnregisterpeerApiLatest = 1; - - /// - /// Optional. Adds an integrity catalog and certificate pair from outside the game directory, - /// for example to support mods that load from elsewhere. - /// Mode: All - /// - /// Structure containing input data. - /// - /// - If the integrity catalog was added successfully - /// - If input data was invalid - /// - public Result AddExternalIntegrityCatalog(AddExternalIntegrityCatalogOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_AntiCheatClient_AddExternalIntegrityCatalog(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Add a callback issued when a new message must be dispatched to a connected peer. The bound function will only be called - /// between a successful call to and the matching call in mode . - /// Mode: . - /// - /// Structure containing input data - /// This value is returned to the caller when NotificationFn is invoked - /// The callback to be fired - /// - /// A valid notification ID if successfully bound, or otherwise - /// - public ulong AddNotifyMessageToPeer(AddNotifyMessageToPeerOptions options, object clientData, OnMessageToPeerCallback notificationFn) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var notificationFnInternal = new OnMessageToPeerCallbackInternal(OnMessageToPeerCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - - var funcResult = Bindings.EOS_AntiCheatClient_AddNotifyMessageToPeer(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Add a callback issued when a new message must be dispatched to the game server. The bound function will only be called - /// between a successful call to and the matching call in mode . - /// Mode: . - /// - /// Structure containing input data - /// This value is returned to the caller when NotificationFn is invoked - /// The callback to be fired - /// - /// A valid notification ID if successfully bound, or otherwise - /// - public ulong AddNotifyMessageToServer(AddNotifyMessageToServerOptions options, object clientData, OnMessageToServerCallback notificationFn) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var notificationFnInternal = new OnMessageToServerCallbackInternal(OnMessageToServerCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - - var funcResult = Bindings.EOS_AntiCheatClient_AddNotifyMessageToServer(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Add a callback issued when an action must be applied to a connected client. The bound function will only be called - /// between a successful call to and the matching call in mode . - /// Mode: . - /// - /// Structure containing input data - /// This value is returned to the caller when NotificationFn is invoked - /// The callback to be fired - /// - /// A valid notification ID if successfully bound, or otherwise - /// - public ulong AddNotifyPeerActionRequired(AddNotifyPeerActionRequiredOptions options, object clientData, OnPeerActionRequiredCallback notificationFn) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var notificationFnInternal = new OnPeerActionRequiredCallbackInternal(OnPeerActionRequiredCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - - var funcResult = Bindings.EOS_AntiCheatClient_AddNotifyPeerActionRequired(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Add an optional callback issued when a connected peer's authentication status changes. The bound function will only be called - /// between a successful call to and the matching call in mode . - /// Mode: . - /// - /// Structure containing input data - /// This value is returned to the caller when NotificationFn is invoked - /// The callback to be fired - /// - /// A valid notification ID if successfully bound, or otherwise - /// - public ulong AddNotifyPeerAuthStatusChanged(AddNotifyPeerAuthStatusChangedOptions options, object clientData, OnPeerAuthStatusChangedCallback notificationFn) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var notificationFnInternal = new OnPeerAuthStatusChangedCallbackInternal(OnPeerAuthStatusChangedCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - - var funcResult = Bindings.EOS_AntiCheatClient_AddNotifyPeerAuthStatusChanged(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Begins a multiplayer game session. After this call returns successfully, the client is ready to exchange - /// anti-cheat messages with a game server or peer(s). When leaving one game session and connecting to a - /// different one, a new anti-cheat session must be created by calling and again. - /// Mode: All - /// - /// Structure containing input data. - /// - /// - If the session was started successfully - /// - If input data was invalid - /// - If the current mode does not support this function - /// - public Result BeginSession(BeginSessionOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_AntiCheatClient_BeginSession(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Ends a multiplayer game session, either by leaving an ongoing session or shutting it down entirely. - /// Mode: All - /// - /// Must be called when the multiplayer session ends, or when the local user leaves a session in progress. - /// - /// Structure containing input data. - /// - /// - If the session was ended normally - /// - If input data was invalid - /// - If the current mode does not support this function - /// - public Result EndSession(EndSessionOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_AntiCheatClient_EndSession(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Optional NetProtect feature for game message encryption. - /// Calculates the required decrypted buffer size for a given input data length. - /// This will not change for a given SDK version, and allows one time allocation of reusable buffers. - /// Mode: . - /// - /// Structure containing input data. - /// The length in bytes that is required to call ProtectMessage on the given input size. - /// - /// - If the output length was calculated successfully - /// - If input data was invalid - /// - If the current mode does not support this function - /// - public Result GetProtectMessageOutputLength(GetProtectMessageOutputLengthOptions options, out uint outBufferLengthBytes) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - outBufferLengthBytes = Helper.GetDefault(); - - var funcResult = Bindings.EOS_AntiCheatClient_GetProtectMessageOutputLength(InnerHandle, optionsAddress, ref outBufferLengthBytes); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Polls for changes in client integrity status. - /// Mode: All - /// - /// The purpose of this function is to allow the game to display information - /// about anti-cheat integrity problems to the user. These are often the result of a - /// corrupt game installation rather than cheating attempts. This function does not - /// check for violations, it only provides information about violations which have - /// automatically been discovered by the anti-cheat client. Such a violation may occur - /// at any time and afterwards the user will be unable to join any protected multiplayer - /// session until after restarting the game. - /// - /// Structure containing input data. - /// On success, receives a code describing the violation that occurred. - /// On success, receives a string describing the violation which should be displayed to the user. - /// - /// - If violation information was returned successfully - /// - If OutMessage is too small to receive the message string. Call again with a larger OutMessage. - /// - If no violation has occurred since the last call - /// - public Result PollStatus(PollStatusOptions options, AntiCheatClientViolationType violationType, out string outMessage) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - System.IntPtr outMessageAddress = System.IntPtr.Zero; - uint OutMessageLength = options.OutMessageLength; - Helper.TryMarshalAllocate(ref outMessageAddress, OutMessageLength, out _); - - var funcResult = Bindings.EOS_AntiCheatClient_PollStatus(InnerHandle, optionsAddress, violationType, outMessageAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryMarshalGet(outMessageAddress, out outMessage); - Helper.TryMarshalDispose(ref outMessageAddress); - - return funcResult; - } - - /// - /// Optional NetProtect feature for game message encryption. - /// Encrypts an arbitrary message that will be sent to the game server and decrypted on the other side. - /// Mode: . - /// - /// Options.Data and OutBuffer may refer to the same buffer to encrypt in place. - /// - /// Structure containing input data. - /// On success, buffer where encrypted message data will be written. - /// Number of bytes that were written to OutBuffer. - /// - /// - If the message was protected successfully - /// - If input data was invalid - /// - If the current mode does not support this function - /// - public Result ProtectMessage(ProtectMessageOptions options, out byte[] outBuffer) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - System.IntPtr outBufferAddress = System.IntPtr.Zero; - uint outBufferLengthBytes = options.OutBufferSizeBytes; - Helper.TryMarshalAllocate(ref outBufferAddress, outBufferLengthBytes, out _); - - var funcResult = Bindings.EOS_AntiCheatClient_ProtectMessage(InnerHandle, optionsAddress, outBufferAddress, ref outBufferLengthBytes); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryMarshalGet(outBufferAddress, out outBuffer, outBufferLengthBytes); - Helper.TryMarshalDispose(ref outBufferAddress); - - return funcResult; - } - - /// - /// Call when an anti-cheat message is received from a peer. - /// Mode: . - /// - /// Structure containing input data. - /// - /// - If the message was processed successfully - /// - If input data was invalid - /// - If the current mode does not support this function - /// - public Result ReceiveMessageFromPeer(ReceiveMessageFromPeerOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_AntiCheatClient_ReceiveMessageFromPeer(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Call when an anti-cheat message is received from the game server. - /// Mode: . - /// - /// Structure containing input data. - /// - /// - If the message was processed successfully - /// - If input data was invalid - /// - If the current mode does not support this function - /// - public Result ReceiveMessageFromServer(ReceiveMessageFromServerOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_AntiCheatClient_ReceiveMessageFromServer(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Registers a connected peer-to-peer client. - /// Mode: . - /// - /// Must be paired with a call to if this user leaves the session - /// in progress, or if the entire session is ending. - /// - /// Structure containing input data. - /// - /// - If the player was registered successfully - /// - If input data was invalid - /// - If the current mode does not support this function - /// - public Result RegisterPeer(RegisterPeerOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_AntiCheatClient_RegisterPeer(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Remove a previously bound handler. - /// Mode: Any. - /// - /// The previously bound notification ID - public void RemoveNotifyMessageToPeer(ulong notificationId) - { - Helper.TryRemoveCallbackByNotificationId(notificationId); - - Bindings.EOS_AntiCheatClient_RemoveNotifyMessageToPeer(InnerHandle, notificationId); - } - - /// - /// Remove a previously bound handler. - /// Mode: Any. - /// - /// The previously bound notification ID - public void RemoveNotifyMessageToServer(ulong notificationId) - { - Helper.TryRemoveCallbackByNotificationId(notificationId); - - Bindings.EOS_AntiCheatClient_RemoveNotifyMessageToServer(InnerHandle, notificationId); - } - - /// - /// Remove a previously bound handler. - /// Mode: Any. - /// - /// The previously bound notification ID - public void RemoveNotifyPeerActionRequired(ulong notificationId) - { - Helper.TryRemoveCallbackByNotificationId(notificationId); - - Bindings.EOS_AntiCheatClient_RemoveNotifyPeerActionRequired(InnerHandle, notificationId); - } - - /// - /// Remove a previously bound handler. - /// Mode: Any. - /// - /// The previously bound notification ID - public void RemoveNotifyPeerAuthStatusChanged(ulong notificationId) - { - Helper.TryRemoveCallbackByNotificationId(notificationId); - - Bindings.EOS_AntiCheatClient_RemoveNotifyPeerAuthStatusChanged(InnerHandle, notificationId); - } - - /// - /// Optional NetProtect feature for game message encryption. - /// Decrypts an encrypted message received from the game server. - /// Mode: . - /// - /// Options.Data and OutBuffer may refer to the same buffer to decrypt in place. - /// - /// Structure containing input data. - /// On success, buffer where encrypted message data will be written. - /// Number of bytes that were written to OutBuffer. - /// - /// - If the message was unprotected successfully - /// - If input data was invalid - /// - If the current mode does not support this function - /// - public Result UnprotectMessage(UnprotectMessageOptions options, out byte[] outBuffer) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - System.IntPtr outBufferAddress = System.IntPtr.Zero; - uint outBufferLengthBytes = options.OutBufferSizeBytes; - Helper.TryMarshalAllocate(ref outBufferAddress, outBufferLengthBytes, out _); - - var funcResult = Bindings.EOS_AntiCheatClient_UnprotectMessage(InnerHandle, optionsAddress, outBufferAddress, ref outBufferLengthBytes); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryMarshalGet(outBufferAddress, out outBuffer, outBufferLengthBytes); - Helper.TryMarshalDispose(ref outBufferAddress); - - return funcResult; - } - - /// - /// Unregisters a disconnected peer-to-peer client. - /// Mode: . - /// - /// Must be called when a user leaves a session in progress. - /// - /// Structure containing input data. - /// - /// - If the player was unregistered successfully - /// - If input data was invalid - /// - If the current mode does not support this function - /// - public Result UnregisterPeer(UnregisterPeerOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_AntiCheatClient_UnregisterPeer(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - [MonoPInvokeCallback(typeof(OnMessageToPeerCallbackInternal))] - internal static void OnMessageToPeerCallbackInternalImplementation(System.IntPtr data) - { - OnMessageToPeerCallback callback; - AntiCheatCommon.OnMessageToClientCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnMessageToServerCallbackInternal))] - internal static void OnMessageToServerCallbackInternalImplementation(System.IntPtr data) - { - OnMessageToServerCallback callback; - OnMessageToServerCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnPeerActionRequiredCallbackInternal))] - internal static void OnPeerActionRequiredCallbackInternalImplementation(System.IntPtr data) - { - OnPeerActionRequiredCallback callback; - AntiCheatCommon.OnClientActionRequiredCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnPeerAuthStatusChangedCallbackInternal))] - internal static void OnPeerAuthStatusChangedCallbackInternalImplementation(System.IntPtr data) - { - OnPeerAuthStatusChangedCallback callback; - AntiCheatCommon.OnClientAuthStatusChangedCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AntiCheatClientInterface.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AntiCheatClientInterface.cs.meta deleted file mode 100644 index 3939ff3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AntiCheatClientInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: fedc0faa387b23b44b09b55b4fca19b1 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AntiCheatClientMode.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AntiCheatClientMode.cs deleted file mode 100644 index 3e9b5fb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AntiCheatClientMode.cs +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatClient -{ - /// - /// Operating modes - /// - public enum AntiCheatClientMode : int - { - /// - /// Not used - /// - Invalid = 0, - /// - /// Dedicated or listen server mode - /// - ClientServer = 1, - /// - /// Full mesh peer-to-peer mode - /// - PeerToPeer = 2 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AntiCheatClientMode.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AntiCheatClientMode.cs.meta deleted file mode 100644 index 5d8fdf8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AntiCheatClientMode.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b00b0480cbfe505489a67c12100b9752 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AntiCheatClientViolationType.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AntiCheatClientViolationType.cs deleted file mode 100644 index 39cd3f9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AntiCheatClientViolationType.cs +++ /dev/null @@ -1,77 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatClient -{ - /// - /// Anti-cheat integrity violation types - /// - public enum AntiCheatClientViolationType : int - { - /// - /// Not used - /// - Invalid = 0, - /// - /// An anti-cheat asset integrity catalog file could not be found - /// - IntegrityCatalogNotFound = 1, - /// - /// An anti-cheat asset integrity catalog file is corrupt or invalid - /// - IntegrityCatalogError = 2, - /// - /// An anti-cheat asset integrity catalog file's certificate has been revoked. - /// - IntegrityCatalogCertificateRevoked = 3, - /// - /// The primary anti-cheat asset integrity catalog does not include an entry for the game's - /// main executable, which is required. - /// - IntegrityCatalogMissingMainExecutable = 4, - /// - /// A disallowed game file modification was detected - /// - GameFileMismatch = 5, - /// - /// A disallowed game file removal was detected - /// - RequiredGameFileNotFound = 6, - /// - /// A disallowed game file addition was detected - /// - UnknownGameFileForbidden = 7, - /// - /// A system file failed an integrity check - /// - SystemFileUntrusted = 8, - /// - /// A disallowed code module was loaded into the game process - /// - ForbiddenModuleLoaded = 9, - /// - /// A disallowed game process memory modification was detected - /// - CorruptedMemory = 10, - /// - /// A disallowed tool was detected running in the system - /// - ForbiddenToolDetected = 11, - /// - /// An internal anti-cheat integrity check failed - /// - InternalAntiCheatViolation = 12, - /// - /// Integrity checks on messages between the game client and game server failed - /// - CorruptedNetworkMessageFlow = 13, - /// - /// The game is running inside a disallowed virtual machine - /// - VirtualMachineNotAllowed = 14, - /// - /// A forbidden operating system configuration was detected - /// - ForbiddenSystemConfiguration = 15 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AntiCheatClientViolationType.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AntiCheatClientViolationType.cs.meta deleted file mode 100644 index 8f57fdd..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/AntiCheatClientViolationType.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9b641568a7671e147ba4269db06a8c8c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/BeginSessionOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/BeginSessionOptions.cs deleted file mode 100644 index 0da204f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/BeginSessionOptions.cs +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatClient -{ - public class BeginSessionOptions - { - /// - /// Logged in user identifier from earlier call to family of functions - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// Operating mode - /// - public AntiCheatClientMode Mode { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct BeginSessionOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private AntiCheatClientMode m_Mode; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public AntiCheatClientMode Mode - { - set - { - m_Mode = value; - } - } - - public void Set(BeginSessionOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatClientInterface.BeginsessionApiLatest; - LocalUserId = other.LocalUserId; - Mode = other.Mode; - } - } - - public void Set(object other) - { - Set(other as BeginSessionOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/BeginSessionOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/BeginSessionOptions.cs.meta deleted file mode 100644 index b61d8b5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/BeginSessionOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 86f10c9ef902d614298a75d119f7e20f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/EndSessionOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/EndSessionOptions.cs deleted file mode 100644 index 495354e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/EndSessionOptions.cs +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatClient -{ - public class EndSessionOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct EndSessionOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(EndSessionOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatClientInterface.EndsessionApiLatest; - } - } - - public void Set(object other) - { - Set(other as EndSessionOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/EndSessionOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/EndSessionOptions.cs.meta deleted file mode 100644 index 138dd52..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/EndSessionOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 905fbe5a8da89374d9c480daeb68a4aa -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/GetProtectMessageOutputLengthOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/GetProtectMessageOutputLengthOptions.cs deleted file mode 100644 index 600dfc0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/GetProtectMessageOutputLengthOptions.cs +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatClient -{ - public class GetProtectMessageOutputLengthOptions - { - /// - /// Length in bytes of input - /// - public uint DataLengthBytes { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetProtectMessageOutputLengthOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_DataLengthBytes; - - public uint DataLengthBytes - { - set - { - m_DataLengthBytes = value; - } - } - - public void Set(GetProtectMessageOutputLengthOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatClientInterface.GetprotectmessageoutputlengthApiLatest; - DataLengthBytes = other.DataLengthBytes; - } - } - - public void Set(object other) - { - Set(other as GetProtectMessageOutputLengthOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/GetProtectMessageOutputLengthOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/GetProtectMessageOutputLengthOptions.cs.meta deleted file mode 100644 index 4845f6b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/GetProtectMessageOutputLengthOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 1fdc1ae7090bd7e4ea91e0057bc54e95 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/OnMessageToPeerCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/OnMessageToPeerCallback.cs deleted file mode 100644 index 7897689..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/OnMessageToPeerCallback.cs +++ /dev/null @@ -1,19 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatClient -{ - /// - /// Callback issued when a new message must be dispatched to a connected peer. - /// - /// Messages contain opaque binary data of up to 256 bytes and must be transmitted - /// to the correct peer using the game's own networking layer, then delivered - /// to the client anti-cheat instance using the function. - /// - /// This callback is always issued from within on its calling thread. - /// - public delegate void OnMessageToPeerCallback(AntiCheatCommon.OnMessageToClientCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnMessageToPeerCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/OnMessageToPeerCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/OnMessageToPeerCallback.cs.meta deleted file mode 100644 index ed8e67e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/OnMessageToPeerCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ca9599b29ae2d88419db107a1ac11a43 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/OnMessageToServerCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/OnMessageToServerCallback.cs deleted file mode 100644 index a7ef8f1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/OnMessageToServerCallback.cs +++ /dev/null @@ -1,19 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatClient -{ - /// - /// Callback issued when a new message must be dispatched to the game server. - /// - /// Messages contain opaque binary data of up to 256 bytes and must be transmitted - /// to the game server using the game's own networking layer, then delivered - /// to the server anti-cheat instance using the function. - /// - /// This callback is always issued from within on its calling thread. - /// - public delegate void OnMessageToServerCallback(OnMessageToServerCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnMessageToServerCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/OnMessageToServerCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/OnMessageToServerCallback.cs.meta deleted file mode 100644 index 45f0f5a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/OnMessageToServerCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 53221573ac657a04588b7d3259950e2b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/OnMessageToServerCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/OnMessageToServerCallbackInfo.cs deleted file mode 100644 index 197f9a7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/OnMessageToServerCallbackInfo.cs +++ /dev/null @@ -1,76 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatClient -{ - /// - /// Structure containing details about a new message that must be dispatched to the game server. - /// - public class OnMessageToServerCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Caller-specified context data - /// - public object ClientData { get; private set; } - - /// - /// The message data that must be sent to the server - /// - public byte[] MessageData { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(OnMessageToServerCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - MessageData = other.Value.MessageData; - } - } - - public void Set(object other) - { - Set(other as OnMessageToServerCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct OnMessageToServerCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_MessageData; - private uint m_MessageDataSizeBytes; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public byte[] MessageData - { - get - { - byte[] value; - Helper.TryMarshalGet(m_MessageData, out value, m_MessageDataSizeBytes); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/OnMessageToServerCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/OnMessageToServerCallbackInfo.cs.meta deleted file mode 100644 index fb14914..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/OnMessageToServerCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 5ffc52fcf62645a488f1c17ad5476aea -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/OnPeerActionRequiredCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/OnPeerActionRequiredCallback.cs deleted file mode 100644 index cdc9b65..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/OnPeerActionRequiredCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatClient -{ - /// - /// Callback issued when an action must be applied to a connected peer. - /// This callback is always issued from within on its calling thread. - /// - public delegate void OnPeerActionRequiredCallback(AntiCheatCommon.OnClientActionRequiredCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnPeerActionRequiredCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/OnPeerActionRequiredCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/OnPeerActionRequiredCallback.cs.meta deleted file mode 100644 index 0109338..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/OnPeerActionRequiredCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3b67082ca6ef40647bcfcf71a8be13c2 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/OnPeerAuthStatusChangedCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/OnPeerAuthStatusChangedCallback.cs deleted file mode 100644 index c5c491a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/OnPeerAuthStatusChangedCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatClient -{ - /// - /// Optional callback issued when a connected peer's authentication status has changed. - /// This callback is always issued from within on its calling thread. - /// - public delegate void OnPeerAuthStatusChangedCallback(AntiCheatCommon.OnClientAuthStatusChangedCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnPeerAuthStatusChangedCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/OnPeerAuthStatusChangedCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/OnPeerAuthStatusChangedCallback.cs.meta deleted file mode 100644 index 1765f7b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/OnPeerAuthStatusChangedCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 43fb6618d6087564faad8ff8756a9667 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/PollStatusOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/PollStatusOptions.cs deleted file mode 100644 index 0099200..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/PollStatusOptions.cs +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatClient -{ - public class PollStatusOptions - { - /// - /// The size of OutMessage in bytes. Recommended size is 256 bytes. - /// - public uint OutMessageLength { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct PollStatusOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_OutMessageLength; - - public uint OutMessageLength - { - set - { - m_OutMessageLength = value; - } - } - - public void Set(PollStatusOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatClientInterface.PollstatusApiLatest; - OutMessageLength = other.OutMessageLength; - } - } - - public void Set(object other) - { - Set(other as PollStatusOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/PollStatusOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/PollStatusOptions.cs.meta deleted file mode 100644 index f074fe6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/PollStatusOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9deecd610e171814286ef07776534ccf -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/ProtectMessageOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/ProtectMessageOptions.cs deleted file mode 100644 index 63290f4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/ProtectMessageOptions.cs +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatClient -{ - public class ProtectMessageOptions - { - /// - /// The data to encrypt - /// - public byte[] Data { get; set; } - - /// - /// The size in bytes of OutBuffer - /// - public uint OutBufferSizeBytes { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct ProtectMessageOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_DataLengthBytes; - private System.IntPtr m_Data; - private uint m_OutBufferSizeBytes; - - public byte[] Data - { - set - { - Helper.TryMarshalSet(ref m_Data, value, out m_DataLengthBytes); - } - } - - public uint OutBufferSizeBytes - { - set - { - m_OutBufferSizeBytes = value; - } - } - - public void Set(ProtectMessageOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatClientInterface.ProtectmessageApiLatest; - Data = other.Data; - OutBufferSizeBytes = other.OutBufferSizeBytes; - } - } - - public void Set(object other) - { - Set(other as ProtectMessageOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Data); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/ProtectMessageOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/ProtectMessageOptions.cs.meta deleted file mode 100644 index e303bf1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/ProtectMessageOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: dae821c9a9f672f4eb1b092b877d85d0 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/ReceiveMessageFromPeerOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/ReceiveMessageFromPeerOptions.cs deleted file mode 100644 index 6a3dcf8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/ReceiveMessageFromPeerOptions.cs +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatClient -{ - public class ReceiveMessageFromPeerOptions - { - /// - /// The handle describing the sender of this message - /// - public System.IntPtr PeerHandle { get; set; } - - /// - /// The data received - /// - public byte[] Data { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct ReceiveMessageFromPeerOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_PeerHandle; - private uint m_DataLengthBytes; - private System.IntPtr m_Data; - - public System.IntPtr PeerHandle - { - set - { - m_PeerHandle = value; - } - } - - public byte[] Data - { - set - { - Helper.TryMarshalSet(ref m_Data, value, out m_DataLengthBytes); - } - } - - public void Set(ReceiveMessageFromPeerOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatClientInterface.ReceivemessagefrompeerApiLatest; - PeerHandle = other.PeerHandle; - Data = other.Data; - } - } - - public void Set(object other) - { - Set(other as ReceiveMessageFromPeerOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_PeerHandle); - Helper.TryMarshalDispose(ref m_Data); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/ReceiveMessageFromPeerOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/ReceiveMessageFromPeerOptions.cs.meta deleted file mode 100644 index 9a0f9ff..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/ReceiveMessageFromPeerOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 008ab8565fa8c4b4e8f5f758a5a4d134 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/ReceiveMessageFromServerOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/ReceiveMessageFromServerOptions.cs deleted file mode 100644 index b7a74fe..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/ReceiveMessageFromServerOptions.cs +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatClient -{ - public class ReceiveMessageFromServerOptions - { - /// - /// The data received - /// - public byte[] Data { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct ReceiveMessageFromServerOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_DataLengthBytes; - private System.IntPtr m_Data; - - public byte[] Data - { - set - { - Helper.TryMarshalSet(ref m_Data, value, out m_DataLengthBytes); - } - } - - public void Set(ReceiveMessageFromServerOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatClientInterface.ReceivemessagefromserverApiLatest; - Data = other.Data; - } - } - - public void Set(object other) - { - Set(other as ReceiveMessageFromServerOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Data); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/ReceiveMessageFromServerOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/ReceiveMessageFromServerOptions.cs.meta deleted file mode 100644 index 722fcca..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/ReceiveMessageFromServerOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 59428e82fd66c4e47bd7e9bc433b7d93 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/RegisterPeerOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/RegisterPeerOptions.cs deleted file mode 100644 index a0a85f5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/RegisterPeerOptions.cs +++ /dev/null @@ -1,114 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatClient -{ - public class RegisterPeerOptions - { - /// - /// Locally unique value describing the remote user (e.g. a player object pointer) - /// - public System.IntPtr PeerHandle { get; set; } - - /// - /// Type of remote user being registered - /// - public AntiCheatCommon.AntiCheatCommonClientType ClientType { get; set; } - - /// - /// Remote user's platform, if known - /// - public AntiCheatCommon.AntiCheatCommonClientPlatform ClientPlatform { get; set; } - - /// - /// Identifier for the remote user. This is typically a string representation of an - /// account ID, but it can be any string which is both unique (two different users will never - /// have the same string) and consistent (if the same user connects to this game session - /// twice, the same string will be used) in the scope of a single protected game session. - /// - public string AccountId { get; set; } - - /// - /// Optional IP address for the remote user. May be null if not available. - /// IPv4 format: "0.0.0.0" - /// IPv6 format: "0:0:0:0:0:0:0:0" - /// - public string IpAddress { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct RegisterPeerOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_PeerHandle; - private AntiCheatCommon.AntiCheatCommonClientType m_ClientType; - private AntiCheatCommon.AntiCheatCommonClientPlatform m_ClientPlatform; - private System.IntPtr m_AccountId; - private System.IntPtr m_IpAddress; - - public System.IntPtr PeerHandle - { - set - { - m_PeerHandle = value; - } - } - - public AntiCheatCommon.AntiCheatCommonClientType ClientType - { - set - { - m_ClientType = value; - } - } - - public AntiCheatCommon.AntiCheatCommonClientPlatform ClientPlatform - { - set - { - m_ClientPlatform = value; - } - } - - public string AccountId - { - set - { - Helper.TryMarshalSet(ref m_AccountId, value); - } - } - - public string IpAddress - { - set - { - Helper.TryMarshalSet(ref m_IpAddress, value); - } - } - - public void Set(RegisterPeerOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatClientInterface.RegisterpeerApiLatest; - PeerHandle = other.PeerHandle; - ClientType = other.ClientType; - ClientPlatform = other.ClientPlatform; - AccountId = other.AccountId; - IpAddress = other.IpAddress; - } - } - - public void Set(object other) - { - Set(other as RegisterPeerOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_PeerHandle); - Helper.TryMarshalDispose(ref m_AccountId); - Helper.TryMarshalDispose(ref m_IpAddress); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/RegisterPeerOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/RegisterPeerOptions.cs.meta deleted file mode 100644 index e286300..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/RegisterPeerOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b018d33a4ed3a35429534cb22add74b8 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/UnprotectMessageOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/UnprotectMessageOptions.cs deleted file mode 100644 index dec91bf..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/UnprotectMessageOptions.cs +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatClient -{ - public class UnprotectMessageOptions - { - /// - /// The data to decrypt - /// - public byte[] Data { get; set; } - - /// - /// The size in bytes of OutBuffer - /// - public uint OutBufferSizeBytes { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct UnprotectMessageOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_DataLengthBytes; - private System.IntPtr m_Data; - private uint m_OutBufferSizeBytes; - - public byte[] Data - { - set - { - Helper.TryMarshalSet(ref m_Data, value, out m_DataLengthBytes); - } - } - - public uint OutBufferSizeBytes - { - set - { - m_OutBufferSizeBytes = value; - } - } - - public void Set(UnprotectMessageOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatClientInterface.UnprotectmessageApiLatest; - Data = other.Data; - OutBufferSizeBytes = other.OutBufferSizeBytes; - } - } - - public void Set(object other) - { - Set(other as UnprotectMessageOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Data); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/UnprotectMessageOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/UnprotectMessageOptions.cs.meta deleted file mode 100644 index 1a45eb7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/UnprotectMessageOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: aa51a65c63f891e4a9220db3568331a8 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/UnregisterPeerOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/UnregisterPeerOptions.cs deleted file mode 100644 index 8c989e3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/UnregisterPeerOptions.cs +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatClient -{ - public class UnregisterPeerOptions - { - /// - /// Locally unique value describing the remote user, as previously passed to - /// - public System.IntPtr PeerHandle { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct UnregisterPeerOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_PeerHandle; - - public System.IntPtr PeerHandle - { - set - { - m_PeerHandle = value; - } - } - - public void Set(UnregisterPeerOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatClientInterface.UnregisterpeerApiLatest; - PeerHandle = other.PeerHandle; - } - } - - public void Set(object other) - { - Set(other as UnregisterPeerOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_PeerHandle); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/UnregisterPeerOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/UnregisterPeerOptions.cs.meta deleted file mode 100644 index c241690..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatClient/UnregisterPeerOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 48940d5a0dd76d947a9bbed4ddba967e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon.meta deleted file mode 100644 index e4cb293..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: a8dfb81212428d04f8be2108462f4a98 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientAction.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientAction.cs deleted file mode 100644 index 1e0856f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientAction.cs +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - /// - /// Anti-cheat action values. Applicable to both clients and remote peers. - /// - public enum AntiCheatCommonClientAction : int - { - /// - /// Not used - /// - Invalid = 0, - /// - /// The client/peer must be removed from the current game session - /// - RemovePlayer = 1 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientAction.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientAction.cs.meta deleted file mode 100644 index 3429255..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientAction.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d58912827364896498d70c5a3ed6f8eb -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientActionReason.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientActionReason.cs deleted file mode 100644 index 55cbb56..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientActionReason.cs +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - /// - /// Anti-cheat action reasons. Applicable to both clients and remote peers. - /// - public enum AntiCheatCommonClientActionReason : int - { - /// - /// Not used - /// - Invalid = 0, - /// - /// An internal error occurred - /// - InternalError = 1, - /// - /// An anti-cheat message received from the client/peer was corrupt or invalid - /// - InvalidMessage = 2, - /// - /// The client/peer's anti-cheat authentication failed - /// - AuthenticationFailed = 3, - /// - /// The client/peer failed to load the anti-cheat module at startup - /// - NullClient = 4, - /// - /// The client/peer's anti-cheat heartbeat was not received - /// - HeartbeatTimeout = 5, - /// - /// The client/peer failed an anti-cheat client runtime check - /// - ClientViolation = 6, - /// - /// The client/peer failed an anti-cheat backend runtime check - /// - BackendViolation = 7, - /// - /// The client/peer is temporarily blocked from playing on this game server - /// - TemporaryCooldown = 8, - /// - /// The client/peer is temporarily banned - /// - TemporaryBanned = 9, - /// - /// The client/peer is permanently banned - /// - PermanentBanned = 10 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientActionReason.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientActionReason.cs.meta deleted file mode 100644 index 352633d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientActionReason.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d6eea5c9362f1fe4fba2463173dedbc9 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientAuthStatus.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientAuthStatus.cs deleted file mode 100644 index 64929c2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientAuthStatus.cs +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - /// - /// The client/peer's anti-cheat authentication status - /// - public enum AntiCheatCommonClientAuthStatus : int - { - /// - /// Not used - /// - Invalid = 0, - /// - /// The client/peer's anti-cheat functionality has been validated by this game server - /// - LocalAuthComplete = 1, - /// - /// The client/peer's anti-cheat functionality has been validated by the anti-cheat backend service - /// - RemoteAuthComplete = 2 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientAuthStatus.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientAuthStatus.cs.meta deleted file mode 100644 index 0894043..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientAuthStatus.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d234548f8b2a37549ad9b0c8769092d7 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientFlags.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientFlags.cs deleted file mode 100644 index ff5a96c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientFlags.cs +++ /dev/null @@ -1,21 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - /// - /// Flags describing a remote client. These can be updated during a play session - /// - [System.Flags] - public enum AntiCheatCommonClientFlags : int - { - /// - /// No particular flags relevant for this client - /// - None = 0, - /// - /// The client has admin privileges on the game server - /// - Admin = (1 << 0) - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientFlags.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientFlags.cs.meta deleted file mode 100644 index 4d6652d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientFlags.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 40ecfaa71047fb94cae4f9e007597e06 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientInput.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientInput.cs deleted file mode 100644 index d6fdafd..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientInput.cs +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - /// - /// Flags describing the input device used by a remote client, if known. These can be updated during a play session. - /// - public enum AntiCheatCommonClientInput : int - { - /// - /// Unknown input device - /// - Unknown = 0, - /// - /// The client is using mouse and keyboard - /// - MouseKeyboard = 1, - /// - /// The client is using a gamepad or game controller - /// - Gamepad = 2, - /// - /// The client is using a touch input device (e.g. phone/tablet screen) - /// - TouchInput = 3 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientInput.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientInput.cs.meta deleted file mode 100644 index 3ee86aa..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientInput.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 5f0124653deac25418110e9de01bf260 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientPlatform.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientPlatform.cs deleted file mode 100644 index 0b0e845..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientPlatform.cs +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - /// - /// Flags describing the platform of a remote client, if known - /// - public enum AntiCheatCommonClientPlatform : int - { - /// - /// Unknown platform - /// - Unknown = 0, - /// - /// The client is playing on Windows - /// - Windows = 1, - /// - /// The client is playing on Mac - /// - Mac = 2, - /// - /// The client is playing on Linux - /// - Linux = 3, - /// - /// The client is playing on an Xbox device - /// - Xbox = 4, - /// - /// The client is playing on a PlayStation device - /// - PlayStation = 5, - /// - /// The client is playing on a Nintendo device - /// - Nintendo = 6, - /// - /// The client is playing on iOS - /// - iOS = 7, - /// - /// The client is playing on Android - /// - Android = 8 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientPlatform.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientPlatform.cs.meta deleted file mode 100644 index fee2b33..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientPlatform.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ae869c8f43da7254fbfdf49be2fa6ad6 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientType.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientType.cs deleted file mode 100644 index d455720..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientType.cs +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - /// - /// Flags describing the type of a remote client - /// - public enum AntiCheatCommonClientType : int - { - /// - /// An ordinary player that requires anti-cheat client protection to play - /// - ProtectedClient = 0, - /// - /// The player does not need the anti-cheat client to play because of their platform or other factors - /// - UnprotectedClient = 1, - /// - /// The client is an AI bot, not an actual human - /// - AIBot = 2 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientType.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientType.cs.meta deleted file mode 100644 index b385ffd..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonClientType.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d5912aa4d17083842b39c7b7d012e775 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonEventParamType.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonEventParamType.cs deleted file mode 100644 index df30c6c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonEventParamType.cs +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - /// - /// Types supported for custom gameplay behavior event parameters - /// - public enum AntiCheatCommonEventParamType : int - { - /// - /// Not used - /// - Invalid = 0, - /// - /// - /// - ClientHandle = 1, - /// - /// const char* - /// - String = 2, - /// - /// uint32_t - /// - UInt32 = 3, - /// - /// int32_t - /// - Int32 = 4, - /// - /// uint64_t - /// - UInt64 = 5, - /// - /// int64_t - /// - Int64 = 6, - /// - /// - /// - Vector3f = 7, - /// - /// - /// - Quat = 8 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonEventParamType.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonEventParamType.cs.meta deleted file mode 100644 index 3e1a2f8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonEventParamType.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: fe93b1dab06353446811ad9baabd266a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonEventType.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonEventType.cs deleted file mode 100644 index ed486aa..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonEventType.cs +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - /// - /// Types supported for custom gameplay behavior events. - /// These have a considerable impact on performance - /// - public enum AntiCheatCommonEventType : int - { - /// - /// Not used - /// - Invalid = 0, - /// - /// A general game event that is not specific to any individual player. - /// Low memory use which is constant with respect to the number of players. - /// - GameEvent = 1, - /// - /// An event that is logically associated with a specific player. Events logged in - /// this category require a specific ClientHandle to which they will be attached. - /// Higher memory use which scales according to the number of players. - /// - PlayerEvent = 2 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonEventType.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonEventType.cs.meta deleted file mode 100644 index 4727c73..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonEventType.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 034cf8c16577d7b42be63f10ce8fd516 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonInterface.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonInterface.cs deleted file mode 100644 index 59e42c1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonInterface.cs +++ /dev/null @@ -1,42 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - public static class AntiCheatCommonInterface - { - public const int LogeventApiLatest = 1; - - public const int LogeventStringMaxLength = 39; - - public const int LoggameroundendApiLatest = 1; - - public const int LoggameroundstartApiLatest = 1; - - public const int LogplayerdespawnApiLatest = 1; - - public const int LogplayerreviveApiLatest = 1; - - public const int LogplayerspawnApiLatest = 1; - - public const int LogplayertakedamageApiLatest = 2; - - public const int LogplayertickApiLatest = 2; - - public const int LogplayeruseabilityApiLatest = 1; - - public const int LogplayeruseweaponApiLatest = 2; - - public const int LogplayeruseweaponWeaponnameMaxLength = 16; - - public const int RegistereventApiLatest = 1; - - public const int RegistereventCustomeventbase = 0x10000000; - - public const int RegistereventMaxParamdefscount = 12; - - public const int SetclientdetailsApiLatest = 1; - - public const int SetgamesessionidApiLatest = 1; - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonInterface.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonInterface.cs.meta deleted file mode 100644 index 63056f2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3e14039b9f182ed48af364ac5ea2ea63 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerMovementState.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerMovementState.cs deleted file mode 100644 index 50aed76..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerMovementState.cs +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - /// - /// Details of a player's movement state - /// - public enum AntiCheatCommonPlayerMovementState : int - { - /// - /// No particular state applies - /// - None = 0, - /// - /// Player is crouching - /// - Crouching = 1, - /// - /// Player is prone - /// - Prone = 2, - /// - /// Player is mounted in a vehicle or similar - /// - Mounted = 3, - /// - /// Player is swimming in a fluid volume - /// - Swimming = 4, - /// - /// Player is falling under the effects of gravity, such as when jumping or walking off the edge of a surface - /// - Falling = 5, - /// - /// Player is flying, ignoring the effects of gravity - /// - Flying = 6, - /// - /// Player is on a ladder - /// - OnLadder = 7 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerMovementState.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerMovementState.cs.meta deleted file mode 100644 index f6b0f45..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerMovementState.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c51eb57279a38ac4ea9b40fd57795cc0 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageResult.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageResult.cs deleted file mode 100644 index 2695688..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageResult.cs +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - /// - /// The result of a damage event, if any - /// - public enum AntiCheatCommonPlayerTakeDamageResult : int - { - /// - /// No direct state change consequence for the victim - /// - None = 0, - /// - /// Player character is temporarily incapacitated and requires assistance to recover - /// - Downed = 1, - /// - /// Player character is permanently incapacitated and cannot recover (e.g. dead) - /// - Eliminated = 2 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageResult.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageResult.cs.meta deleted file mode 100644 index 0e56e31..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageResult.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 19ef67c44b033174fab2bd059ca56cd7 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageSource.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageSource.cs deleted file mode 100644 index a985c28..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageSource.cs +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - /// - /// The source of a damage event - /// - public enum AntiCheatCommonPlayerTakeDamageSource : int - { - /// - /// No particular source relevant - /// - None = 0, - /// - /// Damage caused by a player controlled character - /// - Player = 1, - /// - /// Damage caused by a non-player character such as an AI enemy - /// - NonPlayerCharacter = 2, - /// - /// Damage caused by the world (falling off level, into lava, etc) - /// - World = 3 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageSource.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageSource.cs.meta deleted file mode 100644 index db64180..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageSource.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 2e8c72e0a279ba64abca381c5f2a5a6b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageType.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageType.cs deleted file mode 100644 index e509718..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageType.cs +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - /// - /// Type of damage applied in a damage event - /// - public enum AntiCheatCommonPlayerTakeDamageType : int - { - /// - /// No particular type relevant - /// - None = 0, - /// - /// Damage caused by a point source such as a bullet or melee attack - /// - PointDamage = 1, - /// - /// Damage caused by a radial source such as an explosion - /// - RadialDamage = 2, - /// - /// Damage over time such as bleeding, poison, etc - /// - DamageOverTime = 3 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageType.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageType.cs.meta deleted file mode 100644 index 9393029..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/AntiCheatCommonPlayerTakeDamageType.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f5d972083c8e58e438a923d876d72756 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogEventOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogEventOptions.cs deleted file mode 100644 index 405fba9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogEventOptions.cs +++ /dev/null @@ -1,79 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - public class LogEventOptions - { - /// - /// Optional client who this event is primarily associated with. If not applicable, use 0. - /// - public System.IntPtr ClientHandle { get; set; } - - /// - /// Unique event identifier previously configured in RegisterEvent - /// - public uint EventId { get; set; } - - /// - /// Set of parameter types previously configured in RegisterEvent, and their values - /// - public LogEventParamPair[] Params { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LogEventOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_ClientHandle; - private uint m_EventId; - private uint m_ParamsCount; - private System.IntPtr m_Params; - - public System.IntPtr ClientHandle - { - set - { - m_ClientHandle = value; - } - } - - public uint EventId - { - set - { - m_EventId = value; - } - } - - public LogEventParamPair[] Params - { - set - { - Helper.TryMarshalSet(ref m_Params, value, out m_ParamsCount); - } - } - - public void Set(LogEventOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatCommonInterface.LogeventApiLatest; - ClientHandle = other.ClientHandle; - EventId = other.EventId; - Params = other.Params; - } - } - - public void Set(object other) - { - Set(other as LogEventOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_ClientHandle); - Helper.TryMarshalDispose(ref m_Params); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogEventOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogEventOptions.cs.meta deleted file mode 100644 index 6440819..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogEventOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 19d6b3c6dd0df9f43889632dad0a2b2d -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogEventParamPair.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogEventParamPair.cs deleted file mode 100644 index 70390d9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogEventParamPair.cs +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - public class LogEventParamPair : ISettable - { - public LogEventParamPairParamValue ParamValue { get; set; } - - internal void Set(LogEventParamPairInternal? other) - { - if (other != null) - { - ParamValue = other.Value.ParamValue; - } - } - - public void Set(object other) - { - Set(other as LogEventParamPairInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LogEventParamPairInternal : ISettable, System.IDisposable - { - private LogEventParamPairParamValueInternal m_ParamValue; - - public LogEventParamPairParamValue ParamValue - { - get - { - LogEventParamPairParamValue value; - Helper.TryMarshalGet(m_ParamValue, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_ParamValue, value); - } - } - - public void Set(LogEventParamPair other) - { - if (other != null) - { - ParamValue = other.ParamValue; - } - } - - public void Set(object other) - { - Set(other as LogEventParamPair); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_ParamValue); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogEventParamPair.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogEventParamPair.cs.meta deleted file mode 100644 index de48221..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogEventParamPair.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 788c87391db3a564d8fc30dc1d16b32b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogEventParamPairParamValue.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogEventParamPairParamValue.cs deleted file mode 100644 index 41bcc5c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogEventParamPairParamValue.cs +++ /dev/null @@ -1,388 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - public class LogEventParamPairParamValue : ISettable - { - private AntiCheatCommonEventParamType m_ParamValueType; - private System.IntPtr? m_ClientHandle; - private string m_String; - private uint? m_UInt32; - private int? m_Int32; - private ulong? m_UInt64; - private long? m_Int64; - private Vec3f m_Vec3f; - private Quat m_Quat; - - /// - /// Parameter type - /// - public AntiCheatCommonEventParamType ParamValueType - { - get - { - return m_ParamValueType; - } - - private set - { - m_ParamValueType = value; - } - } - - /// - /// Parameter value - /// - public System.IntPtr? ClientHandle - { - get - { - System.IntPtr? value; - Helper.TryMarshalGet(m_ClientHandle, out value, m_ParamValueType, AntiCheatCommonEventParamType.ClientHandle); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_ClientHandle, value, ref m_ParamValueType, AntiCheatCommonEventParamType.ClientHandle); - } - } - - public string String - { - get - { - string value; - Helper.TryMarshalGet(m_String, out value, m_ParamValueType, AntiCheatCommonEventParamType.String); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_String, value, ref m_ParamValueType, AntiCheatCommonEventParamType.String); - } - } - - public uint? UInt32 - { - get - { - uint? value; - Helper.TryMarshalGet(m_UInt32, out value, m_ParamValueType, AntiCheatCommonEventParamType.UInt32); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_UInt32, value, ref m_ParamValueType, AntiCheatCommonEventParamType.UInt32); - } - } - - public int? Int32 - { - get - { - int? value; - Helper.TryMarshalGet(m_Int32, out value, m_ParamValueType, AntiCheatCommonEventParamType.Int32); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Int32, value, ref m_ParamValueType, AntiCheatCommonEventParamType.Int32); - } - } - - public ulong? UInt64 - { - get - { - ulong? value; - Helper.TryMarshalGet(m_UInt64, out value, m_ParamValueType, AntiCheatCommonEventParamType.UInt64); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_UInt64, value, ref m_ParamValueType, AntiCheatCommonEventParamType.UInt64); - } - } - - public long? Int64 - { - get - { - long? value; - Helper.TryMarshalGet(m_Int64, out value, m_ParamValueType, AntiCheatCommonEventParamType.Int64); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Int64, value, ref m_ParamValueType, AntiCheatCommonEventParamType.Int64); - } - } - - public Vec3f Vec3f - { - get - { - Vec3f value; - Helper.TryMarshalGet(m_Vec3f, out value, m_ParamValueType, AntiCheatCommonEventParamType.Vector3f); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Vec3f, value, ref m_ParamValueType, AntiCheatCommonEventParamType.Vector3f); - } - } - - public Quat Quat - { - get - { - Quat value; - Helper.TryMarshalGet(m_Quat, out value, m_ParamValueType, AntiCheatCommonEventParamType.Quat); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Quat, value, ref m_ParamValueType, AntiCheatCommonEventParamType.Quat); - } - } - - public static implicit operator LogEventParamPairParamValue(System.IntPtr value) - { - return new LogEventParamPairParamValue() { ClientHandle = value }; - } - - public static implicit operator LogEventParamPairParamValue(string value) - { - return new LogEventParamPairParamValue() { String = value }; - } - - public static implicit operator LogEventParamPairParamValue(uint value) - { - return new LogEventParamPairParamValue() { UInt32 = value }; - } - - public static implicit operator LogEventParamPairParamValue(int value) - { - return new LogEventParamPairParamValue() { Int32 = value }; - } - - public static implicit operator LogEventParamPairParamValue(ulong value) - { - return new LogEventParamPairParamValue() { UInt64 = value }; - } - - public static implicit operator LogEventParamPairParamValue(long value) - { - return new LogEventParamPairParamValue() { Int64 = value }; - } - - public static implicit operator LogEventParamPairParamValue(Vec3f value) - { - return new LogEventParamPairParamValue() { Vec3f = value }; - } - - public static implicit operator LogEventParamPairParamValue(Quat value) - { - return new LogEventParamPairParamValue() { Quat = value }; - } - - internal void Set(LogEventParamPairParamValueInternal? other) - { - if (other != null) - { - ClientHandle = other.Value.ClientHandle; - String = other.Value.String; - UInt32 = other.Value.UInt32; - Int32 = other.Value.Int32; - UInt64 = other.Value.UInt64; - Int64 = other.Value.Int64; - Vec3f = other.Value.Vec3f; - Quat = other.Value.Quat; - } - } - - public void Set(object other) - { - Set(other as LogEventParamPairParamValueInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Explicit, Pack = 8)] - internal struct LogEventParamPairParamValueInternal : ISettable, System.IDisposable - { - [System.Runtime.InteropServices.FieldOffset(0)] - private AntiCheatCommonEventParamType m_ParamValueType; - [System.Runtime.InteropServices.FieldOffset(8)] - private System.IntPtr m_ClientHandle; - [System.Runtime.InteropServices.FieldOffset(8)] - private System.IntPtr m_String; - [System.Runtime.InteropServices.FieldOffset(8)] - private uint m_UInt32; - [System.Runtime.InteropServices.FieldOffset(8)] - private int m_Int32; - [System.Runtime.InteropServices.FieldOffset(8)] - private ulong m_UInt64; - [System.Runtime.InteropServices.FieldOffset(8)] - private long m_Int64; - [System.Runtime.InteropServices.FieldOffset(8)] - private Vec3fInternal m_Vec3f; - [System.Runtime.InteropServices.FieldOffset(8)] - private QuatInternal m_Quat; - - public System.IntPtr? ClientHandle - { - get - { - System.IntPtr? value; - Helper.TryMarshalGet(m_ClientHandle, out value, m_ParamValueType, AntiCheatCommonEventParamType.ClientHandle); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_ClientHandle, value, ref m_ParamValueType, AntiCheatCommonEventParamType.ClientHandle, this); - } - } - - public string String - { - get - { - string value; - Helper.TryMarshalGet(m_String, out value, m_ParamValueType, AntiCheatCommonEventParamType.String); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_String, value, ref m_ParamValueType, AntiCheatCommonEventParamType.String, this); - } - } - - public uint? UInt32 - { - get - { - uint? value; - Helper.TryMarshalGet(m_UInt32, out value, m_ParamValueType, AntiCheatCommonEventParamType.UInt32); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_UInt32, value, ref m_ParamValueType, AntiCheatCommonEventParamType.UInt32, this); - } - } - - public int? Int32 - { - get - { - int? value; - Helper.TryMarshalGet(m_Int32, out value, m_ParamValueType, AntiCheatCommonEventParamType.Int32); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Int32, value, ref m_ParamValueType, AntiCheatCommonEventParamType.Int32, this); - } - } - - public ulong? UInt64 - { - get - { - ulong? value; - Helper.TryMarshalGet(m_UInt64, out value, m_ParamValueType, AntiCheatCommonEventParamType.UInt64); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_UInt64, value, ref m_ParamValueType, AntiCheatCommonEventParamType.UInt64, this); - } - } - - public long? Int64 - { - get - { - long? value; - Helper.TryMarshalGet(m_Int64, out value, m_ParamValueType, AntiCheatCommonEventParamType.Int64); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Int64, value, ref m_ParamValueType, AntiCheatCommonEventParamType.Int64, this); - } - } - - public Vec3f Vec3f - { - get - { - Vec3f value; - Helper.TryMarshalGet(m_Vec3f, out value, m_ParamValueType, AntiCheatCommonEventParamType.Vector3f); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Vec3f, value, ref m_ParamValueType, AntiCheatCommonEventParamType.Vector3f, this); - } - } - - public Quat Quat - { - get - { - Quat value; - Helper.TryMarshalGet(m_Quat, out value, m_ParamValueType, AntiCheatCommonEventParamType.Quat); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Quat, value, ref m_ParamValueType, AntiCheatCommonEventParamType.Quat, this); - } - } - - public void Set(LogEventParamPairParamValue other) - { - if (other != null) - { - ClientHandle = other.ClientHandle; - String = other.String; - UInt32 = other.UInt32; - Int32 = other.Int32; - UInt64 = other.UInt64; - Int64 = other.Int64; - Vec3f = other.Vec3f; - Quat = other.Quat; - } - } - - public void Set(object other) - { - Set(other as LogEventParamPairParamValue); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_ClientHandle, m_ParamValueType, AntiCheatCommonEventParamType.ClientHandle); - Helper.TryMarshalDispose(ref m_String, m_ParamValueType, AntiCheatCommonEventParamType.String); - Helper.TryMarshalDispose(ref m_Vec3f); - Helper.TryMarshalDispose(ref m_Quat); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogEventParamPairParamValue.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogEventParamPairParamValue.cs.meta deleted file mode 100644 index 7d4c8c1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogEventParamPairParamValue.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 81a5f88a13f633640a75cf0342462ae4 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogGameRoundEndOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogGameRoundEndOptions.cs deleted file mode 100644 index 7bfd757..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogGameRoundEndOptions.cs +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - public class LogGameRoundEndOptions - { - /// - /// Optional identifier for the winning team - /// - public uint WinningTeamId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LogGameRoundEndOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_WinningTeamId; - - public uint WinningTeamId - { - set - { - m_WinningTeamId = value; - } - } - - public void Set(LogGameRoundEndOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatCommonInterface.LoggameroundendApiLatest; - WinningTeamId = other.WinningTeamId; - } - } - - public void Set(object other) - { - Set(other as LogGameRoundEndOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogGameRoundEndOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogGameRoundEndOptions.cs.meta deleted file mode 100644 index 90a53ea..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogGameRoundEndOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 25f2e1cceb3a8f34f924035e748c4798 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogGameRoundStartOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogGameRoundStartOptions.cs deleted file mode 100644 index 957e77f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogGameRoundStartOptions.cs +++ /dev/null @@ -1,94 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - public class LogGameRoundStartOptions - { - /// - /// Optional game session or match identifier useful for some backend API integrations - /// - public string SessionIdentifier { get; set; } - - /// - /// Optional name of the map being played - /// - public string LevelName { get; set; } - - /// - /// Optional name of the game mode being played - /// - public string ModeName { get; set; } - - /// - /// Optional length of the game round to be played, in seconds. If none, use 0. - /// - public uint RoundTimeSeconds { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LogGameRoundStartOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_SessionIdentifier; - private System.IntPtr m_LevelName; - private System.IntPtr m_ModeName; - private uint m_RoundTimeSeconds; - - public string SessionIdentifier - { - set - { - Helper.TryMarshalSet(ref m_SessionIdentifier, value); - } - } - - public string LevelName - { - set - { - Helper.TryMarshalSet(ref m_LevelName, value); - } - } - - public string ModeName - { - set - { - Helper.TryMarshalSet(ref m_ModeName, value); - } - } - - public uint RoundTimeSeconds - { - set - { - m_RoundTimeSeconds = value; - } - } - - public void Set(LogGameRoundStartOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatCommonInterface.LoggameroundstartApiLatest; - SessionIdentifier = other.SessionIdentifier; - LevelName = other.LevelName; - ModeName = other.ModeName; - RoundTimeSeconds = other.RoundTimeSeconds; - } - } - - public void Set(object other) - { - Set(other as LogGameRoundStartOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_SessionIdentifier); - Helper.TryMarshalDispose(ref m_LevelName); - Helper.TryMarshalDispose(ref m_ModeName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogGameRoundStartOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogGameRoundStartOptions.cs.meta deleted file mode 100644 index c23cd4d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogGameRoundStartOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ccc495f2698fac94e926b6491bcaa845 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerDespawnOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerDespawnOptions.cs deleted file mode 100644 index 2da986f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerDespawnOptions.cs +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - public class LogPlayerDespawnOptions - { - /// - /// Locally unique value used in RegisterClient/RegisterPeer - /// - public System.IntPtr DespawnedPlayerHandle { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LogPlayerDespawnOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_DespawnedPlayerHandle; - - public System.IntPtr DespawnedPlayerHandle - { - set - { - m_DespawnedPlayerHandle = value; - } - } - - public void Set(LogPlayerDespawnOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatCommonInterface.LogplayerdespawnApiLatest; - DespawnedPlayerHandle = other.DespawnedPlayerHandle; - } - } - - public void Set(object other) - { - Set(other as LogPlayerDespawnOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_DespawnedPlayerHandle); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerDespawnOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerDespawnOptions.cs.meta deleted file mode 100644 index f17a005..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerDespawnOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d5657564deea6084690f2427e1234f2f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerReviveOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerReviveOptions.cs deleted file mode 100644 index 42bdc3a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerReviveOptions.cs +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - public class LogPlayerReviveOptions - { - /// - /// Locally unique value used in RegisterClient/RegisterPeer - /// - public System.IntPtr RevivedPlayerHandle { get; set; } - - /// - /// Locally unique value used in RegisterClient/RegisterPeer - /// - public System.IntPtr ReviverPlayerHandle { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LogPlayerReviveOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_RevivedPlayerHandle; - private System.IntPtr m_ReviverPlayerHandle; - - public System.IntPtr RevivedPlayerHandle - { - set - { - m_RevivedPlayerHandle = value; - } - } - - public System.IntPtr ReviverPlayerHandle - { - set - { - m_ReviverPlayerHandle = value; - } - } - - public void Set(LogPlayerReviveOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatCommonInterface.LogplayerreviveApiLatest; - RevivedPlayerHandle = other.RevivedPlayerHandle; - ReviverPlayerHandle = other.ReviverPlayerHandle; - } - } - - public void Set(object other) - { - Set(other as LogPlayerReviveOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_RevivedPlayerHandle); - Helper.TryMarshalDispose(ref m_ReviverPlayerHandle); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerReviveOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerReviveOptions.cs.meta deleted file mode 100644 index 64499f7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerReviveOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f47ccbaf348448449949ef71289e7374 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerSpawnOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerSpawnOptions.cs deleted file mode 100644 index 563a0f7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerSpawnOptions.cs +++ /dev/null @@ -1,77 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - public class LogPlayerSpawnOptions - { - /// - /// Locally unique value used in RegisterClient/RegisterPeer - /// - public System.IntPtr SpawnedPlayerHandle { get; set; } - - /// - /// Optional identifier for the player's team. If none, use 0. - /// - public uint TeamId { get; set; } - - /// - /// Optional identifier for the player's character. If none, use 0. - /// - public uint CharacterId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LogPlayerSpawnOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_SpawnedPlayerHandle; - private uint m_TeamId; - private uint m_CharacterId; - - public System.IntPtr SpawnedPlayerHandle - { - set - { - m_SpawnedPlayerHandle = value; - } - } - - public uint TeamId - { - set - { - m_TeamId = value; - } - } - - public uint CharacterId - { - set - { - m_CharacterId = value; - } - } - - public void Set(LogPlayerSpawnOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatCommonInterface.LogplayerspawnApiLatest; - SpawnedPlayerHandle = other.SpawnedPlayerHandle; - TeamId = other.TeamId; - CharacterId = other.CharacterId; - } - } - - public void Set(object other) - { - Set(other as LogPlayerSpawnOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_SpawnedPlayerHandle); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerSpawnOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerSpawnOptions.cs.meta deleted file mode 100644 index ed53653..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerSpawnOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b638b4319f3d1e44a8cae212fa245fb1 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerTakeDamageOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerTakeDamageOptions.cs deleted file mode 100644 index 84794bc..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerTakeDamageOptions.cs +++ /dev/null @@ -1,298 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - public class LogPlayerTakeDamageOptions - { - /// - /// Locally unique value used in RegisterClient/RegisterPeer - /// - public System.IntPtr VictimPlayerHandle { get; set; } - - /// - /// Victim player's current world position as a 3D vector - /// - public Vec3f VictimPlayerPosition { get; set; } - - /// - /// Victim player's view rotation as a quaternion - /// - public Quat VictimPlayerViewRotation { get; set; } - - /// - /// Locally unique value used in RegisterClient/RegisterPeer - /// - public System.IntPtr AttackerPlayerHandle { get; set; } - - /// - /// Attacker player's current world position as a 3D vector - /// - public Vec3f AttackerPlayerPosition { get; set; } - - /// - /// Attacker player's view rotation as a quaternion - /// - public Quat AttackerPlayerViewRotation { get; set; } - - /// - /// True if the damage was applied instantly at the time of attack from the game - /// simulation's perspective, otherwise false (simulated ballistics, arrow, etc). - /// - public bool IsHitscanAttack { get; set; } - - /// - /// True if there is a visible line of sight between the attacker and the victim at the time - /// that damage is being applied, false if there is an obstacle like a wall or terrain in - /// the way. For some situations like melee or hitscan weapons this is trivially - /// true, for others like projectiles with simulated physics it may not be e.g. a player - /// could fire a slow moving projectile and then move behind cover before it strikes. - /// - public bool HasLineOfSight { get; set; } - - /// - /// True if this was a critical hit that causes extra damage (e.g. headshot) - /// - public bool IsCriticalHit { get; set; } - - /// - /// Identifier of the victim bone hit in this damage event - /// - public uint HitBoneId { get; set; } - - /// - /// Number of health points that the victim lost due to this damage event - /// - public float DamageTaken { get; set; } - - /// - /// Number of health points that the victim has remaining after this damage event - /// - public float HealthRemaining { get; set; } - - /// - /// Source of the damage event - /// - public AntiCheatCommonPlayerTakeDamageSource DamageSource { get; set; } - - /// - /// Type of the damage being applied - /// - public AntiCheatCommonPlayerTakeDamageType DamageType { get; set; } - - /// - /// Result of the damage for the victim, if any - /// - public AntiCheatCommonPlayerTakeDamageResult DamageResult { get; set; } - - /// - /// PlayerUseWeaponData associated with this damage event if available, otherwise NULL - /// - public LogPlayerUseWeaponData PlayerUseWeaponData { get; set; } - - /// - /// Time in milliseconds since the PlayerUseWeaponData event occurred if available, otherwise 0 - /// - public uint TimeSincePlayerUseWeaponMs { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LogPlayerTakeDamageOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_VictimPlayerHandle; - private System.IntPtr m_VictimPlayerPosition; - private System.IntPtr m_VictimPlayerViewRotation; - private System.IntPtr m_AttackerPlayerHandle; - private System.IntPtr m_AttackerPlayerPosition; - private System.IntPtr m_AttackerPlayerViewRotation; - private int m_IsHitscanAttack; - private int m_HasLineOfSight; - private int m_IsCriticalHit; - private uint m_HitBoneId; - private float m_DamageTaken; - private float m_HealthRemaining; - private AntiCheatCommonPlayerTakeDamageSource m_DamageSource; - private AntiCheatCommonPlayerTakeDamageType m_DamageType; - private AntiCheatCommonPlayerTakeDamageResult m_DamageResult; - private System.IntPtr m_PlayerUseWeaponData; - private uint m_TimeSincePlayerUseWeaponMs; - - public System.IntPtr VictimPlayerHandle - { - set - { - m_VictimPlayerHandle = value; - } - } - - public Vec3f VictimPlayerPosition - { - set - { - Helper.TryMarshalSet(ref m_VictimPlayerPosition, value); - } - } - - public Quat VictimPlayerViewRotation - { - set - { - Helper.TryMarshalSet(ref m_VictimPlayerViewRotation, value); - } - } - - public System.IntPtr AttackerPlayerHandle - { - set - { - m_AttackerPlayerHandle = value; - } - } - - public Vec3f AttackerPlayerPosition - { - set - { - Helper.TryMarshalSet(ref m_AttackerPlayerPosition, value); - } - } - - public Quat AttackerPlayerViewRotation - { - set - { - Helper.TryMarshalSet(ref m_AttackerPlayerViewRotation, value); - } - } - - public bool IsHitscanAttack - { - set - { - Helper.TryMarshalSet(ref m_IsHitscanAttack, value); - } - } - - public bool HasLineOfSight - { - set - { - Helper.TryMarshalSet(ref m_HasLineOfSight, value); - } - } - - public bool IsCriticalHit - { - set - { - Helper.TryMarshalSet(ref m_IsCriticalHit, value); - } - } - - public uint HitBoneId - { - set - { - m_HitBoneId = value; - } - } - - public float DamageTaken - { - set - { - m_DamageTaken = value; - } - } - - public float HealthRemaining - { - set - { - m_HealthRemaining = value; - } - } - - public AntiCheatCommonPlayerTakeDamageSource DamageSource - { - set - { - m_DamageSource = value; - } - } - - public AntiCheatCommonPlayerTakeDamageType DamageType - { - set - { - m_DamageType = value; - } - } - - public AntiCheatCommonPlayerTakeDamageResult DamageResult - { - set - { - m_DamageResult = value; - } - } - - public LogPlayerUseWeaponData PlayerUseWeaponData - { - set - { - Helper.TryMarshalSet(ref m_PlayerUseWeaponData, value); - } - } - - public uint TimeSincePlayerUseWeaponMs - { - set - { - m_TimeSincePlayerUseWeaponMs = value; - } - } - - public void Set(LogPlayerTakeDamageOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatCommonInterface.LogplayertakedamageApiLatest; - VictimPlayerHandle = other.VictimPlayerHandle; - VictimPlayerPosition = other.VictimPlayerPosition; - VictimPlayerViewRotation = other.VictimPlayerViewRotation; - AttackerPlayerHandle = other.AttackerPlayerHandle; - AttackerPlayerPosition = other.AttackerPlayerPosition; - AttackerPlayerViewRotation = other.AttackerPlayerViewRotation; - IsHitscanAttack = other.IsHitscanAttack; - HasLineOfSight = other.HasLineOfSight; - IsCriticalHit = other.IsCriticalHit; - HitBoneId = other.HitBoneId; - DamageTaken = other.DamageTaken; - HealthRemaining = other.HealthRemaining; - DamageSource = other.DamageSource; - DamageType = other.DamageType; - DamageResult = other.DamageResult; - PlayerUseWeaponData = other.PlayerUseWeaponData; - TimeSincePlayerUseWeaponMs = other.TimeSincePlayerUseWeaponMs; - } - } - - public void Set(object other) - { - Set(other as LogPlayerTakeDamageOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_VictimPlayerHandle); - Helper.TryMarshalDispose(ref m_VictimPlayerPosition); - Helper.TryMarshalDispose(ref m_VictimPlayerViewRotation); - Helper.TryMarshalDispose(ref m_AttackerPlayerHandle); - Helper.TryMarshalDispose(ref m_AttackerPlayerPosition); - Helper.TryMarshalDispose(ref m_AttackerPlayerViewRotation); - Helper.TryMarshalDispose(ref m_PlayerUseWeaponData); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerTakeDamageOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerTakeDamageOptions.cs.meta deleted file mode 100644 index a6f968e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerTakeDamageOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 21f2574eb5d585341ab207f0dbf95c9e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerTickOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerTickOptions.cs deleted file mode 100644 index 8ed7984..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerTickOptions.cs +++ /dev/null @@ -1,124 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - public class LogPlayerTickOptions - { - /// - /// Locally unique value used in RegisterClient/RegisterPeer - /// - public System.IntPtr PlayerHandle { get; set; } - - /// - /// Player's current world position as a 3D vector - /// - public Vec3f PlayerPosition { get; set; } - - /// - /// Player's view rotation as a quaternion - /// - public Quat PlayerViewRotation { get; set; } - - /// - /// True if the player's view is zoomed (e.g. using a sniper rifle), otherwise false - /// - public bool IsPlayerViewZoomed { get; set; } - - /// - /// Player's current health value - /// - public float PlayerHealth { get; set; } - - /// - /// Any movement state applicable - /// - public AntiCheatCommonPlayerMovementState PlayerMovementState { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LogPlayerTickOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_PlayerHandle; - private System.IntPtr m_PlayerPosition; - private System.IntPtr m_PlayerViewRotation; - private int m_IsPlayerViewZoomed; - private float m_PlayerHealth; - private AntiCheatCommonPlayerMovementState m_PlayerMovementState; - - public System.IntPtr PlayerHandle - { - set - { - m_PlayerHandle = value; - } - } - - public Vec3f PlayerPosition - { - set - { - Helper.TryMarshalSet(ref m_PlayerPosition, value); - } - } - - public Quat PlayerViewRotation - { - set - { - Helper.TryMarshalSet(ref m_PlayerViewRotation, value); - } - } - - public bool IsPlayerViewZoomed - { - set - { - Helper.TryMarshalSet(ref m_IsPlayerViewZoomed, value); - } - } - - public float PlayerHealth - { - set - { - m_PlayerHealth = value; - } - } - - public AntiCheatCommonPlayerMovementState PlayerMovementState - { - set - { - m_PlayerMovementState = value; - } - } - - public void Set(LogPlayerTickOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatCommonInterface.LogplayertickApiLatest; - PlayerHandle = other.PlayerHandle; - PlayerPosition = other.PlayerPosition; - PlayerViewRotation = other.PlayerViewRotation; - IsPlayerViewZoomed = other.IsPlayerViewZoomed; - PlayerHealth = other.PlayerHealth; - PlayerMovementState = other.PlayerMovementState; - } - } - - public void Set(object other) - { - Set(other as LogPlayerTickOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_PlayerHandle); - Helper.TryMarshalDispose(ref m_PlayerPosition); - Helper.TryMarshalDispose(ref m_PlayerViewRotation); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerTickOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerTickOptions.cs.meta deleted file mode 100644 index ca922f3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerTickOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ad7dc4564f0154640b5a9d818c465805 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseAbilityOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseAbilityOptions.cs deleted file mode 100644 index 005c808..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseAbilityOptions.cs +++ /dev/null @@ -1,92 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - public class LogPlayerUseAbilityOptions - { - /// - /// Locally unique value used in RegisterClient/RegisterPeer - /// - public System.IntPtr PlayerHandle { get; set; } - - /// - /// Game defined unique identifier for the ability being used - /// - public uint AbilityId { get; set; } - - /// - /// Duration of the ability effect in milliseconds. If not applicable, use 0. - /// - public uint AbilityDurationMs { get; set; } - - /// - /// Cooldown until the ability can be used again in milliseconds. If not applicable, use 0. - /// - public uint AbilityCooldownMs { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LogPlayerUseAbilityOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_PlayerHandle; - private uint m_AbilityId; - private uint m_AbilityDurationMs; - private uint m_AbilityCooldownMs; - - public System.IntPtr PlayerHandle - { - set - { - m_PlayerHandle = value; - } - } - - public uint AbilityId - { - set - { - m_AbilityId = value; - } - } - - public uint AbilityDurationMs - { - set - { - m_AbilityDurationMs = value; - } - } - - public uint AbilityCooldownMs - { - set - { - m_AbilityCooldownMs = value; - } - } - - public void Set(LogPlayerUseAbilityOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatCommonInterface.LogplayeruseabilityApiLatest; - PlayerHandle = other.PlayerHandle; - AbilityId = other.AbilityId; - AbilityDurationMs = other.AbilityDurationMs; - AbilityCooldownMs = other.AbilityCooldownMs; - } - } - - public void Set(object other) - { - Set(other as LogPlayerUseAbilityOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_PlayerHandle); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseAbilityOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseAbilityOptions.cs.meta deleted file mode 100644 index 7534d60..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseAbilityOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a4a407f728287b540a2d1824c1cf113b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseWeaponData.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseWeaponData.cs deleted file mode 100644 index 973428e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseWeaponData.cs +++ /dev/null @@ -1,181 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - public class LogPlayerUseWeaponData : ISettable - { - /// - /// Locally unique value used in RegisterClient/RegisterPeer - /// - public System.IntPtr PlayerHandle { get; set; } - - /// - /// Player's current world position as a 3D vector - /// - public Vec3f PlayerPosition { get; set; } - - /// - /// Player's view rotation as a quaternion - /// - public Quat PlayerViewRotation { get; set; } - - /// - /// True if the player's view is zoomed (e.g. using a sniper rifle), otherwise false - /// - public bool IsPlayerViewZoomed { get; set; } - - /// - /// Set to true if the player is using a melee attack, otherwise false - /// - public bool IsMeleeAttack { get; set; } - - /// - /// Name of the weapon used. Will be truncated to bytes if longer. - /// - public string WeaponName { get; set; } - - internal void Set(LogPlayerUseWeaponDataInternal? other) - { - if (other != null) - { - PlayerHandle = other.Value.PlayerHandle; - PlayerPosition = other.Value.PlayerPosition; - PlayerViewRotation = other.Value.PlayerViewRotation; - IsPlayerViewZoomed = other.Value.IsPlayerViewZoomed; - IsMeleeAttack = other.Value.IsMeleeAttack; - WeaponName = other.Value.WeaponName; - } - } - - public void Set(object other) - { - Set(other as LogPlayerUseWeaponDataInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LogPlayerUseWeaponDataInternal : ISettable, System.IDisposable - { - private System.IntPtr m_PlayerHandle; - private System.IntPtr m_PlayerPosition; - private System.IntPtr m_PlayerViewRotation; - private int m_IsPlayerViewZoomed; - private int m_IsMeleeAttack; - private System.IntPtr m_WeaponName; - - public System.IntPtr PlayerHandle - { - get - { - return m_PlayerHandle; - } - - set - { - m_PlayerHandle = value; - } - } - - public Vec3f PlayerPosition - { - get - { - Vec3f value; - Helper.TryMarshalGet(m_PlayerPosition, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_PlayerPosition, value); - } - } - - public Quat PlayerViewRotation - { - get - { - Quat value; - Helper.TryMarshalGet(m_PlayerViewRotation, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_PlayerViewRotation, value); - } - } - - public bool IsPlayerViewZoomed - { - get - { - bool value; - Helper.TryMarshalGet(m_IsPlayerViewZoomed, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_IsPlayerViewZoomed, value); - } - } - - public bool IsMeleeAttack - { - get - { - bool value; - Helper.TryMarshalGet(m_IsMeleeAttack, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_IsMeleeAttack, value); - } - } - - public string WeaponName - { - get - { - string value; - Helper.TryMarshalGet(m_WeaponName, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_WeaponName, value); - } - } - - public void Set(LogPlayerUseWeaponData other) - { - if (other != null) - { - PlayerHandle = other.PlayerHandle; - PlayerPosition = other.PlayerPosition; - PlayerViewRotation = other.PlayerViewRotation; - IsPlayerViewZoomed = other.IsPlayerViewZoomed; - IsMeleeAttack = other.IsMeleeAttack; - WeaponName = other.WeaponName; - } - } - - public void Set(object other) - { - Set(other as LogPlayerUseWeaponData); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_PlayerHandle); - Helper.TryMarshalDispose(ref m_PlayerPosition); - Helper.TryMarshalDispose(ref m_PlayerViewRotation); - Helper.TryMarshalDispose(ref m_WeaponName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseWeaponData.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseWeaponData.cs.meta deleted file mode 100644 index aeec9be..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseWeaponData.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 55256d68f959f7d44a27a5cb8f5f33a3 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseWeaponOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseWeaponOptions.cs deleted file mode 100644 index fb1fcdd..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseWeaponOptions.cs +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - public class LogPlayerUseWeaponOptions - { - /// - /// Struct containing detailed information about a weapon use event - /// - public LogPlayerUseWeaponData UseWeaponData { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LogPlayerUseWeaponOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_UseWeaponData; - - public LogPlayerUseWeaponData UseWeaponData - { - set - { - Helper.TryMarshalSet(ref m_UseWeaponData, value); - } - } - - public void Set(LogPlayerUseWeaponOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatCommonInterface.LogplayeruseweaponApiLatest; - UseWeaponData = other.UseWeaponData; - } - } - - public void Set(object other) - { - Set(other as LogPlayerUseWeaponOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_UseWeaponData); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseWeaponOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseWeaponOptions.cs.meta deleted file mode 100644 index 5c9b815..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/LogPlayerUseWeaponOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d363cd2b124c05b49846448ea2b3d627 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/OnClientActionRequiredCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/OnClientActionRequiredCallbackInfo.cs deleted file mode 100644 index 9c5f3f0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/OnClientActionRequiredCallbackInfo.cs +++ /dev/null @@ -1,120 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - /// - /// Structure containing details about a required client/peer action - /// - public class OnClientActionRequiredCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Caller-specified context data - /// - public object ClientData { get; private set; } - - /// - /// The identifier of the client/peer that this action applies to. See the RegisterClient and RegisterPeer functions. - /// - public System.IntPtr ClientHandle { get; private set; } - - /// - /// The action that must be applied to the specified client/peer - /// - public AntiCheatCommonClientAction ClientAction { get; private set; } - - /// - /// Code indicating the reason for the action - /// - public AntiCheatCommonClientActionReason ActionReasonCode { get; private set; } - - /// - /// String containing details about the action reason - /// - public string ActionReasonDetailsString { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(OnClientActionRequiredCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - ClientHandle = other.Value.ClientHandle; - ClientAction = other.Value.ClientAction; - ActionReasonCode = other.Value.ActionReasonCode; - ActionReasonDetailsString = other.Value.ActionReasonDetailsString; - } - } - - public void Set(object other) - { - Set(other as OnClientActionRequiredCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct OnClientActionRequiredCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_ClientHandle; - private AntiCheatCommonClientAction m_ClientAction; - private AntiCheatCommonClientActionReason m_ActionReasonCode; - private System.IntPtr m_ActionReasonDetailsString; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public System.IntPtr ClientHandle - { - get - { - return m_ClientHandle; - } - } - - public AntiCheatCommonClientAction ClientAction - { - get - { - return m_ClientAction; - } - } - - public AntiCheatCommonClientActionReason ActionReasonCode - { - get - { - return m_ActionReasonCode; - } - } - - public string ActionReasonDetailsString - { - get - { - string value; - Helper.TryMarshalGet(m_ActionReasonDetailsString, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/OnClientActionRequiredCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/OnClientActionRequiredCallbackInfo.cs.meta deleted file mode 100644 index 182c60c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/OnClientActionRequiredCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e7d3ef2ff505ab149ace931ad63b6900 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/OnClientAuthStatusChangedCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/OnClientAuthStatusChangedCallbackInfo.cs deleted file mode 100644 index 1ef0b3f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/OnClientAuthStatusChangedCallbackInfo.cs +++ /dev/null @@ -1,88 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - /// - /// Structure containing details about a client/peer authentication status change - /// - public class OnClientAuthStatusChangedCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Caller-specified context data - /// - public object ClientData { get; private set; } - - /// - /// The identifier of the client/peer that this status change applies to. See the RegisterClient and RegisterPeer functions. - /// - public System.IntPtr ClientHandle { get; private set; } - - /// - /// The client/peer's new authentication status - /// - public AntiCheatCommonClientAuthStatus ClientAuthStatus { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(OnClientAuthStatusChangedCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - ClientHandle = other.Value.ClientHandle; - ClientAuthStatus = other.Value.ClientAuthStatus; - } - } - - public void Set(object other) - { - Set(other as OnClientAuthStatusChangedCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct OnClientAuthStatusChangedCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_ClientHandle; - private AntiCheatCommonClientAuthStatus m_ClientAuthStatus; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public System.IntPtr ClientHandle - { - get - { - return m_ClientHandle; - } - } - - public AntiCheatCommonClientAuthStatus ClientAuthStatus - { - get - { - return m_ClientAuthStatus; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/OnClientAuthStatusChangedCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/OnClientAuthStatusChangedCallbackInfo.cs.meta deleted file mode 100644 index 2d03418..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/OnClientAuthStatusChangedCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ef19406610ad5f64fbb800e243aec8a4 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/OnMessageToClientCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/OnMessageToClientCallbackInfo.cs deleted file mode 100644 index 0d187c9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/OnMessageToClientCallbackInfo.cs +++ /dev/null @@ -1,91 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - /// - /// Structure containing details about a new message that must be dispatched to a connected client/peer. - /// - public class OnMessageToClientCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Caller-specified context data - /// - public object ClientData { get; private set; } - - /// - /// The identifier of the client/peer that this message must be delivered to. See the RegisterClient and RegisterPeer functions. - /// - public System.IntPtr ClientHandle { get; private set; } - - /// - /// The message data that must be sent to the client - /// - public byte[] MessageData { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(OnMessageToClientCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - ClientHandle = other.Value.ClientHandle; - MessageData = other.Value.MessageData; - } - } - - public void Set(object other) - { - Set(other as OnMessageToClientCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct OnMessageToClientCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_ClientHandle; - private System.IntPtr m_MessageData; - private uint m_MessageDataSizeBytes; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public System.IntPtr ClientHandle - { - get - { - return m_ClientHandle; - } - } - - public byte[] MessageData - { - get - { - byte[] value; - Helper.TryMarshalGet(m_MessageData, out value, m_MessageDataSizeBytes); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/OnMessageToClientCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/OnMessageToClientCallbackInfo.cs.meta deleted file mode 100644 index e577e61..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/OnMessageToClientCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 78ff3f8339c8fef439d304d7863bb326 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/Quat.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/Quat.cs deleted file mode 100644 index b1321b7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/Quat.cs +++ /dev/null @@ -1,128 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - /// - /// Quaternion using left-handed coordinate system (as in Unreal Engine) - /// - public class Quat : ISettable - { - /// - /// W component - scalar part - /// - public float w { get; set; } - - /// - /// X component - forward direction - /// - public float x { get; set; } - - /// - /// Y component - right direction - /// - public float y { get; set; } - - /// - /// Z component - up direction - /// - public float z { get; set; } - - internal void Set(QuatInternal? other) - { - if (other != null) - { - w = other.Value.w; - x = other.Value.x; - y = other.Value.y; - z = other.Value.z; - } - } - - public void Set(object other) - { - Set(other as QuatInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QuatInternal : ISettable, System.IDisposable - { - private float m_w; - private float m_x; - private float m_y; - private float m_z; - - public float w - { - get - { - return m_w; - } - - set - { - m_w = value; - } - } - - public float x - { - get - { - return m_x; - } - - set - { - m_x = value; - } - } - - public float y - { - get - { - return m_y; - } - - set - { - m_y = value; - } - } - - public float z - { - get - { - return m_z; - } - - set - { - m_z = value; - } - } - - public void Set(Quat other) - { - if (other != null) - { - w = other.w; - x = other.x; - y = other.y; - z = other.z; - } - } - - public void Set(object other) - { - Set(other as Quat); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/Quat.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/Quat.cs.meta deleted file mode 100644 index da4b75f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/Quat.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 948c7695c069be849945ac46f327164a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/RegisterEventOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/RegisterEventOptions.cs deleted file mode 100644 index cefd520..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/RegisterEventOptions.cs +++ /dev/null @@ -1,94 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - public class RegisterEventOptions - { - /// - /// Unique event identifier. Must be >= . - /// - public uint EventId { get; set; } - - /// - /// Name of the custom event. Allowed characters are 0-9, A-Z, a-z, '_', '-', '.' - /// - public string EventName { get; set; } - - /// - /// Type of the custom event - /// - public AntiCheatCommonEventType EventType { get; set; } - - /// - /// Pointer to an array of with ParamDefsCount elements - /// - public RegisterEventParamDef[] ParamDefs { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct RegisterEventOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_EventId; - private System.IntPtr m_EventName; - private AntiCheatCommonEventType m_EventType; - private uint m_ParamDefsCount; - private System.IntPtr m_ParamDefs; - - public uint EventId - { - set - { - m_EventId = value; - } - } - - public string EventName - { - set - { - Helper.TryMarshalSet(ref m_EventName, value); - } - } - - public AntiCheatCommonEventType EventType - { - set - { - m_EventType = value; - } - } - - public RegisterEventParamDef[] ParamDefs - { - set - { - Helper.TryMarshalSet(ref m_ParamDefs, value, out m_ParamDefsCount); - } - } - - public void Set(RegisterEventOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatCommonInterface.RegistereventApiLatest; - EventId = other.EventId; - EventName = other.EventName; - EventType = other.EventType; - ParamDefs = other.ParamDefs; - } - } - - public void Set(object other) - { - Set(other as RegisterEventOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_EventName); - Helper.TryMarshalDispose(ref m_ParamDefs); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/RegisterEventOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/RegisterEventOptions.cs.meta deleted file mode 100644 index 6ca5af4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/RegisterEventOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 2eb0a6786b3d47441ac4ddc3aa545586 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/RegisterEventParamDef.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/RegisterEventParamDef.cs deleted file mode 100644 index d2219b8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/RegisterEventParamDef.cs +++ /dev/null @@ -1,86 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - public class RegisterEventParamDef : ISettable - { - /// - /// Parameter name. Allowed characters are 0-9, A-Z, a-z, '_', '-', '.' - /// - public string ParamName { get; set; } - - /// - /// Parameter type - /// - public AntiCheatCommonEventParamType ParamType { get; set; } - - internal void Set(RegisterEventParamDefInternal? other) - { - if (other != null) - { - ParamName = other.Value.ParamName; - ParamType = other.Value.ParamType; - } - } - - public void Set(object other) - { - Set(other as RegisterEventParamDefInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct RegisterEventParamDefInternal : ISettable, System.IDisposable - { - private System.IntPtr m_ParamName; - private AntiCheatCommonEventParamType m_ParamType; - - public string ParamName - { - get - { - string value; - Helper.TryMarshalGet(m_ParamName, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_ParamName, value); - } - } - - public AntiCheatCommonEventParamType ParamType - { - get - { - return m_ParamType; - } - - set - { - m_ParamType = value; - } - } - - public void Set(RegisterEventParamDef other) - { - if (other != null) - { - ParamName = other.ParamName; - ParamType = other.ParamType; - } - } - - public void Set(object other) - { - Set(other as RegisterEventParamDef); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_ParamName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/RegisterEventParamDef.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/RegisterEventParamDef.cs.meta deleted file mode 100644 index e59ec1b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/RegisterEventParamDef.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 6596c67ce794c574dbb6a05cb3a39c18 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/SetClientDetailsOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/SetClientDetailsOptions.cs deleted file mode 100644 index 15d3e5c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/SetClientDetailsOptions.cs +++ /dev/null @@ -1,77 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - public class SetClientDetailsOptions - { - /// - /// Locally unique value used in RegisterClient/RegisterPeer - /// - public System.IntPtr ClientHandle { get; set; } - - /// - /// General flags associated with this client, if any - /// - public AntiCheatCommonClientFlags ClientFlags { get; set; } - - /// - /// Input device being used by this client, if known - /// - public AntiCheatCommonClientInput ClientInputMethod { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SetClientDetailsOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_ClientHandle; - private AntiCheatCommonClientFlags m_ClientFlags; - private AntiCheatCommonClientInput m_ClientInputMethod; - - public System.IntPtr ClientHandle - { - set - { - m_ClientHandle = value; - } - } - - public AntiCheatCommonClientFlags ClientFlags - { - set - { - m_ClientFlags = value; - } - } - - public AntiCheatCommonClientInput ClientInputMethod - { - set - { - m_ClientInputMethod = value; - } - } - - public void Set(SetClientDetailsOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatCommonInterface.SetclientdetailsApiLatest; - ClientHandle = other.ClientHandle; - ClientFlags = other.ClientFlags; - ClientInputMethod = other.ClientInputMethod; - } - } - - public void Set(object other) - { - Set(other as SetClientDetailsOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_ClientHandle); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/SetClientDetailsOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/SetClientDetailsOptions.cs.meta deleted file mode 100644 index 90c192b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/SetClientDetailsOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c02121f173f67364ca5a503568838e75 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/SetGameSessionIdOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/SetGameSessionIdOptions.cs deleted file mode 100644 index 81d5812..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/SetGameSessionIdOptions.cs +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - public class SetGameSessionIdOptions - { - /// - /// Game session identifier - /// - public string GameSessionId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SetGameSessionIdOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_GameSessionId; - - public string GameSessionId - { - set - { - Helper.TryMarshalSet(ref m_GameSessionId, value); - } - } - - public void Set(SetGameSessionIdOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatCommonInterface.SetgamesessionidApiLatest; - GameSessionId = other.GameSessionId; - } - } - - public void Set(object other) - { - Set(other as SetGameSessionIdOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_GameSessionId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/SetGameSessionIdOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/SetGameSessionIdOptions.cs.meta deleted file mode 100644 index 432b79b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/SetGameSessionIdOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f19a95698dbfad347b46b7384e90700e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/Vec3f.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/Vec3f.cs deleted file mode 100644 index ac4165c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/Vec3f.cs +++ /dev/null @@ -1,107 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatCommon -{ - /// - /// Vector using left-handed coordinate system (as in Unreal Engine) - /// - public class Vec3f : ISettable - { - /// - /// X axis coordinate - forward direction - /// - public float x { get; set; } - - /// - /// Y axis coordinate - right direction - /// - public float y { get; set; } - - /// - /// Z axis coordinate - up direction - /// - public float z { get; set; } - - internal void Set(Vec3fInternal? other) - { - if (other != null) - { - x = other.Value.x; - y = other.Value.y; - z = other.Value.z; - } - } - - public void Set(object other) - { - Set(other as Vec3fInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct Vec3fInternal : ISettable, System.IDisposable - { - private float m_x; - private float m_y; - private float m_z; - - public float x - { - get - { - return m_x; - } - - set - { - m_x = value; - } - } - - public float y - { - get - { - return m_y; - } - - set - { - m_y = value; - } - } - - public float z - { - get - { - return m_z; - } - - set - { - m_z = value; - } - } - - public void Set(Vec3f other) - { - if (other != null) - { - x = other.x; - y = other.y; - z = other.z; - } - } - - public void Set(object other) - { - Set(other as Vec3f); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/Vec3f.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/Vec3f.cs.meta deleted file mode 100644 index 38102c8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatCommon/Vec3f.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ffe5e724b856dce488cd6aee56741f5a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer.meta deleted file mode 100644 index c49c825..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 438c02f5878372b43bb49759e38c6605 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/AddNotifyClientActionRequiredOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/AddNotifyClientActionRequiredOptions.cs deleted file mode 100644 index e834a88..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/AddNotifyClientActionRequiredOptions.cs +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatServer -{ - public class AddNotifyClientActionRequiredOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyClientActionRequiredOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(AddNotifyClientActionRequiredOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatServerInterface.AddnotifyclientactionrequiredApiLatest; - } - } - - public void Set(object other) - { - Set(other as AddNotifyClientActionRequiredOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/AddNotifyClientActionRequiredOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/AddNotifyClientActionRequiredOptions.cs.meta deleted file mode 100644 index d549e6c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/AddNotifyClientActionRequiredOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 6522e475b3a20054aaa23a70d5892bef -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/AddNotifyClientAuthStatusChangedOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/AddNotifyClientAuthStatusChangedOptions.cs deleted file mode 100644 index ec33af8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/AddNotifyClientAuthStatusChangedOptions.cs +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatServer -{ - public class AddNotifyClientAuthStatusChangedOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyClientAuthStatusChangedOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(AddNotifyClientAuthStatusChangedOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatServerInterface.AddnotifyclientauthstatuschangedApiLatest; - } - } - - public void Set(object other) - { - Set(other as AddNotifyClientAuthStatusChangedOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/AddNotifyClientAuthStatusChangedOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/AddNotifyClientAuthStatusChangedOptions.cs.meta deleted file mode 100644 index 2a5ae4c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/AddNotifyClientAuthStatusChangedOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e51864954e29ec244a215a2a84c08573 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/AddNotifyMessageToClientOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/AddNotifyMessageToClientOptions.cs deleted file mode 100644 index 34c0f30..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/AddNotifyMessageToClientOptions.cs +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatServer -{ - public class AddNotifyMessageToClientOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyMessageToClientOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(AddNotifyMessageToClientOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatServerInterface.AddnotifymessagetoclientApiLatest; - } - } - - public void Set(object other) - { - Set(other as AddNotifyMessageToClientOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/AddNotifyMessageToClientOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/AddNotifyMessageToClientOptions.cs.meta deleted file mode 100644 index 7d1cf7d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/AddNotifyMessageToClientOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0ff19e8e7bbe9ec42992dc0172d2b263 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/AntiCheatServerInterface.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/AntiCheatServerInterface.cs deleted file mode 100644 index 2d7d266..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/AntiCheatServerInterface.cs +++ /dev/null @@ -1,740 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatServer -{ - public sealed partial class AntiCheatServerInterface : Handle - { - public AntiCheatServerInterface() - { - } - - public AntiCheatServerInterface(System.IntPtr innerHandle) : base(innerHandle) - { - } - - public const int AddnotifyclientactionrequiredApiLatest = 1; - - public const int AddnotifyclientauthstatuschangedApiLatest = 1; - - public const int AddnotifymessagetoclientApiLatest = 1; - - public const int BeginsessionApiLatest = 3; - - public const int BeginsessionMaxRegistertimeout = 120; - - /// - /// Limits on RegisterTimeoutSeconds parameter - /// - public const int BeginsessionMinRegistertimeout = 10; - - public const int EndsessionApiLatest = 1; - - public const int GetprotectmessageoutputlengthApiLatest = 1; - - public const int ProtectmessageApiLatest = 1; - - public const int ReceivemessagefromclientApiLatest = 1; - - public const int RegisterclientApiLatest = 1; - - public const int SetclientnetworkstateApiLatest = 1; - - public const int UnprotectmessageApiLatest = 1; - - public const int UnregisterclientApiLatest = 1; - - /// - /// Add a callback issued when an action must be applied to a connected client. The bound function - /// will only be called between a successful call to and the matching call. - /// - /// Structure containing input data - /// This value is returned to the caller when NotificationFn is invoked - /// The callback to be fired - /// - /// A valid notification ID if successfully bound, or otherwise - /// - public ulong AddNotifyClientActionRequired(AddNotifyClientActionRequiredOptions options, object clientData, OnClientActionRequiredCallback notificationFn) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var notificationFnInternal = new OnClientActionRequiredCallbackInternal(OnClientActionRequiredCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - - var funcResult = Bindings.EOS_AntiCheatServer_AddNotifyClientActionRequired(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Add an optional callback issued when a connected client's authentication status changes. The bound function - /// will only be called between a successful call to and the matching call. - /// - /// Structure containing input data - /// This value is returned to the caller when NotificationFn is invoked - /// The callback to be fired - /// - /// A valid notification ID if successfully bound, or otherwise - /// - public ulong AddNotifyClientAuthStatusChanged(AddNotifyClientAuthStatusChangedOptions options, object clientData, OnClientAuthStatusChangedCallback notificationFn) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var notificationFnInternal = new OnClientAuthStatusChangedCallbackInternal(OnClientAuthStatusChangedCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - - var funcResult = Bindings.EOS_AntiCheatServer_AddNotifyClientAuthStatusChanged(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Add a callback issued when a new message must be dispatched to a connected client. The bound function - /// will only be called between a successful call to and the matching call. - /// - /// Structure containing input data - /// This value is returned to the caller when NotificationFn is invoked - /// The callback to be fired - /// - /// A valid notification ID if successfully bound, or otherwise - /// - public ulong AddNotifyMessageToClient(AddNotifyMessageToClientOptions options, object clientData, OnMessageToClientCallback notificationFn) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var notificationFnInternal = new OnMessageToClientCallbackInternal(OnMessageToClientCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - - var funcResult = Bindings.EOS_AntiCheatServer_AddNotifyMessageToClient(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Begin the gameplay session. Event callbacks must be configured with - /// and before calling this function. - /// - /// Structure containing input data. - /// - /// - If the initialization succeeded - /// - If input data was invalid - /// - public Result BeginSession(BeginSessionOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_AntiCheatServer_BeginSession(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// End the gameplay session. Should be called when the server is shutting down or entering an idle state. - /// - /// Structure containing input data. - /// - /// - If the initialization succeeded - /// - If input data was invalid - /// - public Result EndSession(EndSessionOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_AntiCheatServer_EndSession(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Optional NetProtect feature for game message encryption. - /// Calculates the required decrypted buffer size for a given input data length. - /// This will not change for a given SDK version, and allows one time allocation of reusable buffers. - /// - /// Structure containing input data. - /// The length in bytes that is required to call ProtectMessage on the given input size. - /// - /// - If the output length was calculated successfully - /// - If input data was invalid - /// - public Result GetProtectMessageOutputLength(GetProtectMessageOutputLengthOptions options, out uint outBufferLengthBytes) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - outBufferLengthBytes = Helper.GetDefault(); - - var funcResult = Bindings.EOS_AntiCheatServer_GetProtectMessageOutputLength(InnerHandle, optionsAddress, ref outBufferLengthBytes); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Optional Cerberus feature for gameplay data collection. - /// Logs a custom gameplay event. - /// - /// This function may only be called between a successful call to and - /// the matching call. - /// - /// Structure containing input data. - /// - /// - If the event was logged successfully - /// - If input data was invalid - /// - public Result LogEvent(AntiCheatCommon.LogEventOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_AntiCheatServer_LogEvent(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Optional Cerberus feature for gameplay data collection. - /// Logs a game round's end and outcome. - /// - /// This function may only be called between a successful call to and - /// the matching call. - /// - /// Structure containing input data. - /// - /// - If the event was logged successfully - /// - If input data was invalid - /// - public Result LogGameRoundEnd(AntiCheatCommon.LogGameRoundEndOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_AntiCheatServer_LogGameRoundEnd(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Optional Cerberus feature for gameplay data collection. - /// Logs a new game round start. - /// - /// This function may only be called between a successful call to and - /// the matching call. - /// - /// Structure containing input data. - /// - /// - If the event was logged successfully - /// - If input data was invalid - /// - public Result LogGameRoundStart(AntiCheatCommon.LogGameRoundStartOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_AntiCheatServer_LogGameRoundStart(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Optional Cerberus feature for gameplay data collection. - /// Logs a player despawning in the game, for example as a result of the character's death, - /// switching to spectator mode, etc. - /// - /// This function may only be called between a successful call to and - /// the matching call. - /// - /// Structure containing input data. - /// - /// - If the event was logged successfully - /// - If input data was invalid - /// - public Result LogPlayerDespawn(AntiCheatCommon.LogPlayerDespawnOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_AntiCheatServer_LogPlayerDespawn(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Optional Cerberus feature for gameplay data collection. - /// Logs a player being revived after being downed (see options). - /// - /// This function may only be called between a successful call to and - /// the matching call. - /// - /// Structure containing input data. - /// - /// - If the event was logged successfully - /// - If input data was invalid - /// - public Result LogPlayerRevive(AntiCheatCommon.LogPlayerReviveOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_AntiCheatServer_LogPlayerRevive(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Optional Cerberus feature for gameplay data collection. - /// Logs a player spawning into the game. - /// - /// This function may only be called between a successful call to and - /// the matching call. - /// - /// Structure containing input data. - /// - /// - If the event was logged successfully - /// - If input data was invalid - /// - public Result LogPlayerSpawn(AntiCheatCommon.LogPlayerSpawnOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_AntiCheatServer_LogPlayerSpawn(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Optional Cerberus feature for gameplay data collection. - /// Logs that a player has taken damage. - /// - /// This function may only be called between a successful call to and - /// the matching call. - /// - /// Structure containing input data. - /// - /// - If the event was logged successfully - /// - If input data was invalid - /// - public Result LogPlayerTakeDamage(AntiCheatCommon.LogPlayerTakeDamageOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_AntiCheatServer_LogPlayerTakeDamage(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Optional Cerberus feature for gameplay data collection. - /// Logs a player's general state including position and view direction. - /// - /// This function may only be called between a successful call to and - /// the matching call. - /// - /// Structure containing input data. - /// - /// - If the event was logged successfully - /// - If input data was invalid - /// - public Result LogPlayerTick(AntiCheatCommon.LogPlayerTickOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_AntiCheatServer_LogPlayerTick(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Optional Cerberus feature for gameplay data collection. - /// Logs that a player has used a special ability or item which affects their character's capabilities, - /// for example temporarily increasing their speed or allowing them to see nearby players behind walls. - /// - /// This function may only be called between a successful call to and - /// the matching call. - /// - /// Structure containing input data. - /// - /// - If the event was logged successfully - /// - If input data was invalid - /// - public Result LogPlayerUseAbility(AntiCheatCommon.LogPlayerUseAbilityOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_AntiCheatServer_LogPlayerUseAbility(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Optional Cerberus feature for gameplay data collection. - /// Logs that a player has used a weapon, for example firing one bullet or making one melee attack. - /// - /// This function may only be called between a successful call to and - /// the matching call. - /// - /// Structure containing input data. - /// - /// - If the event was logged successfully - /// - If input data was invalid - /// - public Result LogPlayerUseWeapon(AntiCheatCommon.LogPlayerUseWeaponOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_AntiCheatServer_LogPlayerUseWeapon(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Optional NetProtect feature for game message encryption. - /// Encrypts an arbitrary message that will be sent to a game client and decrypted on the other side. - /// - /// Options.Data and OutBuffer may refer to the same buffer to encrypt in place. - /// - /// Structure containing input data. - /// On success, buffer where encrypted message data will be written. - /// Number of bytes that were written to OutBuffer. - /// - /// - If the message was protected successfully - /// - If input data was invalid - /// - If the specified ClientHandle was invalid or not currently registered. See RegisterClient. - /// - public Result ProtectMessage(ProtectMessageOptions options, out byte[] outBuffer) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - System.IntPtr outBufferAddress = System.IntPtr.Zero; - uint outBufferLengthBytes = options.OutBufferSizeBytes; - Helper.TryMarshalAllocate(ref outBufferAddress, outBufferLengthBytes, out _); - - var funcResult = Bindings.EOS_AntiCheatServer_ProtectMessage(InnerHandle, optionsAddress, outBufferAddress, ref outBufferLengthBytes); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryMarshalGet(outBufferAddress, out outBuffer, outBufferLengthBytes); - Helper.TryMarshalDispose(ref outBufferAddress); - - return funcResult; - } - - /// - /// Call when an anti-cheat message is received from a client. - /// - /// This function may only be called between a successful call to and - /// the matching call. - /// - /// Structure containing input data. - /// - /// - If the message was processed successfully - /// - If input data was invalid - /// - public Result ReceiveMessageFromClient(ReceiveMessageFromClientOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_AntiCheatServer_ReceiveMessageFromClient(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Register a connected client. Must be paired with a call to UnregisterClient. - /// - /// This function may only be called between a successful call to and - /// the matching call. - /// - /// Structure containing input data. - /// - /// - If the player was registered successfully - /// - If input data was invalid - /// - public Result RegisterClient(RegisterClientOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_AntiCheatServer_RegisterClient(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Optional Cerberus feature for gameplay data collection. - /// Registers a custom gameplay event. - /// - /// All custom game events must be registered before is called for the first time. - /// After the first call to , this function cannot be called any longer. - /// - /// Structure containing input data. - /// - /// - If the event was registered successfully - /// - If input data was invalid - /// - public Result RegisterEvent(AntiCheatCommon.RegisterEventOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_AntiCheatServer_RegisterEvent(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Remove a previously bound handler. - /// - /// The previously bound notification ID - public void RemoveNotifyClientActionRequired(ulong notificationId) - { - Helper.TryRemoveCallbackByNotificationId(notificationId); - - Bindings.EOS_AntiCheatServer_RemoveNotifyClientActionRequired(InnerHandle, notificationId); - } - - /// - /// Remove a previously bound handler. - /// - /// The previously bound notification ID - public void RemoveNotifyClientAuthStatusChanged(ulong notificationId) - { - Helper.TryRemoveCallbackByNotificationId(notificationId); - - Bindings.EOS_AntiCheatServer_RemoveNotifyClientAuthStatusChanged(InnerHandle, notificationId); - } - - /// - /// Remove a previously bound handler. - /// - /// The previously bound notification ID - public void RemoveNotifyMessageToClient(ulong notificationId) - { - Helper.TryRemoveCallbackByNotificationId(notificationId); - - Bindings.EOS_AntiCheatServer_RemoveNotifyMessageToClient(InnerHandle, notificationId); - } - - /// - /// Optional. Sets or updates client details including input device and admin status. - /// - /// This function may only be called between a successful call to and - /// the matching call. - /// - /// Structure containing input data. - /// - /// - If the flags were updated successfully - /// - If input data was invalid - /// - public Result SetClientDetails(AntiCheatCommon.SetClientDetailsOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_AntiCheatServer_SetClientDetails(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Optional. Can be used to indicate that a client is legitimately known to be - /// temporarily unable to communicate, for example as a result of loading a new level. - /// - /// The bIsNetworkActive flag must be set back to true when users enter normal - /// gameplay, otherwise anti-cheat enforcement will not work correctly. - /// - /// This function may only be called between a successful call to and - /// the matching call. - /// - /// Structure containing input data. - /// - /// - If the network state was updated successfully - /// - If input data was invalid - /// - public Result SetClientNetworkState(SetClientNetworkStateOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_AntiCheatServer_SetClientNetworkState(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Optional. Sets or updates a game session identifier which can be attached to other data for reference. - /// The identifier can be updated at any time for currently and subsequently registered clients. - /// - /// This function may only be called between a successful call to and - /// the matching call. - /// - /// Structure containing input data. - /// - /// - If the game session identifier was set successfully - /// - If input data was invalid - /// - public Result SetGameSessionId(AntiCheatCommon.SetGameSessionIdOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_AntiCheatServer_SetGameSessionId(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Optional NetProtect feature for game message encryption. - /// Decrypts an encrypted message received from a game client. - /// - /// Options.Data and OutBuffer may refer to the same buffer to decrypt in place. - /// - /// Structure containing input data. - /// On success, buffer where encrypted message data will be written. - /// Number of bytes that were written to OutBuffer. - /// - /// - If the message was unprotected successfully - /// - If input data was invalid - /// - public Result UnprotectMessage(UnprotectMessageOptions options, out byte[] outBuffer) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - System.IntPtr outBufferAddress = System.IntPtr.Zero; - uint outBufferLengthBytes = options.OutBufferSizeBytes; - Helper.TryMarshalAllocate(ref outBufferAddress, outBufferLengthBytes, out _); - - var funcResult = Bindings.EOS_AntiCheatServer_UnprotectMessage(InnerHandle, optionsAddress, outBufferAddress, ref outBufferLengthBytes); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryMarshalGet(outBufferAddress, out outBuffer, outBufferLengthBytes); - Helper.TryMarshalDispose(ref outBufferAddress); - - return funcResult; - } - - /// - /// Unregister a disconnected client. - /// - /// This function may only be called between a successful call to and - /// the matching call. - /// - /// Structure containing input data. - /// - /// - If the player was unregistered successfully - /// - If input data was invalid - /// - public Result UnregisterClient(UnregisterClientOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_AntiCheatServer_UnregisterClient(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - [MonoPInvokeCallback(typeof(OnClientActionRequiredCallbackInternal))] - internal static void OnClientActionRequiredCallbackInternalImplementation(System.IntPtr data) - { - OnClientActionRequiredCallback callback; - AntiCheatCommon.OnClientActionRequiredCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnClientAuthStatusChangedCallbackInternal))] - internal static void OnClientAuthStatusChangedCallbackInternalImplementation(System.IntPtr data) - { - OnClientAuthStatusChangedCallback callback; - AntiCheatCommon.OnClientAuthStatusChangedCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnMessageToClientCallbackInternal))] - internal static void OnMessageToClientCallbackInternalImplementation(System.IntPtr data) - { - OnMessageToClientCallback callback; - AntiCheatCommon.OnMessageToClientCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/AntiCheatServerInterface.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/AntiCheatServerInterface.cs.meta deleted file mode 100644 index 6ddba0c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/AntiCheatServerInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f913dbac3a8f7374f8b03ec21031e0e0 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/BeginSessionOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/BeginSessionOptions.cs deleted file mode 100644 index 5b56529..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/BeginSessionOptions.cs +++ /dev/null @@ -1,95 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatServer -{ - public class BeginSessionOptions - { - /// - /// Time in seconds to allow newly registered clients to complete anti-cheat authentication. - /// Recommended value: 60 - /// - public uint RegisterTimeoutSeconds { get; set; } - - /// - /// Optional name of this game server - /// - public string ServerName { get; set; } - - /// - /// Gameplay data collection APIs such as LogPlayerTick will be enabled if set to true. - /// If you do not use these APIs, it is more efficient to set this value to false. - /// - public bool EnableGameplayData { get; set; } - - /// - /// The Product User ID of the local user who is associated with this session. Dedicated servers should set this to null. - /// - public ProductUserId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct BeginSessionOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_RegisterTimeoutSeconds; - private System.IntPtr m_ServerName; - private int m_EnableGameplayData; - private System.IntPtr m_LocalUserId; - - public uint RegisterTimeoutSeconds - { - set - { - m_RegisterTimeoutSeconds = value; - } - } - - public string ServerName - { - set - { - Helper.TryMarshalSet(ref m_ServerName, value); - } - } - - public bool EnableGameplayData - { - set - { - Helper.TryMarshalSet(ref m_EnableGameplayData, value); - } - } - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(BeginSessionOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatServerInterface.BeginsessionApiLatest; - RegisterTimeoutSeconds = other.RegisterTimeoutSeconds; - ServerName = other.ServerName; - EnableGameplayData = other.EnableGameplayData; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as BeginSessionOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_ServerName); - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/BeginSessionOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/BeginSessionOptions.cs.meta deleted file mode 100644 index e6eaf8a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/BeginSessionOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 71304b30978680d4aa41f0974aef719d -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/EndSessionOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/EndSessionOptions.cs deleted file mode 100644 index b391adc..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/EndSessionOptions.cs +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatServer -{ - public class EndSessionOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct EndSessionOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(EndSessionOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatServerInterface.EndsessionApiLatest; - } - } - - public void Set(object other) - { - Set(other as EndSessionOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/EndSessionOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/EndSessionOptions.cs.meta deleted file mode 100644 index 25f2f71..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/EndSessionOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9857e8672adb74e438abe424f5a79983 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/GetProtectMessageOutputLengthOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/GetProtectMessageOutputLengthOptions.cs deleted file mode 100644 index b20de52..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/GetProtectMessageOutputLengthOptions.cs +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatServer -{ - public class GetProtectMessageOutputLengthOptions - { - /// - /// Length in bytes of input - /// - public uint DataLengthBytes { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetProtectMessageOutputLengthOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_DataLengthBytes; - - public uint DataLengthBytes - { - set - { - m_DataLengthBytes = value; - } - } - - public void Set(GetProtectMessageOutputLengthOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatServerInterface.GetprotectmessageoutputlengthApiLatest; - DataLengthBytes = other.DataLengthBytes; - } - } - - public void Set(object other) - { - Set(other as GetProtectMessageOutputLengthOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/GetProtectMessageOutputLengthOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/GetProtectMessageOutputLengthOptions.cs.meta deleted file mode 100644 index b9f5650..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/GetProtectMessageOutputLengthOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 667f61887906677448b877657fe8df45 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/OnClientActionRequiredCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/OnClientActionRequiredCallback.cs deleted file mode 100644 index 3d4b70b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/OnClientActionRequiredCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatServer -{ - /// - /// Callback issued when an action must be applied to a connected client. - /// This callback is always issued from within on its calling thread. - /// - public delegate void OnClientActionRequiredCallback(AntiCheatCommon.OnClientActionRequiredCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnClientActionRequiredCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/OnClientActionRequiredCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/OnClientActionRequiredCallback.cs.meta deleted file mode 100644 index 50f2b5e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/OnClientActionRequiredCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0d65b6d7d19d9eb4aa216922080b5407 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/OnClientAuthStatusChangedCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/OnClientAuthStatusChangedCallback.cs deleted file mode 100644 index 93919c5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/OnClientAuthStatusChangedCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatServer -{ - /// - /// Optional callback issued when a connected client's authentication status has changed. - /// This callback is always issued from within on its calling thread. - /// - public delegate void OnClientAuthStatusChangedCallback(AntiCheatCommon.OnClientAuthStatusChangedCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnClientAuthStatusChangedCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/OnClientAuthStatusChangedCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/OnClientAuthStatusChangedCallback.cs.meta deleted file mode 100644 index af8df36..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/OnClientAuthStatusChangedCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 27723af457aee354e830ea3bc8a8d39c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/OnMessageToClientCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/OnMessageToClientCallback.cs deleted file mode 100644 index b29bf9e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/OnMessageToClientCallback.cs +++ /dev/null @@ -1,19 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatServer -{ - /// - /// Callback issued when a new message must be dispatched to a connected client. - /// - /// Messages contain opaque binary data of up to 256 bytes and must be transmitted - /// to the correct client using the game's own networking layer, then delivered - /// to the client anti-cheat instance using the function. - /// - /// This callback is always issued from within on its calling thread. - /// - public delegate void OnMessageToClientCallback(AntiCheatCommon.OnMessageToClientCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnMessageToClientCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/OnMessageToClientCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/OnMessageToClientCallback.cs.meta deleted file mode 100644 index 6b233a8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/OnMessageToClientCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 198677b228758bb4f8ae03b135d63629 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/ProtectMessageOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/ProtectMessageOptions.cs deleted file mode 100644 index a49bfb7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/ProtectMessageOptions.cs +++ /dev/null @@ -1,79 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatServer -{ - public class ProtectMessageOptions - { - /// - /// Locally unique value describing the remote user to whom the message will be sent - /// - public System.IntPtr ClientHandle { get; set; } - - /// - /// The data to encrypt - /// - public byte[] Data { get; set; } - - /// - /// The size in bytes of OutBuffer - /// - public uint OutBufferSizeBytes { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct ProtectMessageOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_ClientHandle; - private uint m_DataLengthBytes; - private System.IntPtr m_Data; - private uint m_OutBufferSizeBytes; - - public System.IntPtr ClientHandle - { - set - { - m_ClientHandle = value; - } - } - - public byte[] Data - { - set - { - Helper.TryMarshalSet(ref m_Data, value, out m_DataLengthBytes); - } - } - - public uint OutBufferSizeBytes - { - set - { - m_OutBufferSizeBytes = value; - } - } - - public void Set(ProtectMessageOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatServerInterface.ProtectmessageApiLatest; - ClientHandle = other.ClientHandle; - Data = other.Data; - OutBufferSizeBytes = other.OutBufferSizeBytes; - } - } - - public void Set(object other) - { - Set(other as ProtectMessageOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_ClientHandle); - Helper.TryMarshalDispose(ref m_Data); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/ProtectMessageOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/ProtectMessageOptions.cs.meta deleted file mode 100644 index 8d469a8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/ProtectMessageOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c735b92a270c7e84bb171d63f511fc6a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/ReceiveMessageFromClientOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/ReceiveMessageFromClientOptions.cs deleted file mode 100644 index 987cce8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/ReceiveMessageFromClientOptions.cs +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatServer -{ - public class ReceiveMessageFromClientOptions - { - /// - /// Optional value, if non-null then only messages addressed to this specific client will be returned - /// - public System.IntPtr ClientHandle { get; set; } - - /// - /// The data received - /// - public byte[] Data { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct ReceiveMessageFromClientOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_ClientHandle; - private uint m_DataLengthBytes; - private System.IntPtr m_Data; - - public System.IntPtr ClientHandle - { - set - { - m_ClientHandle = value; - } - } - - public byte[] Data - { - set - { - Helper.TryMarshalSet(ref m_Data, value, out m_DataLengthBytes); - } - } - - public void Set(ReceiveMessageFromClientOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatServerInterface.ReceivemessagefromclientApiLatest; - ClientHandle = other.ClientHandle; - Data = other.Data; - } - } - - public void Set(object other) - { - Set(other as ReceiveMessageFromClientOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_ClientHandle); - Helper.TryMarshalDispose(ref m_Data); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/ReceiveMessageFromClientOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/ReceiveMessageFromClientOptions.cs.meta deleted file mode 100644 index e742531..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/ReceiveMessageFromClientOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4a9bb8c17e011cb4580fd0a1fdda5304 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/RegisterClientOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/RegisterClientOptions.cs deleted file mode 100644 index 773c0c6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/RegisterClientOptions.cs +++ /dev/null @@ -1,114 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatServer -{ - public class RegisterClientOptions - { - /// - /// Locally unique value describing the remote user (e.g. a player object pointer) - /// - public System.IntPtr ClientHandle { get; set; } - - /// - /// Type of remote user being registered - /// - public AntiCheatCommon.AntiCheatCommonClientType ClientType { get; set; } - - /// - /// Remote user's platform, if known - /// - public AntiCheatCommon.AntiCheatCommonClientPlatform ClientPlatform { get; set; } - - /// - /// Identifier for the remote user. This is typically a string representation of an - /// account ID, but it can be any string which is both unique (two different users will never - /// have the same string) and consistent (if the same user connects to this game session - /// twice, the same string will be used) in the scope of a single protected game session. - /// - public string AccountId { get; set; } - - /// - /// Optional IP address for the remote user. May be null if not available. - /// IPv4 format: "0.0.0.0" - /// IPv6 format: "0:0:0:0:0:0:0:0" - /// - public string IpAddress { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct RegisterClientOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_ClientHandle; - private AntiCheatCommon.AntiCheatCommonClientType m_ClientType; - private AntiCheatCommon.AntiCheatCommonClientPlatform m_ClientPlatform; - private System.IntPtr m_AccountId; - private System.IntPtr m_IpAddress; - - public System.IntPtr ClientHandle - { - set - { - m_ClientHandle = value; - } - } - - public AntiCheatCommon.AntiCheatCommonClientType ClientType - { - set - { - m_ClientType = value; - } - } - - public AntiCheatCommon.AntiCheatCommonClientPlatform ClientPlatform - { - set - { - m_ClientPlatform = value; - } - } - - public string AccountId - { - set - { - Helper.TryMarshalSet(ref m_AccountId, value); - } - } - - public string IpAddress - { - set - { - Helper.TryMarshalSet(ref m_IpAddress, value); - } - } - - public void Set(RegisterClientOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatServerInterface.RegisterclientApiLatest; - ClientHandle = other.ClientHandle; - ClientType = other.ClientType; - ClientPlatform = other.ClientPlatform; - AccountId = other.AccountId; - IpAddress = other.IpAddress; - } - } - - public void Set(object other) - { - Set(other as RegisterClientOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_ClientHandle); - Helper.TryMarshalDispose(ref m_AccountId); - Helper.TryMarshalDispose(ref m_IpAddress); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/RegisterClientOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/RegisterClientOptions.cs.meta deleted file mode 100644 index 8607f0a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/RegisterClientOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 12c848b649f146441b625c96017f2df0 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/SetClientNetworkStateOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/SetClientNetworkStateOptions.cs deleted file mode 100644 index e215af1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/SetClientNetworkStateOptions.cs +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatServer -{ - public class SetClientNetworkStateOptions - { - /// - /// Locally unique value describing the remote user (e.g. a player object pointer) - /// - public System.IntPtr ClientHandle { get; set; } - - /// - /// True if the network is functioning normally, false if temporarily interrupted - /// - public bool IsNetworkActive { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SetClientNetworkStateOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_ClientHandle; - private int m_IsNetworkActive; - - public System.IntPtr ClientHandle - { - set - { - m_ClientHandle = value; - } - } - - public bool IsNetworkActive - { - set - { - Helper.TryMarshalSet(ref m_IsNetworkActive, value); - } - } - - public void Set(SetClientNetworkStateOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatServerInterface.SetclientnetworkstateApiLatest; - ClientHandle = other.ClientHandle; - IsNetworkActive = other.IsNetworkActive; - } - } - - public void Set(object other) - { - Set(other as SetClientNetworkStateOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_ClientHandle); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/SetClientNetworkStateOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/SetClientNetworkStateOptions.cs.meta deleted file mode 100644 index a208944..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/SetClientNetworkStateOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c930f59cb511ea74c9f40688194c20a2 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/UnprotectMessageOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/UnprotectMessageOptions.cs deleted file mode 100644 index ece3ead..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/UnprotectMessageOptions.cs +++ /dev/null @@ -1,79 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatServer -{ - public class UnprotectMessageOptions - { - /// - /// Locally unique value describing the remote user from whom the message was received - /// - public System.IntPtr ClientHandle { get; set; } - - /// - /// The data to decrypt - /// - public byte[] Data { get; set; } - - /// - /// The size in bytes of OutBuffer - /// - public uint OutBufferSizeBytes { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct UnprotectMessageOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_ClientHandle; - private uint m_DataLengthBytes; - private System.IntPtr m_Data; - private uint m_OutBufferSizeBytes; - - public System.IntPtr ClientHandle - { - set - { - m_ClientHandle = value; - } - } - - public byte[] Data - { - set - { - Helper.TryMarshalSet(ref m_Data, value, out m_DataLengthBytes); - } - } - - public uint OutBufferSizeBytes - { - set - { - m_OutBufferSizeBytes = value; - } - } - - public void Set(UnprotectMessageOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatServerInterface.UnprotectmessageApiLatest; - ClientHandle = other.ClientHandle; - Data = other.Data; - OutBufferSizeBytes = other.OutBufferSizeBytes; - } - } - - public void Set(object other) - { - Set(other as UnprotectMessageOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_ClientHandle); - Helper.TryMarshalDispose(ref m_Data); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/UnprotectMessageOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/UnprotectMessageOptions.cs.meta deleted file mode 100644 index 3498310..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/UnprotectMessageOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 2ecc277aa57c1964aac660117a555adb -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/UnregisterClientOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/UnregisterClientOptions.cs deleted file mode 100644 index 2a431fe..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/UnregisterClientOptions.cs +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.AntiCheatServer -{ - public class UnregisterClientOptions - { - /// - /// Locally unique value describing the remote user, as previously passed to RegisterClient - /// - public System.IntPtr ClientHandle { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct UnregisterClientOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_ClientHandle; - - public System.IntPtr ClientHandle - { - set - { - m_ClientHandle = value; - } - } - - public void Set(UnregisterClientOptions other) - { - if (other != null) - { - m_ApiVersion = AntiCheatServerInterface.UnregisterclientApiLatest; - ClientHandle = other.ClientHandle; - } - } - - public void Set(object other) - { - Set(other as UnregisterClientOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_ClientHandle); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/UnregisterClientOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/UnregisterClientOptions.cs.meta deleted file mode 100644 index abad861..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AntiCheatServer/UnregisterClientOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 62e44e7933d068848a52d9fc11898acd -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AttributeType.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AttributeType.cs deleted file mode 100644 index 8b57b5e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AttributeType.cs +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices -{ - /// - /// Supported types of data that can be stored with inside an attribute (used by sessions/lobbies/etc) - /// - /// - /// - public enum AttributeType : int - { - /// - /// Boolean value (true/false) - /// - Boolean = 0, - /// - /// 64 bit integers - /// - Int64 = 1, - /// - /// Double/floating point precision - /// - Double = 2, - /// - /// UTF8 Strings - /// - String = 3 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AttributeType.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AttributeType.cs.meta deleted file mode 100644 index e2e63a6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/AttributeType.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 6d5b8e5136f2e5d43942177a94f64b50 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth.meta deleted file mode 100644 index f033cec..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: fceb38088dc1dbe438615246344faac3 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/AccountFeatureRestrictedInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/AccountFeatureRestrictedInfo.cs deleted file mode 100644 index a1328af..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/AccountFeatureRestrictedInfo.cs +++ /dev/null @@ -1,71 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - /// - /// Intermediate data needed to complete account restriction verification during login flow, returned by when the ResultCode is - /// The URI inside should be exposed to the user for entry in a web browser. The URI must be copied out of this struct before completion of the callback. - /// - public class AccountFeatureRestrictedInfo : ISettable - { - /// - /// The end-user verification URI. Users must be asked to open the page in a browser to address the restrictions - /// - public string VerificationURI { get; set; } - - internal void Set(AccountFeatureRestrictedInfoInternal? other) - { - if (other != null) - { - VerificationURI = other.Value.VerificationURI; - } - } - - public void Set(object other) - { - Set(other as AccountFeatureRestrictedInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AccountFeatureRestrictedInfoInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_VerificationURI; - - public string VerificationURI - { - get - { - string value; - Helper.TryMarshalGet(m_VerificationURI, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_VerificationURI, value); - } - } - - public void Set(AccountFeatureRestrictedInfo other) - { - if (other != null) - { - m_ApiVersion = AuthInterface.AccountfeaturerestrictedinfoApiLatest; - VerificationURI = other.VerificationURI; - } - } - - public void Set(object other) - { - Set(other as AccountFeatureRestrictedInfo); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_VerificationURI); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/AccountFeatureRestrictedInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/AccountFeatureRestrictedInfo.cs.meta deleted file mode 100644 index cf3c33f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/AccountFeatureRestrictedInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: bf78e338fb1b9bc4baa13af74617798a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/AddNotifyLoginStatusChangedOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/AddNotifyLoginStatusChangedOptions.cs deleted file mode 100644 index 15850aa..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/AddNotifyLoginStatusChangedOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - /// - /// Input parameters for the Function. - /// - public class AddNotifyLoginStatusChangedOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyLoginStatusChangedOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(AddNotifyLoginStatusChangedOptions other) - { - if (other != null) - { - m_ApiVersion = AuthInterface.AddnotifyloginstatuschangedApiLatest; - } - } - - public void Set(object other) - { - Set(other as AddNotifyLoginStatusChangedOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/AddNotifyLoginStatusChangedOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/AddNotifyLoginStatusChangedOptions.cs.meta deleted file mode 100644 index 1739c76..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/AddNotifyLoginStatusChangedOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4a4a1234dbff477419b23d10ef8b2406 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/AuthInterface.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/AuthInterface.cs deleted file mode 100644 index 1ad66a4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/AuthInterface.cs +++ /dev/null @@ -1,376 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - public sealed partial class AuthInterface : Handle - { - public AuthInterface() - { - } - - public AuthInterface(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// The most recent version of the struct. - /// - public const int AccountfeaturerestrictedinfoApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int AddnotifyloginstatuschangedApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int CopyuserauthtokenApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int CredentialsApiLatest = 3; - - /// - /// The most recent version of the API. - /// - public const int DeletepersistentauthApiLatest = 2; - - /// - /// The most recent version of the API. - /// - public const int LinkaccountApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int LoginApiLatest = 2; - - /// - /// The most recent version of the API. - /// - public const int LogoutApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int PingrantinfoApiLatest = 2; - - /// - /// The most recent version of the struct. - /// - public const int TokenApiLatest = 2; - - /// - /// The most recent version of the API. - /// - public const int VerifyuserauthApiLatest = 1; - - /// - /// Register to receive login status updates. - /// @note must call RemoveNotifyLoginStatusChanged to remove the notification - /// - /// structure containing the api version of AddNotifyLoginStatusChanged to use - /// arbitrary data that is passed back to you in the callback - /// a callback that is fired when the login status for a user changes - /// - /// handle representing the registered callback - /// - public ulong AddNotifyLoginStatusChanged(AddNotifyLoginStatusChangedOptions options, object clientData, OnLoginStatusChangedCallback notification) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var notificationInternal = new OnLoginStatusChangedCallbackInternal(OnLoginStatusChangedCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, notification, notificationInternal); - - var funcResult = Bindings.EOS_Auth_AddNotifyLoginStatusChanged(InnerHandle, optionsAddress, clientDataAddress, notificationInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Fetches a user auth token for an Epic Online Services Account ID. - /// - /// - /// Structure containing the api version of CopyUserAuthToken to use - /// The Epic Online Services Account ID of the user being queried - /// The auth token for the given user, if it exists and is valid; use when finished - /// - /// if the information is available and passed out in OutUserAuthToken - /// if you pass a null pointer for the out parameter - /// if the auth token is not found or expired. - /// - public Result CopyUserAuthToken(CopyUserAuthTokenOptions options, EpicAccountId localUserId, out Token outUserAuthToken) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var localUserIdInnerHandle = System.IntPtr.Zero; - Helper.TryMarshalSet(ref localUserIdInnerHandle, localUserId); - - var outUserAuthTokenAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Auth_CopyUserAuthToken(InnerHandle, optionsAddress, localUserIdInnerHandle, ref outUserAuthTokenAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outUserAuthTokenAddress, out outUserAuthToken)) - { - Bindings.EOS_Auth_Token_Release(outUserAuthTokenAddress); - } - - return funcResult; - } - - /// - /// Deletes a previously received and locally stored persistent auth access token for the currently logged in user of the local device. - /// - /// On Desktop and Mobile platforms, the access token is deleted from the keychain of the local user and a backend request is made to revoke the token on the authentication server. - /// On Console platforms, even though the caller is responsible for storing and deleting the access token on the local device, - /// this function should still be called with the access token before its deletion to make the best effort in attempting to also revoke it on the authentication server. - /// If the function would fail on Console, the caller should still proceed as normal to delete the access token locally as intended. - /// - /// structure containing operation input parameters - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the deletion operation completes, either successfully or in error - public void DeletePersistentAuth(DeletePersistentAuthOptions options, object clientData, OnDeletePersistentAuthCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnDeletePersistentAuthCallbackInternal(OnDeletePersistentAuthCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Auth_DeletePersistentAuth(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Fetch an Epic Online Services Account ID that is logged in. - /// - /// An index into the list of logged in accounts. If the index is out of bounds, the returned Epic Online Services Account ID will be invalid. - /// - /// The Epic Online Services Account ID associated with the index passed - /// - public EpicAccountId GetLoggedInAccountByIndex(int index) - { - var funcResult = Bindings.EOS_Auth_GetLoggedInAccountByIndex(InnerHandle, index); - - EpicAccountId funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Fetch the number of accounts that are logged in. - /// - /// - /// the number of accounts logged in. - /// - public int GetLoggedInAccountsCount() - { - var funcResult = Bindings.EOS_Auth_GetLoggedInAccountsCount(InnerHandle); - - return funcResult; - } - - /// - /// Fetches the login status for an Epic Online Services Account ID. - /// - /// The Epic Online Services Account ID of the user being queried - /// - /// The enum value of a user's login status - /// - public LoginStatus GetLoginStatus(EpicAccountId localUserId) - { - var localUserIdInnerHandle = System.IntPtr.Zero; - Helper.TryMarshalSet(ref localUserIdInnerHandle, localUserId); - - var funcResult = Bindings.EOS_Auth_GetLoginStatus(InnerHandle, localUserIdInnerHandle); - - return funcResult; - } - - /// - /// Link external account by continuing previous login attempt with a continuance token. - /// - /// On Desktop and Mobile platforms, the user will be presented the Epic Account Portal to resolve their identity. - /// - /// On Console, the user will login to their Epic Account using an external device, e.g. a mobile device or a desktop PC, - /// by browsing to the presented authentication URL and entering the device code presented by the game on the console. - /// - /// On success, the user will be logged in at the completion of this action. - /// This will commit this external account to the Epic Account and cannot be undone in the SDK. - /// - /// structure containing the account credentials to use during the link account operation - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the link account operation completes, either successfully or in error - public void LinkAccount(LinkAccountOptions options, object clientData, OnLinkAccountCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnLinkAccountCallbackInternal(OnLinkAccountCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Auth_LinkAccount(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Login/Authenticate with user credentials. - /// - /// structure containing the account credentials to use during the login operation - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the login operation completes, either successfully or in error - public void Login(LoginOptions options, object clientData, OnLoginCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnLoginCallbackInternal(OnLoginCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Auth_Login(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Signs the player out of the online service. - /// - /// structure containing information about which account to log out. - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the logout operation completes, either successfully or in error - public void Logout(LogoutOptions options, object clientData, OnLogoutCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnLogoutCallbackInternal(OnLogoutCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Auth_Logout(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Unregister from receiving login status updates. - /// - /// handle representing the registered callback - public void RemoveNotifyLoginStatusChanged(ulong inId) - { - Helper.TryRemoveCallbackByNotificationId(inId); - - Bindings.EOS_Auth_RemoveNotifyLoginStatusChanged(InnerHandle, inId); - } - - /// - /// Contact the backend service to verify validity of an existing user auth token. - /// This function is intended for server-side use only. - /// - /// structure containing information about the auth token being verified - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the logout operation completes, either successfully or in error - public void VerifyUserAuth(VerifyUserAuthOptions options, object clientData, OnVerifyUserAuthCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnVerifyUserAuthCallbackInternal(OnVerifyUserAuthCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Auth_VerifyUserAuth(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - [MonoPInvokeCallback(typeof(OnDeletePersistentAuthCallbackInternal))] - internal static void OnDeletePersistentAuthCallbackInternalImplementation(System.IntPtr data) - { - OnDeletePersistentAuthCallback callback; - DeletePersistentAuthCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnLinkAccountCallbackInternal))] - internal static void OnLinkAccountCallbackInternalImplementation(System.IntPtr data) - { - OnLinkAccountCallback callback; - LinkAccountCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnLoginCallbackInternal))] - internal static void OnLoginCallbackInternalImplementation(System.IntPtr data) - { - OnLoginCallback callback; - LoginCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnLoginStatusChangedCallbackInternal))] - internal static void OnLoginStatusChangedCallbackInternalImplementation(System.IntPtr data) - { - OnLoginStatusChangedCallback callback; - LoginStatusChangedCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnLogoutCallbackInternal))] - internal static void OnLogoutCallbackInternalImplementation(System.IntPtr data) - { - OnLogoutCallback callback; - LogoutCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnVerifyUserAuthCallbackInternal))] - internal static void OnVerifyUserAuthCallbackInternalImplementation(System.IntPtr data) - { - OnVerifyUserAuthCallback callback; - VerifyUserAuthCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/AuthInterface.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/AuthInterface.cs.meta deleted file mode 100644 index bcea1a7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/AuthInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 346aa4c120637f746b7efe3a4b8006c0 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/AuthScopeFlags.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/AuthScopeFlags.cs deleted file mode 100644 index e2bd7f6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/AuthScopeFlags.cs +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - /// - /// Flags that describe user permissions - /// - [System.Flags] - public enum AuthScopeFlags : int - { - NoFlags = 0x0, - /// - /// Permissions to see your account ID, display name, language and country - /// - BasicProfile = 0x1, - /// - /// Permissions to see a list of your friends who use this application - /// - FriendsList = 0x2, - /// - /// Permissions to set your online presence and see presence of your friends - /// - Presence = 0x4, - /// - /// Permissions to manage the Epic friends list. This scope is restricted to Epic first party products, and attempting to use it will result in authentication failures. - /// - FriendsManagement = 0x8, - /// - /// Permissions to see email in the response when fetching information for a user. This scope is restricted to Epic first party products, and attempting to use it will result in authentication failures. - /// - Email = 0x10 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/AuthScopeFlags.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/AuthScopeFlags.cs.meta deleted file mode 100644 index bd7c373..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/AuthScopeFlags.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 1d6721d99e1945048a773f1434bed233 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/AuthTokenType.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/AuthTokenType.cs deleted file mode 100644 index 3358de1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/AuthTokenType.cs +++ /dev/null @@ -1,22 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - /// - /// Types of auth tokens - /// - /// - /// - public enum AuthTokenType : int - { - /// - /// Auth token is for a validated client - /// - Client = 0, - /// - /// Auth token is for a validated user - /// - User = 1 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/AuthTokenType.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/AuthTokenType.cs.meta deleted file mode 100644 index fef6883..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/AuthTokenType.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d844e7a164972ff449592404a013e32b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/CopyUserAuthTokenOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/CopyUserAuthTokenOptions.cs deleted file mode 100644 index 9ba7c0d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/CopyUserAuthTokenOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - /// - /// Input parameters for the function. - /// - public class CopyUserAuthTokenOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyUserAuthTokenOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(CopyUserAuthTokenOptions other) - { - if (other != null) - { - m_ApiVersion = AuthInterface.CopyuserauthtokenApiLatest; - } - } - - public void Set(object other) - { - Set(other as CopyUserAuthTokenOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/CopyUserAuthTokenOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/CopyUserAuthTokenOptions.cs.meta deleted file mode 100644 index cd074b4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/CopyUserAuthTokenOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 73b393d7756401847b7f19bf47a7f8e8 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/Credentials.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/Credentials.cs deleted file mode 100644 index 0262952..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/Credentials.cs +++ /dev/null @@ -1,177 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - /// - /// A structure that contains login credentials. What is required is dependent on the type of login being initiated. - /// - /// This is part of the input structure and related to device auth. - /// - /// Use of the ID and Token fields differs based on the Type. They should be null, unless specified: - /// - ID is the email address, and Token is the password. - /// - Token is the exchange code. - /// - If targeting console platforms, Token is the long lived refresh token. Otherwise N/A. - /// - N/A. - /// - ID is the host (e.g. localhost:6547), and Token is the credential name registered in the EOS Developer Authentication Tool. - /// - Token is the refresh token. - /// - SystemAuthCredentialsOptions may be required if targeting mobile platforms. Otherwise N/A. - /// - Token is the external auth token specified by ExternalType. - /// - /// - /// - /// - public class Credentials : ISettable - { - /// - /// ID of the user logging in, based on - /// - public string Id { get; set; } - - /// - /// Credentials or token related to the user logging in - /// - public string Token { get; set; } - - /// - /// Type of login. Needed to identify the auth method to use - /// - public LoginCredentialType Type { get; set; } - - /// - /// This field is for system specific options, if any. - /// - /// If provided, the structure will be located in (System)/eos_(system).h. - /// The structure will be named EOS_(System)_Auth_CredentialsOptions. - /// - public System.IntPtr SystemAuthCredentialsOptions { get; set; } - - /// - /// Type of external login. Needed to identify the external auth method to use. - /// Used when login type is set to , ignored for other methods. - /// - public ExternalCredentialType ExternalType { get; set; } - - internal void Set(CredentialsInternal? other) - { - if (other != null) - { - Id = other.Value.Id; - Token = other.Value.Token; - Type = other.Value.Type; - SystemAuthCredentialsOptions = other.Value.SystemAuthCredentialsOptions; - ExternalType = other.Value.ExternalType; - } - } - - public void Set(object other) - { - Set(other as CredentialsInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CredentialsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Id; - private System.IntPtr m_Token; - private LoginCredentialType m_Type; - private System.IntPtr m_SystemAuthCredentialsOptions; - private ExternalCredentialType m_ExternalType; - - public string Id - { - get - { - string value; - Helper.TryMarshalGet(m_Id, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Id, value); - } - } - - public string Token - { - get - { - string value; - Helper.TryMarshalGet(m_Token, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Token, value); - } - } - - public LoginCredentialType Type - { - get - { - return m_Type; - } - - set - { - m_Type = value; - } - } - - public System.IntPtr SystemAuthCredentialsOptions - { - get - { - return m_SystemAuthCredentialsOptions; - } - - set - { - m_SystemAuthCredentialsOptions = value; - } - } - - public ExternalCredentialType ExternalType - { - get - { - return m_ExternalType; - } - - set - { - m_ExternalType = value; - } - } - - public void Set(Credentials other) - { - if (other != null) - { - m_ApiVersion = AuthInterface.CredentialsApiLatest; - Id = other.Id; - Token = other.Token; - Type = other.Type; - SystemAuthCredentialsOptions = other.SystemAuthCredentialsOptions; - ExternalType = other.ExternalType; - } - } - - public void Set(object other) - { - Set(other as Credentials); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Id); - Helper.TryMarshalDispose(ref m_Token); - Helper.TryMarshalDispose(ref m_SystemAuthCredentialsOptions); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/Credentials.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/Credentials.cs.meta deleted file mode 100644 index 3d141cd..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/Credentials.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 26703fc0e5862be4c8e661d19b0b0262 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/DeletePersistentAuthCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/DeletePersistentAuthCallbackInfo.cs deleted file mode 100644 index f76f249..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/DeletePersistentAuthCallbackInfo.cs +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - /// - /// Output parameters for the Function. - /// - public class DeletePersistentAuthCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(DeletePersistentAuthCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - } - } - - public void Set(object other) - { - Set(other as DeletePersistentAuthCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct DeletePersistentAuthCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/DeletePersistentAuthCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/DeletePersistentAuthCallbackInfo.cs.meta deleted file mode 100644 index 85675ac..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/DeletePersistentAuthCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 21ec9cdd999549f4c86df9b160715549 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/DeletePersistentAuthOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/DeletePersistentAuthOptions.cs deleted file mode 100644 index 82034b5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/DeletePersistentAuthOptions.cs +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - /// - /// Input parameters for the function. - /// - public class DeletePersistentAuthOptions - { - /// - /// A long-lived refresh token that is used with the login type and is to be revoked from the authentication server. Only used on Console platforms. - /// On Desktop and Mobile platforms, set this parameter to NULL. - /// - public string RefreshToken { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct DeletePersistentAuthOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_RefreshToken; - - public string RefreshToken - { - set - { - Helper.TryMarshalSet(ref m_RefreshToken, value); - } - } - - public void Set(DeletePersistentAuthOptions other) - { - if (other != null) - { - m_ApiVersion = AuthInterface.DeletepersistentauthApiLatest; - RefreshToken = other.RefreshToken; - } - } - - public void Set(object other) - { - Set(other as DeletePersistentAuthOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_RefreshToken); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/DeletePersistentAuthOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/DeletePersistentAuthOptions.cs.meta deleted file mode 100644 index 89af62d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/DeletePersistentAuthOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0180691178b058a478df7e632f17a5c3 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LinkAccountCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LinkAccountCallbackInfo.cs deleted file mode 100644 index 5998298..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LinkAccountCallbackInfo.cs +++ /dev/null @@ -1,110 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - /// - /// Output parameters for the Function. - /// - public class LinkAccountCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The Epic Online Services Account ID of the local user whose account has been linked during login - /// - public EpicAccountId LocalUserId { get; private set; } - - /// - /// Optional data returned when ResultCode is . - /// - /// Once the user has logged in with their Epic Online Services account, the account will be linked with the external account supplied when was called. - /// will be fired again with ResultCode in set to . - /// - public PinGrantInfo PinGrantInfo { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(LinkAccountCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - PinGrantInfo = other.Value.PinGrantInfo; - } - } - - public void Set(object other) - { - Set(other as LinkAccountCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LinkAccountCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_PinGrantInfo; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public EpicAccountId LocalUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public PinGrantInfo PinGrantInfo - { - get - { - PinGrantInfo value; - Helper.TryMarshalGet(m_PinGrantInfo, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LinkAccountCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LinkAccountCallbackInfo.cs.meta deleted file mode 100644 index 402309b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LinkAccountCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 69e173e95fe806b47a2f942ae34eb514 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LinkAccountFlags.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LinkAccountFlags.cs deleted file mode 100644 index 12899cb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LinkAccountFlags.cs +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - /// - /// Flags used to describe how the account linking operation is to be performed. - /// - /// - [System.Flags] - public enum LinkAccountFlags : int - { - /// - /// Default flag used for a standard account linking operation. - /// - /// This flag is set when using a continuance token received from a previous call to the API, - /// when the local user has not yet been successfully logged in to an Epic Account yet. - /// - NoFlags = 0x0, - /// - /// Specified when the describes a Nintendo NSA ID account type. - /// - /// This flag is used only with, and must be set, when the continuance token was received from a previous call - /// to the API using the :: login type. - /// - NintendoNsaId = 0x1 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LinkAccountFlags.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LinkAccountFlags.cs.meta deleted file mode 100644 index 92eac58..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LinkAccountFlags.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 748b12343efeb644dae5d35db193ccd0 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LinkAccountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LinkAccountOptions.cs deleted file mode 100644 index 56654cb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LinkAccountOptions.cs +++ /dev/null @@ -1,91 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - /// - /// Input parameters for the function. - /// - public class LinkAccountOptions - { - /// - /// Combination of the enumeration flags to specify how the account linking operation will be performed. - /// - public LinkAccountFlags LinkAccountFlags { get; set; } - - /// - /// Continuance token received from a previous call to the API. - /// - /// A continuance token is received in the case when the external account used for login was not found to be linked - /// against any existing Epic Account. In such case, the application needs to proceed with an account linking operation in which case - /// the user is first asked to create a new account or login into their existing Epic Account, and then link their external account to it. - /// Alternatively, the application may suggest the user to login using another external account that they have already linked to their existing Epic Account. - /// In this flow, the external account is typically the currently logged in local platform user account. - /// It can also be another external user account that the user is offered to login with. - /// - public ContinuanceToken ContinuanceToken { get; set; } - - /// - /// The Epic Online Services Account ID of the logged in local user whose Epic Account will be linked with the local Nintendo NSA ID Account. By default set to NULL. - /// - /// This parameter is only used and required to be set when :: is specified. - /// Otherwise, set to NULL, as the standard account linking and login flow using continuance token will handle logging in the user to their Epic Account. - /// - public EpicAccountId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LinkAccountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private LinkAccountFlags m_LinkAccountFlags; - private System.IntPtr m_ContinuanceToken; - private System.IntPtr m_LocalUserId; - - public LinkAccountFlags LinkAccountFlags - { - set - { - m_LinkAccountFlags = value; - } - } - - public ContinuanceToken ContinuanceToken - { - set - { - Helper.TryMarshalSet(ref m_ContinuanceToken, value); - } - } - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(LinkAccountOptions other) - { - if (other != null) - { - m_ApiVersion = AuthInterface.LinkaccountApiLatest; - LinkAccountFlags = other.LinkAccountFlags; - ContinuanceToken = other.ContinuanceToken; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as LinkAccountOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_ContinuanceToken); - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LinkAccountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LinkAccountOptions.cs.meta deleted file mode 100644 index 0c0a0a8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LinkAccountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 88e681b54dea28e4cae326658eb9895a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LoginCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LoginCallbackInfo.cs deleted file mode 100644 index 26ab365..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LoginCallbackInfo.cs +++ /dev/null @@ -1,141 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - /// - /// Output parameters for the Function. - /// - public class LoginCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The Epic Online Services Account ID of the local user who has logged in - /// - public EpicAccountId LocalUserId { get; private set; } - - /// - /// Optional data returned in the middle of a request - /// - public PinGrantInfo PinGrantInfo { get; private set; } - - /// - /// If the user was not found with external auth credentials passed into , this continuance token can be passed to to continue the flow. - /// - public ContinuanceToken ContinuanceToken { get; private set; } - - /// - /// If the user trying to login is restricted from doing so, the ResultCode of this structure will be , and AccountFeatureRestrictedInfo will be populated with the data needed to get past the restriction - /// - public AccountFeatureRestrictedInfo AccountFeatureRestrictedInfo { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(LoginCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - PinGrantInfo = other.Value.PinGrantInfo; - ContinuanceToken = other.Value.ContinuanceToken; - AccountFeatureRestrictedInfo = other.Value.AccountFeatureRestrictedInfo; - } - } - - public void Set(object other) - { - Set(other as LoginCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LoginCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_PinGrantInfo; - private System.IntPtr m_ContinuanceToken; - private System.IntPtr m_AccountFeatureRestrictedInfo; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public EpicAccountId LocalUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public PinGrantInfo PinGrantInfo - { - get - { - PinGrantInfo value; - Helper.TryMarshalGet(m_PinGrantInfo, out value); - return value; - } - } - - public ContinuanceToken ContinuanceToken - { - get - { - ContinuanceToken value; - Helper.TryMarshalGet(m_ContinuanceToken, out value); - return value; - } - } - - public AccountFeatureRestrictedInfo AccountFeatureRestrictedInfo - { - get - { - AccountFeatureRestrictedInfo value; - Helper.TryMarshalGet(m_AccountFeatureRestrictedInfo, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LoginCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LoginCallbackInfo.cs.meta deleted file mode 100644 index ef65f35..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LoginCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a5ab839e9d0492847b57a8a2e6779224 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LoginCredentialType.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LoginCredentialType.cs deleted file mode 100644 index e26c993..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LoginCredentialType.cs +++ /dev/null @@ -1,125 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - /// - /// All possible types of login methods, availability depends on permissions granted to the client. - /// - /// - /// - public enum LoginCredentialType : int - { - /// - /// Login using account email address and password. - /// - /// @note Use of this login method is restricted and cannot be used in general. - /// - Password = 0, - /// - /// A short-lived one-time use exchange code to login the local user. - /// - /// @details Typically retrieved via command-line parameters provided by a launcher that generated the exchange code for this application. - /// When started, the application is expected to consume the exchange code by using the API as soon as possible. - /// This is needed in order to authenticate the local user before the exchange code would expire. - /// Attempting to consume an already expired exchange code will return ::AuthExchangeCodeNotFound error by the API. - /// - ExchangeCode = 1, - /// - /// Desktop and Mobile only; deprecated on Console platforms in favor of login method. - /// - /// Long-lived access token that is stored on the local device to allow persisting a user login session over multiple runs of the application. - /// When using this login type, if an existing access token is not found or it is invalid or otherwise expired, the error result :: is returned. - /// - /// @note On Desktop and Mobile platforms, the persistent access token is automatically managed by the SDK that stores it in the keychain of the currently logged in user of the local device. - /// On Console platforms, after a successful login using the login type, - /// the persistent access token is retrieved using the API and - /// stored by the application for the currently logged in user of the local device. - /// - /// - PersistentAuth = 2, - /// - /// Deprecated and no longer used. Superseded by the login method. - /// - /// Initiates a PIN grant login flow that is used to login a local user to their Epic Account for the first time, - /// and also whenever their locally persisted login credentials would have expired. - /// - /// @details The flow is as following: - /// 1. Game initiates the user login flow by calling API with the login type. - /// 2. The SDK internally requests the authentication backend service to begin the login flow, and returns the game - /// a new randomly generated device code along with authorization URL information needed to complete the flow. - /// This information is returned via the API callback. The ::ResultCode - /// will be set to and the struct will contain the needed information. - /// 3. Game presents the device code and the authorization URL information on screen to the end-user. - /// 4. The user will login to their Epic Account using an external device, e.g. a mobile device or a desktop PC, - /// by browsing to the presented authentication URL and entering the device code presented by the game on the console. - /// 5. Once the user has successfully logged in on their external device, the SDK will call the callback - /// once more with the operation result code. If the user failed to login within the allowed time before the device code - /// would expire, the result code returned by the callback will contain the appropriate error result. - /// - /// @details After logging in a local user for the first time, the game can remember the user login to allow automatically logging - /// in the same user the next time they start the game. This avoids prompting the same user to go through the login flow - /// across multiple game sessions over long periods of time. - /// To do this, after a successful login using the login type, the game can call the API - /// to retrieve a long-lived refresh token that is specifically created for this purpose on Console. The game can store - /// the long-lived refresh token locally on the device, for the currently logged in local user of the device. - /// Then, on subsequent game starts the game can call the API with the previously stored refresh token and - /// using the login type to automatically login the current local user of the device. - /// - /// - DeviceCode = 3, - /// - /// Login with named credentials hosted by the EOS SDK Developer Authentication Tool. - /// - /// @note Used for development purposes only. - /// - Developer = 4, - /// - /// Refresh token that was retrieved from a previous call to API in another local process context. - /// Mainly used in conjunction with custom launcher applications. - /// - /// @details Can be used for example when launching the game from Epic Games Launcher and having an intermediate process - /// in-between that requires authenticating the user before eventually starting the actual game client application. - /// In such scenario, an intermediate launcher will log in the user by consuming the exchange code it received from the - /// Epic Games Launcher. To allow the game client to also authenticate the user, it can copy the refresh token using the - /// API and pass it via launch parameters to the started game client. The game client can then - /// use the refresh token to log in the user. - /// - RefreshToken = 5, - /// - /// Desktop and Mobile only. - /// - /// Initiate a login through the Epic account portal. - /// - /// @details Can be used in scenarios where seamless user login via other means is not available, - /// for example when starting the application through a proprietary ecosystem launcher or otherwise. - /// - AccountPortal = 6, - /// - /// Login using external account provider credentials, such as Steam, PlayStation(TM)Network, Xbox Live, or Nintendo. - /// - /// This is the intended login method on Console. On Desktop and Mobile, used when launched through any of the commonly supported platform clients. - /// - /// @details The user is seamlessly logged in to their Epic account using an external account access token. - /// If the local platform account is already linked with the user's Epic account, the login will succeed and :: is returned. - /// When the local platform account has not been linked with an Epic account yet, - /// :: is returned and the will be set in the data. - /// If :: is returned, - /// the application should proceed to call the API with the to continue with the external account login - /// and to link the external account at the end of the login flow. - /// - /// @details On Console, login flow when the platform user account has not been linked with an Epic account yet: - /// 1. Game calls with the credential type. - /// 2. returns :: with a non-null in the data. - /// 3. Game calls with the to initiate the login flow for linking the platform account with the user's Epic account. - /// - During the login process, the user will be able to login to their existing Epic account or create a new account if needed. - /// 4. will make an intermediate callback to provide the caller with struct set in the data. - /// 5. Game examines the retrieved struct for a website URI and user code that the user needs to access off-device via a PC or mobile device. - /// - Game visualizes the URI and user code so that the user can proceed with the login flow outside the console. - /// - In the meantime, EOS SDK will internally keep polling the backend for a completion status of the login flow. - /// 6. Once user completes the login, cancels it or if the login flow times out, makes the second and final callback to the caller with the operation result status. - /// - If the user was logged in successfully, :: is returned in the . Otherwise, an error result code is returned accordingly. - /// - ExternalAuth = 7 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LoginCredentialType.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LoginCredentialType.cs.meta deleted file mode 100644 index e136264..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LoginCredentialType.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: db67c13db78fc6f40a79380056bb314a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LoginOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LoginOptions.cs deleted file mode 100644 index e56f441..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LoginOptions.cs +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - /// - /// Input parameters for the function. - /// - public class LoginOptions - { - /// - /// Credentials specified for a given login method - /// - public Credentials Credentials { get; set; } - - /// - /// Auth scope flags are permissions to request from the user while they are logging in. This is a bitwise-or union of flags defined above - /// - public AuthScopeFlags ScopeFlags { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LoginOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Credentials; - private AuthScopeFlags m_ScopeFlags; - - public Credentials Credentials - { - set - { - Helper.TryMarshalSet(ref m_Credentials, value); - } - } - - public AuthScopeFlags ScopeFlags - { - set - { - m_ScopeFlags = value; - } - } - - public void Set(LoginOptions other) - { - if (other != null) - { - m_ApiVersion = AuthInterface.LoginApiLatest; - Credentials = other.Credentials; - ScopeFlags = other.ScopeFlags; - } - } - - public void Set(object other) - { - Set(other as LoginOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Credentials); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LoginOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LoginOptions.cs.meta deleted file mode 100644 index de24c2e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LoginOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 771862050c3f93641bb40f5ed56ab4f9 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LoginStatusChangedCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LoginStatusChangedCallbackInfo.cs deleted file mode 100644 index 663651b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LoginStatusChangedCallbackInfo.cs +++ /dev/null @@ -1,105 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - /// - /// Output parameters for the Function. - /// - public class LoginStatusChangedCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The Epic Online Services Account ID of the local user whose status has changed - /// - public EpicAccountId LocalUserId { get; private set; } - - /// - /// The status prior to the change - /// - public LoginStatus PrevStatus { get; private set; } - - /// - /// The status at the time of the notification - /// - public LoginStatus CurrentStatus { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(LoginStatusChangedCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - PrevStatus = other.Value.PrevStatus; - CurrentStatus = other.Value.CurrentStatus; - } - } - - public void Set(object other) - { - Set(other as LoginStatusChangedCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LoginStatusChangedCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private LoginStatus m_PrevStatus; - private LoginStatus m_CurrentStatus; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public EpicAccountId LocalUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public LoginStatus PrevStatus - { - get - { - return m_PrevStatus; - } - } - - public LoginStatus CurrentStatus - { - get - { - return m_CurrentStatus; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LoginStatusChangedCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LoginStatusChangedCallbackInfo.cs.meta deleted file mode 100644 index 7c7b5c3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LoginStatusChangedCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c22b040545343af4889f3fbd7bd5f11e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LogoutCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LogoutCallbackInfo.cs deleted file mode 100644 index 9160271..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LogoutCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - /// - /// Output parameters for the Function. - /// - public class LogoutCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The Epic Online Services Account ID of the local user requesting the information - /// - public EpicAccountId LocalUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(LogoutCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as LogoutCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LogoutCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public EpicAccountId LocalUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LogoutCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LogoutCallbackInfo.cs.meta deleted file mode 100644 index d01d367..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LogoutCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ea642c61287945a4498d408c694e48bd -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LogoutOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LogoutOptions.cs deleted file mode 100644 index 8fe4739..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LogoutOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - /// - /// Input parameters for the function. - /// - public class LogoutOptions - { - /// - /// The Epic Online Services Account ID of the local user who is being logged out - /// - public EpicAccountId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LogoutOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(LogoutOptions other) - { - if (other != null) - { - m_ApiVersion = AuthInterface.LogoutApiLatest; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as LogoutOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LogoutOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LogoutOptions.cs.meta deleted file mode 100644 index 4133a4a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/LogoutOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3e29b5ad36356444bb860ae7f0618c22 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnDeletePersistentAuthCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnDeletePersistentAuthCallback.cs deleted file mode 100644 index 259c0a4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnDeletePersistentAuthCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnDeletePersistentAuthCallback(DeletePersistentAuthCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnDeletePersistentAuthCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnDeletePersistentAuthCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnDeletePersistentAuthCallback.cs.meta deleted file mode 100644 index e961e6a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnDeletePersistentAuthCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 806d425105bcd4e42a3b77039195df24 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnLinkAccountCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnLinkAccountCallback.cs deleted file mode 100644 index 80bf53b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnLinkAccountCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnLinkAccountCallback(LinkAccountCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnLinkAccountCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnLinkAccountCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnLinkAccountCallback.cs.meta deleted file mode 100644 index 3b50a4f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnLinkAccountCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: cf7fa5ba0ce558c408f78b848dbb0507 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnLoginCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnLoginCallback.cs deleted file mode 100644 index ba59854..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnLoginCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnLoginCallback(LoginCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnLoginCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnLoginCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnLoginCallback.cs.meta deleted file mode 100644 index 1f2673a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnLoginCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 09f0f14949b0293408e370976cec840f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnLoginStatusChangedCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnLoginStatusChangedCallback.cs deleted file mode 100644 index 05e6cd8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnLoginStatusChangedCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - /// - /// Function prototype definition for notifications that come from - /// - /// A containing the output information and result - public delegate void OnLoginStatusChangedCallback(LoginStatusChangedCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnLoginStatusChangedCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnLoginStatusChangedCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnLoginStatusChangedCallback.cs.meta deleted file mode 100644 index 579941a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnLoginStatusChangedCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 23b04b592056f2742b3809836f6a6e97 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnLogoutCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnLogoutCallback.cs deleted file mode 100644 index 922dab7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnLogoutCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnLogoutCallback(LogoutCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnLogoutCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnLogoutCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnLogoutCallback.cs.meta deleted file mode 100644 index 98f2dd7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnLogoutCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 24bcc370a8469b34cb8f6f63117869ef -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnVerifyUserAuthCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnVerifyUserAuthCallback.cs deleted file mode 100644 index e65e415..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnVerifyUserAuthCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnVerifyUserAuthCallback(VerifyUserAuthCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnVerifyUserAuthCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnVerifyUserAuthCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnVerifyUserAuthCallback.cs.meta deleted file mode 100644 index e1591b8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/OnVerifyUserAuthCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0a5a8be0dcdb02247851cee75c234b04 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/PinGrantInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/PinGrantInfo.cs deleted file mode 100644 index 7cb7e76..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/PinGrantInfo.cs +++ /dev/null @@ -1,141 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - /// - /// Intermediate data needed to complete the and login flows, returned by . - /// The data inside should be exposed to the user for entry on a secondary device. - /// All data must be copied out before the completion of this callback. - /// - public class PinGrantInfo : ISettable - { - /// - /// Code the user must input on an external device to activate the login - /// - public string UserCode { get; set; } - - /// - /// The end-user verification URI. Users can be asked to manually type this into their browser. - /// - public string VerificationURI { get; set; } - - /// - /// Time the user has, in seconds, to complete the process or else timeout - /// - public int ExpiresIn { get; set; } - - /// - /// A verification URI that includes the user code. Useful for non-textual transmission. - /// - public string VerificationURIComplete { get; set; } - - internal void Set(PinGrantInfoInternal? other) - { - if (other != null) - { - UserCode = other.Value.UserCode; - VerificationURI = other.Value.VerificationURI; - ExpiresIn = other.Value.ExpiresIn; - VerificationURIComplete = other.Value.VerificationURIComplete; - } - } - - public void Set(object other) - { - Set(other as PinGrantInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct PinGrantInfoInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_UserCode; - private System.IntPtr m_VerificationURI; - private int m_ExpiresIn; - private System.IntPtr m_VerificationURIComplete; - - public string UserCode - { - get - { - string value; - Helper.TryMarshalGet(m_UserCode, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_UserCode, value); - } - } - - public string VerificationURI - { - get - { - string value; - Helper.TryMarshalGet(m_VerificationURI, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_VerificationURI, value); - } - } - - public int ExpiresIn - { - get - { - return m_ExpiresIn; - } - - set - { - m_ExpiresIn = value; - } - } - - public string VerificationURIComplete - { - get - { - string value; - Helper.TryMarshalGet(m_VerificationURIComplete, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_VerificationURIComplete, value); - } - } - - public void Set(PinGrantInfo other) - { - if (other != null) - { - m_ApiVersion = AuthInterface.PingrantinfoApiLatest; - UserCode = other.UserCode; - VerificationURI = other.VerificationURI; - ExpiresIn = other.ExpiresIn; - VerificationURIComplete = other.VerificationURIComplete; - } - } - - public void Set(object other) - { - Set(other as PinGrantInfo); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_UserCode); - Helper.TryMarshalDispose(ref m_VerificationURI); - Helper.TryMarshalDispose(ref m_VerificationURIComplete); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/PinGrantInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/PinGrantInfo.cs.meta deleted file mode 100644 index cef3699..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/PinGrantInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 558ea4d4a89cd87469cd50e29ad00e0f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/Token.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/Token.cs deleted file mode 100644 index d41e586..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/Token.cs +++ /dev/null @@ -1,279 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - /// - /// A structure that contains an auth token. - /// These structures are created by and must be passed to . - /// - public class Token : ISettable - { - /// - /// Name of the app related to the client ID involved with this token - /// - public string App { get; set; } - - /// - /// Client ID that requested this token - /// - public string ClientId { get; set; } - - /// - /// The Epic Online Services Account ID associated with this auth token - /// - public EpicAccountId AccountId { get; set; } - - /// - /// Access token for the current user login session - /// - public string AccessToken { get; set; } - - /// - /// Time before the access token expires, in seconds, relative to the call to - /// - public double ExpiresIn { get; set; } - - /// - /// Absolute time in UTC before the access token expires, in ISO 8601 format - /// - public string ExpiresAt { get; set; } - - /// - /// Type of auth token - /// - public AuthTokenType AuthType { get; set; } - - /// - /// Refresh token. - /// :: - /// - public string RefreshToken { get; set; } - - /// - /// Time before the access token expires, in seconds, relative to the call to - /// - public double RefreshExpiresIn { get; set; } - - /// - /// Absolute time in UTC before the refresh token expires, in ISO 8601 format - /// - public string RefreshExpiresAt { get; set; } - - internal void Set(TokenInternal? other) - { - if (other != null) - { - App = other.Value.App; - ClientId = other.Value.ClientId; - AccountId = other.Value.AccountId; - AccessToken = other.Value.AccessToken; - ExpiresIn = other.Value.ExpiresIn; - ExpiresAt = other.Value.ExpiresAt; - AuthType = other.Value.AuthType; - RefreshToken = other.Value.RefreshToken; - RefreshExpiresIn = other.Value.RefreshExpiresIn; - RefreshExpiresAt = other.Value.RefreshExpiresAt; - } - } - - public void Set(object other) - { - Set(other as TokenInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct TokenInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_App; - private System.IntPtr m_ClientId; - private System.IntPtr m_AccountId; - private System.IntPtr m_AccessToken; - private double m_ExpiresIn; - private System.IntPtr m_ExpiresAt; - private AuthTokenType m_AuthType; - private System.IntPtr m_RefreshToken; - private double m_RefreshExpiresIn; - private System.IntPtr m_RefreshExpiresAt; - - public string App - { - get - { - string value; - Helper.TryMarshalGet(m_App, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_App, value); - } - } - - public string ClientId - { - get - { - string value; - Helper.TryMarshalGet(m_ClientId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_ClientId, value); - } - } - - public EpicAccountId AccountId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_AccountId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_AccountId, value); - } - } - - public string AccessToken - { - get - { - string value; - Helper.TryMarshalGet(m_AccessToken, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_AccessToken, value); - } - } - - public double ExpiresIn - { - get - { - return m_ExpiresIn; - } - - set - { - m_ExpiresIn = value; - } - } - - public string ExpiresAt - { - get - { - string value; - Helper.TryMarshalGet(m_ExpiresAt, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_ExpiresAt, value); - } - } - - public AuthTokenType AuthType - { - get - { - return m_AuthType; - } - - set - { - m_AuthType = value; - } - } - - public string RefreshToken - { - get - { - string value; - Helper.TryMarshalGet(m_RefreshToken, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_RefreshToken, value); - } - } - - public double RefreshExpiresIn - { - get - { - return m_RefreshExpiresIn; - } - - set - { - m_RefreshExpiresIn = value; - } - } - - public string RefreshExpiresAt - { - get - { - string value; - Helper.TryMarshalGet(m_RefreshExpiresAt, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_RefreshExpiresAt, value); - } - } - - public void Set(Token other) - { - if (other != null) - { - m_ApiVersion = AuthInterface.TokenApiLatest; - App = other.App; - ClientId = other.ClientId; - AccountId = other.AccountId; - AccessToken = other.AccessToken; - ExpiresIn = other.ExpiresIn; - ExpiresAt = other.ExpiresAt; - AuthType = other.AuthType; - RefreshToken = other.RefreshToken; - RefreshExpiresIn = other.RefreshExpiresIn; - RefreshExpiresAt = other.RefreshExpiresAt; - } - } - - public void Set(object other) - { - Set(other as Token); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_App); - Helper.TryMarshalDispose(ref m_ClientId); - Helper.TryMarshalDispose(ref m_AccountId); - Helper.TryMarshalDispose(ref m_AccessToken); - Helper.TryMarshalDispose(ref m_ExpiresAt); - Helper.TryMarshalDispose(ref m_RefreshToken); - Helper.TryMarshalDispose(ref m_RefreshExpiresAt); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/Token.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/Token.cs.meta deleted file mode 100644 index 29f5b32..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/Token.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b159297afdcbca04b82c54f9c98d582e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/VerifyUserAuthCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/VerifyUserAuthCallbackInfo.cs deleted file mode 100644 index 85245c6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/VerifyUserAuthCallbackInfo.cs +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - /// - /// Output parameters for the Function. - /// - public class VerifyUserAuthCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(VerifyUserAuthCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - } - } - - public void Set(object other) - { - Set(other as VerifyUserAuthCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct VerifyUserAuthCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/VerifyUserAuthCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/VerifyUserAuthCallbackInfo.cs.meta deleted file mode 100644 index d96ca6a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/VerifyUserAuthCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 2616921a24e1f5c48b2e35e9cd239982 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/VerifyUserAuthOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/VerifyUserAuthOptions.cs deleted file mode 100644 index 9355e31..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/VerifyUserAuthOptions.cs +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - /// - /// Input parameters for the function. - /// This operation is destructive, the pointer will remain the same but the data pointers inside will update - /// - public class VerifyUserAuthOptions - { - /// - /// Auth token to verify against the backend service - /// - public Token AuthToken { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct VerifyUserAuthOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_AuthToken; - - public Token AuthToken - { - set - { - Helper.TryMarshalSet(ref m_AuthToken, value); - } - } - - public void Set(VerifyUserAuthOptions other) - { - if (other != null) - { - m_ApiVersion = AuthInterface.VerifyuserauthApiLatest; - AuthToken = other.AuthToken; - } - } - - public void Set(object other) - { - Set(other as VerifyUserAuthOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_AuthToken); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/VerifyUserAuthOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/VerifyUserAuthOptions.cs.meta deleted file mode 100644 index 40812fc..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Auth/VerifyUserAuthOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: bc7a451b49cf43f4a8209accf72373e3 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Bindings.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Bindings.cs deleted file mode 100644 index a4cbcbe..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Bindings.cs +++ /dev/null @@ -1,5864 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -#if UNITY_EDITOR - #define EOS_EDITOR -#endif - -#if EOS_EDITOR - #define EOS_DYNAMIC_BINDINGS -#endif - -using System; -using System.Runtime.InteropServices; - -namespace Epic.OnlineServices -{ - public static class Bindings - { -#if EOS_DYNAMIC_BINDINGS - /// - /// Hooks the dynamic SDK API bindings. EOS_DYNAMIC_BINDINGS or EOS_EDITOR must be set. - /// - /// The library handle to find functions in. The type is platform dependent, but would typically be . - /// A delegate that gets a function pointer using the given library handle and function name. - public static void Hook(TLibraryHandle libraryHandle, Func getFunctionPointer) - { - System.IntPtr functionPointer; - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_AddNotifyAchievementsUnlocked)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_AddNotifyAchievementsUnlocked)); - EOS_Achievements_AddNotifyAchievementsUnlocked = (EOS_Achievements_AddNotifyAchievementsUnlockedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_AddNotifyAchievementsUnlockedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_AddNotifyAchievementsUnlockedV2)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_AddNotifyAchievementsUnlockedV2)); - EOS_Achievements_AddNotifyAchievementsUnlockedV2 = (EOS_Achievements_AddNotifyAchievementsUnlockedV2Callback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_AddNotifyAchievementsUnlockedV2Callback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_CopyAchievementDefinitionByAchievementId)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_CopyAchievementDefinitionByAchievementId)); - EOS_Achievements_CopyAchievementDefinitionByAchievementId = (EOS_Achievements_CopyAchievementDefinitionByAchievementIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_CopyAchievementDefinitionByAchievementIdCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_CopyAchievementDefinitionByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_CopyAchievementDefinitionByIndex)); - EOS_Achievements_CopyAchievementDefinitionByIndex = (EOS_Achievements_CopyAchievementDefinitionByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_CopyAchievementDefinitionByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_CopyAchievementDefinitionV2ByAchievementId)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_CopyAchievementDefinitionV2ByAchievementId)); - EOS_Achievements_CopyAchievementDefinitionV2ByAchievementId = (EOS_Achievements_CopyAchievementDefinitionV2ByAchievementIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_CopyAchievementDefinitionV2ByAchievementIdCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_CopyAchievementDefinitionV2ByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_CopyAchievementDefinitionV2ByIndex)); - EOS_Achievements_CopyAchievementDefinitionV2ByIndex = (EOS_Achievements_CopyAchievementDefinitionV2ByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_CopyAchievementDefinitionV2ByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_CopyPlayerAchievementByAchievementId)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_CopyPlayerAchievementByAchievementId)); - EOS_Achievements_CopyPlayerAchievementByAchievementId = (EOS_Achievements_CopyPlayerAchievementByAchievementIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_CopyPlayerAchievementByAchievementIdCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_CopyPlayerAchievementByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_CopyPlayerAchievementByIndex)); - EOS_Achievements_CopyPlayerAchievementByIndex = (EOS_Achievements_CopyPlayerAchievementByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_CopyPlayerAchievementByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_CopyUnlockedAchievementByAchievementId)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_CopyUnlockedAchievementByAchievementId)); - EOS_Achievements_CopyUnlockedAchievementByAchievementId = (EOS_Achievements_CopyUnlockedAchievementByAchievementIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_CopyUnlockedAchievementByAchievementIdCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_CopyUnlockedAchievementByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_CopyUnlockedAchievementByIndex)); - EOS_Achievements_CopyUnlockedAchievementByIndex = (EOS_Achievements_CopyUnlockedAchievementByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_CopyUnlockedAchievementByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_DefinitionV2_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_DefinitionV2_Release)); - EOS_Achievements_DefinitionV2_Release = (EOS_Achievements_DefinitionV2_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_DefinitionV2_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_Definition_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_Definition_Release)); - EOS_Achievements_Definition_Release = (EOS_Achievements_Definition_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_Definition_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_GetAchievementDefinitionCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_GetAchievementDefinitionCount)); - EOS_Achievements_GetAchievementDefinitionCount = (EOS_Achievements_GetAchievementDefinitionCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_GetAchievementDefinitionCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_GetPlayerAchievementCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_GetPlayerAchievementCount)); - EOS_Achievements_GetPlayerAchievementCount = (EOS_Achievements_GetPlayerAchievementCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_GetPlayerAchievementCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_GetUnlockedAchievementCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_GetUnlockedAchievementCount)); - EOS_Achievements_GetUnlockedAchievementCount = (EOS_Achievements_GetUnlockedAchievementCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_GetUnlockedAchievementCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_PlayerAchievement_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_PlayerAchievement_Release)); - EOS_Achievements_PlayerAchievement_Release = (EOS_Achievements_PlayerAchievement_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_PlayerAchievement_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_QueryDefinitions)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_QueryDefinitions)); - EOS_Achievements_QueryDefinitions = (EOS_Achievements_QueryDefinitionsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_QueryDefinitionsCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_QueryPlayerAchievements)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_QueryPlayerAchievements)); - EOS_Achievements_QueryPlayerAchievements = (EOS_Achievements_QueryPlayerAchievementsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_QueryPlayerAchievementsCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_RemoveNotifyAchievementsUnlocked)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_RemoveNotifyAchievementsUnlocked)); - EOS_Achievements_RemoveNotifyAchievementsUnlocked = (EOS_Achievements_RemoveNotifyAchievementsUnlockedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_RemoveNotifyAchievementsUnlockedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_UnlockAchievements)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_UnlockAchievements)); - EOS_Achievements_UnlockAchievements = (EOS_Achievements_UnlockAchievementsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_UnlockAchievementsCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Achievements_UnlockedAchievement_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Achievements_UnlockedAchievement_Release)); - EOS_Achievements_UnlockedAchievement_Release = (EOS_Achievements_UnlockedAchievement_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Achievements_UnlockedAchievement_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_ActiveSession_CopyInfo)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_ActiveSession_CopyInfo)); - EOS_ActiveSession_CopyInfo = (EOS_ActiveSession_CopyInfoCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_ActiveSession_CopyInfoCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_ActiveSession_GetRegisteredPlayerByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_ActiveSession_GetRegisteredPlayerByIndex)); - EOS_ActiveSession_GetRegisteredPlayerByIndex = (EOS_ActiveSession_GetRegisteredPlayerByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_ActiveSession_GetRegisteredPlayerByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_ActiveSession_GetRegisteredPlayerCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_ActiveSession_GetRegisteredPlayerCount)); - EOS_ActiveSession_GetRegisteredPlayerCount = (EOS_ActiveSession_GetRegisteredPlayerCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_ActiveSession_GetRegisteredPlayerCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_ActiveSession_Info_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_ActiveSession_Info_Release)); - EOS_ActiveSession_Info_Release = (EOS_ActiveSession_Info_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_ActiveSession_Info_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_ActiveSession_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_ActiveSession_Release)); - EOS_ActiveSession_Release = (EOS_ActiveSession_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_ActiveSession_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_AddExternalIntegrityCatalog)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_AddExternalIntegrityCatalog)); - EOS_AntiCheatClient_AddExternalIntegrityCatalog = (EOS_AntiCheatClient_AddExternalIntegrityCatalogCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_AddExternalIntegrityCatalogCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_AddNotifyMessageToPeer)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_AddNotifyMessageToPeer)); - EOS_AntiCheatClient_AddNotifyMessageToPeer = (EOS_AntiCheatClient_AddNotifyMessageToPeerCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_AddNotifyMessageToPeerCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_AddNotifyMessageToServer)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_AddNotifyMessageToServer)); - EOS_AntiCheatClient_AddNotifyMessageToServer = (EOS_AntiCheatClient_AddNotifyMessageToServerCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_AddNotifyMessageToServerCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_AddNotifyPeerActionRequired)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_AddNotifyPeerActionRequired)); - EOS_AntiCheatClient_AddNotifyPeerActionRequired = (EOS_AntiCheatClient_AddNotifyPeerActionRequiredCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_AddNotifyPeerActionRequiredCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_AddNotifyPeerAuthStatusChanged)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_AddNotifyPeerAuthStatusChanged)); - EOS_AntiCheatClient_AddNotifyPeerAuthStatusChanged = (EOS_AntiCheatClient_AddNotifyPeerAuthStatusChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_AddNotifyPeerAuthStatusChangedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_BeginSession)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_BeginSession)); - EOS_AntiCheatClient_BeginSession = (EOS_AntiCheatClient_BeginSessionCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_BeginSessionCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_EndSession)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_EndSession)); - EOS_AntiCheatClient_EndSession = (EOS_AntiCheatClient_EndSessionCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_EndSessionCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_GetProtectMessageOutputLength)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_GetProtectMessageOutputLength)); - EOS_AntiCheatClient_GetProtectMessageOutputLength = (EOS_AntiCheatClient_GetProtectMessageOutputLengthCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_GetProtectMessageOutputLengthCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_PollStatus)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_PollStatus)); - EOS_AntiCheatClient_PollStatus = (EOS_AntiCheatClient_PollStatusCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_PollStatusCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_ProtectMessage)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_ProtectMessage)); - EOS_AntiCheatClient_ProtectMessage = (EOS_AntiCheatClient_ProtectMessageCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_ProtectMessageCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_ReceiveMessageFromPeer)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_ReceiveMessageFromPeer)); - EOS_AntiCheatClient_ReceiveMessageFromPeer = (EOS_AntiCheatClient_ReceiveMessageFromPeerCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_ReceiveMessageFromPeerCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_ReceiveMessageFromServer)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_ReceiveMessageFromServer)); - EOS_AntiCheatClient_ReceiveMessageFromServer = (EOS_AntiCheatClient_ReceiveMessageFromServerCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_ReceiveMessageFromServerCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_RegisterPeer)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_RegisterPeer)); - EOS_AntiCheatClient_RegisterPeer = (EOS_AntiCheatClient_RegisterPeerCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_RegisterPeerCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_RemoveNotifyMessageToPeer)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_RemoveNotifyMessageToPeer)); - EOS_AntiCheatClient_RemoveNotifyMessageToPeer = (EOS_AntiCheatClient_RemoveNotifyMessageToPeerCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_RemoveNotifyMessageToPeerCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_RemoveNotifyMessageToServer)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_RemoveNotifyMessageToServer)); - EOS_AntiCheatClient_RemoveNotifyMessageToServer = (EOS_AntiCheatClient_RemoveNotifyMessageToServerCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_RemoveNotifyMessageToServerCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_RemoveNotifyPeerActionRequired)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_RemoveNotifyPeerActionRequired)); - EOS_AntiCheatClient_RemoveNotifyPeerActionRequired = (EOS_AntiCheatClient_RemoveNotifyPeerActionRequiredCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_RemoveNotifyPeerActionRequiredCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_RemoveNotifyPeerAuthStatusChanged)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_RemoveNotifyPeerAuthStatusChanged)); - EOS_AntiCheatClient_RemoveNotifyPeerAuthStatusChanged = (EOS_AntiCheatClient_RemoveNotifyPeerAuthStatusChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_RemoveNotifyPeerAuthStatusChangedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_UnprotectMessage)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_UnprotectMessage)); - EOS_AntiCheatClient_UnprotectMessage = (EOS_AntiCheatClient_UnprotectMessageCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_UnprotectMessageCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatClient_UnregisterPeer)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatClient_UnregisterPeer)); - EOS_AntiCheatClient_UnregisterPeer = (EOS_AntiCheatClient_UnregisterPeerCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatClient_UnregisterPeerCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_AddNotifyClientActionRequired)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_AddNotifyClientActionRequired)); - EOS_AntiCheatServer_AddNotifyClientActionRequired = (EOS_AntiCheatServer_AddNotifyClientActionRequiredCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_AddNotifyClientActionRequiredCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_AddNotifyClientAuthStatusChanged)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_AddNotifyClientAuthStatusChanged)); - EOS_AntiCheatServer_AddNotifyClientAuthStatusChanged = (EOS_AntiCheatServer_AddNotifyClientAuthStatusChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_AddNotifyClientAuthStatusChangedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_AddNotifyMessageToClient)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_AddNotifyMessageToClient)); - EOS_AntiCheatServer_AddNotifyMessageToClient = (EOS_AntiCheatServer_AddNotifyMessageToClientCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_AddNotifyMessageToClientCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_BeginSession)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_BeginSession)); - EOS_AntiCheatServer_BeginSession = (EOS_AntiCheatServer_BeginSessionCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_BeginSessionCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_EndSession)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_EndSession)); - EOS_AntiCheatServer_EndSession = (EOS_AntiCheatServer_EndSessionCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_EndSessionCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_GetProtectMessageOutputLength)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_GetProtectMessageOutputLength)); - EOS_AntiCheatServer_GetProtectMessageOutputLength = (EOS_AntiCheatServer_GetProtectMessageOutputLengthCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_GetProtectMessageOutputLengthCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_LogEvent)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_LogEvent)); - EOS_AntiCheatServer_LogEvent = (EOS_AntiCheatServer_LogEventCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_LogEventCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_LogGameRoundEnd)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_LogGameRoundEnd)); - EOS_AntiCheatServer_LogGameRoundEnd = (EOS_AntiCheatServer_LogGameRoundEndCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_LogGameRoundEndCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_LogGameRoundStart)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_LogGameRoundStart)); - EOS_AntiCheatServer_LogGameRoundStart = (EOS_AntiCheatServer_LogGameRoundStartCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_LogGameRoundStartCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_LogPlayerDespawn)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_LogPlayerDespawn)); - EOS_AntiCheatServer_LogPlayerDespawn = (EOS_AntiCheatServer_LogPlayerDespawnCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_LogPlayerDespawnCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_LogPlayerRevive)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_LogPlayerRevive)); - EOS_AntiCheatServer_LogPlayerRevive = (EOS_AntiCheatServer_LogPlayerReviveCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_LogPlayerReviveCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_LogPlayerSpawn)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_LogPlayerSpawn)); - EOS_AntiCheatServer_LogPlayerSpawn = (EOS_AntiCheatServer_LogPlayerSpawnCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_LogPlayerSpawnCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_LogPlayerTakeDamage)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_LogPlayerTakeDamage)); - EOS_AntiCheatServer_LogPlayerTakeDamage = (EOS_AntiCheatServer_LogPlayerTakeDamageCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_LogPlayerTakeDamageCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_LogPlayerTick)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_LogPlayerTick)); - EOS_AntiCheatServer_LogPlayerTick = (EOS_AntiCheatServer_LogPlayerTickCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_LogPlayerTickCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_LogPlayerUseAbility)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_LogPlayerUseAbility)); - EOS_AntiCheatServer_LogPlayerUseAbility = (EOS_AntiCheatServer_LogPlayerUseAbilityCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_LogPlayerUseAbilityCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_LogPlayerUseWeapon)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_LogPlayerUseWeapon)); - EOS_AntiCheatServer_LogPlayerUseWeapon = (EOS_AntiCheatServer_LogPlayerUseWeaponCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_LogPlayerUseWeaponCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_ProtectMessage)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_ProtectMessage)); - EOS_AntiCheatServer_ProtectMessage = (EOS_AntiCheatServer_ProtectMessageCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_ProtectMessageCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_ReceiveMessageFromClient)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_ReceiveMessageFromClient)); - EOS_AntiCheatServer_ReceiveMessageFromClient = (EOS_AntiCheatServer_ReceiveMessageFromClientCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_ReceiveMessageFromClientCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_RegisterClient)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_RegisterClient)); - EOS_AntiCheatServer_RegisterClient = (EOS_AntiCheatServer_RegisterClientCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_RegisterClientCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_RegisterEvent)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_RegisterEvent)); - EOS_AntiCheatServer_RegisterEvent = (EOS_AntiCheatServer_RegisterEventCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_RegisterEventCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_RemoveNotifyClientActionRequired)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_RemoveNotifyClientActionRequired)); - EOS_AntiCheatServer_RemoveNotifyClientActionRequired = (EOS_AntiCheatServer_RemoveNotifyClientActionRequiredCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_RemoveNotifyClientActionRequiredCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_RemoveNotifyClientAuthStatusChanged)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_RemoveNotifyClientAuthStatusChanged)); - EOS_AntiCheatServer_RemoveNotifyClientAuthStatusChanged = (EOS_AntiCheatServer_RemoveNotifyClientAuthStatusChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_RemoveNotifyClientAuthStatusChangedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_RemoveNotifyMessageToClient)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_RemoveNotifyMessageToClient)); - EOS_AntiCheatServer_RemoveNotifyMessageToClient = (EOS_AntiCheatServer_RemoveNotifyMessageToClientCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_RemoveNotifyMessageToClientCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_SetClientDetails)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_SetClientDetails)); - EOS_AntiCheatServer_SetClientDetails = (EOS_AntiCheatServer_SetClientDetailsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_SetClientDetailsCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_SetClientNetworkState)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_SetClientNetworkState)); - EOS_AntiCheatServer_SetClientNetworkState = (EOS_AntiCheatServer_SetClientNetworkStateCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_SetClientNetworkStateCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_SetGameSessionId)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_SetGameSessionId)); - EOS_AntiCheatServer_SetGameSessionId = (EOS_AntiCheatServer_SetGameSessionIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_SetGameSessionIdCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_UnprotectMessage)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_UnprotectMessage)); - EOS_AntiCheatServer_UnprotectMessage = (EOS_AntiCheatServer_UnprotectMessageCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_UnprotectMessageCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_AntiCheatServer_UnregisterClient)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_AntiCheatServer_UnregisterClient)); - EOS_AntiCheatServer_UnregisterClient = (EOS_AntiCheatServer_UnregisterClientCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_AntiCheatServer_UnregisterClientCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Auth_AddNotifyLoginStatusChanged)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Auth_AddNotifyLoginStatusChanged)); - EOS_Auth_AddNotifyLoginStatusChanged = (EOS_Auth_AddNotifyLoginStatusChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Auth_AddNotifyLoginStatusChangedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Auth_CopyUserAuthToken)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Auth_CopyUserAuthToken)); - EOS_Auth_CopyUserAuthToken = (EOS_Auth_CopyUserAuthTokenCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Auth_CopyUserAuthTokenCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Auth_DeletePersistentAuth)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Auth_DeletePersistentAuth)); - EOS_Auth_DeletePersistentAuth = (EOS_Auth_DeletePersistentAuthCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Auth_DeletePersistentAuthCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Auth_GetLoggedInAccountByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Auth_GetLoggedInAccountByIndex)); - EOS_Auth_GetLoggedInAccountByIndex = (EOS_Auth_GetLoggedInAccountByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Auth_GetLoggedInAccountByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Auth_GetLoggedInAccountsCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Auth_GetLoggedInAccountsCount)); - EOS_Auth_GetLoggedInAccountsCount = (EOS_Auth_GetLoggedInAccountsCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Auth_GetLoggedInAccountsCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Auth_GetLoginStatus)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Auth_GetLoginStatus)); - EOS_Auth_GetLoginStatus = (EOS_Auth_GetLoginStatusCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Auth_GetLoginStatusCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Auth_LinkAccount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Auth_LinkAccount)); - EOS_Auth_LinkAccount = (EOS_Auth_LinkAccountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Auth_LinkAccountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Auth_Login)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Auth_Login)); - EOS_Auth_Login = (EOS_Auth_LoginCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Auth_LoginCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Auth_Logout)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Auth_Logout)); - EOS_Auth_Logout = (EOS_Auth_LogoutCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Auth_LogoutCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Auth_RemoveNotifyLoginStatusChanged)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Auth_RemoveNotifyLoginStatusChanged)); - EOS_Auth_RemoveNotifyLoginStatusChanged = (EOS_Auth_RemoveNotifyLoginStatusChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Auth_RemoveNotifyLoginStatusChangedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Auth_Token_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Auth_Token_Release)); - EOS_Auth_Token_Release = (EOS_Auth_Token_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Auth_Token_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Auth_VerifyUserAuth)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Auth_VerifyUserAuth)); - EOS_Auth_VerifyUserAuth = (EOS_Auth_VerifyUserAuthCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Auth_VerifyUserAuthCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_ByteArray_ToString)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_ByteArray_ToString)); - EOS_ByteArray_ToString = (EOS_ByteArray_ToStringCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_ByteArray_ToStringCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_AddNotifyAuthExpiration)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_AddNotifyAuthExpiration)); - EOS_Connect_AddNotifyAuthExpiration = (EOS_Connect_AddNotifyAuthExpirationCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_AddNotifyAuthExpirationCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_AddNotifyLoginStatusChanged)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_AddNotifyLoginStatusChanged)); - EOS_Connect_AddNotifyLoginStatusChanged = (EOS_Connect_AddNotifyLoginStatusChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_AddNotifyLoginStatusChangedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_CopyProductUserExternalAccountByAccountId)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_CopyProductUserExternalAccountByAccountId)); - EOS_Connect_CopyProductUserExternalAccountByAccountId = (EOS_Connect_CopyProductUserExternalAccountByAccountIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_CopyProductUserExternalAccountByAccountIdCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_CopyProductUserExternalAccountByAccountType)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_CopyProductUserExternalAccountByAccountType)); - EOS_Connect_CopyProductUserExternalAccountByAccountType = (EOS_Connect_CopyProductUserExternalAccountByAccountTypeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_CopyProductUserExternalAccountByAccountTypeCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_CopyProductUserExternalAccountByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_CopyProductUserExternalAccountByIndex)); - EOS_Connect_CopyProductUserExternalAccountByIndex = (EOS_Connect_CopyProductUserExternalAccountByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_CopyProductUserExternalAccountByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_CopyProductUserInfo)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_CopyProductUserInfo)); - EOS_Connect_CopyProductUserInfo = (EOS_Connect_CopyProductUserInfoCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_CopyProductUserInfoCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_CreateDeviceId)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_CreateDeviceId)); - EOS_Connect_CreateDeviceId = (EOS_Connect_CreateDeviceIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_CreateDeviceIdCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_CreateUser)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_CreateUser)); - EOS_Connect_CreateUser = (EOS_Connect_CreateUserCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_CreateUserCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_DeleteDeviceId)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_DeleteDeviceId)); - EOS_Connect_DeleteDeviceId = (EOS_Connect_DeleteDeviceIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_DeleteDeviceIdCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_ExternalAccountInfo_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_ExternalAccountInfo_Release)); - EOS_Connect_ExternalAccountInfo_Release = (EOS_Connect_ExternalAccountInfo_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_ExternalAccountInfo_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_GetExternalAccountMapping)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_GetExternalAccountMapping)); - EOS_Connect_GetExternalAccountMapping = (EOS_Connect_GetExternalAccountMappingCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_GetExternalAccountMappingCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_GetLoggedInUserByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_GetLoggedInUserByIndex)); - EOS_Connect_GetLoggedInUserByIndex = (EOS_Connect_GetLoggedInUserByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_GetLoggedInUserByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_GetLoggedInUsersCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_GetLoggedInUsersCount)); - EOS_Connect_GetLoggedInUsersCount = (EOS_Connect_GetLoggedInUsersCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_GetLoggedInUsersCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_GetLoginStatus)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_GetLoginStatus)); - EOS_Connect_GetLoginStatus = (EOS_Connect_GetLoginStatusCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_GetLoginStatusCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_GetProductUserExternalAccountCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_GetProductUserExternalAccountCount)); - EOS_Connect_GetProductUserExternalAccountCount = (EOS_Connect_GetProductUserExternalAccountCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_GetProductUserExternalAccountCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_GetProductUserIdMapping)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_GetProductUserIdMapping)); - EOS_Connect_GetProductUserIdMapping = (EOS_Connect_GetProductUserIdMappingCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_GetProductUserIdMappingCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_LinkAccount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_LinkAccount)); - EOS_Connect_LinkAccount = (EOS_Connect_LinkAccountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_LinkAccountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_Login)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_Login)); - EOS_Connect_Login = (EOS_Connect_LoginCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_LoginCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_QueryExternalAccountMappings)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_QueryExternalAccountMappings)); - EOS_Connect_QueryExternalAccountMappings = (EOS_Connect_QueryExternalAccountMappingsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_QueryExternalAccountMappingsCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_QueryProductUserIdMappings)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_QueryProductUserIdMappings)); - EOS_Connect_QueryProductUserIdMappings = (EOS_Connect_QueryProductUserIdMappingsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_QueryProductUserIdMappingsCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_RemoveNotifyAuthExpiration)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_RemoveNotifyAuthExpiration)); - EOS_Connect_RemoveNotifyAuthExpiration = (EOS_Connect_RemoveNotifyAuthExpirationCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_RemoveNotifyAuthExpirationCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_RemoveNotifyLoginStatusChanged)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_RemoveNotifyLoginStatusChanged)); - EOS_Connect_RemoveNotifyLoginStatusChanged = (EOS_Connect_RemoveNotifyLoginStatusChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_RemoveNotifyLoginStatusChangedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_TransferDeviceIdAccount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_TransferDeviceIdAccount)); - EOS_Connect_TransferDeviceIdAccount = (EOS_Connect_TransferDeviceIdAccountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_TransferDeviceIdAccountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Connect_UnlinkAccount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Connect_UnlinkAccount)); - EOS_Connect_UnlinkAccount = (EOS_Connect_UnlinkAccountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Connect_UnlinkAccountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_ContinuanceToken_ToString)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_ContinuanceToken_ToString)); - EOS_ContinuanceToken_ToString = (EOS_ContinuanceToken_ToStringCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_ContinuanceToken_ToStringCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_EResult_IsOperationComplete)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_EResult_IsOperationComplete)); - EOS_EResult_IsOperationComplete = (EOS_EResult_IsOperationCompleteCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_EResult_IsOperationCompleteCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_EResult_ToString)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_EResult_ToString)); - EOS_EResult_ToString = (EOS_EResult_ToStringCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_EResult_ToStringCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_CatalogItem_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_CatalogItem_Release)); - EOS_Ecom_CatalogItem_Release = (EOS_Ecom_CatalogItem_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CatalogItem_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_CatalogOffer_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_CatalogOffer_Release)); - EOS_Ecom_CatalogOffer_Release = (EOS_Ecom_CatalogOffer_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CatalogOffer_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_CatalogRelease_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_CatalogRelease_Release)); - EOS_Ecom_CatalogRelease_Release = (EOS_Ecom_CatalogRelease_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CatalogRelease_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_Checkout)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_Checkout)); - EOS_Ecom_Checkout = (EOS_Ecom_CheckoutCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CheckoutCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_CopyEntitlementById)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_CopyEntitlementById)); - EOS_Ecom_CopyEntitlementById = (EOS_Ecom_CopyEntitlementByIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CopyEntitlementByIdCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_CopyEntitlementByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_CopyEntitlementByIndex)); - EOS_Ecom_CopyEntitlementByIndex = (EOS_Ecom_CopyEntitlementByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CopyEntitlementByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_CopyEntitlementByNameAndIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_CopyEntitlementByNameAndIndex)); - EOS_Ecom_CopyEntitlementByNameAndIndex = (EOS_Ecom_CopyEntitlementByNameAndIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CopyEntitlementByNameAndIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_CopyItemById)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_CopyItemById)); - EOS_Ecom_CopyItemById = (EOS_Ecom_CopyItemByIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CopyItemByIdCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_CopyItemImageInfoByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_CopyItemImageInfoByIndex)); - EOS_Ecom_CopyItemImageInfoByIndex = (EOS_Ecom_CopyItemImageInfoByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CopyItemImageInfoByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_CopyItemReleaseByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_CopyItemReleaseByIndex)); - EOS_Ecom_CopyItemReleaseByIndex = (EOS_Ecom_CopyItemReleaseByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CopyItemReleaseByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_CopyOfferById)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_CopyOfferById)); - EOS_Ecom_CopyOfferById = (EOS_Ecom_CopyOfferByIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CopyOfferByIdCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_CopyOfferByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_CopyOfferByIndex)); - EOS_Ecom_CopyOfferByIndex = (EOS_Ecom_CopyOfferByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CopyOfferByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_CopyOfferImageInfoByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_CopyOfferImageInfoByIndex)); - EOS_Ecom_CopyOfferImageInfoByIndex = (EOS_Ecom_CopyOfferImageInfoByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CopyOfferImageInfoByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_CopyOfferItemByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_CopyOfferItemByIndex)); - EOS_Ecom_CopyOfferItemByIndex = (EOS_Ecom_CopyOfferItemByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CopyOfferItemByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_CopyTransactionById)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_CopyTransactionById)); - EOS_Ecom_CopyTransactionById = (EOS_Ecom_CopyTransactionByIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CopyTransactionByIdCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_CopyTransactionByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_CopyTransactionByIndex)); - EOS_Ecom_CopyTransactionByIndex = (EOS_Ecom_CopyTransactionByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_CopyTransactionByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_Entitlement_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_Entitlement_Release)); - EOS_Ecom_Entitlement_Release = (EOS_Ecom_Entitlement_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_Entitlement_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_GetEntitlementsByNameCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_GetEntitlementsByNameCount)); - EOS_Ecom_GetEntitlementsByNameCount = (EOS_Ecom_GetEntitlementsByNameCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_GetEntitlementsByNameCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_GetEntitlementsCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_GetEntitlementsCount)); - EOS_Ecom_GetEntitlementsCount = (EOS_Ecom_GetEntitlementsCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_GetEntitlementsCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_GetItemImageInfoCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_GetItemImageInfoCount)); - EOS_Ecom_GetItemImageInfoCount = (EOS_Ecom_GetItemImageInfoCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_GetItemImageInfoCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_GetItemReleaseCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_GetItemReleaseCount)); - EOS_Ecom_GetItemReleaseCount = (EOS_Ecom_GetItemReleaseCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_GetItemReleaseCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_GetOfferCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_GetOfferCount)); - EOS_Ecom_GetOfferCount = (EOS_Ecom_GetOfferCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_GetOfferCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_GetOfferImageInfoCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_GetOfferImageInfoCount)); - EOS_Ecom_GetOfferImageInfoCount = (EOS_Ecom_GetOfferImageInfoCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_GetOfferImageInfoCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_GetOfferItemCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_GetOfferItemCount)); - EOS_Ecom_GetOfferItemCount = (EOS_Ecom_GetOfferItemCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_GetOfferItemCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_GetTransactionCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_GetTransactionCount)); - EOS_Ecom_GetTransactionCount = (EOS_Ecom_GetTransactionCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_GetTransactionCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_KeyImageInfo_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_KeyImageInfo_Release)); - EOS_Ecom_KeyImageInfo_Release = (EOS_Ecom_KeyImageInfo_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_KeyImageInfo_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_QueryEntitlements)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_QueryEntitlements)); - EOS_Ecom_QueryEntitlements = (EOS_Ecom_QueryEntitlementsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_QueryEntitlementsCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_QueryOffers)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_QueryOffers)); - EOS_Ecom_QueryOffers = (EOS_Ecom_QueryOffersCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_QueryOffersCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_QueryOwnership)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_QueryOwnership)); - EOS_Ecom_QueryOwnership = (EOS_Ecom_QueryOwnershipCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_QueryOwnershipCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_QueryOwnershipToken)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_QueryOwnershipToken)); - EOS_Ecom_QueryOwnershipToken = (EOS_Ecom_QueryOwnershipTokenCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_QueryOwnershipTokenCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_RedeemEntitlements)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_RedeemEntitlements)); - EOS_Ecom_RedeemEntitlements = (EOS_Ecom_RedeemEntitlementsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_RedeemEntitlementsCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_Transaction_CopyEntitlementByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_Transaction_CopyEntitlementByIndex)); - EOS_Ecom_Transaction_CopyEntitlementByIndex = (EOS_Ecom_Transaction_CopyEntitlementByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_Transaction_CopyEntitlementByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_Transaction_GetEntitlementsCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_Transaction_GetEntitlementsCount)); - EOS_Ecom_Transaction_GetEntitlementsCount = (EOS_Ecom_Transaction_GetEntitlementsCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_Transaction_GetEntitlementsCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_Transaction_GetTransactionId)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_Transaction_GetTransactionId)); - EOS_Ecom_Transaction_GetTransactionId = (EOS_Ecom_Transaction_GetTransactionIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_Transaction_GetTransactionIdCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Ecom_Transaction_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Ecom_Transaction_Release)); - EOS_Ecom_Transaction_Release = (EOS_Ecom_Transaction_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Ecom_Transaction_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_EpicAccountId_FromString)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_EpicAccountId_FromString)); - EOS_EpicAccountId_FromString = (EOS_EpicAccountId_FromStringCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_EpicAccountId_FromStringCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_EpicAccountId_IsValid)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_EpicAccountId_IsValid)); - EOS_EpicAccountId_IsValid = (EOS_EpicAccountId_IsValidCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_EpicAccountId_IsValidCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_EpicAccountId_ToString)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_EpicAccountId_ToString)); - EOS_EpicAccountId_ToString = (EOS_EpicAccountId_ToStringCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_EpicAccountId_ToStringCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Friends_AcceptInvite)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Friends_AcceptInvite)); - EOS_Friends_AcceptInvite = (EOS_Friends_AcceptInviteCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Friends_AcceptInviteCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Friends_AddNotifyFriendsUpdate)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Friends_AddNotifyFriendsUpdate)); - EOS_Friends_AddNotifyFriendsUpdate = (EOS_Friends_AddNotifyFriendsUpdateCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Friends_AddNotifyFriendsUpdateCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Friends_GetFriendAtIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Friends_GetFriendAtIndex)); - EOS_Friends_GetFriendAtIndex = (EOS_Friends_GetFriendAtIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Friends_GetFriendAtIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Friends_GetFriendsCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Friends_GetFriendsCount)); - EOS_Friends_GetFriendsCount = (EOS_Friends_GetFriendsCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Friends_GetFriendsCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Friends_GetStatus)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Friends_GetStatus)); - EOS_Friends_GetStatus = (EOS_Friends_GetStatusCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Friends_GetStatusCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Friends_QueryFriends)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Friends_QueryFriends)); - EOS_Friends_QueryFriends = (EOS_Friends_QueryFriendsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Friends_QueryFriendsCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Friends_RejectInvite)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Friends_RejectInvite)); - EOS_Friends_RejectInvite = (EOS_Friends_RejectInviteCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Friends_RejectInviteCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Friends_RemoveNotifyFriendsUpdate)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Friends_RemoveNotifyFriendsUpdate)); - EOS_Friends_RemoveNotifyFriendsUpdate = (EOS_Friends_RemoveNotifyFriendsUpdateCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Friends_RemoveNotifyFriendsUpdateCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Friends_SendInvite)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Friends_SendInvite)); - EOS_Friends_SendInvite = (EOS_Friends_SendInviteCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Friends_SendInviteCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Initialize)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Initialize)); - EOS_Initialize = (EOS_InitializeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_InitializeCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_KWS_AddNotifyPermissionsUpdateReceived)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_KWS_AddNotifyPermissionsUpdateReceived)); - EOS_KWS_AddNotifyPermissionsUpdateReceived = (EOS_KWS_AddNotifyPermissionsUpdateReceivedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_KWS_AddNotifyPermissionsUpdateReceivedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_KWS_CopyPermissionByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_KWS_CopyPermissionByIndex)); - EOS_KWS_CopyPermissionByIndex = (EOS_KWS_CopyPermissionByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_KWS_CopyPermissionByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_KWS_CreateUser)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_KWS_CreateUser)); - EOS_KWS_CreateUser = (EOS_KWS_CreateUserCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_KWS_CreateUserCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_KWS_GetPermissionByKey)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_KWS_GetPermissionByKey)); - EOS_KWS_GetPermissionByKey = (EOS_KWS_GetPermissionByKeyCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_KWS_GetPermissionByKeyCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_KWS_GetPermissionsCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_KWS_GetPermissionsCount)); - EOS_KWS_GetPermissionsCount = (EOS_KWS_GetPermissionsCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_KWS_GetPermissionsCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_KWS_PermissionStatus_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_KWS_PermissionStatus_Release)); - EOS_KWS_PermissionStatus_Release = (EOS_KWS_PermissionStatus_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_KWS_PermissionStatus_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_KWS_QueryAgeGate)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_KWS_QueryAgeGate)); - EOS_KWS_QueryAgeGate = (EOS_KWS_QueryAgeGateCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_KWS_QueryAgeGateCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_KWS_QueryPermissions)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_KWS_QueryPermissions)); - EOS_KWS_QueryPermissions = (EOS_KWS_QueryPermissionsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_KWS_QueryPermissionsCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_KWS_RemoveNotifyPermissionsUpdateReceived)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_KWS_RemoveNotifyPermissionsUpdateReceived)); - EOS_KWS_RemoveNotifyPermissionsUpdateReceived = (EOS_KWS_RemoveNotifyPermissionsUpdateReceivedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_KWS_RemoveNotifyPermissionsUpdateReceivedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_KWS_RequestPermissions)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_KWS_RequestPermissions)); - EOS_KWS_RequestPermissions = (EOS_KWS_RequestPermissionsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_KWS_RequestPermissionsCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_KWS_UpdateParentEmail)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_KWS_UpdateParentEmail)); - EOS_KWS_UpdateParentEmail = (EOS_KWS_UpdateParentEmailCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_KWS_UpdateParentEmailCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_CopyLeaderboardDefinitionByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_CopyLeaderboardDefinitionByIndex)); - EOS_Leaderboards_CopyLeaderboardDefinitionByIndex = (EOS_Leaderboards_CopyLeaderboardDefinitionByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_CopyLeaderboardDefinitionByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_CopyLeaderboardDefinitionByLeaderboardId)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_CopyLeaderboardDefinitionByLeaderboardId)); - EOS_Leaderboards_CopyLeaderboardDefinitionByLeaderboardId = (EOS_Leaderboards_CopyLeaderboardDefinitionByLeaderboardIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_CopyLeaderboardDefinitionByLeaderboardIdCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_CopyLeaderboardRecordByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_CopyLeaderboardRecordByIndex)); - EOS_Leaderboards_CopyLeaderboardRecordByIndex = (EOS_Leaderboards_CopyLeaderboardRecordByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_CopyLeaderboardRecordByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_CopyLeaderboardRecordByUserId)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_CopyLeaderboardRecordByUserId)); - EOS_Leaderboards_CopyLeaderboardRecordByUserId = (EOS_Leaderboards_CopyLeaderboardRecordByUserIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_CopyLeaderboardRecordByUserIdCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_CopyLeaderboardUserScoreByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_CopyLeaderboardUserScoreByIndex)); - EOS_Leaderboards_CopyLeaderboardUserScoreByIndex = (EOS_Leaderboards_CopyLeaderboardUserScoreByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_CopyLeaderboardUserScoreByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_CopyLeaderboardUserScoreByUserId)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_CopyLeaderboardUserScoreByUserId)); - EOS_Leaderboards_CopyLeaderboardUserScoreByUserId = (EOS_Leaderboards_CopyLeaderboardUserScoreByUserIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_CopyLeaderboardUserScoreByUserIdCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_Definition_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_Definition_Release)); - EOS_Leaderboards_Definition_Release = (EOS_Leaderboards_Definition_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_Definition_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_GetLeaderboardDefinitionCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_GetLeaderboardDefinitionCount)); - EOS_Leaderboards_GetLeaderboardDefinitionCount = (EOS_Leaderboards_GetLeaderboardDefinitionCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_GetLeaderboardDefinitionCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_GetLeaderboardRecordCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_GetLeaderboardRecordCount)); - EOS_Leaderboards_GetLeaderboardRecordCount = (EOS_Leaderboards_GetLeaderboardRecordCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_GetLeaderboardRecordCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_GetLeaderboardUserScoreCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_GetLeaderboardUserScoreCount)); - EOS_Leaderboards_GetLeaderboardUserScoreCount = (EOS_Leaderboards_GetLeaderboardUserScoreCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_GetLeaderboardUserScoreCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_LeaderboardDefinition_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_LeaderboardDefinition_Release)); - EOS_Leaderboards_LeaderboardDefinition_Release = (EOS_Leaderboards_LeaderboardDefinition_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_LeaderboardDefinition_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_LeaderboardRecord_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_LeaderboardRecord_Release)); - EOS_Leaderboards_LeaderboardRecord_Release = (EOS_Leaderboards_LeaderboardRecord_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_LeaderboardRecord_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_LeaderboardUserScore_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_LeaderboardUserScore_Release)); - EOS_Leaderboards_LeaderboardUserScore_Release = (EOS_Leaderboards_LeaderboardUserScore_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_LeaderboardUserScore_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_QueryLeaderboardDefinitions)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_QueryLeaderboardDefinitions)); - EOS_Leaderboards_QueryLeaderboardDefinitions = (EOS_Leaderboards_QueryLeaderboardDefinitionsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_QueryLeaderboardDefinitionsCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_QueryLeaderboardRanks)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_QueryLeaderboardRanks)); - EOS_Leaderboards_QueryLeaderboardRanks = (EOS_Leaderboards_QueryLeaderboardRanksCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_QueryLeaderboardRanksCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Leaderboards_QueryLeaderboardUserScores)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Leaderboards_QueryLeaderboardUserScores)); - EOS_Leaderboards_QueryLeaderboardUserScores = (EOS_Leaderboards_QueryLeaderboardUserScoresCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Leaderboards_QueryLeaderboardUserScoresCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyDetails_CopyAttributeByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyDetails_CopyAttributeByIndex)); - EOS_LobbyDetails_CopyAttributeByIndex = (EOS_LobbyDetails_CopyAttributeByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyDetails_CopyAttributeByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyDetails_CopyAttributeByKey)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyDetails_CopyAttributeByKey)); - EOS_LobbyDetails_CopyAttributeByKey = (EOS_LobbyDetails_CopyAttributeByKeyCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyDetails_CopyAttributeByKeyCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyDetails_CopyInfo)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyDetails_CopyInfo)); - EOS_LobbyDetails_CopyInfo = (EOS_LobbyDetails_CopyInfoCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyDetails_CopyInfoCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyDetails_CopyMemberAttributeByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyDetails_CopyMemberAttributeByIndex)); - EOS_LobbyDetails_CopyMemberAttributeByIndex = (EOS_LobbyDetails_CopyMemberAttributeByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyDetails_CopyMemberAttributeByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyDetails_CopyMemberAttributeByKey)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyDetails_CopyMemberAttributeByKey)); - EOS_LobbyDetails_CopyMemberAttributeByKey = (EOS_LobbyDetails_CopyMemberAttributeByKeyCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyDetails_CopyMemberAttributeByKeyCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyDetails_GetAttributeCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyDetails_GetAttributeCount)); - EOS_LobbyDetails_GetAttributeCount = (EOS_LobbyDetails_GetAttributeCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyDetails_GetAttributeCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyDetails_GetLobbyOwner)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyDetails_GetLobbyOwner)); - EOS_LobbyDetails_GetLobbyOwner = (EOS_LobbyDetails_GetLobbyOwnerCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyDetails_GetLobbyOwnerCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyDetails_GetMemberAttributeCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyDetails_GetMemberAttributeCount)); - EOS_LobbyDetails_GetMemberAttributeCount = (EOS_LobbyDetails_GetMemberAttributeCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyDetails_GetMemberAttributeCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyDetails_GetMemberByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyDetails_GetMemberByIndex)); - EOS_LobbyDetails_GetMemberByIndex = (EOS_LobbyDetails_GetMemberByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyDetails_GetMemberByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyDetails_GetMemberCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyDetails_GetMemberCount)); - EOS_LobbyDetails_GetMemberCount = (EOS_LobbyDetails_GetMemberCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyDetails_GetMemberCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyDetails_Info_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyDetails_Info_Release)); - EOS_LobbyDetails_Info_Release = (EOS_LobbyDetails_Info_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyDetails_Info_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyDetails_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyDetails_Release)); - EOS_LobbyDetails_Release = (EOS_LobbyDetails_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyDetails_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyModification_AddAttribute)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyModification_AddAttribute)); - EOS_LobbyModification_AddAttribute = (EOS_LobbyModification_AddAttributeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyModification_AddAttributeCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyModification_AddMemberAttribute)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyModification_AddMemberAttribute)); - EOS_LobbyModification_AddMemberAttribute = (EOS_LobbyModification_AddMemberAttributeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyModification_AddMemberAttributeCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyModification_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyModification_Release)); - EOS_LobbyModification_Release = (EOS_LobbyModification_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyModification_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyModification_RemoveAttribute)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyModification_RemoveAttribute)); - EOS_LobbyModification_RemoveAttribute = (EOS_LobbyModification_RemoveAttributeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyModification_RemoveAttributeCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyModification_RemoveMemberAttribute)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyModification_RemoveMemberAttribute)); - EOS_LobbyModification_RemoveMemberAttribute = (EOS_LobbyModification_RemoveMemberAttributeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyModification_RemoveMemberAttributeCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyModification_SetBucketId)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyModification_SetBucketId)); - EOS_LobbyModification_SetBucketId = (EOS_LobbyModification_SetBucketIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyModification_SetBucketIdCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyModification_SetInvitesAllowed)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyModification_SetInvitesAllowed)); - EOS_LobbyModification_SetInvitesAllowed = (EOS_LobbyModification_SetInvitesAllowedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyModification_SetInvitesAllowedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyModification_SetMaxMembers)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyModification_SetMaxMembers)); - EOS_LobbyModification_SetMaxMembers = (EOS_LobbyModification_SetMaxMembersCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyModification_SetMaxMembersCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbyModification_SetPermissionLevel)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbyModification_SetPermissionLevel)); - EOS_LobbyModification_SetPermissionLevel = (EOS_LobbyModification_SetPermissionLevelCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbyModification_SetPermissionLevelCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbySearch_CopySearchResultByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbySearch_CopySearchResultByIndex)); - EOS_LobbySearch_CopySearchResultByIndex = (EOS_LobbySearch_CopySearchResultByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbySearch_CopySearchResultByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbySearch_Find)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbySearch_Find)); - EOS_LobbySearch_Find = (EOS_LobbySearch_FindCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbySearch_FindCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbySearch_GetSearchResultCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbySearch_GetSearchResultCount)); - EOS_LobbySearch_GetSearchResultCount = (EOS_LobbySearch_GetSearchResultCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbySearch_GetSearchResultCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbySearch_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbySearch_Release)); - EOS_LobbySearch_Release = (EOS_LobbySearch_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbySearch_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbySearch_RemoveParameter)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbySearch_RemoveParameter)); - EOS_LobbySearch_RemoveParameter = (EOS_LobbySearch_RemoveParameterCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbySearch_RemoveParameterCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbySearch_SetLobbyId)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbySearch_SetLobbyId)); - EOS_LobbySearch_SetLobbyId = (EOS_LobbySearch_SetLobbyIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbySearch_SetLobbyIdCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbySearch_SetMaxResults)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbySearch_SetMaxResults)); - EOS_LobbySearch_SetMaxResults = (EOS_LobbySearch_SetMaxResultsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbySearch_SetMaxResultsCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbySearch_SetParameter)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbySearch_SetParameter)); - EOS_LobbySearch_SetParameter = (EOS_LobbySearch_SetParameterCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbySearch_SetParameterCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_LobbySearch_SetTargetUserId)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_LobbySearch_SetTargetUserId)); - EOS_LobbySearch_SetTargetUserId = (EOS_LobbySearch_SetTargetUserIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_LobbySearch_SetTargetUserIdCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_AddNotifyJoinLobbyAccepted)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_AddNotifyJoinLobbyAccepted)); - EOS_Lobby_AddNotifyJoinLobbyAccepted = (EOS_Lobby_AddNotifyJoinLobbyAcceptedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_AddNotifyJoinLobbyAcceptedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_AddNotifyLobbyInviteAccepted)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_AddNotifyLobbyInviteAccepted)); - EOS_Lobby_AddNotifyLobbyInviteAccepted = (EOS_Lobby_AddNotifyLobbyInviteAcceptedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_AddNotifyLobbyInviteAcceptedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_AddNotifyLobbyInviteReceived)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_AddNotifyLobbyInviteReceived)); - EOS_Lobby_AddNotifyLobbyInviteReceived = (EOS_Lobby_AddNotifyLobbyInviteReceivedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_AddNotifyLobbyInviteReceivedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_AddNotifyLobbyMemberStatusReceived)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_AddNotifyLobbyMemberStatusReceived)); - EOS_Lobby_AddNotifyLobbyMemberStatusReceived = (EOS_Lobby_AddNotifyLobbyMemberStatusReceivedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_AddNotifyLobbyMemberStatusReceivedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_AddNotifyLobbyMemberUpdateReceived)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_AddNotifyLobbyMemberUpdateReceived)); - EOS_Lobby_AddNotifyLobbyMemberUpdateReceived = (EOS_Lobby_AddNotifyLobbyMemberUpdateReceivedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_AddNotifyLobbyMemberUpdateReceivedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_AddNotifyLobbyUpdateReceived)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_AddNotifyLobbyUpdateReceived)); - EOS_Lobby_AddNotifyLobbyUpdateReceived = (EOS_Lobby_AddNotifyLobbyUpdateReceivedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_AddNotifyLobbyUpdateReceivedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_AddNotifyRTCRoomConnectionChanged)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_AddNotifyRTCRoomConnectionChanged)); - EOS_Lobby_AddNotifyRTCRoomConnectionChanged = (EOS_Lobby_AddNotifyRTCRoomConnectionChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_AddNotifyRTCRoomConnectionChangedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_Attribute_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_Attribute_Release)); - EOS_Lobby_Attribute_Release = (EOS_Lobby_Attribute_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_Attribute_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_CopyLobbyDetailsHandle)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_CopyLobbyDetailsHandle)); - EOS_Lobby_CopyLobbyDetailsHandle = (EOS_Lobby_CopyLobbyDetailsHandleCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_CopyLobbyDetailsHandleCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_CopyLobbyDetailsHandleByInviteId)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_CopyLobbyDetailsHandleByInviteId)); - EOS_Lobby_CopyLobbyDetailsHandleByInviteId = (EOS_Lobby_CopyLobbyDetailsHandleByInviteIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_CopyLobbyDetailsHandleByInviteIdCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_CopyLobbyDetailsHandleByUiEventId)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_CopyLobbyDetailsHandleByUiEventId)); - EOS_Lobby_CopyLobbyDetailsHandleByUiEventId = (EOS_Lobby_CopyLobbyDetailsHandleByUiEventIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_CopyLobbyDetailsHandleByUiEventIdCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_CreateLobby)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_CreateLobby)); - EOS_Lobby_CreateLobby = (EOS_Lobby_CreateLobbyCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_CreateLobbyCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_CreateLobbySearch)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_CreateLobbySearch)); - EOS_Lobby_CreateLobbySearch = (EOS_Lobby_CreateLobbySearchCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_CreateLobbySearchCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_DestroyLobby)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_DestroyLobby)); - EOS_Lobby_DestroyLobby = (EOS_Lobby_DestroyLobbyCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_DestroyLobbyCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_GetInviteCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_GetInviteCount)); - EOS_Lobby_GetInviteCount = (EOS_Lobby_GetInviteCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_GetInviteCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_GetInviteIdByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_GetInviteIdByIndex)); - EOS_Lobby_GetInviteIdByIndex = (EOS_Lobby_GetInviteIdByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_GetInviteIdByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_GetRTCRoomName)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_GetRTCRoomName)); - EOS_Lobby_GetRTCRoomName = (EOS_Lobby_GetRTCRoomNameCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_GetRTCRoomNameCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_IsRTCRoomConnected)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_IsRTCRoomConnected)); - EOS_Lobby_IsRTCRoomConnected = (EOS_Lobby_IsRTCRoomConnectedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_IsRTCRoomConnectedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_JoinLobby)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_JoinLobby)); - EOS_Lobby_JoinLobby = (EOS_Lobby_JoinLobbyCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_JoinLobbyCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_KickMember)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_KickMember)); - EOS_Lobby_KickMember = (EOS_Lobby_KickMemberCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_KickMemberCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_LeaveLobby)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_LeaveLobby)); - EOS_Lobby_LeaveLobby = (EOS_Lobby_LeaveLobbyCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_LeaveLobbyCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_PromoteMember)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_PromoteMember)); - EOS_Lobby_PromoteMember = (EOS_Lobby_PromoteMemberCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_PromoteMemberCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_QueryInvites)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_QueryInvites)); - EOS_Lobby_QueryInvites = (EOS_Lobby_QueryInvitesCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_QueryInvitesCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_RejectInvite)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_RejectInvite)); - EOS_Lobby_RejectInvite = (EOS_Lobby_RejectInviteCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_RejectInviteCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_RemoveNotifyJoinLobbyAccepted)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_RemoveNotifyJoinLobbyAccepted)); - EOS_Lobby_RemoveNotifyJoinLobbyAccepted = (EOS_Lobby_RemoveNotifyJoinLobbyAcceptedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_RemoveNotifyJoinLobbyAcceptedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_RemoveNotifyLobbyInviteAccepted)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_RemoveNotifyLobbyInviteAccepted)); - EOS_Lobby_RemoveNotifyLobbyInviteAccepted = (EOS_Lobby_RemoveNotifyLobbyInviteAcceptedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_RemoveNotifyLobbyInviteAcceptedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_RemoveNotifyLobbyInviteReceived)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_RemoveNotifyLobbyInviteReceived)); - EOS_Lobby_RemoveNotifyLobbyInviteReceived = (EOS_Lobby_RemoveNotifyLobbyInviteReceivedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_RemoveNotifyLobbyInviteReceivedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_RemoveNotifyLobbyMemberStatusReceived)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_RemoveNotifyLobbyMemberStatusReceived)); - EOS_Lobby_RemoveNotifyLobbyMemberStatusReceived = (EOS_Lobby_RemoveNotifyLobbyMemberStatusReceivedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_RemoveNotifyLobbyMemberStatusReceivedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_RemoveNotifyLobbyMemberUpdateReceived)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_RemoveNotifyLobbyMemberUpdateReceived)); - EOS_Lobby_RemoveNotifyLobbyMemberUpdateReceived = (EOS_Lobby_RemoveNotifyLobbyMemberUpdateReceivedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_RemoveNotifyLobbyMemberUpdateReceivedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_RemoveNotifyLobbyUpdateReceived)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_RemoveNotifyLobbyUpdateReceived)); - EOS_Lobby_RemoveNotifyLobbyUpdateReceived = (EOS_Lobby_RemoveNotifyLobbyUpdateReceivedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_RemoveNotifyLobbyUpdateReceivedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_RemoveNotifyRTCRoomConnectionChanged)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_RemoveNotifyRTCRoomConnectionChanged)); - EOS_Lobby_RemoveNotifyRTCRoomConnectionChanged = (EOS_Lobby_RemoveNotifyRTCRoomConnectionChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_RemoveNotifyRTCRoomConnectionChangedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_SendInvite)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_SendInvite)); - EOS_Lobby_SendInvite = (EOS_Lobby_SendInviteCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_SendInviteCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_UpdateLobby)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_UpdateLobby)); - EOS_Lobby_UpdateLobby = (EOS_Lobby_UpdateLobbyCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_UpdateLobbyCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Lobby_UpdateLobbyModification)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Lobby_UpdateLobbyModification)); - EOS_Lobby_UpdateLobbyModification = (EOS_Lobby_UpdateLobbyModificationCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Lobby_UpdateLobbyModificationCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Logging_SetCallback)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Logging_SetCallback)); - EOS_Logging_SetCallback = (EOS_Logging_SetCallbackCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Logging_SetCallbackCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Logging_SetLogLevel)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Logging_SetLogLevel)); - EOS_Logging_SetLogLevel = (EOS_Logging_SetLogLevelCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Logging_SetLogLevelCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Metrics_BeginPlayerSession)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Metrics_BeginPlayerSession)); - EOS_Metrics_BeginPlayerSession = (EOS_Metrics_BeginPlayerSessionCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Metrics_BeginPlayerSessionCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Metrics_EndPlayerSession)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Metrics_EndPlayerSession)); - EOS_Metrics_EndPlayerSession = (EOS_Metrics_EndPlayerSessionCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Metrics_EndPlayerSessionCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Mods_CopyModInfo)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Mods_CopyModInfo)); - EOS_Mods_CopyModInfo = (EOS_Mods_CopyModInfoCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Mods_CopyModInfoCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Mods_EnumerateMods)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Mods_EnumerateMods)); - EOS_Mods_EnumerateMods = (EOS_Mods_EnumerateModsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Mods_EnumerateModsCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Mods_InstallMod)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Mods_InstallMod)); - EOS_Mods_InstallMod = (EOS_Mods_InstallModCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Mods_InstallModCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Mods_ModInfo_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Mods_ModInfo_Release)); - EOS_Mods_ModInfo_Release = (EOS_Mods_ModInfo_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Mods_ModInfo_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Mods_UninstallMod)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Mods_UninstallMod)); - EOS_Mods_UninstallMod = (EOS_Mods_UninstallModCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Mods_UninstallModCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Mods_UpdateMod)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Mods_UpdateMod)); - EOS_Mods_UpdateMod = (EOS_Mods_UpdateModCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Mods_UpdateModCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_AcceptConnection)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_AcceptConnection)); - EOS_P2P_AcceptConnection = (EOS_P2P_AcceptConnectionCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_AcceptConnectionCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_AddNotifyIncomingPacketQueueFull)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_AddNotifyIncomingPacketQueueFull)); - EOS_P2P_AddNotifyIncomingPacketQueueFull = (EOS_P2P_AddNotifyIncomingPacketQueueFullCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_AddNotifyIncomingPacketQueueFullCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_AddNotifyPeerConnectionClosed)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_AddNotifyPeerConnectionClosed)); - EOS_P2P_AddNotifyPeerConnectionClosed = (EOS_P2P_AddNotifyPeerConnectionClosedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_AddNotifyPeerConnectionClosedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_AddNotifyPeerConnectionRequest)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_AddNotifyPeerConnectionRequest)); - EOS_P2P_AddNotifyPeerConnectionRequest = (EOS_P2P_AddNotifyPeerConnectionRequestCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_AddNotifyPeerConnectionRequestCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_CloseConnection)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_CloseConnection)); - EOS_P2P_CloseConnection = (EOS_P2P_CloseConnectionCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_CloseConnectionCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_CloseConnections)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_CloseConnections)); - EOS_P2P_CloseConnections = (EOS_P2P_CloseConnectionsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_CloseConnectionsCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_GetNATType)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_GetNATType)); - EOS_P2P_GetNATType = (EOS_P2P_GetNATTypeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_GetNATTypeCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_GetNextReceivedPacketSize)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_GetNextReceivedPacketSize)); - EOS_P2P_GetNextReceivedPacketSize = (EOS_P2P_GetNextReceivedPacketSizeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_GetNextReceivedPacketSizeCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_GetPacketQueueInfo)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_GetPacketQueueInfo)); - EOS_P2P_GetPacketQueueInfo = (EOS_P2P_GetPacketQueueInfoCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_GetPacketQueueInfoCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_GetPortRange)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_GetPortRange)); - EOS_P2P_GetPortRange = (EOS_P2P_GetPortRangeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_GetPortRangeCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_GetRelayControl)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_GetRelayControl)); - EOS_P2P_GetRelayControl = (EOS_P2P_GetRelayControlCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_GetRelayControlCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_QueryNATType)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_QueryNATType)); - EOS_P2P_QueryNATType = (EOS_P2P_QueryNATTypeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_QueryNATTypeCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_ReceivePacket)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_ReceivePacket)); - EOS_P2P_ReceivePacket = (EOS_P2P_ReceivePacketCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_ReceivePacketCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_RemoveNotifyIncomingPacketQueueFull)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_RemoveNotifyIncomingPacketQueueFull)); - EOS_P2P_RemoveNotifyIncomingPacketQueueFull = (EOS_P2P_RemoveNotifyIncomingPacketQueueFullCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_RemoveNotifyIncomingPacketQueueFullCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_RemoveNotifyPeerConnectionClosed)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_RemoveNotifyPeerConnectionClosed)); - EOS_P2P_RemoveNotifyPeerConnectionClosed = (EOS_P2P_RemoveNotifyPeerConnectionClosedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_RemoveNotifyPeerConnectionClosedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_RemoveNotifyPeerConnectionRequest)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_RemoveNotifyPeerConnectionRequest)); - EOS_P2P_RemoveNotifyPeerConnectionRequest = (EOS_P2P_RemoveNotifyPeerConnectionRequestCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_RemoveNotifyPeerConnectionRequestCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_SendPacket)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_SendPacket)); - EOS_P2P_SendPacket = (EOS_P2P_SendPacketCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_SendPacketCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_SetPacketQueueSize)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_SetPacketQueueSize)); - EOS_P2P_SetPacketQueueSize = (EOS_P2P_SetPacketQueueSizeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_SetPacketQueueSizeCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_SetPortRange)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_SetPortRange)); - EOS_P2P_SetPortRange = (EOS_P2P_SetPortRangeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_SetPortRangeCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_P2P_SetRelayControl)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_P2P_SetRelayControl)); - EOS_P2P_SetRelayControl = (EOS_P2P_SetRelayControlCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_P2P_SetRelayControlCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_CheckForLauncherAndRestart)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_CheckForLauncherAndRestart)); - EOS_Platform_CheckForLauncherAndRestart = (EOS_Platform_CheckForLauncherAndRestartCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_CheckForLauncherAndRestartCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_Create)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_Create)); - EOS_Platform_Create = (EOS_Platform_CreateCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_CreateCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetAchievementsInterface)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetAchievementsInterface)); - EOS_Platform_GetAchievementsInterface = (EOS_Platform_GetAchievementsInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetAchievementsInterfaceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetActiveCountryCode)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetActiveCountryCode)); - EOS_Platform_GetActiveCountryCode = (EOS_Platform_GetActiveCountryCodeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetActiveCountryCodeCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetActiveLocaleCode)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetActiveLocaleCode)); - EOS_Platform_GetActiveLocaleCode = (EOS_Platform_GetActiveLocaleCodeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetActiveLocaleCodeCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetAntiCheatClientInterface)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetAntiCheatClientInterface)); - EOS_Platform_GetAntiCheatClientInterface = (EOS_Platform_GetAntiCheatClientInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetAntiCheatClientInterfaceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetAntiCheatServerInterface)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetAntiCheatServerInterface)); - EOS_Platform_GetAntiCheatServerInterface = (EOS_Platform_GetAntiCheatServerInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetAntiCheatServerInterfaceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetAuthInterface)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetAuthInterface)); - EOS_Platform_GetAuthInterface = (EOS_Platform_GetAuthInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetAuthInterfaceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetConnectInterface)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetConnectInterface)); - EOS_Platform_GetConnectInterface = (EOS_Platform_GetConnectInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetConnectInterfaceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetEcomInterface)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetEcomInterface)); - EOS_Platform_GetEcomInterface = (EOS_Platform_GetEcomInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetEcomInterfaceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetFriendsInterface)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetFriendsInterface)); - EOS_Platform_GetFriendsInterface = (EOS_Platform_GetFriendsInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetFriendsInterfaceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetKWSInterface)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetKWSInterface)); - EOS_Platform_GetKWSInterface = (EOS_Platform_GetKWSInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetKWSInterfaceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetLeaderboardsInterface)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetLeaderboardsInterface)); - EOS_Platform_GetLeaderboardsInterface = (EOS_Platform_GetLeaderboardsInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetLeaderboardsInterfaceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetLobbyInterface)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetLobbyInterface)); - EOS_Platform_GetLobbyInterface = (EOS_Platform_GetLobbyInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetLobbyInterfaceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetMetricsInterface)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetMetricsInterface)); - EOS_Platform_GetMetricsInterface = (EOS_Platform_GetMetricsInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetMetricsInterfaceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetModsInterface)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetModsInterface)); - EOS_Platform_GetModsInterface = (EOS_Platform_GetModsInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetModsInterfaceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetOverrideCountryCode)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetOverrideCountryCode)); - EOS_Platform_GetOverrideCountryCode = (EOS_Platform_GetOverrideCountryCodeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetOverrideCountryCodeCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetOverrideLocaleCode)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetOverrideLocaleCode)); - EOS_Platform_GetOverrideLocaleCode = (EOS_Platform_GetOverrideLocaleCodeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetOverrideLocaleCodeCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetP2PInterface)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetP2PInterface)); - EOS_Platform_GetP2PInterface = (EOS_Platform_GetP2PInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetP2PInterfaceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetPlayerDataStorageInterface)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetPlayerDataStorageInterface)); - EOS_Platform_GetPlayerDataStorageInterface = (EOS_Platform_GetPlayerDataStorageInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetPlayerDataStorageInterfaceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetPresenceInterface)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetPresenceInterface)); - EOS_Platform_GetPresenceInterface = (EOS_Platform_GetPresenceInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetPresenceInterfaceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetRTCAdminInterface)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetRTCAdminInterface)); - EOS_Platform_GetRTCAdminInterface = (EOS_Platform_GetRTCAdminInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetRTCAdminInterfaceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetRTCInterface)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetRTCInterface)); - EOS_Platform_GetRTCInterface = (EOS_Platform_GetRTCInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetRTCInterfaceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetReportsInterface)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetReportsInterface)); - EOS_Platform_GetReportsInterface = (EOS_Platform_GetReportsInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetReportsInterfaceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetSanctionsInterface)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetSanctionsInterface)); - EOS_Platform_GetSanctionsInterface = (EOS_Platform_GetSanctionsInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetSanctionsInterfaceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetSessionsInterface)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetSessionsInterface)); - EOS_Platform_GetSessionsInterface = (EOS_Platform_GetSessionsInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetSessionsInterfaceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetStatsInterface)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetStatsInterface)); - EOS_Platform_GetStatsInterface = (EOS_Platform_GetStatsInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetStatsInterfaceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetTitleStorageInterface)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetTitleStorageInterface)); - EOS_Platform_GetTitleStorageInterface = (EOS_Platform_GetTitleStorageInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetTitleStorageInterfaceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetUIInterface)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetUIInterface)); - EOS_Platform_GetUIInterface = (EOS_Platform_GetUIInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetUIInterfaceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_GetUserInfoInterface)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_GetUserInfoInterface)); - EOS_Platform_GetUserInfoInterface = (EOS_Platform_GetUserInfoInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_GetUserInfoInterfaceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_Release)); - EOS_Platform_Release = (EOS_Platform_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_SetOverrideCountryCode)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_SetOverrideCountryCode)); - EOS_Platform_SetOverrideCountryCode = (EOS_Platform_SetOverrideCountryCodeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_SetOverrideCountryCodeCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_SetOverrideLocaleCode)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_SetOverrideLocaleCode)); - EOS_Platform_SetOverrideLocaleCode = (EOS_Platform_SetOverrideLocaleCodeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_SetOverrideLocaleCodeCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Platform_Tick)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Platform_Tick)); - EOS_Platform_Tick = (EOS_Platform_TickCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Platform_TickCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PlayerDataStorageFileTransferRequest_CancelRequest)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PlayerDataStorageFileTransferRequest_CancelRequest)); - EOS_PlayerDataStorageFileTransferRequest_CancelRequest = (EOS_PlayerDataStorageFileTransferRequest_CancelRequestCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PlayerDataStorageFileTransferRequest_CancelRequestCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PlayerDataStorageFileTransferRequest_GetFileRequestState)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PlayerDataStorageFileTransferRequest_GetFileRequestState)); - EOS_PlayerDataStorageFileTransferRequest_GetFileRequestState = (EOS_PlayerDataStorageFileTransferRequest_GetFileRequestStateCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PlayerDataStorageFileTransferRequest_GetFileRequestStateCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PlayerDataStorageFileTransferRequest_GetFilename)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PlayerDataStorageFileTransferRequest_GetFilename)); - EOS_PlayerDataStorageFileTransferRequest_GetFilename = (EOS_PlayerDataStorageFileTransferRequest_GetFilenameCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PlayerDataStorageFileTransferRequest_GetFilenameCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PlayerDataStorageFileTransferRequest_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PlayerDataStorageFileTransferRequest_Release)); - EOS_PlayerDataStorageFileTransferRequest_Release = (EOS_PlayerDataStorageFileTransferRequest_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PlayerDataStorageFileTransferRequest_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PlayerDataStorage_CopyFileMetadataAtIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PlayerDataStorage_CopyFileMetadataAtIndex)); - EOS_PlayerDataStorage_CopyFileMetadataAtIndex = (EOS_PlayerDataStorage_CopyFileMetadataAtIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PlayerDataStorage_CopyFileMetadataAtIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PlayerDataStorage_CopyFileMetadataByFilename)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PlayerDataStorage_CopyFileMetadataByFilename)); - EOS_PlayerDataStorage_CopyFileMetadataByFilename = (EOS_PlayerDataStorage_CopyFileMetadataByFilenameCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PlayerDataStorage_CopyFileMetadataByFilenameCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PlayerDataStorage_DeleteCache)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PlayerDataStorage_DeleteCache)); - EOS_PlayerDataStorage_DeleteCache = (EOS_PlayerDataStorage_DeleteCacheCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PlayerDataStorage_DeleteCacheCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PlayerDataStorage_DeleteFile)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PlayerDataStorage_DeleteFile)); - EOS_PlayerDataStorage_DeleteFile = (EOS_PlayerDataStorage_DeleteFileCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PlayerDataStorage_DeleteFileCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PlayerDataStorage_DuplicateFile)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PlayerDataStorage_DuplicateFile)); - EOS_PlayerDataStorage_DuplicateFile = (EOS_PlayerDataStorage_DuplicateFileCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PlayerDataStorage_DuplicateFileCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PlayerDataStorage_FileMetadata_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PlayerDataStorage_FileMetadata_Release)); - EOS_PlayerDataStorage_FileMetadata_Release = (EOS_PlayerDataStorage_FileMetadata_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PlayerDataStorage_FileMetadata_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PlayerDataStorage_GetFileMetadataCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PlayerDataStorage_GetFileMetadataCount)); - EOS_PlayerDataStorage_GetFileMetadataCount = (EOS_PlayerDataStorage_GetFileMetadataCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PlayerDataStorage_GetFileMetadataCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PlayerDataStorage_QueryFile)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PlayerDataStorage_QueryFile)); - EOS_PlayerDataStorage_QueryFile = (EOS_PlayerDataStorage_QueryFileCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PlayerDataStorage_QueryFileCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PlayerDataStorage_QueryFileList)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PlayerDataStorage_QueryFileList)); - EOS_PlayerDataStorage_QueryFileList = (EOS_PlayerDataStorage_QueryFileListCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PlayerDataStorage_QueryFileListCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PlayerDataStorage_ReadFile)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PlayerDataStorage_ReadFile)); - EOS_PlayerDataStorage_ReadFile = (EOS_PlayerDataStorage_ReadFileCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PlayerDataStorage_ReadFileCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PlayerDataStorage_WriteFile)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PlayerDataStorage_WriteFile)); - EOS_PlayerDataStorage_WriteFile = (EOS_PlayerDataStorage_WriteFileCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PlayerDataStorage_WriteFileCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PresenceModification_DeleteData)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PresenceModification_DeleteData)); - EOS_PresenceModification_DeleteData = (EOS_PresenceModification_DeleteDataCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PresenceModification_DeleteDataCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PresenceModification_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PresenceModification_Release)); - EOS_PresenceModification_Release = (EOS_PresenceModification_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PresenceModification_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PresenceModification_SetData)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PresenceModification_SetData)); - EOS_PresenceModification_SetData = (EOS_PresenceModification_SetDataCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PresenceModification_SetDataCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PresenceModification_SetJoinInfo)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PresenceModification_SetJoinInfo)); - EOS_PresenceModification_SetJoinInfo = (EOS_PresenceModification_SetJoinInfoCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PresenceModification_SetJoinInfoCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PresenceModification_SetRawRichText)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PresenceModification_SetRawRichText)); - EOS_PresenceModification_SetRawRichText = (EOS_PresenceModification_SetRawRichTextCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PresenceModification_SetRawRichTextCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_PresenceModification_SetStatus)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_PresenceModification_SetStatus)); - EOS_PresenceModification_SetStatus = (EOS_PresenceModification_SetStatusCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_PresenceModification_SetStatusCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Presence_AddNotifyJoinGameAccepted)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Presence_AddNotifyJoinGameAccepted)); - EOS_Presence_AddNotifyJoinGameAccepted = (EOS_Presence_AddNotifyJoinGameAcceptedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Presence_AddNotifyJoinGameAcceptedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Presence_AddNotifyOnPresenceChanged)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Presence_AddNotifyOnPresenceChanged)); - EOS_Presence_AddNotifyOnPresenceChanged = (EOS_Presence_AddNotifyOnPresenceChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Presence_AddNotifyOnPresenceChangedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Presence_CopyPresence)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Presence_CopyPresence)); - EOS_Presence_CopyPresence = (EOS_Presence_CopyPresenceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Presence_CopyPresenceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Presence_CreatePresenceModification)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Presence_CreatePresenceModification)); - EOS_Presence_CreatePresenceModification = (EOS_Presence_CreatePresenceModificationCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Presence_CreatePresenceModificationCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Presence_GetJoinInfo)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Presence_GetJoinInfo)); - EOS_Presence_GetJoinInfo = (EOS_Presence_GetJoinInfoCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Presence_GetJoinInfoCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Presence_HasPresence)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Presence_HasPresence)); - EOS_Presence_HasPresence = (EOS_Presence_HasPresenceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Presence_HasPresenceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Presence_Info_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Presence_Info_Release)); - EOS_Presence_Info_Release = (EOS_Presence_Info_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Presence_Info_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Presence_QueryPresence)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Presence_QueryPresence)); - EOS_Presence_QueryPresence = (EOS_Presence_QueryPresenceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Presence_QueryPresenceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Presence_RemoveNotifyJoinGameAccepted)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Presence_RemoveNotifyJoinGameAccepted)); - EOS_Presence_RemoveNotifyJoinGameAccepted = (EOS_Presence_RemoveNotifyJoinGameAcceptedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Presence_RemoveNotifyJoinGameAcceptedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Presence_RemoveNotifyOnPresenceChanged)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Presence_RemoveNotifyOnPresenceChanged)); - EOS_Presence_RemoveNotifyOnPresenceChanged = (EOS_Presence_RemoveNotifyOnPresenceChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Presence_RemoveNotifyOnPresenceChangedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Presence_SetPresence)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Presence_SetPresence)); - EOS_Presence_SetPresence = (EOS_Presence_SetPresenceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Presence_SetPresenceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_ProductUserId_FromString)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_ProductUserId_FromString)); - EOS_ProductUserId_FromString = (EOS_ProductUserId_FromStringCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_ProductUserId_FromStringCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_ProductUserId_IsValid)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_ProductUserId_IsValid)); - EOS_ProductUserId_IsValid = (EOS_ProductUserId_IsValidCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_ProductUserId_IsValidCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_ProductUserId_ToString)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_ProductUserId_ToString)); - EOS_ProductUserId_ToString = (EOS_ProductUserId_ToStringCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_ProductUserId_ToStringCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAdmin_CopyUserTokenByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAdmin_CopyUserTokenByIndex)); - EOS_RTCAdmin_CopyUserTokenByIndex = (EOS_RTCAdmin_CopyUserTokenByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAdmin_CopyUserTokenByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAdmin_CopyUserTokenByUserId)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAdmin_CopyUserTokenByUserId)); - EOS_RTCAdmin_CopyUserTokenByUserId = (EOS_RTCAdmin_CopyUserTokenByUserIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAdmin_CopyUserTokenByUserIdCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAdmin_Kick)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAdmin_Kick)); - EOS_RTCAdmin_Kick = (EOS_RTCAdmin_KickCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAdmin_KickCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAdmin_QueryJoinRoomToken)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAdmin_QueryJoinRoomToken)); - EOS_RTCAdmin_QueryJoinRoomToken = (EOS_RTCAdmin_QueryJoinRoomTokenCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAdmin_QueryJoinRoomTokenCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAdmin_SetParticipantHardMute)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAdmin_SetParticipantHardMute)); - EOS_RTCAdmin_SetParticipantHardMute = (EOS_RTCAdmin_SetParticipantHardMuteCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAdmin_SetParticipantHardMuteCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAdmin_UserToken_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAdmin_UserToken_Release)); - EOS_RTCAdmin_UserToken_Release = (EOS_RTCAdmin_UserToken_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAdmin_UserToken_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_AddNotifyAudioBeforeRender)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_AddNotifyAudioBeforeRender)); - EOS_RTCAudio_AddNotifyAudioBeforeRender = (EOS_RTCAudio_AddNotifyAudioBeforeRenderCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_AddNotifyAudioBeforeRenderCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_AddNotifyAudioBeforeSend)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_AddNotifyAudioBeforeSend)); - EOS_RTCAudio_AddNotifyAudioBeforeSend = (EOS_RTCAudio_AddNotifyAudioBeforeSendCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_AddNotifyAudioBeforeSendCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_AddNotifyAudioDevicesChanged)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_AddNotifyAudioDevicesChanged)); - EOS_RTCAudio_AddNotifyAudioDevicesChanged = (EOS_RTCAudio_AddNotifyAudioDevicesChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_AddNotifyAudioDevicesChangedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_AddNotifyAudioInputState)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_AddNotifyAudioInputState)); - EOS_RTCAudio_AddNotifyAudioInputState = (EOS_RTCAudio_AddNotifyAudioInputStateCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_AddNotifyAudioInputStateCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_AddNotifyAudioOutputState)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_AddNotifyAudioOutputState)); - EOS_RTCAudio_AddNotifyAudioOutputState = (EOS_RTCAudio_AddNotifyAudioOutputStateCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_AddNotifyAudioOutputStateCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_AddNotifyParticipantUpdated)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_AddNotifyParticipantUpdated)); - EOS_RTCAudio_AddNotifyParticipantUpdated = (EOS_RTCAudio_AddNotifyParticipantUpdatedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_AddNotifyParticipantUpdatedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_GetAudioInputDeviceByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_GetAudioInputDeviceByIndex)); - EOS_RTCAudio_GetAudioInputDeviceByIndex = (EOS_RTCAudio_GetAudioInputDeviceByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_GetAudioInputDeviceByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_GetAudioInputDevicesCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_GetAudioInputDevicesCount)); - EOS_RTCAudio_GetAudioInputDevicesCount = (EOS_RTCAudio_GetAudioInputDevicesCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_GetAudioInputDevicesCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_GetAudioOutputDeviceByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_GetAudioOutputDeviceByIndex)); - EOS_RTCAudio_GetAudioOutputDeviceByIndex = (EOS_RTCAudio_GetAudioOutputDeviceByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_GetAudioOutputDeviceByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_GetAudioOutputDevicesCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_GetAudioOutputDevicesCount)); - EOS_RTCAudio_GetAudioOutputDevicesCount = (EOS_RTCAudio_GetAudioOutputDevicesCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_GetAudioOutputDevicesCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_RegisterPlatformAudioUser)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_RegisterPlatformAudioUser)); - EOS_RTCAudio_RegisterPlatformAudioUser = (EOS_RTCAudio_RegisterPlatformAudioUserCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_RegisterPlatformAudioUserCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_RemoveNotifyAudioBeforeRender)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_RemoveNotifyAudioBeforeRender)); - EOS_RTCAudio_RemoveNotifyAudioBeforeRender = (EOS_RTCAudio_RemoveNotifyAudioBeforeRenderCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_RemoveNotifyAudioBeforeRenderCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_RemoveNotifyAudioBeforeSend)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_RemoveNotifyAudioBeforeSend)); - EOS_RTCAudio_RemoveNotifyAudioBeforeSend = (EOS_RTCAudio_RemoveNotifyAudioBeforeSendCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_RemoveNotifyAudioBeforeSendCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_RemoveNotifyAudioDevicesChanged)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_RemoveNotifyAudioDevicesChanged)); - EOS_RTCAudio_RemoveNotifyAudioDevicesChanged = (EOS_RTCAudio_RemoveNotifyAudioDevicesChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_RemoveNotifyAudioDevicesChangedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_RemoveNotifyAudioInputState)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_RemoveNotifyAudioInputState)); - EOS_RTCAudio_RemoveNotifyAudioInputState = (EOS_RTCAudio_RemoveNotifyAudioInputStateCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_RemoveNotifyAudioInputStateCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_RemoveNotifyAudioOutputState)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_RemoveNotifyAudioOutputState)); - EOS_RTCAudio_RemoveNotifyAudioOutputState = (EOS_RTCAudio_RemoveNotifyAudioOutputStateCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_RemoveNotifyAudioOutputStateCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_RemoveNotifyParticipantUpdated)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_RemoveNotifyParticipantUpdated)); - EOS_RTCAudio_RemoveNotifyParticipantUpdated = (EOS_RTCAudio_RemoveNotifyParticipantUpdatedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_RemoveNotifyParticipantUpdatedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_SendAudio)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_SendAudio)); - EOS_RTCAudio_SendAudio = (EOS_RTCAudio_SendAudioCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_SendAudioCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_SetAudioInputSettings)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_SetAudioInputSettings)); - EOS_RTCAudio_SetAudioInputSettings = (EOS_RTCAudio_SetAudioInputSettingsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_SetAudioInputSettingsCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_SetAudioOutputSettings)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_SetAudioOutputSettings)); - EOS_RTCAudio_SetAudioOutputSettings = (EOS_RTCAudio_SetAudioOutputSettingsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_SetAudioOutputSettingsCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_UnregisterPlatformAudioUser)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_UnregisterPlatformAudioUser)); - EOS_RTCAudio_UnregisterPlatformAudioUser = (EOS_RTCAudio_UnregisterPlatformAudioUserCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_UnregisterPlatformAudioUserCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_UpdateReceiving)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_UpdateReceiving)); - EOS_RTCAudio_UpdateReceiving = (EOS_RTCAudio_UpdateReceivingCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_UpdateReceivingCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTCAudio_UpdateSending)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTCAudio_UpdateSending)); - EOS_RTCAudio_UpdateSending = (EOS_RTCAudio_UpdateSendingCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTCAudio_UpdateSendingCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTC_AddNotifyDisconnected)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTC_AddNotifyDisconnected)); - EOS_RTC_AddNotifyDisconnected = (EOS_RTC_AddNotifyDisconnectedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTC_AddNotifyDisconnectedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTC_AddNotifyParticipantStatusChanged)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTC_AddNotifyParticipantStatusChanged)); - EOS_RTC_AddNotifyParticipantStatusChanged = (EOS_RTC_AddNotifyParticipantStatusChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTC_AddNotifyParticipantStatusChangedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTC_BlockParticipant)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTC_BlockParticipant)); - EOS_RTC_BlockParticipant = (EOS_RTC_BlockParticipantCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTC_BlockParticipantCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTC_GetAudioInterface)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTC_GetAudioInterface)); - EOS_RTC_GetAudioInterface = (EOS_RTC_GetAudioInterfaceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTC_GetAudioInterfaceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTC_JoinRoom)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTC_JoinRoom)); - EOS_RTC_JoinRoom = (EOS_RTC_JoinRoomCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTC_JoinRoomCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTC_LeaveRoom)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTC_LeaveRoom)); - EOS_RTC_LeaveRoom = (EOS_RTC_LeaveRoomCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTC_LeaveRoomCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTC_RemoveNotifyDisconnected)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTC_RemoveNotifyDisconnected)); - EOS_RTC_RemoveNotifyDisconnected = (EOS_RTC_RemoveNotifyDisconnectedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTC_RemoveNotifyDisconnectedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_RTC_RemoveNotifyParticipantStatusChanged)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_RTC_RemoveNotifyParticipantStatusChanged)); - EOS_RTC_RemoveNotifyParticipantStatusChanged = (EOS_RTC_RemoveNotifyParticipantStatusChangedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_RTC_RemoveNotifyParticipantStatusChangedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Reports_SendPlayerBehaviorReport)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Reports_SendPlayerBehaviorReport)); - EOS_Reports_SendPlayerBehaviorReport = (EOS_Reports_SendPlayerBehaviorReportCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Reports_SendPlayerBehaviorReportCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sanctions_CopyPlayerSanctionByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sanctions_CopyPlayerSanctionByIndex)); - EOS_Sanctions_CopyPlayerSanctionByIndex = (EOS_Sanctions_CopyPlayerSanctionByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sanctions_CopyPlayerSanctionByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sanctions_GetPlayerSanctionCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sanctions_GetPlayerSanctionCount)); - EOS_Sanctions_GetPlayerSanctionCount = (EOS_Sanctions_GetPlayerSanctionCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sanctions_GetPlayerSanctionCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sanctions_PlayerSanction_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sanctions_PlayerSanction_Release)); - EOS_Sanctions_PlayerSanction_Release = (EOS_Sanctions_PlayerSanction_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sanctions_PlayerSanction_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sanctions_QueryActivePlayerSanctions)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sanctions_QueryActivePlayerSanctions)); - EOS_Sanctions_QueryActivePlayerSanctions = (EOS_Sanctions_QueryActivePlayerSanctionsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sanctions_QueryActivePlayerSanctionsCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionDetails_Attribute_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionDetails_Attribute_Release)); - EOS_SessionDetails_Attribute_Release = (EOS_SessionDetails_Attribute_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionDetails_Attribute_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionDetails_CopyInfo)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionDetails_CopyInfo)); - EOS_SessionDetails_CopyInfo = (EOS_SessionDetails_CopyInfoCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionDetails_CopyInfoCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionDetails_CopySessionAttributeByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionDetails_CopySessionAttributeByIndex)); - EOS_SessionDetails_CopySessionAttributeByIndex = (EOS_SessionDetails_CopySessionAttributeByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionDetails_CopySessionAttributeByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionDetails_CopySessionAttributeByKey)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionDetails_CopySessionAttributeByKey)); - EOS_SessionDetails_CopySessionAttributeByKey = (EOS_SessionDetails_CopySessionAttributeByKeyCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionDetails_CopySessionAttributeByKeyCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionDetails_GetSessionAttributeCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionDetails_GetSessionAttributeCount)); - EOS_SessionDetails_GetSessionAttributeCount = (EOS_SessionDetails_GetSessionAttributeCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionDetails_GetSessionAttributeCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionDetails_Info_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionDetails_Info_Release)); - EOS_SessionDetails_Info_Release = (EOS_SessionDetails_Info_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionDetails_Info_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionDetails_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionDetails_Release)); - EOS_SessionDetails_Release = (EOS_SessionDetails_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionDetails_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionModification_AddAttribute)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionModification_AddAttribute)); - EOS_SessionModification_AddAttribute = (EOS_SessionModification_AddAttributeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionModification_AddAttributeCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionModification_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionModification_Release)); - EOS_SessionModification_Release = (EOS_SessionModification_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionModification_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionModification_RemoveAttribute)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionModification_RemoveAttribute)); - EOS_SessionModification_RemoveAttribute = (EOS_SessionModification_RemoveAttributeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionModification_RemoveAttributeCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionModification_SetBucketId)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionModification_SetBucketId)); - EOS_SessionModification_SetBucketId = (EOS_SessionModification_SetBucketIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionModification_SetBucketIdCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionModification_SetHostAddress)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionModification_SetHostAddress)); - EOS_SessionModification_SetHostAddress = (EOS_SessionModification_SetHostAddressCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionModification_SetHostAddressCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionModification_SetInvitesAllowed)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionModification_SetInvitesAllowed)); - EOS_SessionModification_SetInvitesAllowed = (EOS_SessionModification_SetInvitesAllowedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionModification_SetInvitesAllowedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionModification_SetJoinInProgressAllowed)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionModification_SetJoinInProgressAllowed)); - EOS_SessionModification_SetJoinInProgressAllowed = (EOS_SessionModification_SetJoinInProgressAllowedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionModification_SetJoinInProgressAllowedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionModification_SetMaxPlayers)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionModification_SetMaxPlayers)); - EOS_SessionModification_SetMaxPlayers = (EOS_SessionModification_SetMaxPlayersCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionModification_SetMaxPlayersCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionModification_SetPermissionLevel)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionModification_SetPermissionLevel)); - EOS_SessionModification_SetPermissionLevel = (EOS_SessionModification_SetPermissionLevelCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionModification_SetPermissionLevelCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionSearch_CopySearchResultByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionSearch_CopySearchResultByIndex)); - EOS_SessionSearch_CopySearchResultByIndex = (EOS_SessionSearch_CopySearchResultByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionSearch_CopySearchResultByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionSearch_Find)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionSearch_Find)); - EOS_SessionSearch_Find = (EOS_SessionSearch_FindCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionSearch_FindCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionSearch_GetSearchResultCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionSearch_GetSearchResultCount)); - EOS_SessionSearch_GetSearchResultCount = (EOS_SessionSearch_GetSearchResultCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionSearch_GetSearchResultCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionSearch_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionSearch_Release)); - EOS_SessionSearch_Release = (EOS_SessionSearch_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionSearch_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionSearch_RemoveParameter)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionSearch_RemoveParameter)); - EOS_SessionSearch_RemoveParameter = (EOS_SessionSearch_RemoveParameterCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionSearch_RemoveParameterCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionSearch_SetMaxResults)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionSearch_SetMaxResults)); - EOS_SessionSearch_SetMaxResults = (EOS_SessionSearch_SetMaxResultsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionSearch_SetMaxResultsCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionSearch_SetParameter)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionSearch_SetParameter)); - EOS_SessionSearch_SetParameter = (EOS_SessionSearch_SetParameterCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionSearch_SetParameterCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionSearch_SetSessionId)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionSearch_SetSessionId)); - EOS_SessionSearch_SetSessionId = (EOS_SessionSearch_SetSessionIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionSearch_SetSessionIdCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_SessionSearch_SetTargetUserId)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_SessionSearch_SetTargetUserId)); - EOS_SessionSearch_SetTargetUserId = (EOS_SessionSearch_SetTargetUserIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_SessionSearch_SetTargetUserIdCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_AddNotifyJoinSessionAccepted)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_AddNotifyJoinSessionAccepted)); - EOS_Sessions_AddNotifyJoinSessionAccepted = (EOS_Sessions_AddNotifyJoinSessionAcceptedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_AddNotifyJoinSessionAcceptedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_AddNotifySessionInviteAccepted)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_AddNotifySessionInviteAccepted)); - EOS_Sessions_AddNotifySessionInviteAccepted = (EOS_Sessions_AddNotifySessionInviteAcceptedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_AddNotifySessionInviteAcceptedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_AddNotifySessionInviteReceived)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_AddNotifySessionInviteReceived)); - EOS_Sessions_AddNotifySessionInviteReceived = (EOS_Sessions_AddNotifySessionInviteReceivedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_AddNotifySessionInviteReceivedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_CopyActiveSessionHandle)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_CopyActiveSessionHandle)); - EOS_Sessions_CopyActiveSessionHandle = (EOS_Sessions_CopyActiveSessionHandleCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_CopyActiveSessionHandleCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_CopySessionHandleByInviteId)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_CopySessionHandleByInviteId)); - EOS_Sessions_CopySessionHandleByInviteId = (EOS_Sessions_CopySessionHandleByInviteIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_CopySessionHandleByInviteIdCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_CopySessionHandleByUiEventId)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_CopySessionHandleByUiEventId)); - EOS_Sessions_CopySessionHandleByUiEventId = (EOS_Sessions_CopySessionHandleByUiEventIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_CopySessionHandleByUiEventIdCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_CopySessionHandleForPresence)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_CopySessionHandleForPresence)); - EOS_Sessions_CopySessionHandleForPresence = (EOS_Sessions_CopySessionHandleForPresenceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_CopySessionHandleForPresenceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_CreateSessionModification)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_CreateSessionModification)); - EOS_Sessions_CreateSessionModification = (EOS_Sessions_CreateSessionModificationCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_CreateSessionModificationCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_CreateSessionSearch)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_CreateSessionSearch)); - EOS_Sessions_CreateSessionSearch = (EOS_Sessions_CreateSessionSearchCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_CreateSessionSearchCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_DestroySession)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_DestroySession)); - EOS_Sessions_DestroySession = (EOS_Sessions_DestroySessionCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_DestroySessionCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_DumpSessionState)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_DumpSessionState)); - EOS_Sessions_DumpSessionState = (EOS_Sessions_DumpSessionStateCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_DumpSessionStateCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_EndSession)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_EndSession)); - EOS_Sessions_EndSession = (EOS_Sessions_EndSessionCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_EndSessionCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_GetInviteCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_GetInviteCount)); - EOS_Sessions_GetInviteCount = (EOS_Sessions_GetInviteCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_GetInviteCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_GetInviteIdByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_GetInviteIdByIndex)); - EOS_Sessions_GetInviteIdByIndex = (EOS_Sessions_GetInviteIdByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_GetInviteIdByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_IsUserInSession)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_IsUserInSession)); - EOS_Sessions_IsUserInSession = (EOS_Sessions_IsUserInSessionCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_IsUserInSessionCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_JoinSession)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_JoinSession)); - EOS_Sessions_JoinSession = (EOS_Sessions_JoinSessionCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_JoinSessionCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_QueryInvites)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_QueryInvites)); - EOS_Sessions_QueryInvites = (EOS_Sessions_QueryInvitesCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_QueryInvitesCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_RegisterPlayers)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_RegisterPlayers)); - EOS_Sessions_RegisterPlayers = (EOS_Sessions_RegisterPlayersCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_RegisterPlayersCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_RejectInvite)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_RejectInvite)); - EOS_Sessions_RejectInvite = (EOS_Sessions_RejectInviteCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_RejectInviteCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_RemoveNotifyJoinSessionAccepted)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_RemoveNotifyJoinSessionAccepted)); - EOS_Sessions_RemoveNotifyJoinSessionAccepted = (EOS_Sessions_RemoveNotifyJoinSessionAcceptedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_RemoveNotifyJoinSessionAcceptedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_RemoveNotifySessionInviteAccepted)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_RemoveNotifySessionInviteAccepted)); - EOS_Sessions_RemoveNotifySessionInviteAccepted = (EOS_Sessions_RemoveNotifySessionInviteAcceptedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_RemoveNotifySessionInviteAcceptedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_RemoveNotifySessionInviteReceived)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_RemoveNotifySessionInviteReceived)); - EOS_Sessions_RemoveNotifySessionInviteReceived = (EOS_Sessions_RemoveNotifySessionInviteReceivedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_RemoveNotifySessionInviteReceivedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_SendInvite)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_SendInvite)); - EOS_Sessions_SendInvite = (EOS_Sessions_SendInviteCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_SendInviteCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_StartSession)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_StartSession)); - EOS_Sessions_StartSession = (EOS_Sessions_StartSessionCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_StartSessionCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_UnregisterPlayers)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_UnregisterPlayers)); - EOS_Sessions_UnregisterPlayers = (EOS_Sessions_UnregisterPlayersCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_UnregisterPlayersCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_UpdateSession)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_UpdateSession)); - EOS_Sessions_UpdateSession = (EOS_Sessions_UpdateSessionCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_UpdateSessionCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Sessions_UpdateSessionModification)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Sessions_UpdateSessionModification)); - EOS_Sessions_UpdateSessionModification = (EOS_Sessions_UpdateSessionModificationCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Sessions_UpdateSessionModificationCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Shutdown)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Shutdown)); - EOS_Shutdown = (EOS_ShutdownCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_ShutdownCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Stats_CopyStatByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Stats_CopyStatByIndex)); - EOS_Stats_CopyStatByIndex = (EOS_Stats_CopyStatByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Stats_CopyStatByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Stats_CopyStatByName)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Stats_CopyStatByName)); - EOS_Stats_CopyStatByName = (EOS_Stats_CopyStatByNameCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Stats_CopyStatByNameCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Stats_GetStatsCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Stats_GetStatsCount)); - EOS_Stats_GetStatsCount = (EOS_Stats_GetStatsCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Stats_GetStatsCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Stats_IngestStat)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Stats_IngestStat)); - EOS_Stats_IngestStat = (EOS_Stats_IngestStatCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Stats_IngestStatCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Stats_QueryStats)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Stats_QueryStats)); - EOS_Stats_QueryStats = (EOS_Stats_QueryStatsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Stats_QueryStatsCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_Stats_Stat_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_Stats_Stat_Release)); - EOS_Stats_Stat_Release = (EOS_Stats_Stat_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_Stats_Stat_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_TitleStorageFileTransferRequest_CancelRequest)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_TitleStorageFileTransferRequest_CancelRequest)); - EOS_TitleStorageFileTransferRequest_CancelRequest = (EOS_TitleStorageFileTransferRequest_CancelRequestCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_TitleStorageFileTransferRequest_CancelRequestCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_TitleStorageFileTransferRequest_GetFileRequestState)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_TitleStorageFileTransferRequest_GetFileRequestState)); - EOS_TitleStorageFileTransferRequest_GetFileRequestState = (EOS_TitleStorageFileTransferRequest_GetFileRequestStateCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_TitleStorageFileTransferRequest_GetFileRequestStateCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_TitleStorageFileTransferRequest_GetFilename)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_TitleStorageFileTransferRequest_GetFilename)); - EOS_TitleStorageFileTransferRequest_GetFilename = (EOS_TitleStorageFileTransferRequest_GetFilenameCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_TitleStorageFileTransferRequest_GetFilenameCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_TitleStorageFileTransferRequest_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_TitleStorageFileTransferRequest_Release)); - EOS_TitleStorageFileTransferRequest_Release = (EOS_TitleStorageFileTransferRequest_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_TitleStorageFileTransferRequest_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_TitleStorage_CopyFileMetadataAtIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_TitleStorage_CopyFileMetadataAtIndex)); - EOS_TitleStorage_CopyFileMetadataAtIndex = (EOS_TitleStorage_CopyFileMetadataAtIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_TitleStorage_CopyFileMetadataAtIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_TitleStorage_CopyFileMetadataByFilename)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_TitleStorage_CopyFileMetadataByFilename)); - EOS_TitleStorage_CopyFileMetadataByFilename = (EOS_TitleStorage_CopyFileMetadataByFilenameCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_TitleStorage_CopyFileMetadataByFilenameCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_TitleStorage_DeleteCache)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_TitleStorage_DeleteCache)); - EOS_TitleStorage_DeleteCache = (EOS_TitleStorage_DeleteCacheCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_TitleStorage_DeleteCacheCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_TitleStorage_FileMetadata_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_TitleStorage_FileMetadata_Release)); - EOS_TitleStorage_FileMetadata_Release = (EOS_TitleStorage_FileMetadata_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_TitleStorage_FileMetadata_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_TitleStorage_GetFileMetadataCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_TitleStorage_GetFileMetadataCount)); - EOS_TitleStorage_GetFileMetadataCount = (EOS_TitleStorage_GetFileMetadataCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_TitleStorage_GetFileMetadataCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_TitleStorage_QueryFile)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_TitleStorage_QueryFile)); - EOS_TitleStorage_QueryFile = (EOS_TitleStorage_QueryFileCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_TitleStorage_QueryFileCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_TitleStorage_QueryFileList)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_TitleStorage_QueryFileList)); - EOS_TitleStorage_QueryFileList = (EOS_TitleStorage_QueryFileListCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_TitleStorage_QueryFileListCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_TitleStorage_ReadFile)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_TitleStorage_ReadFile)); - EOS_TitleStorage_ReadFile = (EOS_TitleStorage_ReadFileCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_TitleStorage_ReadFileCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UI_AcknowledgeEventId)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UI_AcknowledgeEventId)); - EOS_UI_AcknowledgeEventId = (EOS_UI_AcknowledgeEventIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UI_AcknowledgeEventIdCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UI_AddNotifyDisplaySettingsUpdated)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UI_AddNotifyDisplaySettingsUpdated)); - EOS_UI_AddNotifyDisplaySettingsUpdated = (EOS_UI_AddNotifyDisplaySettingsUpdatedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UI_AddNotifyDisplaySettingsUpdatedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UI_GetFriendsVisible)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UI_GetFriendsVisible)); - EOS_UI_GetFriendsVisible = (EOS_UI_GetFriendsVisibleCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UI_GetFriendsVisibleCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UI_GetNotificationLocationPreference)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UI_GetNotificationLocationPreference)); - EOS_UI_GetNotificationLocationPreference = (EOS_UI_GetNotificationLocationPreferenceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UI_GetNotificationLocationPreferenceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UI_GetToggleFriendsKey)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UI_GetToggleFriendsKey)); - EOS_UI_GetToggleFriendsKey = (EOS_UI_GetToggleFriendsKeyCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UI_GetToggleFriendsKeyCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UI_HideFriends)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UI_HideFriends)); - EOS_UI_HideFriends = (EOS_UI_HideFriendsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UI_HideFriendsCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UI_IsValidKeyCombination)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UI_IsValidKeyCombination)); - EOS_UI_IsValidKeyCombination = (EOS_UI_IsValidKeyCombinationCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UI_IsValidKeyCombinationCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UI_RemoveNotifyDisplaySettingsUpdated)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UI_RemoveNotifyDisplaySettingsUpdated)); - EOS_UI_RemoveNotifyDisplaySettingsUpdated = (EOS_UI_RemoveNotifyDisplaySettingsUpdatedCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UI_RemoveNotifyDisplaySettingsUpdatedCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UI_SetDisplayPreference)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UI_SetDisplayPreference)); - EOS_UI_SetDisplayPreference = (EOS_UI_SetDisplayPreferenceCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UI_SetDisplayPreferenceCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UI_SetToggleFriendsKey)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UI_SetToggleFriendsKey)); - EOS_UI_SetToggleFriendsKey = (EOS_UI_SetToggleFriendsKeyCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UI_SetToggleFriendsKeyCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UI_ShowFriends)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UI_ShowFriends)); - EOS_UI_ShowFriends = (EOS_UI_ShowFriendsCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UI_ShowFriendsCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UserInfo_CopyExternalUserInfoByAccountId)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UserInfo_CopyExternalUserInfoByAccountId)); - EOS_UserInfo_CopyExternalUserInfoByAccountId = (EOS_UserInfo_CopyExternalUserInfoByAccountIdCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UserInfo_CopyExternalUserInfoByAccountIdCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UserInfo_CopyExternalUserInfoByAccountType)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UserInfo_CopyExternalUserInfoByAccountType)); - EOS_UserInfo_CopyExternalUserInfoByAccountType = (EOS_UserInfo_CopyExternalUserInfoByAccountTypeCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UserInfo_CopyExternalUserInfoByAccountTypeCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UserInfo_CopyExternalUserInfoByIndex)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UserInfo_CopyExternalUserInfoByIndex)); - EOS_UserInfo_CopyExternalUserInfoByIndex = (EOS_UserInfo_CopyExternalUserInfoByIndexCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UserInfo_CopyExternalUserInfoByIndexCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UserInfo_CopyUserInfo)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UserInfo_CopyUserInfo)); - EOS_UserInfo_CopyUserInfo = (EOS_UserInfo_CopyUserInfoCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UserInfo_CopyUserInfoCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UserInfo_ExternalUserInfo_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UserInfo_ExternalUserInfo_Release)); - EOS_UserInfo_ExternalUserInfo_Release = (EOS_UserInfo_ExternalUserInfo_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UserInfo_ExternalUserInfo_ReleaseCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UserInfo_GetExternalUserInfoCount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UserInfo_GetExternalUserInfoCount)); - EOS_UserInfo_GetExternalUserInfoCount = (EOS_UserInfo_GetExternalUserInfoCountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UserInfo_GetExternalUserInfoCountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UserInfo_QueryUserInfo)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UserInfo_QueryUserInfo)); - EOS_UserInfo_QueryUserInfo = (EOS_UserInfo_QueryUserInfoCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UserInfo_QueryUserInfoCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UserInfo_QueryUserInfoByDisplayName)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UserInfo_QueryUserInfoByDisplayName)); - EOS_UserInfo_QueryUserInfoByDisplayName = (EOS_UserInfo_QueryUserInfoByDisplayNameCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UserInfo_QueryUserInfoByDisplayNameCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UserInfo_QueryUserInfoByExternalAccount)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UserInfo_QueryUserInfoByExternalAccount)); - EOS_UserInfo_QueryUserInfoByExternalAccount = (EOS_UserInfo_QueryUserInfoByExternalAccountCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UserInfo_QueryUserInfoByExternalAccountCallback)); - - functionPointer = getFunctionPointer(libraryHandle, nameof(EOS_UserInfo_Release)); - if (functionPointer == System.IntPtr.Zero) throw new DynamicBindingException(nameof(EOS_UserInfo_Release)); - EOS_UserInfo_Release = (EOS_UserInfo_ReleaseCallback)Marshal.GetDelegateForFunctionPointer(functionPointer, typeof(EOS_UserInfo_ReleaseCallback)); - } -#endif - -#if EOS_DYNAMIC_BINDINGS - /// - /// Unhooks the dynamic SDK API bindings. EOS_DYNAMIC_BINDINGS or EOS_EDITOR must be set. - /// - public static void Unhook() - { - EOS_Achievements_AddNotifyAchievementsUnlocked = null; - EOS_Achievements_AddNotifyAchievementsUnlockedV2 = null; - EOS_Achievements_CopyAchievementDefinitionByAchievementId = null; - EOS_Achievements_CopyAchievementDefinitionByIndex = null; - EOS_Achievements_CopyAchievementDefinitionV2ByAchievementId = null; - EOS_Achievements_CopyAchievementDefinitionV2ByIndex = null; - EOS_Achievements_CopyPlayerAchievementByAchievementId = null; - EOS_Achievements_CopyPlayerAchievementByIndex = null; - EOS_Achievements_CopyUnlockedAchievementByAchievementId = null; - EOS_Achievements_CopyUnlockedAchievementByIndex = null; - EOS_Achievements_DefinitionV2_Release = null; - EOS_Achievements_Definition_Release = null; - EOS_Achievements_GetAchievementDefinitionCount = null; - EOS_Achievements_GetPlayerAchievementCount = null; - EOS_Achievements_GetUnlockedAchievementCount = null; - EOS_Achievements_PlayerAchievement_Release = null; - EOS_Achievements_QueryDefinitions = null; - EOS_Achievements_QueryPlayerAchievements = null; - EOS_Achievements_RemoveNotifyAchievementsUnlocked = null; - EOS_Achievements_UnlockAchievements = null; - EOS_Achievements_UnlockedAchievement_Release = null; - EOS_ActiveSession_CopyInfo = null; - EOS_ActiveSession_GetRegisteredPlayerByIndex = null; - EOS_ActiveSession_GetRegisteredPlayerCount = null; - EOS_ActiveSession_Info_Release = null; - EOS_ActiveSession_Release = null; - EOS_AntiCheatClient_AddExternalIntegrityCatalog = null; - EOS_AntiCheatClient_AddNotifyMessageToPeer = null; - EOS_AntiCheatClient_AddNotifyMessageToServer = null; - EOS_AntiCheatClient_AddNotifyPeerActionRequired = null; - EOS_AntiCheatClient_AddNotifyPeerAuthStatusChanged = null; - EOS_AntiCheatClient_BeginSession = null; - EOS_AntiCheatClient_EndSession = null; - EOS_AntiCheatClient_GetProtectMessageOutputLength = null; - EOS_AntiCheatClient_PollStatus = null; - EOS_AntiCheatClient_ProtectMessage = null; - EOS_AntiCheatClient_ReceiveMessageFromPeer = null; - EOS_AntiCheatClient_ReceiveMessageFromServer = null; - EOS_AntiCheatClient_RegisterPeer = null; - EOS_AntiCheatClient_RemoveNotifyMessageToPeer = null; - EOS_AntiCheatClient_RemoveNotifyMessageToServer = null; - EOS_AntiCheatClient_RemoveNotifyPeerActionRequired = null; - EOS_AntiCheatClient_RemoveNotifyPeerAuthStatusChanged = null; - EOS_AntiCheatClient_UnprotectMessage = null; - EOS_AntiCheatClient_UnregisterPeer = null; - EOS_AntiCheatServer_AddNotifyClientActionRequired = null; - EOS_AntiCheatServer_AddNotifyClientAuthStatusChanged = null; - EOS_AntiCheatServer_AddNotifyMessageToClient = null; - EOS_AntiCheatServer_BeginSession = null; - EOS_AntiCheatServer_EndSession = null; - EOS_AntiCheatServer_GetProtectMessageOutputLength = null; - EOS_AntiCheatServer_LogEvent = null; - EOS_AntiCheatServer_LogGameRoundEnd = null; - EOS_AntiCheatServer_LogGameRoundStart = null; - EOS_AntiCheatServer_LogPlayerDespawn = null; - EOS_AntiCheatServer_LogPlayerRevive = null; - EOS_AntiCheatServer_LogPlayerSpawn = null; - EOS_AntiCheatServer_LogPlayerTakeDamage = null; - EOS_AntiCheatServer_LogPlayerTick = null; - EOS_AntiCheatServer_LogPlayerUseAbility = null; - EOS_AntiCheatServer_LogPlayerUseWeapon = null; - EOS_AntiCheatServer_ProtectMessage = null; - EOS_AntiCheatServer_ReceiveMessageFromClient = null; - EOS_AntiCheatServer_RegisterClient = null; - EOS_AntiCheatServer_RegisterEvent = null; - EOS_AntiCheatServer_RemoveNotifyClientActionRequired = null; - EOS_AntiCheatServer_RemoveNotifyClientAuthStatusChanged = null; - EOS_AntiCheatServer_RemoveNotifyMessageToClient = null; - EOS_AntiCheatServer_SetClientDetails = null; - EOS_AntiCheatServer_SetClientNetworkState = null; - EOS_AntiCheatServer_SetGameSessionId = null; - EOS_AntiCheatServer_UnprotectMessage = null; - EOS_AntiCheatServer_UnregisterClient = null; - EOS_Auth_AddNotifyLoginStatusChanged = null; - EOS_Auth_CopyUserAuthToken = null; - EOS_Auth_DeletePersistentAuth = null; - EOS_Auth_GetLoggedInAccountByIndex = null; - EOS_Auth_GetLoggedInAccountsCount = null; - EOS_Auth_GetLoginStatus = null; - EOS_Auth_LinkAccount = null; - EOS_Auth_Login = null; - EOS_Auth_Logout = null; - EOS_Auth_RemoveNotifyLoginStatusChanged = null; - EOS_Auth_Token_Release = null; - EOS_Auth_VerifyUserAuth = null; - EOS_ByteArray_ToString = null; - EOS_Connect_AddNotifyAuthExpiration = null; - EOS_Connect_AddNotifyLoginStatusChanged = null; - EOS_Connect_CopyProductUserExternalAccountByAccountId = null; - EOS_Connect_CopyProductUserExternalAccountByAccountType = null; - EOS_Connect_CopyProductUserExternalAccountByIndex = null; - EOS_Connect_CopyProductUserInfo = null; - EOS_Connect_CreateDeviceId = null; - EOS_Connect_CreateUser = null; - EOS_Connect_DeleteDeviceId = null; - EOS_Connect_ExternalAccountInfo_Release = null; - EOS_Connect_GetExternalAccountMapping = null; - EOS_Connect_GetLoggedInUserByIndex = null; - EOS_Connect_GetLoggedInUsersCount = null; - EOS_Connect_GetLoginStatus = null; - EOS_Connect_GetProductUserExternalAccountCount = null; - EOS_Connect_GetProductUserIdMapping = null; - EOS_Connect_LinkAccount = null; - EOS_Connect_Login = null; - EOS_Connect_QueryExternalAccountMappings = null; - EOS_Connect_QueryProductUserIdMappings = null; - EOS_Connect_RemoveNotifyAuthExpiration = null; - EOS_Connect_RemoveNotifyLoginStatusChanged = null; - EOS_Connect_TransferDeviceIdAccount = null; - EOS_Connect_UnlinkAccount = null; - EOS_ContinuanceToken_ToString = null; - EOS_EResult_IsOperationComplete = null; - EOS_EResult_ToString = null; - EOS_Ecom_CatalogItem_Release = null; - EOS_Ecom_CatalogOffer_Release = null; - EOS_Ecom_CatalogRelease_Release = null; - EOS_Ecom_Checkout = null; - EOS_Ecom_CopyEntitlementById = null; - EOS_Ecom_CopyEntitlementByIndex = null; - EOS_Ecom_CopyEntitlementByNameAndIndex = null; - EOS_Ecom_CopyItemById = null; - EOS_Ecom_CopyItemImageInfoByIndex = null; - EOS_Ecom_CopyItemReleaseByIndex = null; - EOS_Ecom_CopyOfferById = null; - EOS_Ecom_CopyOfferByIndex = null; - EOS_Ecom_CopyOfferImageInfoByIndex = null; - EOS_Ecom_CopyOfferItemByIndex = null; - EOS_Ecom_CopyTransactionById = null; - EOS_Ecom_CopyTransactionByIndex = null; - EOS_Ecom_Entitlement_Release = null; - EOS_Ecom_GetEntitlementsByNameCount = null; - EOS_Ecom_GetEntitlementsCount = null; - EOS_Ecom_GetItemImageInfoCount = null; - EOS_Ecom_GetItemReleaseCount = null; - EOS_Ecom_GetOfferCount = null; - EOS_Ecom_GetOfferImageInfoCount = null; - EOS_Ecom_GetOfferItemCount = null; - EOS_Ecom_GetTransactionCount = null; - EOS_Ecom_KeyImageInfo_Release = null; - EOS_Ecom_QueryEntitlements = null; - EOS_Ecom_QueryOffers = null; - EOS_Ecom_QueryOwnership = null; - EOS_Ecom_QueryOwnershipToken = null; - EOS_Ecom_RedeemEntitlements = null; - EOS_Ecom_Transaction_CopyEntitlementByIndex = null; - EOS_Ecom_Transaction_GetEntitlementsCount = null; - EOS_Ecom_Transaction_GetTransactionId = null; - EOS_Ecom_Transaction_Release = null; - EOS_EpicAccountId_FromString = null; - EOS_EpicAccountId_IsValid = null; - EOS_EpicAccountId_ToString = null; - EOS_Friends_AcceptInvite = null; - EOS_Friends_AddNotifyFriendsUpdate = null; - EOS_Friends_GetFriendAtIndex = null; - EOS_Friends_GetFriendsCount = null; - EOS_Friends_GetStatus = null; - EOS_Friends_QueryFriends = null; - EOS_Friends_RejectInvite = null; - EOS_Friends_RemoveNotifyFriendsUpdate = null; - EOS_Friends_SendInvite = null; - EOS_Initialize = null; - EOS_KWS_AddNotifyPermissionsUpdateReceived = null; - EOS_KWS_CopyPermissionByIndex = null; - EOS_KWS_CreateUser = null; - EOS_KWS_GetPermissionByKey = null; - EOS_KWS_GetPermissionsCount = null; - EOS_KWS_PermissionStatus_Release = null; - EOS_KWS_QueryAgeGate = null; - EOS_KWS_QueryPermissions = null; - EOS_KWS_RemoveNotifyPermissionsUpdateReceived = null; - EOS_KWS_RequestPermissions = null; - EOS_KWS_UpdateParentEmail = null; - EOS_Leaderboards_CopyLeaderboardDefinitionByIndex = null; - EOS_Leaderboards_CopyLeaderboardDefinitionByLeaderboardId = null; - EOS_Leaderboards_CopyLeaderboardRecordByIndex = null; - EOS_Leaderboards_CopyLeaderboardRecordByUserId = null; - EOS_Leaderboards_CopyLeaderboardUserScoreByIndex = null; - EOS_Leaderboards_CopyLeaderboardUserScoreByUserId = null; - EOS_Leaderboards_Definition_Release = null; - EOS_Leaderboards_GetLeaderboardDefinitionCount = null; - EOS_Leaderboards_GetLeaderboardRecordCount = null; - EOS_Leaderboards_GetLeaderboardUserScoreCount = null; - EOS_Leaderboards_LeaderboardDefinition_Release = null; - EOS_Leaderboards_LeaderboardRecord_Release = null; - EOS_Leaderboards_LeaderboardUserScore_Release = null; - EOS_Leaderboards_QueryLeaderboardDefinitions = null; - EOS_Leaderboards_QueryLeaderboardRanks = null; - EOS_Leaderboards_QueryLeaderboardUserScores = null; - EOS_LobbyDetails_CopyAttributeByIndex = null; - EOS_LobbyDetails_CopyAttributeByKey = null; - EOS_LobbyDetails_CopyInfo = null; - EOS_LobbyDetails_CopyMemberAttributeByIndex = null; - EOS_LobbyDetails_CopyMemberAttributeByKey = null; - EOS_LobbyDetails_GetAttributeCount = null; - EOS_LobbyDetails_GetLobbyOwner = null; - EOS_LobbyDetails_GetMemberAttributeCount = null; - EOS_LobbyDetails_GetMemberByIndex = null; - EOS_LobbyDetails_GetMemberCount = null; - EOS_LobbyDetails_Info_Release = null; - EOS_LobbyDetails_Release = null; - EOS_LobbyModification_AddAttribute = null; - EOS_LobbyModification_AddMemberAttribute = null; - EOS_LobbyModification_Release = null; - EOS_LobbyModification_RemoveAttribute = null; - EOS_LobbyModification_RemoveMemberAttribute = null; - EOS_LobbyModification_SetBucketId = null; - EOS_LobbyModification_SetInvitesAllowed = null; - EOS_LobbyModification_SetMaxMembers = null; - EOS_LobbyModification_SetPermissionLevel = null; - EOS_LobbySearch_CopySearchResultByIndex = null; - EOS_LobbySearch_Find = null; - EOS_LobbySearch_GetSearchResultCount = null; - EOS_LobbySearch_Release = null; - EOS_LobbySearch_RemoveParameter = null; - EOS_LobbySearch_SetLobbyId = null; - EOS_LobbySearch_SetMaxResults = null; - EOS_LobbySearch_SetParameter = null; - EOS_LobbySearch_SetTargetUserId = null; - EOS_Lobby_AddNotifyJoinLobbyAccepted = null; - EOS_Lobby_AddNotifyLobbyInviteAccepted = null; - EOS_Lobby_AddNotifyLobbyInviteReceived = null; - EOS_Lobby_AddNotifyLobbyMemberStatusReceived = null; - EOS_Lobby_AddNotifyLobbyMemberUpdateReceived = null; - EOS_Lobby_AddNotifyLobbyUpdateReceived = null; - EOS_Lobby_AddNotifyRTCRoomConnectionChanged = null; - EOS_Lobby_Attribute_Release = null; - EOS_Lobby_CopyLobbyDetailsHandle = null; - EOS_Lobby_CopyLobbyDetailsHandleByInviteId = null; - EOS_Lobby_CopyLobbyDetailsHandleByUiEventId = null; - EOS_Lobby_CreateLobby = null; - EOS_Lobby_CreateLobbySearch = null; - EOS_Lobby_DestroyLobby = null; - EOS_Lobby_GetInviteCount = null; - EOS_Lobby_GetInviteIdByIndex = null; - EOS_Lobby_GetRTCRoomName = null; - EOS_Lobby_IsRTCRoomConnected = null; - EOS_Lobby_JoinLobby = null; - EOS_Lobby_KickMember = null; - EOS_Lobby_LeaveLobby = null; - EOS_Lobby_PromoteMember = null; - EOS_Lobby_QueryInvites = null; - EOS_Lobby_RejectInvite = null; - EOS_Lobby_RemoveNotifyJoinLobbyAccepted = null; - EOS_Lobby_RemoveNotifyLobbyInviteAccepted = null; - EOS_Lobby_RemoveNotifyLobbyInviteReceived = null; - EOS_Lobby_RemoveNotifyLobbyMemberStatusReceived = null; - EOS_Lobby_RemoveNotifyLobbyMemberUpdateReceived = null; - EOS_Lobby_RemoveNotifyLobbyUpdateReceived = null; - EOS_Lobby_RemoveNotifyRTCRoomConnectionChanged = null; - EOS_Lobby_SendInvite = null; - EOS_Lobby_UpdateLobby = null; - EOS_Lobby_UpdateLobbyModification = null; - EOS_Logging_SetCallback = null; - EOS_Logging_SetLogLevel = null; - EOS_Metrics_BeginPlayerSession = null; - EOS_Metrics_EndPlayerSession = null; - EOS_Mods_CopyModInfo = null; - EOS_Mods_EnumerateMods = null; - EOS_Mods_InstallMod = null; - EOS_Mods_ModInfo_Release = null; - EOS_Mods_UninstallMod = null; - EOS_Mods_UpdateMod = null; - EOS_P2P_AcceptConnection = null; - EOS_P2P_AddNotifyIncomingPacketQueueFull = null; - EOS_P2P_AddNotifyPeerConnectionClosed = null; - EOS_P2P_AddNotifyPeerConnectionRequest = null; - EOS_P2P_CloseConnection = null; - EOS_P2P_CloseConnections = null; - EOS_P2P_GetNATType = null; - EOS_P2P_GetNextReceivedPacketSize = null; - EOS_P2P_GetPacketQueueInfo = null; - EOS_P2P_GetPortRange = null; - EOS_P2P_GetRelayControl = null; - EOS_P2P_QueryNATType = null; - EOS_P2P_ReceivePacket = null; - EOS_P2P_RemoveNotifyIncomingPacketQueueFull = null; - EOS_P2P_RemoveNotifyPeerConnectionClosed = null; - EOS_P2P_RemoveNotifyPeerConnectionRequest = null; - EOS_P2P_SendPacket = null; - EOS_P2P_SetPacketQueueSize = null; - EOS_P2P_SetPortRange = null; - EOS_P2P_SetRelayControl = null; - EOS_Platform_CheckForLauncherAndRestart = null; - EOS_Platform_Create = null; - EOS_Platform_GetAchievementsInterface = null; - EOS_Platform_GetActiveCountryCode = null; - EOS_Platform_GetActiveLocaleCode = null; - EOS_Platform_GetAntiCheatClientInterface = null; - EOS_Platform_GetAntiCheatServerInterface = null; - EOS_Platform_GetAuthInterface = null; - EOS_Platform_GetConnectInterface = null; - EOS_Platform_GetEcomInterface = null; - EOS_Platform_GetFriendsInterface = null; - EOS_Platform_GetKWSInterface = null; - EOS_Platform_GetLeaderboardsInterface = null; - EOS_Platform_GetLobbyInterface = null; - EOS_Platform_GetMetricsInterface = null; - EOS_Platform_GetModsInterface = null; - EOS_Platform_GetOverrideCountryCode = null; - EOS_Platform_GetOverrideLocaleCode = null; - EOS_Platform_GetP2PInterface = null; - EOS_Platform_GetPlayerDataStorageInterface = null; - EOS_Platform_GetPresenceInterface = null; - EOS_Platform_GetRTCAdminInterface = null; - EOS_Platform_GetRTCInterface = null; - EOS_Platform_GetReportsInterface = null; - EOS_Platform_GetSanctionsInterface = null; - EOS_Platform_GetSessionsInterface = null; - EOS_Platform_GetStatsInterface = null; - EOS_Platform_GetTitleStorageInterface = null; - EOS_Platform_GetUIInterface = null; - EOS_Platform_GetUserInfoInterface = null; - EOS_Platform_Release = null; - EOS_Platform_SetOverrideCountryCode = null; - EOS_Platform_SetOverrideLocaleCode = null; - EOS_Platform_Tick = null; - EOS_PlayerDataStorageFileTransferRequest_CancelRequest = null; - EOS_PlayerDataStorageFileTransferRequest_GetFileRequestState = null; - EOS_PlayerDataStorageFileTransferRequest_GetFilename = null; - EOS_PlayerDataStorageFileTransferRequest_Release = null; - EOS_PlayerDataStorage_CopyFileMetadataAtIndex = null; - EOS_PlayerDataStorage_CopyFileMetadataByFilename = null; - EOS_PlayerDataStorage_DeleteCache = null; - EOS_PlayerDataStorage_DeleteFile = null; - EOS_PlayerDataStorage_DuplicateFile = null; - EOS_PlayerDataStorage_FileMetadata_Release = null; - EOS_PlayerDataStorage_GetFileMetadataCount = null; - EOS_PlayerDataStorage_QueryFile = null; - EOS_PlayerDataStorage_QueryFileList = null; - EOS_PlayerDataStorage_ReadFile = null; - EOS_PlayerDataStorage_WriteFile = null; - EOS_PresenceModification_DeleteData = null; - EOS_PresenceModification_Release = null; - EOS_PresenceModification_SetData = null; - EOS_PresenceModification_SetJoinInfo = null; - EOS_PresenceModification_SetRawRichText = null; - EOS_PresenceModification_SetStatus = null; - EOS_Presence_AddNotifyJoinGameAccepted = null; - EOS_Presence_AddNotifyOnPresenceChanged = null; - EOS_Presence_CopyPresence = null; - EOS_Presence_CreatePresenceModification = null; - EOS_Presence_GetJoinInfo = null; - EOS_Presence_HasPresence = null; - EOS_Presence_Info_Release = null; - EOS_Presence_QueryPresence = null; - EOS_Presence_RemoveNotifyJoinGameAccepted = null; - EOS_Presence_RemoveNotifyOnPresenceChanged = null; - EOS_Presence_SetPresence = null; - EOS_ProductUserId_FromString = null; - EOS_ProductUserId_IsValid = null; - EOS_ProductUserId_ToString = null; - EOS_RTCAdmin_CopyUserTokenByIndex = null; - EOS_RTCAdmin_CopyUserTokenByUserId = null; - EOS_RTCAdmin_Kick = null; - EOS_RTCAdmin_QueryJoinRoomToken = null; - EOS_RTCAdmin_SetParticipantHardMute = null; - EOS_RTCAdmin_UserToken_Release = null; - EOS_RTCAudio_AddNotifyAudioBeforeRender = null; - EOS_RTCAudio_AddNotifyAudioBeforeSend = null; - EOS_RTCAudio_AddNotifyAudioDevicesChanged = null; - EOS_RTCAudio_AddNotifyAudioInputState = null; - EOS_RTCAudio_AddNotifyAudioOutputState = null; - EOS_RTCAudio_AddNotifyParticipantUpdated = null; - EOS_RTCAudio_GetAudioInputDeviceByIndex = null; - EOS_RTCAudio_GetAudioInputDevicesCount = null; - EOS_RTCAudio_GetAudioOutputDeviceByIndex = null; - EOS_RTCAudio_GetAudioOutputDevicesCount = null; - EOS_RTCAudio_RegisterPlatformAudioUser = null; - EOS_RTCAudio_RemoveNotifyAudioBeforeRender = null; - EOS_RTCAudio_RemoveNotifyAudioBeforeSend = null; - EOS_RTCAudio_RemoveNotifyAudioDevicesChanged = null; - EOS_RTCAudio_RemoveNotifyAudioInputState = null; - EOS_RTCAudio_RemoveNotifyAudioOutputState = null; - EOS_RTCAudio_RemoveNotifyParticipantUpdated = null; - EOS_RTCAudio_SendAudio = null; - EOS_RTCAudio_SetAudioInputSettings = null; - EOS_RTCAudio_SetAudioOutputSettings = null; - EOS_RTCAudio_UnregisterPlatformAudioUser = null; - EOS_RTCAudio_UpdateReceiving = null; - EOS_RTCAudio_UpdateSending = null; - EOS_RTC_AddNotifyDisconnected = null; - EOS_RTC_AddNotifyParticipantStatusChanged = null; - EOS_RTC_BlockParticipant = null; - EOS_RTC_GetAudioInterface = null; - EOS_RTC_JoinRoom = null; - EOS_RTC_LeaveRoom = null; - EOS_RTC_RemoveNotifyDisconnected = null; - EOS_RTC_RemoveNotifyParticipantStatusChanged = null; - EOS_Reports_SendPlayerBehaviorReport = null; - EOS_Sanctions_CopyPlayerSanctionByIndex = null; - EOS_Sanctions_GetPlayerSanctionCount = null; - EOS_Sanctions_PlayerSanction_Release = null; - EOS_Sanctions_QueryActivePlayerSanctions = null; - EOS_SessionDetails_Attribute_Release = null; - EOS_SessionDetails_CopyInfo = null; - EOS_SessionDetails_CopySessionAttributeByIndex = null; - EOS_SessionDetails_CopySessionAttributeByKey = null; - EOS_SessionDetails_GetSessionAttributeCount = null; - EOS_SessionDetails_Info_Release = null; - EOS_SessionDetails_Release = null; - EOS_SessionModification_AddAttribute = null; - EOS_SessionModification_Release = null; - EOS_SessionModification_RemoveAttribute = null; - EOS_SessionModification_SetBucketId = null; - EOS_SessionModification_SetHostAddress = null; - EOS_SessionModification_SetInvitesAllowed = null; - EOS_SessionModification_SetJoinInProgressAllowed = null; - EOS_SessionModification_SetMaxPlayers = null; - EOS_SessionModification_SetPermissionLevel = null; - EOS_SessionSearch_CopySearchResultByIndex = null; - EOS_SessionSearch_Find = null; - EOS_SessionSearch_GetSearchResultCount = null; - EOS_SessionSearch_Release = null; - EOS_SessionSearch_RemoveParameter = null; - EOS_SessionSearch_SetMaxResults = null; - EOS_SessionSearch_SetParameter = null; - EOS_SessionSearch_SetSessionId = null; - EOS_SessionSearch_SetTargetUserId = null; - EOS_Sessions_AddNotifyJoinSessionAccepted = null; - EOS_Sessions_AddNotifySessionInviteAccepted = null; - EOS_Sessions_AddNotifySessionInviteReceived = null; - EOS_Sessions_CopyActiveSessionHandle = null; - EOS_Sessions_CopySessionHandleByInviteId = null; - EOS_Sessions_CopySessionHandleByUiEventId = null; - EOS_Sessions_CopySessionHandleForPresence = null; - EOS_Sessions_CreateSessionModification = null; - EOS_Sessions_CreateSessionSearch = null; - EOS_Sessions_DestroySession = null; - EOS_Sessions_DumpSessionState = null; - EOS_Sessions_EndSession = null; - EOS_Sessions_GetInviteCount = null; - EOS_Sessions_GetInviteIdByIndex = null; - EOS_Sessions_IsUserInSession = null; - EOS_Sessions_JoinSession = null; - EOS_Sessions_QueryInvites = null; - EOS_Sessions_RegisterPlayers = null; - EOS_Sessions_RejectInvite = null; - EOS_Sessions_RemoveNotifyJoinSessionAccepted = null; - EOS_Sessions_RemoveNotifySessionInviteAccepted = null; - EOS_Sessions_RemoveNotifySessionInviteReceived = null; - EOS_Sessions_SendInvite = null; - EOS_Sessions_StartSession = null; - EOS_Sessions_UnregisterPlayers = null; - EOS_Sessions_UpdateSession = null; - EOS_Sessions_UpdateSessionModification = null; - EOS_Shutdown = null; - EOS_Stats_CopyStatByIndex = null; - EOS_Stats_CopyStatByName = null; - EOS_Stats_GetStatsCount = null; - EOS_Stats_IngestStat = null; - EOS_Stats_QueryStats = null; - EOS_Stats_Stat_Release = null; - EOS_TitleStorageFileTransferRequest_CancelRequest = null; - EOS_TitleStorageFileTransferRequest_GetFileRequestState = null; - EOS_TitleStorageFileTransferRequest_GetFilename = null; - EOS_TitleStorageFileTransferRequest_Release = null; - EOS_TitleStorage_CopyFileMetadataAtIndex = null; - EOS_TitleStorage_CopyFileMetadataByFilename = null; - EOS_TitleStorage_DeleteCache = null; - EOS_TitleStorage_FileMetadata_Release = null; - EOS_TitleStorage_GetFileMetadataCount = null; - EOS_TitleStorage_QueryFile = null; - EOS_TitleStorage_QueryFileList = null; - EOS_TitleStorage_ReadFile = null; - EOS_UI_AcknowledgeEventId = null; - EOS_UI_AddNotifyDisplaySettingsUpdated = null; - EOS_UI_GetFriendsVisible = null; - EOS_UI_GetNotificationLocationPreference = null; - EOS_UI_GetToggleFriendsKey = null; - EOS_UI_HideFriends = null; - EOS_UI_IsValidKeyCombination = null; - EOS_UI_RemoveNotifyDisplaySettingsUpdated = null; - EOS_UI_SetDisplayPreference = null; - EOS_UI_SetToggleFriendsKey = null; - EOS_UI_ShowFriends = null; - EOS_UserInfo_CopyExternalUserInfoByAccountId = null; - EOS_UserInfo_CopyExternalUserInfoByAccountType = null; - EOS_UserInfo_CopyExternalUserInfoByIndex = null; - EOS_UserInfo_CopyUserInfo = null; - EOS_UserInfo_ExternalUserInfo_Release = null; - EOS_UserInfo_GetExternalUserInfoCount = null; - EOS_UserInfo_QueryUserInfo = null; - EOS_UserInfo_QueryUserInfoByDisplayName = null; - EOS_UserInfo_QueryUserInfoByExternalAccount = null; - EOS_UserInfo_Release = null; - } -#endif - -#if EOS_DYNAMIC_BINDINGS - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_Achievements_AddNotifyAchievementsUnlockedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Achievements.OnAchievementsUnlockedCallbackInternal notificationFn); - internal static EOS_Achievements_AddNotifyAchievementsUnlockedCallback EOS_Achievements_AddNotifyAchievementsUnlocked; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_Achievements_AddNotifyAchievementsUnlockedV2Callback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Achievements.OnAchievementsUnlockedCallbackV2Internal notificationFn); - internal static EOS_Achievements_AddNotifyAchievementsUnlockedV2Callback EOS_Achievements_AddNotifyAchievementsUnlockedV2; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Achievements_CopyAchievementDefinitionByAchievementIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outDefinition); - internal static EOS_Achievements_CopyAchievementDefinitionByAchievementIdCallback EOS_Achievements_CopyAchievementDefinitionByAchievementId; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Achievements_CopyAchievementDefinitionByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outDefinition); - internal static EOS_Achievements_CopyAchievementDefinitionByIndexCallback EOS_Achievements_CopyAchievementDefinitionByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Achievements_CopyAchievementDefinitionV2ByAchievementIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outDefinition); - internal static EOS_Achievements_CopyAchievementDefinitionV2ByAchievementIdCallback EOS_Achievements_CopyAchievementDefinitionV2ByAchievementId; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Achievements_CopyAchievementDefinitionV2ByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outDefinition); - internal static EOS_Achievements_CopyAchievementDefinitionV2ByIndexCallback EOS_Achievements_CopyAchievementDefinitionV2ByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Achievements_CopyPlayerAchievementByAchievementIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAchievement); - internal static EOS_Achievements_CopyPlayerAchievementByAchievementIdCallback EOS_Achievements_CopyPlayerAchievementByAchievementId; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Achievements_CopyPlayerAchievementByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAchievement); - internal static EOS_Achievements_CopyPlayerAchievementByIndexCallback EOS_Achievements_CopyPlayerAchievementByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Achievements_CopyUnlockedAchievementByAchievementIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAchievement); - internal static EOS_Achievements_CopyUnlockedAchievementByAchievementIdCallback EOS_Achievements_CopyUnlockedAchievementByAchievementId; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Achievements_CopyUnlockedAchievementByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAchievement); - internal static EOS_Achievements_CopyUnlockedAchievementByIndexCallback EOS_Achievements_CopyUnlockedAchievementByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Achievements_DefinitionV2_ReleaseCallback(System.IntPtr achievementDefinition); - internal static EOS_Achievements_DefinitionV2_ReleaseCallback EOS_Achievements_DefinitionV2_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Achievements_Definition_ReleaseCallback(System.IntPtr achievementDefinition); - internal static EOS_Achievements_Definition_ReleaseCallback EOS_Achievements_Definition_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate uint EOS_Achievements_GetAchievementDefinitionCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_Achievements_GetAchievementDefinitionCountCallback EOS_Achievements_GetAchievementDefinitionCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate uint EOS_Achievements_GetPlayerAchievementCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_Achievements_GetPlayerAchievementCountCallback EOS_Achievements_GetPlayerAchievementCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate uint EOS_Achievements_GetUnlockedAchievementCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_Achievements_GetUnlockedAchievementCountCallback EOS_Achievements_GetUnlockedAchievementCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Achievements_PlayerAchievement_ReleaseCallback(System.IntPtr achievement); - internal static EOS_Achievements_PlayerAchievement_ReleaseCallback EOS_Achievements_PlayerAchievement_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Achievements_QueryDefinitionsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Achievements.OnQueryDefinitionsCompleteCallbackInternal completionDelegate); - internal static EOS_Achievements_QueryDefinitionsCallback EOS_Achievements_QueryDefinitions; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Achievements_QueryPlayerAchievementsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Achievements.OnQueryPlayerAchievementsCompleteCallbackInternal completionDelegate); - internal static EOS_Achievements_QueryPlayerAchievementsCallback EOS_Achievements_QueryPlayerAchievements; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Achievements_RemoveNotifyAchievementsUnlockedCallback(System.IntPtr handle, ulong inId); - internal static EOS_Achievements_RemoveNotifyAchievementsUnlockedCallback EOS_Achievements_RemoveNotifyAchievementsUnlocked; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Achievements_UnlockAchievementsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Achievements.OnUnlockAchievementsCompleteCallbackInternal completionDelegate); - internal static EOS_Achievements_UnlockAchievementsCallback EOS_Achievements_UnlockAchievements; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Achievements_UnlockedAchievement_ReleaseCallback(System.IntPtr achievement); - internal static EOS_Achievements_UnlockedAchievement_ReleaseCallback EOS_Achievements_UnlockedAchievement_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_ActiveSession_CopyInfoCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outActiveSessionInfo); - internal static EOS_ActiveSession_CopyInfoCallback EOS_ActiveSession_CopyInfo; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_ActiveSession_GetRegisteredPlayerByIndexCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_ActiveSession_GetRegisteredPlayerByIndexCallback EOS_ActiveSession_GetRegisteredPlayerByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate uint EOS_ActiveSession_GetRegisteredPlayerCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_ActiveSession_GetRegisteredPlayerCountCallback EOS_ActiveSession_GetRegisteredPlayerCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_ActiveSession_Info_ReleaseCallback(System.IntPtr activeSessionInfo); - internal static EOS_ActiveSession_Info_ReleaseCallback EOS_ActiveSession_Info_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_ActiveSession_ReleaseCallback(System.IntPtr activeSessionHandle); - internal static EOS_ActiveSession_ReleaseCallback EOS_ActiveSession_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatClient_AddExternalIntegrityCatalogCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_AntiCheatClient_AddExternalIntegrityCatalogCallback EOS_AntiCheatClient_AddExternalIntegrityCatalog; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_AntiCheatClient_AddNotifyMessageToPeerCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, AntiCheatClient.OnMessageToPeerCallbackInternal notificationFn); - internal static EOS_AntiCheatClient_AddNotifyMessageToPeerCallback EOS_AntiCheatClient_AddNotifyMessageToPeer; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_AntiCheatClient_AddNotifyMessageToServerCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, AntiCheatClient.OnMessageToServerCallbackInternal notificationFn); - internal static EOS_AntiCheatClient_AddNotifyMessageToServerCallback EOS_AntiCheatClient_AddNotifyMessageToServer; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_AntiCheatClient_AddNotifyPeerActionRequiredCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, AntiCheatClient.OnPeerActionRequiredCallbackInternal notificationFn); - internal static EOS_AntiCheatClient_AddNotifyPeerActionRequiredCallback EOS_AntiCheatClient_AddNotifyPeerActionRequired; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_AntiCheatClient_AddNotifyPeerAuthStatusChangedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, AntiCheatClient.OnPeerAuthStatusChangedCallbackInternal notificationFn); - internal static EOS_AntiCheatClient_AddNotifyPeerAuthStatusChangedCallback EOS_AntiCheatClient_AddNotifyPeerAuthStatusChanged; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatClient_BeginSessionCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_AntiCheatClient_BeginSessionCallback EOS_AntiCheatClient_BeginSession; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatClient_EndSessionCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_AntiCheatClient_EndSessionCallback EOS_AntiCheatClient_EndSession; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatClient_GetProtectMessageOutputLengthCallback(System.IntPtr handle, System.IntPtr options, ref uint outBufferLengthBytes); - internal static EOS_AntiCheatClient_GetProtectMessageOutputLengthCallback EOS_AntiCheatClient_GetProtectMessageOutputLength; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatClient_PollStatusCallback(System.IntPtr handle, System.IntPtr options, AntiCheatClient.AntiCheatClientViolationType violationType, System.IntPtr outMessage); - internal static EOS_AntiCheatClient_PollStatusCallback EOS_AntiCheatClient_PollStatus; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatClient_ProtectMessageCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref uint outBufferLengthBytes); - internal static EOS_AntiCheatClient_ProtectMessageCallback EOS_AntiCheatClient_ProtectMessage; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatClient_ReceiveMessageFromPeerCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_AntiCheatClient_ReceiveMessageFromPeerCallback EOS_AntiCheatClient_ReceiveMessageFromPeer; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatClient_ReceiveMessageFromServerCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_AntiCheatClient_ReceiveMessageFromServerCallback EOS_AntiCheatClient_ReceiveMessageFromServer; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatClient_RegisterPeerCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_AntiCheatClient_RegisterPeerCallback EOS_AntiCheatClient_RegisterPeer; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_AntiCheatClient_RemoveNotifyMessageToPeerCallback(System.IntPtr handle, ulong notificationId); - internal static EOS_AntiCheatClient_RemoveNotifyMessageToPeerCallback EOS_AntiCheatClient_RemoveNotifyMessageToPeer; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_AntiCheatClient_RemoveNotifyMessageToServerCallback(System.IntPtr handle, ulong notificationId); - internal static EOS_AntiCheatClient_RemoveNotifyMessageToServerCallback EOS_AntiCheatClient_RemoveNotifyMessageToServer; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_AntiCheatClient_RemoveNotifyPeerActionRequiredCallback(System.IntPtr handle, ulong notificationId); - internal static EOS_AntiCheatClient_RemoveNotifyPeerActionRequiredCallback EOS_AntiCheatClient_RemoveNotifyPeerActionRequired; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_AntiCheatClient_RemoveNotifyPeerAuthStatusChangedCallback(System.IntPtr handle, ulong notificationId); - internal static EOS_AntiCheatClient_RemoveNotifyPeerAuthStatusChangedCallback EOS_AntiCheatClient_RemoveNotifyPeerAuthStatusChanged; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatClient_UnprotectMessageCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref uint outBufferLengthBytes); - internal static EOS_AntiCheatClient_UnprotectMessageCallback EOS_AntiCheatClient_UnprotectMessage; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatClient_UnregisterPeerCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_AntiCheatClient_UnregisterPeerCallback EOS_AntiCheatClient_UnregisterPeer; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_AntiCheatServer_AddNotifyClientActionRequiredCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, AntiCheatServer.OnClientActionRequiredCallbackInternal notificationFn); - internal static EOS_AntiCheatServer_AddNotifyClientActionRequiredCallback EOS_AntiCheatServer_AddNotifyClientActionRequired; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_AntiCheatServer_AddNotifyClientAuthStatusChangedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, AntiCheatServer.OnClientAuthStatusChangedCallbackInternal notificationFn); - internal static EOS_AntiCheatServer_AddNotifyClientAuthStatusChangedCallback EOS_AntiCheatServer_AddNotifyClientAuthStatusChanged; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_AntiCheatServer_AddNotifyMessageToClientCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, AntiCheatServer.OnMessageToClientCallbackInternal notificationFn); - internal static EOS_AntiCheatServer_AddNotifyMessageToClientCallback EOS_AntiCheatServer_AddNotifyMessageToClient; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatServer_BeginSessionCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_AntiCheatServer_BeginSessionCallback EOS_AntiCheatServer_BeginSession; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatServer_EndSessionCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_AntiCheatServer_EndSessionCallback EOS_AntiCheatServer_EndSession; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatServer_GetProtectMessageOutputLengthCallback(System.IntPtr handle, System.IntPtr options, ref uint outBufferLengthBytes); - internal static EOS_AntiCheatServer_GetProtectMessageOutputLengthCallback EOS_AntiCheatServer_GetProtectMessageOutputLength; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatServer_LogEventCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_AntiCheatServer_LogEventCallback EOS_AntiCheatServer_LogEvent; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatServer_LogGameRoundEndCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_AntiCheatServer_LogGameRoundEndCallback EOS_AntiCheatServer_LogGameRoundEnd; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatServer_LogGameRoundStartCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_AntiCheatServer_LogGameRoundStartCallback EOS_AntiCheatServer_LogGameRoundStart; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatServer_LogPlayerDespawnCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_AntiCheatServer_LogPlayerDespawnCallback EOS_AntiCheatServer_LogPlayerDespawn; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatServer_LogPlayerReviveCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_AntiCheatServer_LogPlayerReviveCallback EOS_AntiCheatServer_LogPlayerRevive; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatServer_LogPlayerSpawnCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_AntiCheatServer_LogPlayerSpawnCallback EOS_AntiCheatServer_LogPlayerSpawn; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatServer_LogPlayerTakeDamageCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_AntiCheatServer_LogPlayerTakeDamageCallback EOS_AntiCheatServer_LogPlayerTakeDamage; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatServer_LogPlayerTickCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_AntiCheatServer_LogPlayerTickCallback EOS_AntiCheatServer_LogPlayerTick; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatServer_LogPlayerUseAbilityCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_AntiCheatServer_LogPlayerUseAbilityCallback EOS_AntiCheatServer_LogPlayerUseAbility; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatServer_LogPlayerUseWeaponCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_AntiCheatServer_LogPlayerUseWeaponCallback EOS_AntiCheatServer_LogPlayerUseWeapon; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatServer_ProtectMessageCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref uint outBufferLengthBytes); - internal static EOS_AntiCheatServer_ProtectMessageCallback EOS_AntiCheatServer_ProtectMessage; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatServer_ReceiveMessageFromClientCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_AntiCheatServer_ReceiveMessageFromClientCallback EOS_AntiCheatServer_ReceiveMessageFromClient; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatServer_RegisterClientCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_AntiCheatServer_RegisterClientCallback EOS_AntiCheatServer_RegisterClient; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatServer_RegisterEventCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_AntiCheatServer_RegisterEventCallback EOS_AntiCheatServer_RegisterEvent; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_AntiCheatServer_RemoveNotifyClientActionRequiredCallback(System.IntPtr handle, ulong notificationId); - internal static EOS_AntiCheatServer_RemoveNotifyClientActionRequiredCallback EOS_AntiCheatServer_RemoveNotifyClientActionRequired; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_AntiCheatServer_RemoveNotifyClientAuthStatusChangedCallback(System.IntPtr handle, ulong notificationId); - internal static EOS_AntiCheatServer_RemoveNotifyClientAuthStatusChangedCallback EOS_AntiCheatServer_RemoveNotifyClientAuthStatusChanged; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_AntiCheatServer_RemoveNotifyMessageToClientCallback(System.IntPtr handle, ulong notificationId); - internal static EOS_AntiCheatServer_RemoveNotifyMessageToClientCallback EOS_AntiCheatServer_RemoveNotifyMessageToClient; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatServer_SetClientDetailsCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_AntiCheatServer_SetClientDetailsCallback EOS_AntiCheatServer_SetClientDetails; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatServer_SetClientNetworkStateCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_AntiCheatServer_SetClientNetworkStateCallback EOS_AntiCheatServer_SetClientNetworkState; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatServer_SetGameSessionIdCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_AntiCheatServer_SetGameSessionIdCallback EOS_AntiCheatServer_SetGameSessionId; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatServer_UnprotectMessageCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref uint outBufferLengthBytes); - internal static EOS_AntiCheatServer_UnprotectMessageCallback EOS_AntiCheatServer_UnprotectMessage; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_AntiCheatServer_UnregisterClientCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_AntiCheatServer_UnregisterClientCallback EOS_AntiCheatServer_UnregisterClient; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_Auth_AddNotifyLoginStatusChangedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Auth.OnLoginStatusChangedCallbackInternal notification); - internal static EOS_Auth_AddNotifyLoginStatusChangedCallback EOS_Auth_AddNotifyLoginStatusChanged; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Auth_CopyUserAuthTokenCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr localUserId, ref System.IntPtr outUserAuthToken); - internal static EOS_Auth_CopyUserAuthTokenCallback EOS_Auth_CopyUserAuthToken; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Auth_DeletePersistentAuthCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Auth.OnDeletePersistentAuthCallbackInternal completionDelegate); - internal static EOS_Auth_DeletePersistentAuthCallback EOS_Auth_DeletePersistentAuth; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_Auth_GetLoggedInAccountByIndexCallback(System.IntPtr handle, int index); - internal static EOS_Auth_GetLoggedInAccountByIndexCallback EOS_Auth_GetLoggedInAccountByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate int EOS_Auth_GetLoggedInAccountsCountCallback(System.IntPtr handle); - internal static EOS_Auth_GetLoggedInAccountsCountCallback EOS_Auth_GetLoggedInAccountsCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate LoginStatus EOS_Auth_GetLoginStatusCallback(System.IntPtr handle, System.IntPtr localUserId); - internal static EOS_Auth_GetLoginStatusCallback EOS_Auth_GetLoginStatus; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Auth_LinkAccountCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Auth.OnLinkAccountCallbackInternal completionDelegate); - internal static EOS_Auth_LinkAccountCallback EOS_Auth_LinkAccount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Auth_LoginCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Auth.OnLoginCallbackInternal completionDelegate); - internal static EOS_Auth_LoginCallback EOS_Auth_Login; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Auth_LogoutCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Auth.OnLogoutCallbackInternal completionDelegate); - internal static EOS_Auth_LogoutCallback EOS_Auth_Logout; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Auth_RemoveNotifyLoginStatusChangedCallback(System.IntPtr handle, ulong inId); - internal static EOS_Auth_RemoveNotifyLoginStatusChangedCallback EOS_Auth_RemoveNotifyLoginStatusChanged; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Auth_Token_ReleaseCallback(System.IntPtr authToken); - internal static EOS_Auth_Token_ReleaseCallback EOS_Auth_Token_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Auth_VerifyUserAuthCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Auth.OnVerifyUserAuthCallbackInternal completionDelegate); - internal static EOS_Auth_VerifyUserAuthCallback EOS_Auth_VerifyUserAuth; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_ByteArray_ToStringCallback(System.IntPtr byteArray, uint length, System.IntPtr outBuffer, ref uint inOutBufferLength); - internal static EOS_ByteArray_ToStringCallback EOS_ByteArray_ToString; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_Connect_AddNotifyAuthExpirationCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnAuthExpirationCallbackInternal notification); - internal static EOS_Connect_AddNotifyAuthExpirationCallback EOS_Connect_AddNotifyAuthExpiration; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_Connect_AddNotifyLoginStatusChangedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnLoginStatusChangedCallbackInternal notification); - internal static EOS_Connect_AddNotifyLoginStatusChangedCallback EOS_Connect_AddNotifyLoginStatusChanged; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Connect_CopyProductUserExternalAccountByAccountIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalAccountInfo); - internal static EOS_Connect_CopyProductUserExternalAccountByAccountIdCallback EOS_Connect_CopyProductUserExternalAccountByAccountId; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Connect_CopyProductUserExternalAccountByAccountTypeCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalAccountInfo); - internal static EOS_Connect_CopyProductUserExternalAccountByAccountTypeCallback EOS_Connect_CopyProductUserExternalAccountByAccountType; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Connect_CopyProductUserExternalAccountByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalAccountInfo); - internal static EOS_Connect_CopyProductUserExternalAccountByIndexCallback EOS_Connect_CopyProductUserExternalAccountByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Connect_CopyProductUserInfoCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalAccountInfo); - internal static EOS_Connect_CopyProductUserInfoCallback EOS_Connect_CopyProductUserInfo; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Connect_CreateDeviceIdCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnCreateDeviceIdCallbackInternal completionDelegate); - internal static EOS_Connect_CreateDeviceIdCallback EOS_Connect_CreateDeviceId; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Connect_CreateUserCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnCreateUserCallbackInternal completionDelegate); - internal static EOS_Connect_CreateUserCallback EOS_Connect_CreateUser; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Connect_DeleteDeviceIdCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnDeleteDeviceIdCallbackInternal completionDelegate); - internal static EOS_Connect_DeleteDeviceIdCallback EOS_Connect_DeleteDeviceId; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Connect_ExternalAccountInfo_ReleaseCallback(System.IntPtr externalAccountInfo); - internal static EOS_Connect_ExternalAccountInfo_ReleaseCallback EOS_Connect_ExternalAccountInfo_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_Connect_GetExternalAccountMappingCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_Connect_GetExternalAccountMappingCallback EOS_Connect_GetExternalAccountMapping; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_Connect_GetLoggedInUserByIndexCallback(System.IntPtr handle, int index); - internal static EOS_Connect_GetLoggedInUserByIndexCallback EOS_Connect_GetLoggedInUserByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate int EOS_Connect_GetLoggedInUsersCountCallback(System.IntPtr handle); - internal static EOS_Connect_GetLoggedInUsersCountCallback EOS_Connect_GetLoggedInUsersCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate LoginStatus EOS_Connect_GetLoginStatusCallback(System.IntPtr handle, System.IntPtr localUserId); - internal static EOS_Connect_GetLoginStatusCallback EOS_Connect_GetLoginStatus; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate uint EOS_Connect_GetProductUserExternalAccountCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_Connect_GetProductUserExternalAccountCountCallback EOS_Connect_GetProductUserExternalAccountCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Connect_GetProductUserIdMappingCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref int inOutBufferLength); - internal static EOS_Connect_GetProductUserIdMappingCallback EOS_Connect_GetProductUserIdMapping; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Connect_LinkAccountCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnLinkAccountCallbackInternal completionDelegate); - internal static EOS_Connect_LinkAccountCallback EOS_Connect_LinkAccount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Connect_LoginCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnLoginCallbackInternal completionDelegate); - internal static EOS_Connect_LoginCallback EOS_Connect_Login; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Connect_QueryExternalAccountMappingsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnQueryExternalAccountMappingsCallbackInternal completionDelegate); - internal static EOS_Connect_QueryExternalAccountMappingsCallback EOS_Connect_QueryExternalAccountMappings; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Connect_QueryProductUserIdMappingsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnQueryProductUserIdMappingsCallbackInternal completionDelegate); - internal static EOS_Connect_QueryProductUserIdMappingsCallback EOS_Connect_QueryProductUserIdMappings; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Connect_RemoveNotifyAuthExpirationCallback(System.IntPtr handle, ulong inId); - internal static EOS_Connect_RemoveNotifyAuthExpirationCallback EOS_Connect_RemoveNotifyAuthExpiration; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Connect_RemoveNotifyLoginStatusChangedCallback(System.IntPtr handle, ulong inId); - internal static EOS_Connect_RemoveNotifyLoginStatusChangedCallback EOS_Connect_RemoveNotifyLoginStatusChanged; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Connect_TransferDeviceIdAccountCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnTransferDeviceIdAccountCallbackInternal completionDelegate); - internal static EOS_Connect_TransferDeviceIdAccountCallback EOS_Connect_TransferDeviceIdAccount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Connect_UnlinkAccountCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnUnlinkAccountCallbackInternal completionDelegate); - internal static EOS_Connect_UnlinkAccountCallback EOS_Connect_UnlinkAccount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_ContinuanceToken_ToStringCallback(System.IntPtr continuanceToken, System.IntPtr outBuffer, ref int inOutBufferLength); - internal static EOS_ContinuanceToken_ToStringCallback EOS_ContinuanceToken_ToString; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate int EOS_EResult_IsOperationCompleteCallback(Result result); - internal static EOS_EResult_IsOperationCompleteCallback EOS_EResult_IsOperationComplete; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_EResult_ToStringCallback(Result result); - internal static EOS_EResult_ToStringCallback EOS_EResult_ToString; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Ecom_CatalogItem_ReleaseCallback(System.IntPtr catalogItem); - internal static EOS_Ecom_CatalogItem_ReleaseCallback EOS_Ecom_CatalogItem_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Ecom_CatalogOffer_ReleaseCallback(System.IntPtr catalogOffer); - internal static EOS_Ecom_CatalogOffer_ReleaseCallback EOS_Ecom_CatalogOffer_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Ecom_CatalogRelease_ReleaseCallback(System.IntPtr catalogRelease); - internal static EOS_Ecom_CatalogRelease_ReleaseCallback EOS_Ecom_CatalogRelease_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Ecom_CheckoutCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Ecom.OnCheckoutCallbackInternal completionDelegate); - internal static EOS_Ecom_CheckoutCallback EOS_Ecom_Checkout; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Ecom_CopyEntitlementByIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outEntitlement); - internal static EOS_Ecom_CopyEntitlementByIdCallback EOS_Ecom_CopyEntitlementById; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Ecom_CopyEntitlementByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outEntitlement); - internal static EOS_Ecom_CopyEntitlementByIndexCallback EOS_Ecom_CopyEntitlementByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Ecom_CopyEntitlementByNameAndIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outEntitlement); - internal static EOS_Ecom_CopyEntitlementByNameAndIndexCallback EOS_Ecom_CopyEntitlementByNameAndIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Ecom_CopyItemByIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outItem); - internal static EOS_Ecom_CopyItemByIdCallback EOS_Ecom_CopyItemById; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Ecom_CopyItemImageInfoByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outImageInfo); - internal static EOS_Ecom_CopyItemImageInfoByIndexCallback EOS_Ecom_CopyItemImageInfoByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Ecom_CopyItemReleaseByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outRelease); - internal static EOS_Ecom_CopyItemReleaseByIndexCallback EOS_Ecom_CopyItemReleaseByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Ecom_CopyOfferByIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outOffer); - internal static EOS_Ecom_CopyOfferByIdCallback EOS_Ecom_CopyOfferById; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Ecom_CopyOfferByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outOffer); - internal static EOS_Ecom_CopyOfferByIndexCallback EOS_Ecom_CopyOfferByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Ecom_CopyOfferImageInfoByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outImageInfo); - internal static EOS_Ecom_CopyOfferImageInfoByIndexCallback EOS_Ecom_CopyOfferImageInfoByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Ecom_CopyOfferItemByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outItem); - internal static EOS_Ecom_CopyOfferItemByIndexCallback EOS_Ecom_CopyOfferItemByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Ecom_CopyTransactionByIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outTransaction); - internal static EOS_Ecom_CopyTransactionByIdCallback EOS_Ecom_CopyTransactionById; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Ecom_CopyTransactionByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outTransaction); - internal static EOS_Ecom_CopyTransactionByIndexCallback EOS_Ecom_CopyTransactionByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Ecom_Entitlement_ReleaseCallback(System.IntPtr entitlement); - internal static EOS_Ecom_Entitlement_ReleaseCallback EOS_Ecom_Entitlement_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate uint EOS_Ecom_GetEntitlementsByNameCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_Ecom_GetEntitlementsByNameCountCallback EOS_Ecom_GetEntitlementsByNameCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate uint EOS_Ecom_GetEntitlementsCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_Ecom_GetEntitlementsCountCallback EOS_Ecom_GetEntitlementsCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate uint EOS_Ecom_GetItemImageInfoCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_Ecom_GetItemImageInfoCountCallback EOS_Ecom_GetItemImageInfoCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate uint EOS_Ecom_GetItemReleaseCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_Ecom_GetItemReleaseCountCallback EOS_Ecom_GetItemReleaseCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate uint EOS_Ecom_GetOfferCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_Ecom_GetOfferCountCallback EOS_Ecom_GetOfferCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate uint EOS_Ecom_GetOfferImageInfoCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_Ecom_GetOfferImageInfoCountCallback EOS_Ecom_GetOfferImageInfoCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate uint EOS_Ecom_GetOfferItemCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_Ecom_GetOfferItemCountCallback EOS_Ecom_GetOfferItemCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate uint EOS_Ecom_GetTransactionCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_Ecom_GetTransactionCountCallback EOS_Ecom_GetTransactionCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Ecom_KeyImageInfo_ReleaseCallback(System.IntPtr keyImageInfo); - internal static EOS_Ecom_KeyImageInfo_ReleaseCallback EOS_Ecom_KeyImageInfo_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Ecom_QueryEntitlementsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Ecom.OnQueryEntitlementsCallbackInternal completionDelegate); - internal static EOS_Ecom_QueryEntitlementsCallback EOS_Ecom_QueryEntitlements; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Ecom_QueryOffersCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Ecom.OnQueryOffersCallbackInternal completionDelegate); - internal static EOS_Ecom_QueryOffersCallback EOS_Ecom_QueryOffers; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Ecom_QueryOwnershipCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Ecom.OnQueryOwnershipCallbackInternal completionDelegate); - internal static EOS_Ecom_QueryOwnershipCallback EOS_Ecom_QueryOwnership; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Ecom_QueryOwnershipTokenCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Ecom.OnQueryOwnershipTokenCallbackInternal completionDelegate); - internal static EOS_Ecom_QueryOwnershipTokenCallback EOS_Ecom_QueryOwnershipToken; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Ecom_RedeemEntitlementsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Ecom.OnRedeemEntitlementsCallbackInternal completionDelegate); - internal static EOS_Ecom_RedeemEntitlementsCallback EOS_Ecom_RedeemEntitlements; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Ecom_Transaction_CopyEntitlementByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outEntitlement); - internal static EOS_Ecom_Transaction_CopyEntitlementByIndexCallback EOS_Ecom_Transaction_CopyEntitlementByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate uint EOS_Ecom_Transaction_GetEntitlementsCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_Ecom_Transaction_GetEntitlementsCountCallback EOS_Ecom_Transaction_GetEntitlementsCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Ecom_Transaction_GetTransactionIdCallback(System.IntPtr handle, System.IntPtr outBuffer, ref int inOutBufferLength); - internal static EOS_Ecom_Transaction_GetTransactionIdCallback EOS_Ecom_Transaction_GetTransactionId; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Ecom_Transaction_ReleaseCallback(System.IntPtr transaction); - internal static EOS_Ecom_Transaction_ReleaseCallback EOS_Ecom_Transaction_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_EpicAccountId_FromStringCallback(System.IntPtr accountIdString); - internal static EOS_EpicAccountId_FromStringCallback EOS_EpicAccountId_FromString; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate int EOS_EpicAccountId_IsValidCallback(System.IntPtr accountId); - internal static EOS_EpicAccountId_IsValidCallback EOS_EpicAccountId_IsValid; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_EpicAccountId_ToStringCallback(System.IntPtr accountId, System.IntPtr outBuffer, ref int inOutBufferLength); - internal static EOS_EpicAccountId_ToStringCallback EOS_EpicAccountId_ToString; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Friends_AcceptInviteCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Friends.OnAcceptInviteCallbackInternal completionDelegate); - internal static EOS_Friends_AcceptInviteCallback EOS_Friends_AcceptInvite; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_Friends_AddNotifyFriendsUpdateCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Friends.OnFriendsUpdateCallbackInternal friendsUpdateHandler); - internal static EOS_Friends_AddNotifyFriendsUpdateCallback EOS_Friends_AddNotifyFriendsUpdate; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_Friends_GetFriendAtIndexCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_Friends_GetFriendAtIndexCallback EOS_Friends_GetFriendAtIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate int EOS_Friends_GetFriendsCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_Friends_GetFriendsCountCallback EOS_Friends_GetFriendsCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Friends.FriendsStatus EOS_Friends_GetStatusCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_Friends_GetStatusCallback EOS_Friends_GetStatus; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Friends_QueryFriendsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Friends.OnQueryFriendsCallbackInternal completionDelegate); - internal static EOS_Friends_QueryFriendsCallback EOS_Friends_QueryFriends; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Friends_RejectInviteCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Friends.OnRejectInviteCallbackInternal completionDelegate); - internal static EOS_Friends_RejectInviteCallback EOS_Friends_RejectInvite; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Friends_RemoveNotifyFriendsUpdateCallback(System.IntPtr handle, ulong notificationId); - internal static EOS_Friends_RemoveNotifyFriendsUpdateCallback EOS_Friends_RemoveNotifyFriendsUpdate; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Friends_SendInviteCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Friends.OnSendInviteCallbackInternal completionDelegate); - internal static EOS_Friends_SendInviteCallback EOS_Friends_SendInvite; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_InitializeCallback(System.IntPtr options); - internal static EOS_InitializeCallback EOS_Initialize; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_KWS_AddNotifyPermissionsUpdateReceivedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, KWS.OnPermissionsUpdateReceivedCallbackInternal notificationFn); - internal static EOS_KWS_AddNotifyPermissionsUpdateReceivedCallback EOS_KWS_AddNotifyPermissionsUpdateReceived; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_KWS_CopyPermissionByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outPermission); - internal static EOS_KWS_CopyPermissionByIndexCallback EOS_KWS_CopyPermissionByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_KWS_CreateUserCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, KWS.OnCreateUserCallbackInternal completionDelegate); - internal static EOS_KWS_CreateUserCallback EOS_KWS_CreateUser; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_KWS_GetPermissionByKeyCallback(System.IntPtr handle, System.IntPtr options, ref KWS.KWSPermissionStatus outPermission); - internal static EOS_KWS_GetPermissionByKeyCallback EOS_KWS_GetPermissionByKey; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate int EOS_KWS_GetPermissionsCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_KWS_GetPermissionsCountCallback EOS_KWS_GetPermissionsCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_KWS_PermissionStatus_ReleaseCallback(System.IntPtr permissionStatus); - internal static EOS_KWS_PermissionStatus_ReleaseCallback EOS_KWS_PermissionStatus_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_KWS_QueryAgeGateCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, KWS.OnQueryAgeGateCallbackInternal completionDelegate); - internal static EOS_KWS_QueryAgeGateCallback EOS_KWS_QueryAgeGate; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_KWS_QueryPermissionsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, KWS.OnQueryPermissionsCallbackInternal completionDelegate); - internal static EOS_KWS_QueryPermissionsCallback EOS_KWS_QueryPermissions; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_KWS_RemoveNotifyPermissionsUpdateReceivedCallback(System.IntPtr handle, ulong inId); - internal static EOS_KWS_RemoveNotifyPermissionsUpdateReceivedCallback EOS_KWS_RemoveNotifyPermissionsUpdateReceived; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_KWS_RequestPermissionsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, KWS.OnRequestPermissionsCallbackInternal completionDelegate); - internal static EOS_KWS_RequestPermissionsCallback EOS_KWS_RequestPermissions; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_KWS_UpdateParentEmailCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, KWS.OnUpdateParentEmailCallbackInternal completionDelegate); - internal static EOS_KWS_UpdateParentEmailCallback EOS_KWS_UpdateParentEmail; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Leaderboards_CopyLeaderboardDefinitionByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLeaderboardDefinition); - internal static EOS_Leaderboards_CopyLeaderboardDefinitionByIndexCallback EOS_Leaderboards_CopyLeaderboardDefinitionByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Leaderboards_CopyLeaderboardDefinitionByLeaderboardIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLeaderboardDefinition); - internal static EOS_Leaderboards_CopyLeaderboardDefinitionByLeaderboardIdCallback EOS_Leaderboards_CopyLeaderboardDefinitionByLeaderboardId; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Leaderboards_CopyLeaderboardRecordByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLeaderboardRecord); - internal static EOS_Leaderboards_CopyLeaderboardRecordByIndexCallback EOS_Leaderboards_CopyLeaderboardRecordByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Leaderboards_CopyLeaderboardRecordByUserIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLeaderboardRecord); - internal static EOS_Leaderboards_CopyLeaderboardRecordByUserIdCallback EOS_Leaderboards_CopyLeaderboardRecordByUserId; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Leaderboards_CopyLeaderboardUserScoreByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLeaderboardUserScore); - internal static EOS_Leaderboards_CopyLeaderboardUserScoreByIndexCallback EOS_Leaderboards_CopyLeaderboardUserScoreByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Leaderboards_CopyLeaderboardUserScoreByUserIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLeaderboardUserScore); - internal static EOS_Leaderboards_CopyLeaderboardUserScoreByUserIdCallback EOS_Leaderboards_CopyLeaderboardUserScoreByUserId; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Leaderboards_Definition_ReleaseCallback(System.IntPtr leaderboardDefinition); - internal static EOS_Leaderboards_Definition_ReleaseCallback EOS_Leaderboards_Definition_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate uint EOS_Leaderboards_GetLeaderboardDefinitionCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_Leaderboards_GetLeaderboardDefinitionCountCallback EOS_Leaderboards_GetLeaderboardDefinitionCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate uint EOS_Leaderboards_GetLeaderboardRecordCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_Leaderboards_GetLeaderboardRecordCountCallback EOS_Leaderboards_GetLeaderboardRecordCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate uint EOS_Leaderboards_GetLeaderboardUserScoreCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_Leaderboards_GetLeaderboardUserScoreCountCallback EOS_Leaderboards_GetLeaderboardUserScoreCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Leaderboards_LeaderboardDefinition_ReleaseCallback(System.IntPtr leaderboardDefinition); - internal static EOS_Leaderboards_LeaderboardDefinition_ReleaseCallback EOS_Leaderboards_LeaderboardDefinition_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Leaderboards_LeaderboardRecord_ReleaseCallback(System.IntPtr leaderboardRecord); - internal static EOS_Leaderboards_LeaderboardRecord_ReleaseCallback EOS_Leaderboards_LeaderboardRecord_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Leaderboards_LeaderboardUserScore_ReleaseCallback(System.IntPtr leaderboardUserScore); - internal static EOS_Leaderboards_LeaderboardUserScore_ReleaseCallback EOS_Leaderboards_LeaderboardUserScore_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Leaderboards_QueryLeaderboardDefinitionsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Leaderboards.OnQueryLeaderboardDefinitionsCompleteCallbackInternal completionDelegate); - internal static EOS_Leaderboards_QueryLeaderboardDefinitionsCallback EOS_Leaderboards_QueryLeaderboardDefinitions; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Leaderboards_QueryLeaderboardRanksCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Leaderboards.OnQueryLeaderboardRanksCompleteCallbackInternal completionDelegate); - internal static EOS_Leaderboards_QueryLeaderboardRanksCallback EOS_Leaderboards_QueryLeaderboardRanks; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Leaderboards_QueryLeaderboardUserScoresCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Leaderboards.OnQueryLeaderboardUserScoresCompleteCallbackInternal completionDelegate); - internal static EOS_Leaderboards_QueryLeaderboardUserScoresCallback EOS_Leaderboards_QueryLeaderboardUserScores; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_LobbyDetails_CopyAttributeByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAttribute); - internal static EOS_LobbyDetails_CopyAttributeByIndexCallback EOS_LobbyDetails_CopyAttributeByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_LobbyDetails_CopyAttributeByKeyCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAttribute); - internal static EOS_LobbyDetails_CopyAttributeByKeyCallback EOS_LobbyDetails_CopyAttributeByKey; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_LobbyDetails_CopyInfoCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbyDetailsInfo); - internal static EOS_LobbyDetails_CopyInfoCallback EOS_LobbyDetails_CopyInfo; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_LobbyDetails_CopyMemberAttributeByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAttribute); - internal static EOS_LobbyDetails_CopyMemberAttributeByIndexCallback EOS_LobbyDetails_CopyMemberAttributeByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_LobbyDetails_CopyMemberAttributeByKeyCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAttribute); - internal static EOS_LobbyDetails_CopyMemberAttributeByKeyCallback EOS_LobbyDetails_CopyMemberAttributeByKey; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate uint EOS_LobbyDetails_GetAttributeCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_LobbyDetails_GetAttributeCountCallback EOS_LobbyDetails_GetAttributeCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_LobbyDetails_GetLobbyOwnerCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_LobbyDetails_GetLobbyOwnerCallback EOS_LobbyDetails_GetLobbyOwner; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate uint EOS_LobbyDetails_GetMemberAttributeCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_LobbyDetails_GetMemberAttributeCountCallback EOS_LobbyDetails_GetMemberAttributeCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_LobbyDetails_GetMemberByIndexCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_LobbyDetails_GetMemberByIndexCallback EOS_LobbyDetails_GetMemberByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate uint EOS_LobbyDetails_GetMemberCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_LobbyDetails_GetMemberCountCallback EOS_LobbyDetails_GetMemberCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_LobbyDetails_Info_ReleaseCallback(System.IntPtr lobbyDetailsInfo); - internal static EOS_LobbyDetails_Info_ReleaseCallback EOS_LobbyDetails_Info_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_LobbyDetails_ReleaseCallback(System.IntPtr lobbyHandle); - internal static EOS_LobbyDetails_ReleaseCallback EOS_LobbyDetails_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_LobbyModification_AddAttributeCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_LobbyModification_AddAttributeCallback EOS_LobbyModification_AddAttribute; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_LobbyModification_AddMemberAttributeCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_LobbyModification_AddMemberAttributeCallback EOS_LobbyModification_AddMemberAttribute; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_LobbyModification_ReleaseCallback(System.IntPtr lobbyModificationHandle); - internal static EOS_LobbyModification_ReleaseCallback EOS_LobbyModification_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_LobbyModification_RemoveAttributeCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_LobbyModification_RemoveAttributeCallback EOS_LobbyModification_RemoveAttribute; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_LobbyModification_RemoveMemberAttributeCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_LobbyModification_RemoveMemberAttributeCallback EOS_LobbyModification_RemoveMemberAttribute; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_LobbyModification_SetBucketIdCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_LobbyModification_SetBucketIdCallback EOS_LobbyModification_SetBucketId; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_LobbyModification_SetInvitesAllowedCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_LobbyModification_SetInvitesAllowedCallback EOS_LobbyModification_SetInvitesAllowed; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_LobbyModification_SetMaxMembersCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_LobbyModification_SetMaxMembersCallback EOS_LobbyModification_SetMaxMembers; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_LobbyModification_SetPermissionLevelCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_LobbyModification_SetPermissionLevelCallback EOS_LobbyModification_SetPermissionLevel; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_LobbySearch_CopySearchResultByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbyDetailsHandle); - internal static EOS_LobbySearch_CopySearchResultByIndexCallback EOS_LobbySearch_CopySearchResultByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_LobbySearch_FindCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.LobbySearchOnFindCallbackInternal completionDelegate); - internal static EOS_LobbySearch_FindCallback EOS_LobbySearch_Find; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate uint EOS_LobbySearch_GetSearchResultCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_LobbySearch_GetSearchResultCountCallback EOS_LobbySearch_GetSearchResultCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_LobbySearch_ReleaseCallback(System.IntPtr lobbySearchHandle); - internal static EOS_LobbySearch_ReleaseCallback EOS_LobbySearch_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_LobbySearch_RemoveParameterCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_LobbySearch_RemoveParameterCallback EOS_LobbySearch_RemoveParameter; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_LobbySearch_SetLobbyIdCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_LobbySearch_SetLobbyIdCallback EOS_LobbySearch_SetLobbyId; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_LobbySearch_SetMaxResultsCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_LobbySearch_SetMaxResultsCallback EOS_LobbySearch_SetMaxResults; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_LobbySearch_SetParameterCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_LobbySearch_SetParameterCallback EOS_LobbySearch_SetParameter; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_LobbySearch_SetTargetUserIdCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_LobbySearch_SetTargetUserIdCallback EOS_LobbySearch_SetTargetUserId; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_Lobby_AddNotifyJoinLobbyAcceptedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnJoinLobbyAcceptedCallbackInternal notificationFn); - internal static EOS_Lobby_AddNotifyJoinLobbyAcceptedCallback EOS_Lobby_AddNotifyJoinLobbyAccepted; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_Lobby_AddNotifyLobbyInviteAcceptedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnLobbyInviteAcceptedCallbackInternal notificationFn); - internal static EOS_Lobby_AddNotifyLobbyInviteAcceptedCallback EOS_Lobby_AddNotifyLobbyInviteAccepted; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_Lobby_AddNotifyLobbyInviteReceivedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnLobbyInviteReceivedCallbackInternal notificationFn); - internal static EOS_Lobby_AddNotifyLobbyInviteReceivedCallback EOS_Lobby_AddNotifyLobbyInviteReceived; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_Lobby_AddNotifyLobbyMemberStatusReceivedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnLobbyMemberStatusReceivedCallbackInternal notificationFn); - internal static EOS_Lobby_AddNotifyLobbyMemberStatusReceivedCallback EOS_Lobby_AddNotifyLobbyMemberStatusReceived; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_Lobby_AddNotifyLobbyMemberUpdateReceivedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnLobbyMemberUpdateReceivedCallbackInternal notificationFn); - internal static EOS_Lobby_AddNotifyLobbyMemberUpdateReceivedCallback EOS_Lobby_AddNotifyLobbyMemberUpdateReceived; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_Lobby_AddNotifyLobbyUpdateReceivedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnLobbyUpdateReceivedCallbackInternal notificationFn); - internal static EOS_Lobby_AddNotifyLobbyUpdateReceivedCallback EOS_Lobby_AddNotifyLobbyUpdateReceived; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_Lobby_AddNotifyRTCRoomConnectionChangedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnRTCRoomConnectionChangedCallbackInternal notificationFn); - internal static EOS_Lobby_AddNotifyRTCRoomConnectionChangedCallback EOS_Lobby_AddNotifyRTCRoomConnectionChanged; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Lobby_Attribute_ReleaseCallback(System.IntPtr lobbyAttribute); - internal static EOS_Lobby_Attribute_ReleaseCallback EOS_Lobby_Attribute_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Lobby_CopyLobbyDetailsHandleCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbyDetailsHandle); - internal static EOS_Lobby_CopyLobbyDetailsHandleCallback EOS_Lobby_CopyLobbyDetailsHandle; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Lobby_CopyLobbyDetailsHandleByInviteIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbyDetailsHandle); - internal static EOS_Lobby_CopyLobbyDetailsHandleByInviteIdCallback EOS_Lobby_CopyLobbyDetailsHandleByInviteId; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Lobby_CopyLobbyDetailsHandleByUiEventIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbyDetailsHandle); - internal static EOS_Lobby_CopyLobbyDetailsHandleByUiEventIdCallback EOS_Lobby_CopyLobbyDetailsHandleByUiEventId; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Lobby_CreateLobbyCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnCreateLobbyCallbackInternal completionDelegate); - internal static EOS_Lobby_CreateLobbyCallback EOS_Lobby_CreateLobby; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Lobby_CreateLobbySearchCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbySearchHandle); - internal static EOS_Lobby_CreateLobbySearchCallback EOS_Lobby_CreateLobbySearch; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Lobby_DestroyLobbyCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnDestroyLobbyCallbackInternal completionDelegate); - internal static EOS_Lobby_DestroyLobbyCallback EOS_Lobby_DestroyLobby; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate uint EOS_Lobby_GetInviteCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_Lobby_GetInviteCountCallback EOS_Lobby_GetInviteCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Lobby_GetInviteIdByIndexCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref int inOutBufferLength); - internal static EOS_Lobby_GetInviteIdByIndexCallback EOS_Lobby_GetInviteIdByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Lobby_GetRTCRoomNameCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref uint inOutBufferLength); - internal static EOS_Lobby_GetRTCRoomNameCallback EOS_Lobby_GetRTCRoomName; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Lobby_IsRTCRoomConnectedCallback(System.IntPtr handle, System.IntPtr options, ref int bOutIsConnected); - internal static EOS_Lobby_IsRTCRoomConnectedCallback EOS_Lobby_IsRTCRoomConnected; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Lobby_JoinLobbyCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnJoinLobbyCallbackInternal completionDelegate); - internal static EOS_Lobby_JoinLobbyCallback EOS_Lobby_JoinLobby; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Lobby_KickMemberCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnKickMemberCallbackInternal completionDelegate); - internal static EOS_Lobby_KickMemberCallback EOS_Lobby_KickMember; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Lobby_LeaveLobbyCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnLeaveLobbyCallbackInternal completionDelegate); - internal static EOS_Lobby_LeaveLobbyCallback EOS_Lobby_LeaveLobby; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Lobby_PromoteMemberCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnPromoteMemberCallbackInternal completionDelegate); - internal static EOS_Lobby_PromoteMemberCallback EOS_Lobby_PromoteMember; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Lobby_QueryInvitesCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnQueryInvitesCallbackInternal completionDelegate); - internal static EOS_Lobby_QueryInvitesCallback EOS_Lobby_QueryInvites; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Lobby_RejectInviteCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnRejectInviteCallbackInternal completionDelegate); - internal static EOS_Lobby_RejectInviteCallback EOS_Lobby_RejectInvite; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Lobby_RemoveNotifyJoinLobbyAcceptedCallback(System.IntPtr handle, ulong inId); - internal static EOS_Lobby_RemoveNotifyJoinLobbyAcceptedCallback EOS_Lobby_RemoveNotifyJoinLobbyAccepted; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Lobby_RemoveNotifyLobbyInviteAcceptedCallback(System.IntPtr handle, ulong inId); - internal static EOS_Lobby_RemoveNotifyLobbyInviteAcceptedCallback EOS_Lobby_RemoveNotifyLobbyInviteAccepted; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Lobby_RemoveNotifyLobbyInviteReceivedCallback(System.IntPtr handle, ulong inId); - internal static EOS_Lobby_RemoveNotifyLobbyInviteReceivedCallback EOS_Lobby_RemoveNotifyLobbyInviteReceived; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Lobby_RemoveNotifyLobbyMemberStatusReceivedCallback(System.IntPtr handle, ulong inId); - internal static EOS_Lobby_RemoveNotifyLobbyMemberStatusReceivedCallback EOS_Lobby_RemoveNotifyLobbyMemberStatusReceived; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Lobby_RemoveNotifyLobbyMemberUpdateReceivedCallback(System.IntPtr handle, ulong inId); - internal static EOS_Lobby_RemoveNotifyLobbyMemberUpdateReceivedCallback EOS_Lobby_RemoveNotifyLobbyMemberUpdateReceived; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Lobby_RemoveNotifyLobbyUpdateReceivedCallback(System.IntPtr handle, ulong inId); - internal static EOS_Lobby_RemoveNotifyLobbyUpdateReceivedCallback EOS_Lobby_RemoveNotifyLobbyUpdateReceived; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Lobby_RemoveNotifyRTCRoomConnectionChangedCallback(System.IntPtr handle, ulong inId); - internal static EOS_Lobby_RemoveNotifyRTCRoomConnectionChangedCallback EOS_Lobby_RemoveNotifyRTCRoomConnectionChanged; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Lobby_SendInviteCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnSendInviteCallbackInternal completionDelegate); - internal static EOS_Lobby_SendInviteCallback EOS_Lobby_SendInvite; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Lobby_UpdateLobbyCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnUpdateLobbyCallbackInternal completionDelegate); - internal static EOS_Lobby_UpdateLobbyCallback EOS_Lobby_UpdateLobby; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Lobby_UpdateLobbyModificationCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbyModificationHandle); - internal static EOS_Lobby_UpdateLobbyModificationCallback EOS_Lobby_UpdateLobbyModification; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Logging_SetCallbackCallback(Logging.LogMessageFuncInternal callback); - internal static EOS_Logging_SetCallbackCallback EOS_Logging_SetCallback; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Logging_SetLogLevelCallback(Logging.LogCategory logCategory, Logging.LogLevel logLevel); - internal static EOS_Logging_SetLogLevelCallback EOS_Logging_SetLogLevel; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Metrics_BeginPlayerSessionCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_Metrics_BeginPlayerSessionCallback EOS_Metrics_BeginPlayerSession; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Metrics_EndPlayerSessionCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_Metrics_EndPlayerSessionCallback EOS_Metrics_EndPlayerSession; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Mods_CopyModInfoCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outEnumeratedMods); - internal static EOS_Mods_CopyModInfoCallback EOS_Mods_CopyModInfo; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Mods_EnumerateModsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Mods.OnEnumerateModsCallbackInternal completionDelegate); - internal static EOS_Mods_EnumerateModsCallback EOS_Mods_EnumerateMods; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Mods_InstallModCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Mods.OnInstallModCallbackInternal completionDelegate); - internal static EOS_Mods_InstallModCallback EOS_Mods_InstallMod; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Mods_ModInfo_ReleaseCallback(System.IntPtr modInfo); - internal static EOS_Mods_ModInfo_ReleaseCallback EOS_Mods_ModInfo_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Mods_UninstallModCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Mods.OnUninstallModCallbackInternal completionDelegate); - internal static EOS_Mods_UninstallModCallback EOS_Mods_UninstallMod; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Mods_UpdateModCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Mods.OnUpdateModCallbackInternal completionDelegate); - internal static EOS_Mods_UpdateModCallback EOS_Mods_UpdateMod; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_P2P_AcceptConnectionCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_P2P_AcceptConnectionCallback EOS_P2P_AcceptConnection; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_P2P_AddNotifyIncomingPacketQueueFullCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, P2P.OnIncomingPacketQueueFullCallbackInternal incomingPacketQueueFullHandler); - internal static EOS_P2P_AddNotifyIncomingPacketQueueFullCallback EOS_P2P_AddNotifyIncomingPacketQueueFull; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_P2P_AddNotifyPeerConnectionClosedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, P2P.OnRemoteConnectionClosedCallbackInternal connectionClosedHandler); - internal static EOS_P2P_AddNotifyPeerConnectionClosedCallback EOS_P2P_AddNotifyPeerConnectionClosed; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_P2P_AddNotifyPeerConnectionRequestCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, P2P.OnIncomingConnectionRequestCallbackInternal connectionRequestHandler); - internal static EOS_P2P_AddNotifyPeerConnectionRequestCallback EOS_P2P_AddNotifyPeerConnectionRequest; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_P2P_CloseConnectionCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_P2P_CloseConnectionCallback EOS_P2P_CloseConnection; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_P2P_CloseConnectionsCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_P2P_CloseConnectionsCallback EOS_P2P_CloseConnections; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_P2P_GetNATTypeCallback(System.IntPtr handle, System.IntPtr options, ref P2P.NATType outNATType); - internal static EOS_P2P_GetNATTypeCallback EOS_P2P_GetNATType; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_P2P_GetNextReceivedPacketSizeCallback(System.IntPtr handle, System.IntPtr options, ref uint outPacketSizeBytes); - internal static EOS_P2P_GetNextReceivedPacketSizeCallback EOS_P2P_GetNextReceivedPacketSize; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_P2P_GetPacketQueueInfoCallback(System.IntPtr handle, System.IntPtr options, ref P2P.PacketQueueInfoInternal outPacketQueueInfo); - internal static EOS_P2P_GetPacketQueueInfoCallback EOS_P2P_GetPacketQueueInfo; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_P2P_GetPortRangeCallback(System.IntPtr handle, System.IntPtr options, ref ushort outPort, ref ushort outNumAdditionalPortsToTry); - internal static EOS_P2P_GetPortRangeCallback EOS_P2P_GetPortRange; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_P2P_GetRelayControlCallback(System.IntPtr handle, System.IntPtr options, ref P2P.RelayControl outRelayControl); - internal static EOS_P2P_GetRelayControlCallback EOS_P2P_GetRelayControl; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_P2P_QueryNATTypeCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, P2P.OnQueryNATTypeCompleteCallbackInternal completionDelegate); - internal static EOS_P2P_QueryNATTypeCallback EOS_P2P_QueryNATType; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_P2P_ReceivePacketCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outPeerId, ref P2P.SocketIdInternal outSocketId, ref byte outChannel, System.IntPtr outData, ref uint outBytesWritten); - internal static EOS_P2P_ReceivePacketCallback EOS_P2P_ReceivePacket; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_P2P_RemoveNotifyIncomingPacketQueueFullCallback(System.IntPtr handle, ulong notificationId); - internal static EOS_P2P_RemoveNotifyIncomingPacketQueueFullCallback EOS_P2P_RemoveNotifyIncomingPacketQueueFull; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_P2P_RemoveNotifyPeerConnectionClosedCallback(System.IntPtr handle, ulong notificationId); - internal static EOS_P2P_RemoveNotifyPeerConnectionClosedCallback EOS_P2P_RemoveNotifyPeerConnectionClosed; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_P2P_RemoveNotifyPeerConnectionRequestCallback(System.IntPtr handle, ulong notificationId); - internal static EOS_P2P_RemoveNotifyPeerConnectionRequestCallback EOS_P2P_RemoveNotifyPeerConnectionRequest; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_P2P_SendPacketCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_P2P_SendPacketCallback EOS_P2P_SendPacket; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_P2P_SetPacketQueueSizeCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_P2P_SetPacketQueueSizeCallback EOS_P2P_SetPacketQueueSize; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_P2P_SetPortRangeCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_P2P_SetPortRangeCallback EOS_P2P_SetPortRange; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_P2P_SetRelayControlCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_P2P_SetRelayControlCallback EOS_P2P_SetRelayControl; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Platform_CheckForLauncherAndRestartCallback(System.IntPtr handle); - internal static EOS_Platform_CheckForLauncherAndRestartCallback EOS_Platform_CheckForLauncherAndRestart; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_Platform_CreateCallback(System.IntPtr options); - internal static EOS_Platform_CreateCallback EOS_Platform_Create; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_Platform_GetAchievementsInterfaceCallback(System.IntPtr handle); - internal static EOS_Platform_GetAchievementsInterfaceCallback EOS_Platform_GetAchievementsInterface; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Platform_GetActiveCountryCodeCallback(System.IntPtr handle, System.IntPtr localUserId, System.IntPtr outBuffer, ref int inOutBufferLength); - internal static EOS_Platform_GetActiveCountryCodeCallback EOS_Platform_GetActiveCountryCode; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Platform_GetActiveLocaleCodeCallback(System.IntPtr handle, System.IntPtr localUserId, System.IntPtr outBuffer, ref int inOutBufferLength); - internal static EOS_Platform_GetActiveLocaleCodeCallback EOS_Platform_GetActiveLocaleCode; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_Platform_GetAntiCheatClientInterfaceCallback(System.IntPtr handle); - internal static EOS_Platform_GetAntiCheatClientInterfaceCallback EOS_Platform_GetAntiCheatClientInterface; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_Platform_GetAntiCheatServerInterfaceCallback(System.IntPtr handle); - internal static EOS_Platform_GetAntiCheatServerInterfaceCallback EOS_Platform_GetAntiCheatServerInterface; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_Platform_GetAuthInterfaceCallback(System.IntPtr handle); - internal static EOS_Platform_GetAuthInterfaceCallback EOS_Platform_GetAuthInterface; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_Platform_GetConnectInterfaceCallback(System.IntPtr handle); - internal static EOS_Platform_GetConnectInterfaceCallback EOS_Platform_GetConnectInterface; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_Platform_GetEcomInterfaceCallback(System.IntPtr handle); - internal static EOS_Platform_GetEcomInterfaceCallback EOS_Platform_GetEcomInterface; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_Platform_GetFriendsInterfaceCallback(System.IntPtr handle); - internal static EOS_Platform_GetFriendsInterfaceCallback EOS_Platform_GetFriendsInterface; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_Platform_GetKWSInterfaceCallback(System.IntPtr handle); - internal static EOS_Platform_GetKWSInterfaceCallback EOS_Platform_GetKWSInterface; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_Platform_GetLeaderboardsInterfaceCallback(System.IntPtr handle); - internal static EOS_Platform_GetLeaderboardsInterfaceCallback EOS_Platform_GetLeaderboardsInterface; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_Platform_GetLobbyInterfaceCallback(System.IntPtr handle); - internal static EOS_Platform_GetLobbyInterfaceCallback EOS_Platform_GetLobbyInterface; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_Platform_GetMetricsInterfaceCallback(System.IntPtr handle); - internal static EOS_Platform_GetMetricsInterfaceCallback EOS_Platform_GetMetricsInterface; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_Platform_GetModsInterfaceCallback(System.IntPtr handle); - internal static EOS_Platform_GetModsInterfaceCallback EOS_Platform_GetModsInterface; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Platform_GetOverrideCountryCodeCallback(System.IntPtr handle, System.IntPtr outBuffer, ref int inOutBufferLength); - internal static EOS_Platform_GetOverrideCountryCodeCallback EOS_Platform_GetOverrideCountryCode; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Platform_GetOverrideLocaleCodeCallback(System.IntPtr handle, System.IntPtr outBuffer, ref int inOutBufferLength); - internal static EOS_Platform_GetOverrideLocaleCodeCallback EOS_Platform_GetOverrideLocaleCode; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_Platform_GetP2PInterfaceCallback(System.IntPtr handle); - internal static EOS_Platform_GetP2PInterfaceCallback EOS_Platform_GetP2PInterface; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_Platform_GetPlayerDataStorageInterfaceCallback(System.IntPtr handle); - internal static EOS_Platform_GetPlayerDataStorageInterfaceCallback EOS_Platform_GetPlayerDataStorageInterface; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_Platform_GetPresenceInterfaceCallback(System.IntPtr handle); - internal static EOS_Platform_GetPresenceInterfaceCallback EOS_Platform_GetPresenceInterface; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_Platform_GetRTCAdminInterfaceCallback(System.IntPtr handle); - internal static EOS_Platform_GetRTCAdminInterfaceCallback EOS_Platform_GetRTCAdminInterface; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_Platform_GetRTCInterfaceCallback(System.IntPtr handle); - internal static EOS_Platform_GetRTCInterfaceCallback EOS_Platform_GetRTCInterface; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_Platform_GetReportsInterfaceCallback(System.IntPtr handle); - internal static EOS_Platform_GetReportsInterfaceCallback EOS_Platform_GetReportsInterface; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_Platform_GetSanctionsInterfaceCallback(System.IntPtr handle); - internal static EOS_Platform_GetSanctionsInterfaceCallback EOS_Platform_GetSanctionsInterface; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_Platform_GetSessionsInterfaceCallback(System.IntPtr handle); - internal static EOS_Platform_GetSessionsInterfaceCallback EOS_Platform_GetSessionsInterface; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_Platform_GetStatsInterfaceCallback(System.IntPtr handle); - internal static EOS_Platform_GetStatsInterfaceCallback EOS_Platform_GetStatsInterface; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_Platform_GetTitleStorageInterfaceCallback(System.IntPtr handle); - internal static EOS_Platform_GetTitleStorageInterfaceCallback EOS_Platform_GetTitleStorageInterface; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_Platform_GetUIInterfaceCallback(System.IntPtr handle); - internal static EOS_Platform_GetUIInterfaceCallback EOS_Platform_GetUIInterface; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_Platform_GetUserInfoInterfaceCallback(System.IntPtr handle); - internal static EOS_Platform_GetUserInfoInterfaceCallback EOS_Platform_GetUserInfoInterface; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Platform_ReleaseCallback(System.IntPtr handle); - internal static EOS_Platform_ReleaseCallback EOS_Platform_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Platform_SetOverrideCountryCodeCallback(System.IntPtr handle, System.IntPtr newCountryCode); - internal static EOS_Platform_SetOverrideCountryCodeCallback EOS_Platform_SetOverrideCountryCode; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Platform_SetOverrideLocaleCodeCallback(System.IntPtr handle, System.IntPtr newLocaleCode); - internal static EOS_Platform_SetOverrideLocaleCodeCallback EOS_Platform_SetOverrideLocaleCode; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Platform_TickCallback(System.IntPtr handle); - internal static EOS_Platform_TickCallback EOS_Platform_Tick; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_PlayerDataStorageFileTransferRequest_CancelRequestCallback(System.IntPtr handle); - internal static EOS_PlayerDataStorageFileTransferRequest_CancelRequestCallback EOS_PlayerDataStorageFileTransferRequest_CancelRequest; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_PlayerDataStorageFileTransferRequest_GetFileRequestStateCallback(System.IntPtr handle); - internal static EOS_PlayerDataStorageFileTransferRequest_GetFileRequestStateCallback EOS_PlayerDataStorageFileTransferRequest_GetFileRequestState; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_PlayerDataStorageFileTransferRequest_GetFilenameCallback(System.IntPtr handle, uint filenameStringBufferSizeBytes, System.IntPtr outStringBuffer, ref int outStringLength); - internal static EOS_PlayerDataStorageFileTransferRequest_GetFilenameCallback EOS_PlayerDataStorageFileTransferRequest_GetFilename; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_PlayerDataStorageFileTransferRequest_ReleaseCallback(System.IntPtr playerDataStorageFileTransferHandle); - internal static EOS_PlayerDataStorageFileTransferRequest_ReleaseCallback EOS_PlayerDataStorageFileTransferRequest_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_PlayerDataStorage_CopyFileMetadataAtIndexCallback(System.IntPtr handle, System.IntPtr copyFileMetadataOptions, ref System.IntPtr outMetadata); - internal static EOS_PlayerDataStorage_CopyFileMetadataAtIndexCallback EOS_PlayerDataStorage_CopyFileMetadataAtIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_PlayerDataStorage_CopyFileMetadataByFilenameCallback(System.IntPtr handle, System.IntPtr copyFileMetadataOptions, ref System.IntPtr outMetadata); - internal static EOS_PlayerDataStorage_CopyFileMetadataByFilenameCallback EOS_PlayerDataStorage_CopyFileMetadataByFilename; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_PlayerDataStorage_DeleteCacheCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, PlayerDataStorage.OnDeleteCacheCompleteCallbackInternal completionCallback); - internal static EOS_PlayerDataStorage_DeleteCacheCallback EOS_PlayerDataStorage_DeleteCache; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_PlayerDataStorage_DeleteFileCallback(System.IntPtr handle, System.IntPtr deleteOptions, System.IntPtr clientData, PlayerDataStorage.OnDeleteFileCompleteCallbackInternal completionCallback); - internal static EOS_PlayerDataStorage_DeleteFileCallback EOS_PlayerDataStorage_DeleteFile; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_PlayerDataStorage_DuplicateFileCallback(System.IntPtr handle, System.IntPtr duplicateOptions, System.IntPtr clientData, PlayerDataStorage.OnDuplicateFileCompleteCallbackInternal completionCallback); - internal static EOS_PlayerDataStorage_DuplicateFileCallback EOS_PlayerDataStorage_DuplicateFile; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_PlayerDataStorage_FileMetadata_ReleaseCallback(System.IntPtr fileMetadata); - internal static EOS_PlayerDataStorage_FileMetadata_ReleaseCallback EOS_PlayerDataStorage_FileMetadata_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_PlayerDataStorage_GetFileMetadataCountCallback(System.IntPtr handle, System.IntPtr getFileMetadataCountOptions, ref int outFileMetadataCount); - internal static EOS_PlayerDataStorage_GetFileMetadataCountCallback EOS_PlayerDataStorage_GetFileMetadataCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_PlayerDataStorage_QueryFileCallback(System.IntPtr handle, System.IntPtr queryFileOptions, System.IntPtr clientData, PlayerDataStorage.OnQueryFileCompleteCallbackInternal completionCallback); - internal static EOS_PlayerDataStorage_QueryFileCallback EOS_PlayerDataStorage_QueryFile; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_PlayerDataStorage_QueryFileListCallback(System.IntPtr handle, System.IntPtr queryFileListOptions, System.IntPtr clientData, PlayerDataStorage.OnQueryFileListCompleteCallbackInternal completionCallback); - internal static EOS_PlayerDataStorage_QueryFileListCallback EOS_PlayerDataStorage_QueryFileList; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_PlayerDataStorage_ReadFileCallback(System.IntPtr handle, System.IntPtr readOptions, System.IntPtr clientData, PlayerDataStorage.OnReadFileCompleteCallbackInternal completionCallback); - internal static EOS_PlayerDataStorage_ReadFileCallback EOS_PlayerDataStorage_ReadFile; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_PlayerDataStorage_WriteFileCallback(System.IntPtr handle, System.IntPtr writeOptions, System.IntPtr clientData, PlayerDataStorage.OnWriteFileCompleteCallbackInternal completionCallback); - internal static EOS_PlayerDataStorage_WriteFileCallback EOS_PlayerDataStorage_WriteFile; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_PresenceModification_DeleteDataCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_PresenceModification_DeleteDataCallback EOS_PresenceModification_DeleteData; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_PresenceModification_ReleaseCallback(System.IntPtr presenceModificationHandle); - internal static EOS_PresenceModification_ReleaseCallback EOS_PresenceModification_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_PresenceModification_SetDataCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_PresenceModification_SetDataCallback EOS_PresenceModification_SetData; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_PresenceModification_SetJoinInfoCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_PresenceModification_SetJoinInfoCallback EOS_PresenceModification_SetJoinInfo; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_PresenceModification_SetRawRichTextCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_PresenceModification_SetRawRichTextCallback EOS_PresenceModification_SetRawRichText; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_PresenceModification_SetStatusCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_PresenceModification_SetStatusCallback EOS_PresenceModification_SetStatus; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_Presence_AddNotifyJoinGameAcceptedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Presence.OnJoinGameAcceptedCallbackInternal notificationFn); - internal static EOS_Presence_AddNotifyJoinGameAcceptedCallback EOS_Presence_AddNotifyJoinGameAccepted; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_Presence_AddNotifyOnPresenceChangedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Presence.OnPresenceChangedCallbackInternal notificationHandler); - internal static EOS_Presence_AddNotifyOnPresenceChangedCallback EOS_Presence_AddNotifyOnPresenceChanged; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Presence_CopyPresenceCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outPresence); - internal static EOS_Presence_CopyPresenceCallback EOS_Presence_CopyPresence; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Presence_CreatePresenceModificationCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outPresenceModificationHandle); - internal static EOS_Presence_CreatePresenceModificationCallback EOS_Presence_CreatePresenceModification; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Presence_GetJoinInfoCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref int inOutBufferLength); - internal static EOS_Presence_GetJoinInfoCallback EOS_Presence_GetJoinInfo; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate int EOS_Presence_HasPresenceCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_Presence_HasPresenceCallback EOS_Presence_HasPresence; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Presence_Info_ReleaseCallback(System.IntPtr presenceInfo); - internal static EOS_Presence_Info_ReleaseCallback EOS_Presence_Info_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Presence_QueryPresenceCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Presence.OnQueryPresenceCompleteCallbackInternal completionDelegate); - internal static EOS_Presence_QueryPresenceCallback EOS_Presence_QueryPresence; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Presence_RemoveNotifyJoinGameAcceptedCallback(System.IntPtr handle, ulong inId); - internal static EOS_Presence_RemoveNotifyJoinGameAcceptedCallback EOS_Presence_RemoveNotifyJoinGameAccepted; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Presence_RemoveNotifyOnPresenceChangedCallback(System.IntPtr handle, ulong notificationId); - internal static EOS_Presence_RemoveNotifyOnPresenceChangedCallback EOS_Presence_RemoveNotifyOnPresenceChanged; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Presence_SetPresenceCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Presence.SetPresenceCompleteCallbackInternal completionDelegate); - internal static EOS_Presence_SetPresenceCallback EOS_Presence_SetPresence; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_ProductUserId_FromStringCallback(System.IntPtr productUserIdString); - internal static EOS_ProductUserId_FromStringCallback EOS_ProductUserId_FromString; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate int EOS_ProductUserId_IsValidCallback(System.IntPtr accountId); - internal static EOS_ProductUserId_IsValidCallback EOS_ProductUserId_IsValid; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_ProductUserId_ToStringCallback(System.IntPtr accountId, System.IntPtr outBuffer, ref int inOutBufferLength); - internal static EOS_ProductUserId_ToStringCallback EOS_ProductUserId_ToString; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_RTCAdmin_CopyUserTokenByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outUserToken); - internal static EOS_RTCAdmin_CopyUserTokenByIndexCallback EOS_RTCAdmin_CopyUserTokenByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_RTCAdmin_CopyUserTokenByUserIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outUserToken); - internal static EOS_RTCAdmin_CopyUserTokenByUserIdCallback EOS_RTCAdmin_CopyUserTokenByUserId; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_RTCAdmin_KickCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAdmin.OnKickCompleteCallbackInternal completionDelegate); - internal static EOS_RTCAdmin_KickCallback EOS_RTCAdmin_Kick; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_RTCAdmin_QueryJoinRoomTokenCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAdmin.OnQueryJoinRoomTokenCompleteCallbackInternal completionDelegate); - internal static EOS_RTCAdmin_QueryJoinRoomTokenCallback EOS_RTCAdmin_QueryJoinRoomToken; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_RTCAdmin_SetParticipantHardMuteCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAdmin.OnSetParticipantHardMuteCompleteCallbackInternal completionDelegate); - internal static EOS_RTCAdmin_SetParticipantHardMuteCallback EOS_RTCAdmin_SetParticipantHardMute; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_RTCAdmin_UserToken_ReleaseCallback(System.IntPtr userToken); - internal static EOS_RTCAdmin_UserToken_ReleaseCallback EOS_RTCAdmin_UserToken_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_RTCAudio_AddNotifyAudioBeforeRenderCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnAudioBeforeRenderCallbackInternal completionDelegate); - internal static EOS_RTCAudio_AddNotifyAudioBeforeRenderCallback EOS_RTCAudio_AddNotifyAudioBeforeRender; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_RTCAudio_AddNotifyAudioBeforeSendCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnAudioBeforeSendCallbackInternal completionDelegate); - internal static EOS_RTCAudio_AddNotifyAudioBeforeSendCallback EOS_RTCAudio_AddNotifyAudioBeforeSend; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_RTCAudio_AddNotifyAudioDevicesChangedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnAudioDevicesChangedCallbackInternal completionDelegate); - internal static EOS_RTCAudio_AddNotifyAudioDevicesChangedCallback EOS_RTCAudio_AddNotifyAudioDevicesChanged; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_RTCAudio_AddNotifyAudioInputStateCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnAudioInputStateCallbackInternal completionDelegate); - internal static EOS_RTCAudio_AddNotifyAudioInputStateCallback EOS_RTCAudio_AddNotifyAudioInputState; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_RTCAudio_AddNotifyAudioOutputStateCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnAudioOutputStateCallbackInternal completionDelegate); - internal static EOS_RTCAudio_AddNotifyAudioOutputStateCallback EOS_RTCAudio_AddNotifyAudioOutputState; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_RTCAudio_AddNotifyParticipantUpdatedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnParticipantUpdatedCallbackInternal completionDelegate); - internal static EOS_RTCAudio_AddNotifyParticipantUpdatedCallback EOS_RTCAudio_AddNotifyParticipantUpdated; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_RTCAudio_GetAudioInputDeviceByIndexCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_RTCAudio_GetAudioInputDeviceByIndexCallback EOS_RTCAudio_GetAudioInputDeviceByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate uint EOS_RTCAudio_GetAudioInputDevicesCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_RTCAudio_GetAudioInputDevicesCountCallback EOS_RTCAudio_GetAudioInputDevicesCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_RTCAudio_GetAudioOutputDeviceByIndexCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_RTCAudio_GetAudioOutputDeviceByIndexCallback EOS_RTCAudio_GetAudioOutputDeviceByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate uint EOS_RTCAudio_GetAudioOutputDevicesCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_RTCAudio_GetAudioOutputDevicesCountCallback EOS_RTCAudio_GetAudioOutputDevicesCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_RTCAudio_RegisterPlatformAudioUserCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_RTCAudio_RegisterPlatformAudioUserCallback EOS_RTCAudio_RegisterPlatformAudioUser; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_RTCAudio_RemoveNotifyAudioBeforeRenderCallback(System.IntPtr handle, ulong notificationId); - internal static EOS_RTCAudio_RemoveNotifyAudioBeforeRenderCallback EOS_RTCAudio_RemoveNotifyAudioBeforeRender; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_RTCAudio_RemoveNotifyAudioBeforeSendCallback(System.IntPtr handle, ulong notificationId); - internal static EOS_RTCAudio_RemoveNotifyAudioBeforeSendCallback EOS_RTCAudio_RemoveNotifyAudioBeforeSend; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_RTCAudio_RemoveNotifyAudioDevicesChangedCallback(System.IntPtr handle, ulong notificationId); - internal static EOS_RTCAudio_RemoveNotifyAudioDevicesChangedCallback EOS_RTCAudio_RemoveNotifyAudioDevicesChanged; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_RTCAudio_RemoveNotifyAudioInputStateCallback(System.IntPtr handle, ulong notificationId); - internal static EOS_RTCAudio_RemoveNotifyAudioInputStateCallback EOS_RTCAudio_RemoveNotifyAudioInputState; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_RTCAudio_RemoveNotifyAudioOutputStateCallback(System.IntPtr handle, ulong notificationId); - internal static EOS_RTCAudio_RemoveNotifyAudioOutputStateCallback EOS_RTCAudio_RemoveNotifyAudioOutputState; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_RTCAudio_RemoveNotifyParticipantUpdatedCallback(System.IntPtr handle, ulong notificationId); - internal static EOS_RTCAudio_RemoveNotifyParticipantUpdatedCallback EOS_RTCAudio_RemoveNotifyParticipantUpdated; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_RTCAudio_SendAudioCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_RTCAudio_SendAudioCallback EOS_RTCAudio_SendAudio; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_RTCAudio_SetAudioInputSettingsCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_RTCAudio_SetAudioInputSettingsCallback EOS_RTCAudio_SetAudioInputSettings; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_RTCAudio_SetAudioOutputSettingsCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_RTCAudio_SetAudioOutputSettingsCallback EOS_RTCAudio_SetAudioOutputSettings; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_RTCAudio_UnregisterPlatformAudioUserCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_RTCAudio_UnregisterPlatformAudioUserCallback EOS_RTCAudio_UnregisterPlatformAudioUser; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_RTCAudio_UpdateReceivingCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnUpdateReceivingCallbackInternal completionDelegate); - internal static EOS_RTCAudio_UpdateReceivingCallback EOS_RTCAudio_UpdateReceiving; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_RTCAudio_UpdateSendingCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnUpdateSendingCallbackInternal completionDelegate); - internal static EOS_RTCAudio_UpdateSendingCallback EOS_RTCAudio_UpdateSending; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_RTC_AddNotifyDisconnectedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTC.OnDisconnectedCallbackInternal completionDelegate); - internal static EOS_RTC_AddNotifyDisconnectedCallback EOS_RTC_AddNotifyDisconnected; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_RTC_AddNotifyParticipantStatusChangedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTC.OnParticipantStatusChangedCallbackInternal completionDelegate); - internal static EOS_RTC_AddNotifyParticipantStatusChangedCallback EOS_RTC_AddNotifyParticipantStatusChanged; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_RTC_BlockParticipantCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTC.OnBlockParticipantCallbackInternal completionDelegate); - internal static EOS_RTC_BlockParticipantCallback EOS_RTC_BlockParticipant; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_RTC_GetAudioInterfaceCallback(System.IntPtr handle); - internal static EOS_RTC_GetAudioInterfaceCallback EOS_RTC_GetAudioInterface; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_RTC_JoinRoomCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTC.OnJoinRoomCallbackInternal completionDelegate); - internal static EOS_RTC_JoinRoomCallback EOS_RTC_JoinRoom; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_RTC_LeaveRoomCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTC.OnLeaveRoomCallbackInternal completionDelegate); - internal static EOS_RTC_LeaveRoomCallback EOS_RTC_LeaveRoom; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_RTC_RemoveNotifyDisconnectedCallback(System.IntPtr handle, ulong notificationId); - internal static EOS_RTC_RemoveNotifyDisconnectedCallback EOS_RTC_RemoveNotifyDisconnected; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_RTC_RemoveNotifyParticipantStatusChangedCallback(System.IntPtr handle, ulong notificationId); - internal static EOS_RTC_RemoveNotifyParticipantStatusChangedCallback EOS_RTC_RemoveNotifyParticipantStatusChanged; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Reports_SendPlayerBehaviorReportCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Reports.OnSendPlayerBehaviorReportCompleteCallbackInternal completionDelegate); - internal static EOS_Reports_SendPlayerBehaviorReportCallback EOS_Reports_SendPlayerBehaviorReport; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Sanctions_CopyPlayerSanctionByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSanction); - internal static EOS_Sanctions_CopyPlayerSanctionByIndexCallback EOS_Sanctions_CopyPlayerSanctionByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate uint EOS_Sanctions_GetPlayerSanctionCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_Sanctions_GetPlayerSanctionCountCallback EOS_Sanctions_GetPlayerSanctionCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Sanctions_PlayerSanction_ReleaseCallback(System.IntPtr sanction); - internal static EOS_Sanctions_PlayerSanction_ReleaseCallback EOS_Sanctions_PlayerSanction_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Sanctions_QueryActivePlayerSanctionsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sanctions.OnQueryActivePlayerSanctionsCallbackInternal completionDelegate); - internal static EOS_Sanctions_QueryActivePlayerSanctionsCallback EOS_Sanctions_QueryActivePlayerSanctions; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_SessionDetails_Attribute_ReleaseCallback(System.IntPtr sessionAttribute); - internal static EOS_SessionDetails_Attribute_ReleaseCallback EOS_SessionDetails_Attribute_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_SessionDetails_CopyInfoCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionInfo); - internal static EOS_SessionDetails_CopyInfoCallback EOS_SessionDetails_CopyInfo; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_SessionDetails_CopySessionAttributeByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionAttribute); - internal static EOS_SessionDetails_CopySessionAttributeByIndexCallback EOS_SessionDetails_CopySessionAttributeByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_SessionDetails_CopySessionAttributeByKeyCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionAttribute); - internal static EOS_SessionDetails_CopySessionAttributeByKeyCallback EOS_SessionDetails_CopySessionAttributeByKey; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate uint EOS_SessionDetails_GetSessionAttributeCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_SessionDetails_GetSessionAttributeCountCallback EOS_SessionDetails_GetSessionAttributeCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_SessionDetails_Info_ReleaseCallback(System.IntPtr sessionInfo); - internal static EOS_SessionDetails_Info_ReleaseCallback EOS_SessionDetails_Info_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_SessionDetails_ReleaseCallback(System.IntPtr sessionHandle); - internal static EOS_SessionDetails_ReleaseCallback EOS_SessionDetails_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_SessionModification_AddAttributeCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_SessionModification_AddAttributeCallback EOS_SessionModification_AddAttribute; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_SessionModification_ReleaseCallback(System.IntPtr sessionModificationHandle); - internal static EOS_SessionModification_ReleaseCallback EOS_SessionModification_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_SessionModification_RemoveAttributeCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_SessionModification_RemoveAttributeCallback EOS_SessionModification_RemoveAttribute; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_SessionModification_SetBucketIdCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_SessionModification_SetBucketIdCallback EOS_SessionModification_SetBucketId; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_SessionModification_SetHostAddressCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_SessionModification_SetHostAddressCallback EOS_SessionModification_SetHostAddress; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_SessionModification_SetInvitesAllowedCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_SessionModification_SetInvitesAllowedCallback EOS_SessionModification_SetInvitesAllowed; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_SessionModification_SetJoinInProgressAllowedCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_SessionModification_SetJoinInProgressAllowedCallback EOS_SessionModification_SetJoinInProgressAllowed; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_SessionModification_SetMaxPlayersCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_SessionModification_SetMaxPlayersCallback EOS_SessionModification_SetMaxPlayers; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_SessionModification_SetPermissionLevelCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_SessionModification_SetPermissionLevelCallback EOS_SessionModification_SetPermissionLevel; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_SessionSearch_CopySearchResultByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionHandle); - internal static EOS_SessionSearch_CopySearchResultByIndexCallback EOS_SessionSearch_CopySearchResultByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_SessionSearch_FindCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.SessionSearchOnFindCallbackInternal completionDelegate); - internal static EOS_SessionSearch_FindCallback EOS_SessionSearch_Find; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate uint EOS_SessionSearch_GetSearchResultCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_SessionSearch_GetSearchResultCountCallback EOS_SessionSearch_GetSearchResultCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_SessionSearch_ReleaseCallback(System.IntPtr sessionSearchHandle); - internal static EOS_SessionSearch_ReleaseCallback EOS_SessionSearch_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_SessionSearch_RemoveParameterCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_SessionSearch_RemoveParameterCallback EOS_SessionSearch_RemoveParameter; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_SessionSearch_SetMaxResultsCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_SessionSearch_SetMaxResultsCallback EOS_SessionSearch_SetMaxResults; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_SessionSearch_SetParameterCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_SessionSearch_SetParameterCallback EOS_SessionSearch_SetParameter; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_SessionSearch_SetSessionIdCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_SessionSearch_SetSessionIdCallback EOS_SessionSearch_SetSessionId; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_SessionSearch_SetTargetUserIdCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_SessionSearch_SetTargetUserIdCallback EOS_SessionSearch_SetTargetUserId; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_Sessions_AddNotifyJoinSessionAcceptedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnJoinSessionAcceptedCallbackInternal notificationFn); - internal static EOS_Sessions_AddNotifyJoinSessionAcceptedCallback EOS_Sessions_AddNotifyJoinSessionAccepted; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_Sessions_AddNotifySessionInviteAcceptedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnSessionInviteAcceptedCallbackInternal notificationFn); - internal static EOS_Sessions_AddNotifySessionInviteAcceptedCallback EOS_Sessions_AddNotifySessionInviteAccepted; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_Sessions_AddNotifySessionInviteReceivedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnSessionInviteReceivedCallbackInternal notificationFn); - internal static EOS_Sessions_AddNotifySessionInviteReceivedCallback EOS_Sessions_AddNotifySessionInviteReceived; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Sessions_CopyActiveSessionHandleCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionHandle); - internal static EOS_Sessions_CopyActiveSessionHandleCallback EOS_Sessions_CopyActiveSessionHandle; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Sessions_CopySessionHandleByInviteIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionHandle); - internal static EOS_Sessions_CopySessionHandleByInviteIdCallback EOS_Sessions_CopySessionHandleByInviteId; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Sessions_CopySessionHandleByUiEventIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionHandle); - internal static EOS_Sessions_CopySessionHandleByUiEventIdCallback EOS_Sessions_CopySessionHandleByUiEventId; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Sessions_CopySessionHandleForPresenceCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionHandle); - internal static EOS_Sessions_CopySessionHandleForPresenceCallback EOS_Sessions_CopySessionHandleForPresence; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Sessions_CreateSessionModificationCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionModificationHandle); - internal static EOS_Sessions_CreateSessionModificationCallback EOS_Sessions_CreateSessionModification; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Sessions_CreateSessionSearchCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionSearchHandle); - internal static EOS_Sessions_CreateSessionSearchCallback EOS_Sessions_CreateSessionSearch; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Sessions_DestroySessionCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnDestroySessionCallbackInternal completionDelegate); - internal static EOS_Sessions_DestroySessionCallback EOS_Sessions_DestroySession; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Sessions_DumpSessionStateCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_Sessions_DumpSessionStateCallback EOS_Sessions_DumpSessionState; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Sessions_EndSessionCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnEndSessionCallbackInternal completionDelegate); - internal static EOS_Sessions_EndSessionCallback EOS_Sessions_EndSession; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate uint EOS_Sessions_GetInviteCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_Sessions_GetInviteCountCallback EOS_Sessions_GetInviteCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Sessions_GetInviteIdByIndexCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref int inOutBufferLength); - internal static EOS_Sessions_GetInviteIdByIndexCallback EOS_Sessions_GetInviteIdByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Sessions_IsUserInSessionCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_Sessions_IsUserInSessionCallback EOS_Sessions_IsUserInSession; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Sessions_JoinSessionCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnJoinSessionCallbackInternal completionDelegate); - internal static EOS_Sessions_JoinSessionCallback EOS_Sessions_JoinSession; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Sessions_QueryInvitesCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnQueryInvitesCallbackInternal completionDelegate); - internal static EOS_Sessions_QueryInvitesCallback EOS_Sessions_QueryInvites; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Sessions_RegisterPlayersCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnRegisterPlayersCallbackInternal completionDelegate); - internal static EOS_Sessions_RegisterPlayersCallback EOS_Sessions_RegisterPlayers; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Sessions_RejectInviteCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnRejectInviteCallbackInternal completionDelegate); - internal static EOS_Sessions_RejectInviteCallback EOS_Sessions_RejectInvite; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Sessions_RemoveNotifyJoinSessionAcceptedCallback(System.IntPtr handle, ulong inId); - internal static EOS_Sessions_RemoveNotifyJoinSessionAcceptedCallback EOS_Sessions_RemoveNotifyJoinSessionAccepted; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Sessions_RemoveNotifySessionInviteAcceptedCallback(System.IntPtr handle, ulong inId); - internal static EOS_Sessions_RemoveNotifySessionInviteAcceptedCallback EOS_Sessions_RemoveNotifySessionInviteAccepted; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Sessions_RemoveNotifySessionInviteReceivedCallback(System.IntPtr handle, ulong inId); - internal static EOS_Sessions_RemoveNotifySessionInviteReceivedCallback EOS_Sessions_RemoveNotifySessionInviteReceived; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Sessions_SendInviteCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnSendInviteCallbackInternal completionDelegate); - internal static EOS_Sessions_SendInviteCallback EOS_Sessions_SendInvite; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Sessions_StartSessionCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnStartSessionCallbackInternal completionDelegate); - internal static EOS_Sessions_StartSessionCallback EOS_Sessions_StartSession; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Sessions_UnregisterPlayersCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnUnregisterPlayersCallbackInternal completionDelegate); - internal static EOS_Sessions_UnregisterPlayersCallback EOS_Sessions_UnregisterPlayers; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Sessions_UpdateSessionCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnUpdateSessionCallbackInternal completionDelegate); - internal static EOS_Sessions_UpdateSessionCallback EOS_Sessions_UpdateSession; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Sessions_UpdateSessionModificationCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionModificationHandle); - internal static EOS_Sessions_UpdateSessionModificationCallback EOS_Sessions_UpdateSessionModification; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_ShutdownCallback(); - internal static EOS_ShutdownCallback EOS_Shutdown; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Stats_CopyStatByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outStat); - internal static EOS_Stats_CopyStatByIndexCallback EOS_Stats_CopyStatByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_Stats_CopyStatByNameCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outStat); - internal static EOS_Stats_CopyStatByNameCallback EOS_Stats_CopyStatByName; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate uint EOS_Stats_GetStatsCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_Stats_GetStatsCountCallback EOS_Stats_GetStatsCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Stats_IngestStatCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Stats.OnIngestStatCompleteCallbackInternal completionDelegate); - internal static EOS_Stats_IngestStatCallback EOS_Stats_IngestStat; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Stats_QueryStatsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Stats.OnQueryStatsCompleteCallbackInternal completionDelegate); - internal static EOS_Stats_QueryStatsCallback EOS_Stats_QueryStats; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_Stats_Stat_ReleaseCallback(System.IntPtr stat); - internal static EOS_Stats_Stat_ReleaseCallback EOS_Stats_Stat_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_TitleStorageFileTransferRequest_CancelRequestCallback(System.IntPtr handle); - internal static EOS_TitleStorageFileTransferRequest_CancelRequestCallback EOS_TitleStorageFileTransferRequest_CancelRequest; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_TitleStorageFileTransferRequest_GetFileRequestStateCallback(System.IntPtr handle); - internal static EOS_TitleStorageFileTransferRequest_GetFileRequestStateCallback EOS_TitleStorageFileTransferRequest_GetFileRequestState; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_TitleStorageFileTransferRequest_GetFilenameCallback(System.IntPtr handle, uint filenameStringBufferSizeBytes, System.IntPtr outStringBuffer, ref int outStringLength); - internal static EOS_TitleStorageFileTransferRequest_GetFilenameCallback EOS_TitleStorageFileTransferRequest_GetFilename; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_TitleStorageFileTransferRequest_ReleaseCallback(System.IntPtr titleStorageFileTransferHandle); - internal static EOS_TitleStorageFileTransferRequest_ReleaseCallback EOS_TitleStorageFileTransferRequest_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_TitleStorage_CopyFileMetadataAtIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outMetadata); - internal static EOS_TitleStorage_CopyFileMetadataAtIndexCallback EOS_TitleStorage_CopyFileMetadataAtIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_TitleStorage_CopyFileMetadataByFilenameCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outMetadata); - internal static EOS_TitleStorage_CopyFileMetadataByFilenameCallback EOS_TitleStorage_CopyFileMetadataByFilename; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_TitleStorage_DeleteCacheCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, TitleStorage.OnDeleteCacheCompleteCallbackInternal completionCallback); - internal static EOS_TitleStorage_DeleteCacheCallback EOS_TitleStorage_DeleteCache; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_TitleStorage_FileMetadata_ReleaseCallback(System.IntPtr fileMetadata); - internal static EOS_TitleStorage_FileMetadata_ReleaseCallback EOS_TitleStorage_FileMetadata_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate uint EOS_TitleStorage_GetFileMetadataCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_TitleStorage_GetFileMetadataCountCallback EOS_TitleStorage_GetFileMetadataCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_TitleStorage_QueryFileCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, TitleStorage.OnQueryFileCompleteCallbackInternal completionCallback); - internal static EOS_TitleStorage_QueryFileCallback EOS_TitleStorage_QueryFile; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_TitleStorage_QueryFileListCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, TitleStorage.OnQueryFileListCompleteCallbackInternal completionCallback); - internal static EOS_TitleStorage_QueryFileListCallback EOS_TitleStorage_QueryFileList; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate System.IntPtr EOS_TitleStorage_ReadFileCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, TitleStorage.OnReadFileCompleteCallbackInternal completionCallback); - internal static EOS_TitleStorage_ReadFileCallback EOS_TitleStorage_ReadFile; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_UI_AcknowledgeEventIdCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_UI_AcknowledgeEventIdCallback EOS_UI_AcknowledgeEventId; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ulong EOS_UI_AddNotifyDisplaySettingsUpdatedCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, UI.OnDisplaySettingsUpdatedCallbackInternal notificationFn); - internal static EOS_UI_AddNotifyDisplaySettingsUpdatedCallback EOS_UI_AddNotifyDisplaySettingsUpdated; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate int EOS_UI_GetFriendsVisibleCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_UI_GetFriendsVisibleCallback EOS_UI_GetFriendsVisible; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate UI.NotificationLocation EOS_UI_GetNotificationLocationPreferenceCallback(System.IntPtr handle); - internal static EOS_UI_GetNotificationLocationPreferenceCallback EOS_UI_GetNotificationLocationPreference; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate UI.KeyCombination EOS_UI_GetToggleFriendsKeyCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_UI_GetToggleFriendsKeyCallback EOS_UI_GetToggleFriendsKey; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_UI_HideFriendsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, UI.OnHideFriendsCallbackInternal completionDelegate); - internal static EOS_UI_HideFriendsCallback EOS_UI_HideFriends; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate int EOS_UI_IsValidKeyCombinationCallback(System.IntPtr handle, UI.KeyCombination keyCombination); - internal static EOS_UI_IsValidKeyCombinationCallback EOS_UI_IsValidKeyCombination; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_UI_RemoveNotifyDisplaySettingsUpdatedCallback(System.IntPtr handle, ulong id); - internal static EOS_UI_RemoveNotifyDisplaySettingsUpdatedCallback EOS_UI_RemoveNotifyDisplaySettingsUpdated; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_UI_SetDisplayPreferenceCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_UI_SetDisplayPreferenceCallback EOS_UI_SetDisplayPreference; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_UI_SetToggleFriendsKeyCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_UI_SetToggleFriendsKeyCallback EOS_UI_SetToggleFriendsKey; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_UI_ShowFriendsCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, UI.OnShowFriendsCallbackInternal completionDelegate); - internal static EOS_UI_ShowFriendsCallback EOS_UI_ShowFriends; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_UserInfo_CopyExternalUserInfoByAccountIdCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalUserInfo); - internal static EOS_UserInfo_CopyExternalUserInfoByAccountIdCallback EOS_UserInfo_CopyExternalUserInfoByAccountId; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_UserInfo_CopyExternalUserInfoByAccountTypeCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalUserInfo); - internal static EOS_UserInfo_CopyExternalUserInfoByAccountTypeCallback EOS_UserInfo_CopyExternalUserInfoByAccountType; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_UserInfo_CopyExternalUserInfoByIndexCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalUserInfo); - internal static EOS_UserInfo_CopyExternalUserInfoByIndexCallback EOS_UserInfo_CopyExternalUserInfoByIndex; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate Result EOS_UserInfo_CopyUserInfoCallback(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outUserInfo); - internal static EOS_UserInfo_CopyUserInfoCallback EOS_UserInfo_CopyUserInfo; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_UserInfo_ExternalUserInfo_ReleaseCallback(System.IntPtr externalUserInfo); - internal static EOS_UserInfo_ExternalUserInfo_ReleaseCallback EOS_UserInfo_ExternalUserInfo_Release; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate uint EOS_UserInfo_GetExternalUserInfoCountCallback(System.IntPtr handle, System.IntPtr options); - internal static EOS_UserInfo_GetExternalUserInfoCountCallback EOS_UserInfo_GetExternalUserInfoCount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_UserInfo_QueryUserInfoCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, UserInfo.OnQueryUserInfoCallbackInternal completionDelegate); - internal static EOS_UserInfo_QueryUserInfoCallback EOS_UserInfo_QueryUserInfo; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_UserInfo_QueryUserInfoByDisplayNameCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, UserInfo.OnQueryUserInfoByDisplayNameCallbackInternal completionDelegate); - internal static EOS_UserInfo_QueryUserInfoByDisplayNameCallback EOS_UserInfo_QueryUserInfoByDisplayName; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_UserInfo_QueryUserInfoByExternalAccountCallback(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, UserInfo.OnQueryUserInfoByExternalAccountCallbackInternal completionDelegate); - internal static EOS_UserInfo_QueryUserInfoByExternalAccountCallback EOS_UserInfo_QueryUserInfoByExternalAccount; - - [UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void EOS_UserInfo_ReleaseCallback(System.IntPtr userInfo); - internal static EOS_UserInfo_ReleaseCallback EOS_UserInfo_Release; -#endif - -#if !EOS_DYNAMIC_BINDINGS - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_Achievements_AddNotifyAchievementsUnlocked(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Achievements.OnAchievementsUnlockedCallbackInternal notificationFn); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_Achievements_AddNotifyAchievementsUnlockedV2(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Achievements.OnAchievementsUnlockedCallbackV2Internal notificationFn); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Achievements_CopyAchievementDefinitionByAchievementId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outDefinition); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Achievements_CopyAchievementDefinitionByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outDefinition); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Achievements_CopyAchievementDefinitionV2ByAchievementId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outDefinition); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Achievements_CopyAchievementDefinitionV2ByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outDefinition); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Achievements_CopyPlayerAchievementByAchievementId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAchievement); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Achievements_CopyPlayerAchievementByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAchievement); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Achievements_CopyUnlockedAchievementByAchievementId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAchievement); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Achievements_CopyUnlockedAchievementByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAchievement); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Achievements_DefinitionV2_Release(System.IntPtr achievementDefinition); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Achievements_Definition_Release(System.IntPtr achievementDefinition); - - [DllImport(Config.LibraryName)] - internal static extern uint EOS_Achievements_GetAchievementDefinitionCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern uint EOS_Achievements_GetPlayerAchievementCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern uint EOS_Achievements_GetUnlockedAchievementCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Achievements_PlayerAchievement_Release(System.IntPtr achievement); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Achievements_QueryDefinitions(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Achievements.OnQueryDefinitionsCompleteCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Achievements_QueryPlayerAchievements(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Achievements.OnQueryPlayerAchievementsCompleteCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Achievements_RemoveNotifyAchievementsUnlocked(System.IntPtr handle, ulong inId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Achievements_UnlockAchievements(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Achievements.OnUnlockAchievementsCompleteCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Achievements_UnlockedAchievement_Release(System.IntPtr achievement); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_ActiveSession_CopyInfo(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outActiveSessionInfo); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_ActiveSession_GetRegisteredPlayerByIndex(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern uint EOS_ActiveSession_GetRegisteredPlayerCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_ActiveSession_Info_Release(System.IntPtr activeSessionInfo); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_ActiveSession_Release(System.IntPtr activeSessionHandle); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatClient_AddExternalIntegrityCatalog(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_AntiCheatClient_AddNotifyMessageToPeer(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, AntiCheatClient.OnMessageToPeerCallbackInternal notificationFn); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_AntiCheatClient_AddNotifyMessageToServer(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, AntiCheatClient.OnMessageToServerCallbackInternal notificationFn); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_AntiCheatClient_AddNotifyPeerActionRequired(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, AntiCheatClient.OnPeerActionRequiredCallbackInternal notificationFn); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_AntiCheatClient_AddNotifyPeerAuthStatusChanged(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, AntiCheatClient.OnPeerAuthStatusChangedCallbackInternal notificationFn); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatClient_BeginSession(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatClient_EndSession(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatClient_GetProtectMessageOutputLength(System.IntPtr handle, System.IntPtr options, ref uint outBufferLengthBytes); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatClient_PollStatus(System.IntPtr handle, System.IntPtr options, AntiCheatClient.AntiCheatClientViolationType violationType, System.IntPtr outMessage); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatClient_ProtectMessage(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref uint outBufferLengthBytes); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatClient_ReceiveMessageFromPeer(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatClient_ReceiveMessageFromServer(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatClient_RegisterPeer(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_AntiCheatClient_RemoveNotifyMessageToPeer(System.IntPtr handle, ulong notificationId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_AntiCheatClient_RemoveNotifyMessageToServer(System.IntPtr handle, ulong notificationId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_AntiCheatClient_RemoveNotifyPeerActionRequired(System.IntPtr handle, ulong notificationId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_AntiCheatClient_RemoveNotifyPeerAuthStatusChanged(System.IntPtr handle, ulong notificationId); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatClient_UnprotectMessage(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref uint outBufferLengthBytes); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatClient_UnregisterPeer(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_AntiCheatServer_AddNotifyClientActionRequired(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, AntiCheatServer.OnClientActionRequiredCallbackInternal notificationFn); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_AntiCheatServer_AddNotifyClientAuthStatusChanged(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, AntiCheatServer.OnClientAuthStatusChangedCallbackInternal notificationFn); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_AntiCheatServer_AddNotifyMessageToClient(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, AntiCheatServer.OnMessageToClientCallbackInternal notificationFn); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatServer_BeginSession(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatServer_EndSession(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatServer_GetProtectMessageOutputLength(System.IntPtr handle, System.IntPtr options, ref uint outBufferLengthBytes); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatServer_LogEvent(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatServer_LogGameRoundEnd(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatServer_LogGameRoundStart(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatServer_LogPlayerDespawn(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatServer_LogPlayerRevive(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatServer_LogPlayerSpawn(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatServer_LogPlayerTakeDamage(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatServer_LogPlayerTick(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatServer_LogPlayerUseAbility(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatServer_LogPlayerUseWeapon(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatServer_ProtectMessage(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref uint outBufferLengthBytes); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatServer_ReceiveMessageFromClient(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatServer_RegisterClient(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatServer_RegisterEvent(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_AntiCheatServer_RemoveNotifyClientActionRequired(System.IntPtr handle, ulong notificationId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_AntiCheatServer_RemoveNotifyClientAuthStatusChanged(System.IntPtr handle, ulong notificationId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_AntiCheatServer_RemoveNotifyMessageToClient(System.IntPtr handle, ulong notificationId); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatServer_SetClientDetails(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatServer_SetClientNetworkState(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatServer_SetGameSessionId(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatServer_UnprotectMessage(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref uint outBufferLengthBytes); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_AntiCheatServer_UnregisterClient(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_Auth_AddNotifyLoginStatusChanged(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Auth.OnLoginStatusChangedCallbackInternal notification); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Auth_CopyUserAuthToken(System.IntPtr handle, System.IntPtr options, System.IntPtr localUserId, ref System.IntPtr outUserAuthToken); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Auth_DeletePersistentAuth(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Auth.OnDeletePersistentAuthCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_Auth_GetLoggedInAccountByIndex(System.IntPtr handle, int index); - - [DllImport(Config.LibraryName)] - internal static extern int EOS_Auth_GetLoggedInAccountsCount(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern LoginStatus EOS_Auth_GetLoginStatus(System.IntPtr handle, System.IntPtr localUserId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Auth_LinkAccount(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Auth.OnLinkAccountCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Auth_Login(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Auth.OnLoginCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Auth_Logout(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Auth.OnLogoutCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Auth_RemoveNotifyLoginStatusChanged(System.IntPtr handle, ulong inId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Auth_Token_Release(System.IntPtr authToken); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Auth_VerifyUserAuth(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Auth.OnVerifyUserAuthCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_ByteArray_ToString(System.IntPtr byteArray, uint length, System.IntPtr outBuffer, ref uint inOutBufferLength); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_Connect_AddNotifyAuthExpiration(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnAuthExpirationCallbackInternal notification); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_Connect_AddNotifyLoginStatusChanged(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnLoginStatusChangedCallbackInternal notification); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Connect_CopyProductUserExternalAccountByAccountId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalAccountInfo); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Connect_CopyProductUserExternalAccountByAccountType(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalAccountInfo); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Connect_CopyProductUserExternalAccountByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalAccountInfo); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Connect_CopyProductUserInfo(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalAccountInfo); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Connect_CreateDeviceId(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnCreateDeviceIdCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Connect_CreateUser(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnCreateUserCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Connect_DeleteDeviceId(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnDeleteDeviceIdCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Connect_ExternalAccountInfo_Release(System.IntPtr externalAccountInfo); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_Connect_GetExternalAccountMapping(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_Connect_GetLoggedInUserByIndex(System.IntPtr handle, int index); - - [DllImport(Config.LibraryName)] - internal static extern int EOS_Connect_GetLoggedInUsersCount(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern LoginStatus EOS_Connect_GetLoginStatus(System.IntPtr handle, System.IntPtr localUserId); - - [DllImport(Config.LibraryName)] - internal static extern uint EOS_Connect_GetProductUserExternalAccountCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Connect_GetProductUserIdMapping(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref int inOutBufferLength); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Connect_LinkAccount(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnLinkAccountCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Connect_Login(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnLoginCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Connect_QueryExternalAccountMappings(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnQueryExternalAccountMappingsCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Connect_QueryProductUserIdMappings(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnQueryProductUserIdMappingsCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Connect_RemoveNotifyAuthExpiration(System.IntPtr handle, ulong inId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Connect_RemoveNotifyLoginStatusChanged(System.IntPtr handle, ulong inId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Connect_TransferDeviceIdAccount(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnTransferDeviceIdAccountCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Connect_UnlinkAccount(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Connect.OnUnlinkAccountCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_ContinuanceToken_ToString(System.IntPtr continuanceToken, System.IntPtr outBuffer, ref int inOutBufferLength); - - [DllImport(Config.LibraryName)] - internal static extern int EOS_EResult_IsOperationComplete(Result result); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_EResult_ToString(Result result); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Ecom_CatalogItem_Release(System.IntPtr catalogItem); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Ecom_CatalogOffer_Release(System.IntPtr catalogOffer); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Ecom_CatalogRelease_Release(System.IntPtr catalogRelease); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Ecom_Checkout(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Ecom.OnCheckoutCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Ecom_CopyEntitlementById(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outEntitlement); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Ecom_CopyEntitlementByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outEntitlement); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Ecom_CopyEntitlementByNameAndIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outEntitlement); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Ecom_CopyItemById(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outItem); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Ecom_CopyItemImageInfoByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outImageInfo); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Ecom_CopyItemReleaseByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outRelease); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Ecom_CopyOfferById(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outOffer); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Ecom_CopyOfferByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outOffer); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Ecom_CopyOfferImageInfoByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outImageInfo); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Ecom_CopyOfferItemByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outItem); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Ecom_CopyTransactionById(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outTransaction); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Ecom_CopyTransactionByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outTransaction); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Ecom_Entitlement_Release(System.IntPtr entitlement); - - [DllImport(Config.LibraryName)] - internal static extern uint EOS_Ecom_GetEntitlementsByNameCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern uint EOS_Ecom_GetEntitlementsCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern uint EOS_Ecom_GetItemImageInfoCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern uint EOS_Ecom_GetItemReleaseCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern uint EOS_Ecom_GetOfferCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern uint EOS_Ecom_GetOfferImageInfoCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern uint EOS_Ecom_GetOfferItemCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern uint EOS_Ecom_GetTransactionCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Ecom_KeyImageInfo_Release(System.IntPtr keyImageInfo); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Ecom_QueryEntitlements(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Ecom.OnQueryEntitlementsCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Ecom_QueryOffers(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Ecom.OnQueryOffersCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Ecom_QueryOwnership(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Ecom.OnQueryOwnershipCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Ecom_QueryOwnershipToken(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Ecom.OnQueryOwnershipTokenCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Ecom_RedeemEntitlements(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Ecom.OnRedeemEntitlementsCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Ecom_Transaction_CopyEntitlementByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outEntitlement); - - [DllImport(Config.LibraryName)] - internal static extern uint EOS_Ecom_Transaction_GetEntitlementsCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Ecom_Transaction_GetTransactionId(System.IntPtr handle, System.IntPtr outBuffer, ref int inOutBufferLength); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Ecom_Transaction_Release(System.IntPtr transaction); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_EpicAccountId_FromString(System.IntPtr accountIdString); - - [DllImport(Config.LibraryName)] - internal static extern int EOS_EpicAccountId_IsValid(System.IntPtr accountId); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_EpicAccountId_ToString(System.IntPtr accountId, System.IntPtr outBuffer, ref int inOutBufferLength); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Friends_AcceptInvite(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Friends.OnAcceptInviteCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_Friends_AddNotifyFriendsUpdate(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Friends.OnFriendsUpdateCallbackInternal friendsUpdateHandler); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_Friends_GetFriendAtIndex(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern int EOS_Friends_GetFriendsCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Friends.FriendsStatus EOS_Friends_GetStatus(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Friends_QueryFriends(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Friends.OnQueryFriendsCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Friends_RejectInvite(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Friends.OnRejectInviteCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Friends_RemoveNotifyFriendsUpdate(System.IntPtr handle, ulong notificationId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Friends_SendInvite(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Friends.OnSendInviteCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Initialize(System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_KWS_AddNotifyPermissionsUpdateReceived(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, KWS.OnPermissionsUpdateReceivedCallbackInternal notificationFn); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_KWS_CopyPermissionByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outPermission); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_KWS_CreateUser(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, KWS.OnCreateUserCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_KWS_GetPermissionByKey(System.IntPtr handle, System.IntPtr options, ref KWS.KWSPermissionStatus outPermission); - - [DllImport(Config.LibraryName)] - internal static extern int EOS_KWS_GetPermissionsCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_KWS_PermissionStatus_Release(System.IntPtr permissionStatus); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_KWS_QueryAgeGate(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, KWS.OnQueryAgeGateCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_KWS_QueryPermissions(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, KWS.OnQueryPermissionsCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_KWS_RemoveNotifyPermissionsUpdateReceived(System.IntPtr handle, ulong inId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_KWS_RequestPermissions(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, KWS.OnRequestPermissionsCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_KWS_UpdateParentEmail(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, KWS.OnUpdateParentEmailCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Leaderboards_CopyLeaderboardDefinitionByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLeaderboardDefinition); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Leaderboards_CopyLeaderboardDefinitionByLeaderboardId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLeaderboardDefinition); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Leaderboards_CopyLeaderboardRecordByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLeaderboardRecord); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Leaderboards_CopyLeaderboardRecordByUserId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLeaderboardRecord); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Leaderboards_CopyLeaderboardUserScoreByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLeaderboardUserScore); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Leaderboards_CopyLeaderboardUserScoreByUserId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLeaderboardUserScore); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Leaderboards_Definition_Release(System.IntPtr leaderboardDefinition); - - [DllImport(Config.LibraryName)] - internal static extern uint EOS_Leaderboards_GetLeaderboardDefinitionCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern uint EOS_Leaderboards_GetLeaderboardRecordCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern uint EOS_Leaderboards_GetLeaderboardUserScoreCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Leaderboards_LeaderboardDefinition_Release(System.IntPtr leaderboardDefinition); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Leaderboards_LeaderboardRecord_Release(System.IntPtr leaderboardRecord); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Leaderboards_LeaderboardUserScore_Release(System.IntPtr leaderboardUserScore); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Leaderboards_QueryLeaderboardDefinitions(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Leaderboards.OnQueryLeaderboardDefinitionsCompleteCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Leaderboards_QueryLeaderboardRanks(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Leaderboards.OnQueryLeaderboardRanksCompleteCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Leaderboards_QueryLeaderboardUserScores(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Leaderboards.OnQueryLeaderboardUserScoresCompleteCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_LobbyDetails_CopyAttributeByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAttribute); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_LobbyDetails_CopyAttributeByKey(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAttribute); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_LobbyDetails_CopyInfo(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbyDetailsInfo); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_LobbyDetails_CopyMemberAttributeByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAttribute); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_LobbyDetails_CopyMemberAttributeByKey(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outAttribute); - - [DllImport(Config.LibraryName)] - internal static extern uint EOS_LobbyDetails_GetAttributeCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_LobbyDetails_GetLobbyOwner(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern uint EOS_LobbyDetails_GetMemberAttributeCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_LobbyDetails_GetMemberByIndex(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern uint EOS_LobbyDetails_GetMemberCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_LobbyDetails_Info_Release(System.IntPtr lobbyDetailsInfo); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_LobbyDetails_Release(System.IntPtr lobbyHandle); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_LobbyModification_AddAttribute(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_LobbyModification_AddMemberAttribute(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_LobbyModification_Release(System.IntPtr lobbyModificationHandle); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_LobbyModification_RemoveAttribute(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_LobbyModification_RemoveMemberAttribute(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_LobbyModification_SetBucketId(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_LobbyModification_SetInvitesAllowed(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_LobbyModification_SetMaxMembers(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_LobbyModification_SetPermissionLevel(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_LobbySearch_CopySearchResultByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbyDetailsHandle); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_LobbySearch_Find(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.LobbySearchOnFindCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern uint EOS_LobbySearch_GetSearchResultCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_LobbySearch_Release(System.IntPtr lobbySearchHandle); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_LobbySearch_RemoveParameter(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_LobbySearch_SetLobbyId(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_LobbySearch_SetMaxResults(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_LobbySearch_SetParameter(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_LobbySearch_SetTargetUserId(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_Lobby_AddNotifyJoinLobbyAccepted(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnJoinLobbyAcceptedCallbackInternal notificationFn); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_Lobby_AddNotifyLobbyInviteAccepted(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnLobbyInviteAcceptedCallbackInternal notificationFn); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_Lobby_AddNotifyLobbyInviteReceived(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnLobbyInviteReceivedCallbackInternal notificationFn); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_Lobby_AddNotifyLobbyMemberStatusReceived(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnLobbyMemberStatusReceivedCallbackInternal notificationFn); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_Lobby_AddNotifyLobbyMemberUpdateReceived(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnLobbyMemberUpdateReceivedCallbackInternal notificationFn); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_Lobby_AddNotifyLobbyUpdateReceived(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnLobbyUpdateReceivedCallbackInternal notificationFn); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_Lobby_AddNotifyRTCRoomConnectionChanged(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnRTCRoomConnectionChangedCallbackInternal notificationFn); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Lobby_Attribute_Release(System.IntPtr lobbyAttribute); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Lobby_CopyLobbyDetailsHandle(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbyDetailsHandle); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Lobby_CopyLobbyDetailsHandleByInviteId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbyDetailsHandle); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Lobby_CopyLobbyDetailsHandleByUiEventId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbyDetailsHandle); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Lobby_CreateLobby(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnCreateLobbyCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Lobby_CreateLobbySearch(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbySearchHandle); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Lobby_DestroyLobby(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnDestroyLobbyCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern uint EOS_Lobby_GetInviteCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Lobby_GetInviteIdByIndex(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref int inOutBufferLength); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Lobby_GetRTCRoomName(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref uint inOutBufferLength); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Lobby_IsRTCRoomConnected(System.IntPtr handle, System.IntPtr options, ref int bOutIsConnected); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Lobby_JoinLobby(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnJoinLobbyCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Lobby_KickMember(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnKickMemberCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Lobby_LeaveLobby(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnLeaveLobbyCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Lobby_PromoteMember(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnPromoteMemberCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Lobby_QueryInvites(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnQueryInvitesCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Lobby_RejectInvite(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnRejectInviteCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Lobby_RemoveNotifyJoinLobbyAccepted(System.IntPtr handle, ulong inId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Lobby_RemoveNotifyLobbyInviteAccepted(System.IntPtr handle, ulong inId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Lobby_RemoveNotifyLobbyInviteReceived(System.IntPtr handle, ulong inId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Lobby_RemoveNotifyLobbyMemberStatusReceived(System.IntPtr handle, ulong inId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Lobby_RemoveNotifyLobbyMemberUpdateReceived(System.IntPtr handle, ulong inId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Lobby_RemoveNotifyLobbyUpdateReceived(System.IntPtr handle, ulong inId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Lobby_RemoveNotifyRTCRoomConnectionChanged(System.IntPtr handle, ulong inId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Lobby_SendInvite(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnSendInviteCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Lobby_UpdateLobby(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Lobby.OnUpdateLobbyCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Lobby_UpdateLobbyModification(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outLobbyModificationHandle); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Logging_SetCallback(Logging.LogMessageFuncInternal callback); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Logging_SetLogLevel(Logging.LogCategory logCategory, Logging.LogLevel logLevel); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Metrics_BeginPlayerSession(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Metrics_EndPlayerSession(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Mods_CopyModInfo(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outEnumeratedMods); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Mods_EnumerateMods(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Mods.OnEnumerateModsCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Mods_InstallMod(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Mods.OnInstallModCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Mods_ModInfo_Release(System.IntPtr modInfo); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Mods_UninstallMod(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Mods.OnUninstallModCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Mods_UpdateMod(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Mods.OnUpdateModCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_P2P_AcceptConnection(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_P2P_AddNotifyIncomingPacketQueueFull(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, P2P.OnIncomingPacketQueueFullCallbackInternal incomingPacketQueueFullHandler); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_P2P_AddNotifyPeerConnectionClosed(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, P2P.OnRemoteConnectionClosedCallbackInternal connectionClosedHandler); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_P2P_AddNotifyPeerConnectionRequest(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, P2P.OnIncomingConnectionRequestCallbackInternal connectionRequestHandler); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_P2P_CloseConnection(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_P2P_CloseConnections(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_P2P_GetNATType(System.IntPtr handle, System.IntPtr options, ref P2P.NATType outNATType); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_P2P_GetNextReceivedPacketSize(System.IntPtr handle, System.IntPtr options, ref uint outPacketSizeBytes); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_P2P_GetPacketQueueInfo(System.IntPtr handle, System.IntPtr options, ref P2P.PacketQueueInfoInternal outPacketQueueInfo); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_P2P_GetPortRange(System.IntPtr handle, System.IntPtr options, ref ushort outPort, ref ushort outNumAdditionalPortsToTry); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_P2P_GetRelayControl(System.IntPtr handle, System.IntPtr options, ref P2P.RelayControl outRelayControl); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_P2P_QueryNATType(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, P2P.OnQueryNATTypeCompleteCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_P2P_ReceivePacket(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outPeerId, ref P2P.SocketIdInternal outSocketId, ref byte outChannel, System.IntPtr outData, ref uint outBytesWritten); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_P2P_RemoveNotifyIncomingPacketQueueFull(System.IntPtr handle, ulong notificationId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_P2P_RemoveNotifyPeerConnectionClosed(System.IntPtr handle, ulong notificationId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_P2P_RemoveNotifyPeerConnectionRequest(System.IntPtr handle, ulong notificationId); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_P2P_SendPacket(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_P2P_SetPacketQueueSize(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_P2P_SetPortRange(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_P2P_SetRelayControl(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Platform_CheckForLauncherAndRestart(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_Platform_Create(System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_Platform_GetAchievementsInterface(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Platform_GetActiveCountryCode(System.IntPtr handle, System.IntPtr localUserId, System.IntPtr outBuffer, ref int inOutBufferLength); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Platform_GetActiveLocaleCode(System.IntPtr handle, System.IntPtr localUserId, System.IntPtr outBuffer, ref int inOutBufferLength); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_Platform_GetAntiCheatClientInterface(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_Platform_GetAntiCheatServerInterface(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_Platform_GetAuthInterface(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_Platform_GetConnectInterface(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_Platform_GetEcomInterface(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_Platform_GetFriendsInterface(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_Platform_GetKWSInterface(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_Platform_GetLeaderboardsInterface(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_Platform_GetLobbyInterface(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_Platform_GetMetricsInterface(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_Platform_GetModsInterface(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Platform_GetOverrideCountryCode(System.IntPtr handle, System.IntPtr outBuffer, ref int inOutBufferLength); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Platform_GetOverrideLocaleCode(System.IntPtr handle, System.IntPtr outBuffer, ref int inOutBufferLength); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_Platform_GetP2PInterface(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_Platform_GetPlayerDataStorageInterface(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_Platform_GetPresenceInterface(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_Platform_GetRTCAdminInterface(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_Platform_GetRTCInterface(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_Platform_GetReportsInterface(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_Platform_GetSanctionsInterface(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_Platform_GetSessionsInterface(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_Platform_GetStatsInterface(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_Platform_GetTitleStorageInterface(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_Platform_GetUIInterface(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_Platform_GetUserInfoInterface(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Platform_Release(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Platform_SetOverrideCountryCode(System.IntPtr handle, System.IntPtr newCountryCode); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Platform_SetOverrideLocaleCode(System.IntPtr handle, System.IntPtr newLocaleCode); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Platform_Tick(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_PlayerDataStorageFileTransferRequest_CancelRequest(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_PlayerDataStorageFileTransferRequest_GetFileRequestState(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_PlayerDataStorageFileTransferRequest_GetFilename(System.IntPtr handle, uint filenameStringBufferSizeBytes, System.IntPtr outStringBuffer, ref int outStringLength); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_PlayerDataStorageFileTransferRequest_Release(System.IntPtr playerDataStorageFileTransferHandle); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_PlayerDataStorage_CopyFileMetadataAtIndex(System.IntPtr handle, System.IntPtr copyFileMetadataOptions, ref System.IntPtr outMetadata); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_PlayerDataStorage_CopyFileMetadataByFilename(System.IntPtr handle, System.IntPtr copyFileMetadataOptions, ref System.IntPtr outMetadata); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_PlayerDataStorage_DeleteCache(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, PlayerDataStorage.OnDeleteCacheCompleteCallbackInternal completionCallback); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_PlayerDataStorage_DeleteFile(System.IntPtr handle, System.IntPtr deleteOptions, System.IntPtr clientData, PlayerDataStorage.OnDeleteFileCompleteCallbackInternal completionCallback); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_PlayerDataStorage_DuplicateFile(System.IntPtr handle, System.IntPtr duplicateOptions, System.IntPtr clientData, PlayerDataStorage.OnDuplicateFileCompleteCallbackInternal completionCallback); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_PlayerDataStorage_FileMetadata_Release(System.IntPtr fileMetadata); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_PlayerDataStorage_GetFileMetadataCount(System.IntPtr handle, System.IntPtr getFileMetadataCountOptions, ref int outFileMetadataCount); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_PlayerDataStorage_QueryFile(System.IntPtr handle, System.IntPtr queryFileOptions, System.IntPtr clientData, PlayerDataStorage.OnQueryFileCompleteCallbackInternal completionCallback); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_PlayerDataStorage_QueryFileList(System.IntPtr handle, System.IntPtr queryFileListOptions, System.IntPtr clientData, PlayerDataStorage.OnQueryFileListCompleteCallbackInternal completionCallback); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_PlayerDataStorage_ReadFile(System.IntPtr handle, System.IntPtr readOptions, System.IntPtr clientData, PlayerDataStorage.OnReadFileCompleteCallbackInternal completionCallback); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_PlayerDataStorage_WriteFile(System.IntPtr handle, System.IntPtr writeOptions, System.IntPtr clientData, PlayerDataStorage.OnWriteFileCompleteCallbackInternal completionCallback); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_PresenceModification_DeleteData(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_PresenceModification_Release(System.IntPtr presenceModificationHandle); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_PresenceModification_SetData(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_PresenceModification_SetJoinInfo(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_PresenceModification_SetRawRichText(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_PresenceModification_SetStatus(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_Presence_AddNotifyJoinGameAccepted(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Presence.OnJoinGameAcceptedCallbackInternal notificationFn); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_Presence_AddNotifyOnPresenceChanged(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Presence.OnPresenceChangedCallbackInternal notificationHandler); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Presence_CopyPresence(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outPresence); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Presence_CreatePresenceModification(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outPresenceModificationHandle); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Presence_GetJoinInfo(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref int inOutBufferLength); - - [DllImport(Config.LibraryName)] - internal static extern int EOS_Presence_HasPresence(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Presence_Info_Release(System.IntPtr presenceInfo); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Presence_QueryPresence(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Presence.OnQueryPresenceCompleteCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Presence_RemoveNotifyJoinGameAccepted(System.IntPtr handle, ulong inId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Presence_RemoveNotifyOnPresenceChanged(System.IntPtr handle, ulong notificationId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Presence_SetPresence(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Presence.SetPresenceCompleteCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_ProductUserId_FromString(System.IntPtr productUserIdString); - - [DllImport(Config.LibraryName)] - internal static extern int EOS_ProductUserId_IsValid(System.IntPtr accountId); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_ProductUserId_ToString(System.IntPtr accountId, System.IntPtr outBuffer, ref int inOutBufferLength); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_RTCAdmin_CopyUserTokenByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outUserToken); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_RTCAdmin_CopyUserTokenByUserId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outUserToken); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_RTCAdmin_Kick(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAdmin.OnKickCompleteCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_RTCAdmin_QueryJoinRoomToken(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAdmin.OnQueryJoinRoomTokenCompleteCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_RTCAdmin_SetParticipantHardMute(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAdmin.OnSetParticipantHardMuteCompleteCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_RTCAdmin_UserToken_Release(System.IntPtr userToken); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_RTCAudio_AddNotifyAudioBeforeRender(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnAudioBeforeRenderCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_RTCAudio_AddNotifyAudioBeforeSend(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnAudioBeforeSendCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_RTCAudio_AddNotifyAudioDevicesChanged(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnAudioDevicesChangedCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_RTCAudio_AddNotifyAudioInputState(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnAudioInputStateCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_RTCAudio_AddNotifyAudioOutputState(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnAudioOutputStateCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_RTCAudio_AddNotifyParticipantUpdated(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnParticipantUpdatedCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_RTCAudio_GetAudioInputDeviceByIndex(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern uint EOS_RTCAudio_GetAudioInputDevicesCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_RTCAudio_GetAudioOutputDeviceByIndex(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern uint EOS_RTCAudio_GetAudioOutputDevicesCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_RTCAudio_RegisterPlatformAudioUser(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_RTCAudio_RemoveNotifyAudioBeforeRender(System.IntPtr handle, ulong notificationId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_RTCAudio_RemoveNotifyAudioBeforeSend(System.IntPtr handle, ulong notificationId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_RTCAudio_RemoveNotifyAudioDevicesChanged(System.IntPtr handle, ulong notificationId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_RTCAudio_RemoveNotifyAudioInputState(System.IntPtr handle, ulong notificationId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_RTCAudio_RemoveNotifyAudioOutputState(System.IntPtr handle, ulong notificationId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_RTCAudio_RemoveNotifyParticipantUpdated(System.IntPtr handle, ulong notificationId); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_RTCAudio_SendAudio(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_RTCAudio_SetAudioInputSettings(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_RTCAudio_SetAudioOutputSettings(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_RTCAudio_UnregisterPlatformAudioUser(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_RTCAudio_UpdateReceiving(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnUpdateReceivingCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_RTCAudio_UpdateSending(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTCAudio.OnUpdateSendingCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_RTC_AddNotifyDisconnected(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTC.OnDisconnectedCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_RTC_AddNotifyParticipantStatusChanged(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTC.OnParticipantStatusChangedCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_RTC_BlockParticipant(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTC.OnBlockParticipantCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_RTC_GetAudioInterface(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_RTC_JoinRoom(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTC.OnJoinRoomCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_RTC_LeaveRoom(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, RTC.OnLeaveRoomCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_RTC_RemoveNotifyDisconnected(System.IntPtr handle, ulong notificationId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_RTC_RemoveNotifyParticipantStatusChanged(System.IntPtr handle, ulong notificationId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Reports_SendPlayerBehaviorReport(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Reports.OnSendPlayerBehaviorReportCompleteCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Sanctions_CopyPlayerSanctionByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSanction); - - [DllImport(Config.LibraryName)] - internal static extern uint EOS_Sanctions_GetPlayerSanctionCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Sanctions_PlayerSanction_Release(System.IntPtr sanction); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Sanctions_QueryActivePlayerSanctions(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sanctions.OnQueryActivePlayerSanctionsCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_SessionDetails_Attribute_Release(System.IntPtr sessionAttribute); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_SessionDetails_CopyInfo(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionInfo); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_SessionDetails_CopySessionAttributeByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionAttribute); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_SessionDetails_CopySessionAttributeByKey(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionAttribute); - - [DllImport(Config.LibraryName)] - internal static extern uint EOS_SessionDetails_GetSessionAttributeCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_SessionDetails_Info_Release(System.IntPtr sessionInfo); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_SessionDetails_Release(System.IntPtr sessionHandle); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_SessionModification_AddAttribute(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_SessionModification_Release(System.IntPtr sessionModificationHandle); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_SessionModification_RemoveAttribute(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_SessionModification_SetBucketId(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_SessionModification_SetHostAddress(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_SessionModification_SetInvitesAllowed(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_SessionModification_SetJoinInProgressAllowed(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_SessionModification_SetMaxPlayers(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_SessionModification_SetPermissionLevel(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_SessionSearch_CopySearchResultByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionHandle); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_SessionSearch_Find(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.SessionSearchOnFindCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern uint EOS_SessionSearch_GetSearchResultCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_SessionSearch_Release(System.IntPtr sessionSearchHandle); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_SessionSearch_RemoveParameter(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_SessionSearch_SetMaxResults(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_SessionSearch_SetParameter(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_SessionSearch_SetSessionId(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_SessionSearch_SetTargetUserId(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_Sessions_AddNotifyJoinSessionAccepted(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnJoinSessionAcceptedCallbackInternal notificationFn); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_Sessions_AddNotifySessionInviteAccepted(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnSessionInviteAcceptedCallbackInternal notificationFn); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_Sessions_AddNotifySessionInviteReceived(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnSessionInviteReceivedCallbackInternal notificationFn); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Sessions_CopyActiveSessionHandle(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionHandle); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Sessions_CopySessionHandleByInviteId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionHandle); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Sessions_CopySessionHandleByUiEventId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionHandle); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Sessions_CopySessionHandleForPresence(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionHandle); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Sessions_CreateSessionModification(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionModificationHandle); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Sessions_CreateSessionSearch(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionSearchHandle); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Sessions_DestroySession(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnDestroySessionCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Sessions_DumpSessionState(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Sessions_EndSession(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnEndSessionCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern uint EOS_Sessions_GetInviteCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Sessions_GetInviteIdByIndex(System.IntPtr handle, System.IntPtr options, System.IntPtr outBuffer, ref int inOutBufferLength); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Sessions_IsUserInSession(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Sessions_JoinSession(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnJoinSessionCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Sessions_QueryInvites(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnQueryInvitesCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Sessions_RegisterPlayers(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnRegisterPlayersCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Sessions_RejectInvite(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnRejectInviteCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Sessions_RemoveNotifyJoinSessionAccepted(System.IntPtr handle, ulong inId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Sessions_RemoveNotifySessionInviteAccepted(System.IntPtr handle, ulong inId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Sessions_RemoveNotifySessionInviteReceived(System.IntPtr handle, ulong inId); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Sessions_SendInvite(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnSendInviteCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Sessions_StartSession(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnStartSessionCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Sessions_UnregisterPlayers(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnUnregisterPlayersCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Sessions_UpdateSession(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Sessions.OnUpdateSessionCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Sessions_UpdateSessionModification(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outSessionModificationHandle); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Shutdown(); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Stats_CopyStatByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outStat); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_Stats_CopyStatByName(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outStat); - - [DllImport(Config.LibraryName)] - internal static extern uint EOS_Stats_GetStatsCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Stats_IngestStat(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Stats.OnIngestStatCompleteCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Stats_QueryStats(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, Stats.OnQueryStatsCompleteCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_Stats_Stat_Release(System.IntPtr stat); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_TitleStorageFileTransferRequest_CancelRequest(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_TitleStorageFileTransferRequest_GetFileRequestState(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_TitleStorageFileTransferRequest_GetFilename(System.IntPtr handle, uint filenameStringBufferSizeBytes, System.IntPtr outStringBuffer, ref int outStringLength); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_TitleStorageFileTransferRequest_Release(System.IntPtr titleStorageFileTransferHandle); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_TitleStorage_CopyFileMetadataAtIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outMetadata); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_TitleStorage_CopyFileMetadataByFilename(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outMetadata); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_TitleStorage_DeleteCache(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, TitleStorage.OnDeleteCacheCompleteCallbackInternal completionCallback); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_TitleStorage_FileMetadata_Release(System.IntPtr fileMetadata); - - [DllImport(Config.LibraryName)] - internal static extern uint EOS_TitleStorage_GetFileMetadataCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_TitleStorage_QueryFile(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, TitleStorage.OnQueryFileCompleteCallbackInternal completionCallback); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_TitleStorage_QueryFileList(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, TitleStorage.OnQueryFileListCompleteCallbackInternal completionCallback); - - [DllImport(Config.LibraryName)] - internal static extern System.IntPtr EOS_TitleStorage_ReadFile(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, TitleStorage.OnReadFileCompleteCallbackInternal completionCallback); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_UI_AcknowledgeEventId(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern ulong EOS_UI_AddNotifyDisplaySettingsUpdated(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, UI.OnDisplaySettingsUpdatedCallbackInternal notificationFn); - - [DllImport(Config.LibraryName)] - internal static extern int EOS_UI_GetFriendsVisible(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern UI.NotificationLocation EOS_UI_GetNotificationLocationPreference(System.IntPtr handle); - - [DllImport(Config.LibraryName)] - internal static extern UI.KeyCombination EOS_UI_GetToggleFriendsKey(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_UI_HideFriends(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, UI.OnHideFriendsCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern int EOS_UI_IsValidKeyCombination(System.IntPtr handle, UI.KeyCombination keyCombination); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_UI_RemoveNotifyDisplaySettingsUpdated(System.IntPtr handle, ulong id); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_UI_SetDisplayPreference(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_UI_SetToggleFriendsKey(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_UI_ShowFriends(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, UI.OnShowFriendsCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_UserInfo_CopyExternalUserInfoByAccountId(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalUserInfo); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_UserInfo_CopyExternalUserInfoByAccountType(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalUserInfo); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_UserInfo_CopyExternalUserInfoByIndex(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outExternalUserInfo); - - [DllImport(Config.LibraryName)] - internal static extern Result EOS_UserInfo_CopyUserInfo(System.IntPtr handle, System.IntPtr options, ref System.IntPtr outUserInfo); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_UserInfo_ExternalUserInfo_Release(System.IntPtr externalUserInfo); - - [DllImport(Config.LibraryName)] - internal static extern uint EOS_UserInfo_GetExternalUserInfoCount(System.IntPtr handle, System.IntPtr options); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_UserInfo_QueryUserInfo(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, UserInfo.OnQueryUserInfoCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_UserInfo_QueryUserInfoByDisplayName(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, UserInfo.OnQueryUserInfoByDisplayNameCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_UserInfo_QueryUserInfoByExternalAccount(System.IntPtr handle, System.IntPtr options, System.IntPtr clientData, UserInfo.OnQueryUserInfoByExternalAccountCallbackInternal completionDelegate); - - [DllImport(Config.LibraryName)] - internal static extern void EOS_UserInfo_Release(System.IntPtr userInfo); -#endif - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Bindings.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Bindings.cs.meta deleted file mode 100644 index 087e030..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Bindings.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 30c227bfa3ebe0d449e179d74f4b4182 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Common.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Common.cs deleted file mode 100644 index d34ffe5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Common.cs +++ /dev/null @@ -1,102 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices -{ - public static class Common - { - /// - /// An invalid notification ID - /// - public const ulong InvalidNotificationid = ((ulong)0); - - /// - /// The most recent version of the structs. - /// - public const int PagequeryApiLatest = 1; - - /// - /// The default MaxCount used for a when the API allows the to be omitted. - /// - public const int PagequeryMaxcountDefault = 10; - - /// - /// The maximum MaxCount used for a . - /// - public const int PagequeryMaxcountMaximum = 100; - - /// - /// DEPRECATED! Use instead. - /// - public const int PaginationApiLatest = PagequeryApiLatest; - - /// - /// Returns whether a result is to be considered the final result, or false if the callback that returned this result - /// will be called again either after some time or from another action. - /// - /// The result to check against being a final result for an operation - /// - /// True if this result means the operation is complete, false otherwise - /// - public static bool IsOperationComplete(Result result) - { - var funcResult = Bindings.EOS_EResult_IsOperationComplete(result); - - bool funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Returns a string representation of an . - /// The return value is never null. - /// The return value must not be freed. - /// - /// Example: () returns "" - /// - public static string ToString(Result result) - { - var funcResult = Bindings.EOS_EResult_ToString(result); - - string funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Encode a byte array into hex encoded string - /// - /// - /// An that indicates whether the byte array was converted and copied into the OutBuffer. - /// if the encoding was successful and passed out in OutBuffer - /// if you pass a null pointer on invalid length for any of the parameters - /// - The OutBuffer is not large enough to receive the encoding. InOutBufferLength contains the required minimum length to perform the operation successfully. - /// - public static Result ToString(byte[] byteArray, out string outBuffer) - { - var byteArrayAddress = System.IntPtr.Zero; - uint length; - Helper.TryMarshalSet(ref byteArrayAddress, byteArray, out length); - - System.IntPtr outBufferAddress = System.IntPtr.Zero; - uint inOutBufferLength = 1024; - Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength, out _); - - var funcResult = Bindings.EOS_ByteArray_ToString(byteArrayAddress, length, outBufferAddress, ref inOutBufferLength); - - Helper.TryMarshalDispose(ref byteArrayAddress); - - Helper.TryMarshalGet(outBufferAddress, out outBuffer); - Helper.TryMarshalDispose(ref outBufferAddress); - - return funcResult; - } - - public static string ToString(byte[] byteArray) - { - string funcResult; - ToString(byteArray, out funcResult); - return funcResult; - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Common.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Common.cs.meta deleted file mode 100644 index 8a199b8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Common.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d3c9197122028cc4984f1c34d9b1d00e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/ComparisonOp.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/ComparisonOp.cs deleted file mode 100644 index acaf774..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/ComparisonOp.cs +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices -{ - /// - /// All comparison operators associated with parameters in a search query - /// - /// - /// - public enum ComparisonOp : int - { - /// - /// Value must equal the one stored on the lobby/session - /// - Equal = 0, - /// - /// Value must not equal the one stored on the lobby/session - /// - Notequal = 1, - /// - /// Value must be strictly greater than the one stored on the lobby/session - /// - Greaterthan = 2, - /// - /// Value must be greater than or equal to the one stored on the lobby/session - /// - Greaterthanorequal = 3, - /// - /// Value must be strictly less than the one stored on the lobby/session - /// - Lessthan = 4, - /// - /// Value must be less than or equal to the one stored on the lobby/session - /// - Lessthanorequal = 5, - /// - /// Prefer values nearest the one specified ie. abs(SearchValue-SessionValue) closest to 0 - /// - Distance = 6, - /// - /// Value stored on the lobby/session may be any from a specified list - /// - Anyof = 7, - /// - /// Value stored on the lobby/session may NOT be any from a specified list - /// - Notanyof = 8, - /// - /// This one value is a part of a collection - /// - Oneof = 9, - /// - /// This one value is NOT part of a collection - /// - Notoneof = 10, - /// - /// This value is a CASE SENSITIVE substring of an attribute stored on the lobby/session - /// - Contains = 11 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/ComparisonOp.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/ComparisonOp.cs.meta deleted file mode 100644 index 61b731e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/ComparisonOp.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d1a1c3d2ee41fba42a6955ebd3f35b29 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect.meta deleted file mode 100644 index 20910d3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: bb82de725f462aa48b5b7160d43dfeed -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/AddNotifyAuthExpirationOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/AddNotifyAuthExpirationOptions.cs deleted file mode 100644 index 45374d7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/AddNotifyAuthExpirationOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Structure containing information for the auth expiration notification callback. - /// - public class AddNotifyAuthExpirationOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyAuthExpirationOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(AddNotifyAuthExpirationOptions other) - { - if (other != null) - { - m_ApiVersion = ConnectInterface.AddnotifyauthexpirationApiLatest; - } - } - - public void Set(object other) - { - Set(other as AddNotifyAuthExpirationOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/AddNotifyAuthExpirationOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/AddNotifyAuthExpirationOptions.cs.meta deleted file mode 100644 index c877dc7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/AddNotifyAuthExpirationOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b1ed57eb2cb52d546ae8c68c5c80a5ef -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/AddNotifyLoginStatusChangedOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/AddNotifyLoginStatusChangedOptions.cs deleted file mode 100644 index 5a317a4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/AddNotifyLoginStatusChangedOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Structure containing information or the connect user login status change callback. - /// - public class AddNotifyLoginStatusChangedOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyLoginStatusChangedOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(AddNotifyLoginStatusChangedOptions other) - { - if (other != null) - { - m_ApiVersion = ConnectInterface.AddnotifyloginstatuschangedApiLatest; - } - } - - public void Set(object other) - { - Set(other as AddNotifyLoginStatusChangedOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/AddNotifyLoginStatusChangedOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/AddNotifyLoginStatusChangedOptions.cs.meta deleted file mode 100644 index 72b5776..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/AddNotifyLoginStatusChangedOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: bf25a8b409aa7cc4ea14d22254185b36 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/AuthExpirationCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/AuthExpirationCallbackInfo.cs deleted file mode 100644 index da01ef4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/AuthExpirationCallbackInfo.cs +++ /dev/null @@ -1,75 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Output parameters for the function. - /// - public class AuthExpirationCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Context that was passed into . - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the local player whose status has changed. - /// - public ProductUserId LocalUserId { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(AuthExpirationCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as AuthExpirationCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AuthExpirationCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/AuthExpirationCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/AuthExpirationCallbackInfo.cs.meta deleted file mode 100644 index 1bd4475..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/AuthExpirationCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c2509e9188d5cd6419919e98c13004a6 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/ConnectInterface.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/ConnectInterface.cs deleted file mode 100644 index 18f6193..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/ConnectInterface.cs +++ /dev/null @@ -1,913 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - public sealed partial class ConnectInterface : Handle - { - public ConnectInterface() - { - } - - public ConnectInterface(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// The most recent version of the API. - /// - public const int AddnotifyauthexpirationApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int AddnotifyloginstatuschangedApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int CopyproductuserexternalaccountbyaccountidApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int CopyproductuserexternalaccountbyaccounttypeApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int CopyproductuserexternalaccountbyindexApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int CopyproductuserinfoApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int CreatedeviceidApiLatest = 1; - - /// - /// Max length of a device model name, not including the terminating null - /// - public const int CreatedeviceidDevicemodelMaxLength = 64; - - /// - /// The most recent version of the API. - /// - public const int CreateuserApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int CredentialsApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int DeletedeviceidApiLatest = 1; - - /// - /// Max length of an external account ID in string form - /// - public const int ExternalAccountIdMaxLength = 256; - - /// - /// The most recent version of the struct. - /// - public const int ExternalaccountinfoApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetexternalaccountmappingApiLatest = 1; - - /// - /// DEPRECATED! Use instead. - /// - public const int GetexternalaccountmappingsApiLatest = GetexternalaccountmappingApiLatest; - - /// - /// The most recent version of the API. - /// - public const int GetproductuserexternalaccountcountApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetproductuseridmappingApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int LinkaccountApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int LoginApiLatest = 2; - - /// - /// The most recent version of the API. - /// - public const int OnauthexpirationcallbackApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int QueryexternalaccountmappingsApiLatest = 1; - - /// - /// Maximum number of account IDs that can be queried at once - /// - public const int QueryexternalaccountmappingsMaxAccountIds = 128; - - /// - /// The most recent version of the API. - /// - public const int QueryproductuseridmappingsApiLatest = 2; - - /// - /// Timestamp value representing an undefined time for last login time. - /// - public const int TimeUndefined = -1; - - /// - /// The most recent version of the API. - /// - public const int TransferdeviceidaccountApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int UnlinkaccountApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int UserlogininfoApiLatest = 1; - - /// - /// Max length of a display name, not including the terminating null. - /// - public const int UserlogininfoDisplaynameMaxLength = 32; - - /// - /// Register to receive upcoming authentication expiration notifications. - /// Notification is approximately 10 minutes prior to expiration. - /// Call again with valid third party credentials to refresh access. - /// - /// @note must call RemoveNotifyAuthExpiration to remove the notification. - /// - /// structure containing the API version of the callback to use. - /// arbitrary data that is passed back to you in the callback. - /// a callback that is fired when the authentication is about to expire. - /// - /// handle representing the registered callback. - /// - public ulong AddNotifyAuthExpiration(AddNotifyAuthExpirationOptions options, object clientData, OnAuthExpirationCallback notification) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var notificationInternal = new OnAuthExpirationCallbackInternal(OnAuthExpirationCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, notification, notificationInternal); - - var funcResult = Bindings.EOS_Connect_AddNotifyAuthExpiration(InnerHandle, optionsAddress, clientDataAddress, notificationInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Register to receive user login status updates. - /// @note must call RemoveNotifyLoginStatusChanged to remove the notification. - /// - /// structure containing the API version of the callback to use. - /// arbitrary data that is passed back to you in the callback. - /// a callback that is fired when the login status for a user changes. - /// - /// handle representing the registered callback. - /// - public ulong AddNotifyLoginStatusChanged(AddNotifyLoginStatusChangedOptions options, object clientData, OnLoginStatusChangedCallback notification) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var notificationInternal = new OnLoginStatusChangedCallbackInternal(OnLoginStatusChangedCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, notification, notificationInternal); - - var funcResult = Bindings.EOS_Connect_AddNotifyLoginStatusChanged(InnerHandle, optionsAddress, clientDataAddress, notificationInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Fetch information about an external account linked to a Product User ID. - /// On a successful call, the caller must release the returned structure using the API. - /// - /// - /// Structure containing the target external account ID. - /// The external account info data for the user with given external account ID. - /// - /// An that indicates the external account data was copied into the OutExternalAccountInfo. - /// if the information is available and passed out in OutExternalAccountInfo. - /// if you pass a null pointer for the out parameter. - /// if the account data doesn't exist or hasn't been queried yet. - /// - public Result CopyProductUserExternalAccountByAccountId(CopyProductUserExternalAccountByAccountIdOptions options, out ExternalAccountInfo outExternalAccountInfo) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outExternalAccountInfoAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Connect_CopyProductUserExternalAccountByAccountId(InnerHandle, optionsAddress, ref outExternalAccountInfoAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outExternalAccountInfoAddress, out outExternalAccountInfo)) - { - Bindings.EOS_Connect_ExternalAccountInfo_Release(outExternalAccountInfoAddress); - } - - return funcResult; - } - - /// - /// Fetch information about an external account of a specific type linked to a Product User ID. - /// On a successful call, the caller must release the returned structure using the API. - /// - /// - /// Structure containing the target external account type. - /// The external account info data for the user with given external account type. - /// - /// An that indicates the external account data was copied into the OutExternalAccountInfo. - /// if the information is available and passed out in OutExternalAccountInfo. - /// if you pass a null pointer for the out parameter. - /// if the account data doesn't exist or hasn't been queried yet. - /// - public Result CopyProductUserExternalAccountByAccountType(CopyProductUserExternalAccountByAccountTypeOptions options, out ExternalAccountInfo outExternalAccountInfo) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outExternalAccountInfoAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Connect_CopyProductUserExternalAccountByAccountType(InnerHandle, optionsAddress, ref outExternalAccountInfoAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outExternalAccountInfoAddress, out outExternalAccountInfo)) - { - Bindings.EOS_Connect_ExternalAccountInfo_Release(outExternalAccountInfoAddress); - } - - return funcResult; - } - - /// - /// Fetch information about an external account linked to a Product User ID. - /// On a successful call, the caller must release the returned structure using the API. - /// - /// - /// Structure containing the target index. - /// The external account info data for the user with given index. - /// - /// An that indicates the external account data was copied into the OutExternalAccountInfo. - /// if the information is available and passed out in OutExternalAccountInfo. - /// if you pass a null pointer for the out parameter. - /// if the account data doesn't exist or hasn't been queried yet. - /// - public Result CopyProductUserExternalAccountByIndex(CopyProductUserExternalAccountByIndexOptions options, out ExternalAccountInfo outExternalAccountInfo) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outExternalAccountInfoAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Connect_CopyProductUserExternalAccountByIndex(InnerHandle, optionsAddress, ref outExternalAccountInfoAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outExternalAccountInfoAddress, out outExternalAccountInfo)) - { - Bindings.EOS_Connect_ExternalAccountInfo_Release(outExternalAccountInfoAddress); - } - - return funcResult; - } - - /// - /// Fetch information about a Product User, using the external account that they most recently logged in with as the reference. - /// On a successful call, the caller must release the returned structure using the API. - /// - /// - /// Structure containing the target external account ID. - /// The external account info data last logged in for the user. - /// - /// An that indicates the external account data was copied into the OutExternalAccountInfo. - /// if the information is available and passed out in OutExternalAccountInfo. - /// if you pass a null pointer for the out parameter. - /// if the account data doesn't exist or hasn't been queried yet. - /// - public Result CopyProductUserInfo(CopyProductUserInfoOptions options, out ExternalAccountInfo outExternalAccountInfo) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outExternalAccountInfoAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Connect_CopyProductUserInfo(InnerHandle, optionsAddress, ref outExternalAccountInfoAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outExternalAccountInfoAddress, out outExternalAccountInfo)) - { - Bindings.EOS_Connect_ExternalAccountInfo_Release(outExternalAccountInfoAddress); - } - - return funcResult; - } - - /// - /// Create a new unique pseudo-account that can be used to identify the current user profile on the local device. - /// - /// This function is intended to be used by mobile games and PC games that wish to allow - /// a new user to start playing without requiring to login to the game using any user identity. - /// In addition to this, the Device ID feature is used to automatically login the local user - /// also when they have linked at least one external user account(s) with the local Device ID. - /// - /// It is possible to link many devices with the same user's account keyring using the Device ID feature. - /// - /// Linking a device later or immediately with a real user account will ensure that the player - /// will not lose their progress if they switch devices or lose the device at some point, - /// as they will be always able to login with one of their linked real accounts and also link - /// another new device with the user account associations keychain. Otherwise, without having - /// at least one permanent user account linked to the Device ID, the player would lose all of their - /// game data and progression permanently should something happen to their device or the local - /// user profile on the device. - /// - /// After a successful one-time CreateDeviceId operation, the game can login the local user - /// automatically on subsequent game starts with using the - /// credentials type. If a Device ID already exists for the local user on the device then - /// error result is returned and the caller should proceed to calling directly. - /// - /// structure containing operation input parameters. - /// arbitrary data that is passed back to you in the CompletionDelegate. - /// a callback that is fired when the create operation completes, either successfully or in error. - public void CreateDeviceId(CreateDeviceIdOptions options, object clientData, OnCreateDeviceIdCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnCreateDeviceIdCallbackInternal(OnCreateDeviceIdCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Connect_CreateDeviceId(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Create an account association with the Epic Online Service as a product user given their external auth credentials. - /// - /// structure containing a continuance token from a "user not found" response during Login (always try login first). - /// arbitrary data that is passed back to you in the CompletionDelegate. - /// a callback that is fired when the create operation completes, either successfully or in error. - public void CreateUser(CreateUserOptions options, object clientData, OnCreateUserCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnCreateUserCallbackInternal(OnCreateUserCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Connect_CreateUser(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Delete any existing Device ID access credentials for the current user profile on the local device. - /// - /// The deletion is permanent and it is not possible to recover lost game data and progression - /// if the Device ID had not been linked with at least one real external user account. - /// - /// structure containing operation input parameters - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the delete operation completes, either successfully or in error - public void DeleteDeviceId(DeleteDeviceIdOptions options, object clientData, OnDeleteDeviceIdCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnDeleteDeviceIdCallbackInternal(OnDeleteDeviceIdCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Connect_DeleteDeviceId(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Fetch a Product User ID that maps to an external account ID cached from a previous query. - /// - /// structure containing the local user and target external account ID. - /// - /// The Product User ID, previously retrieved from the backend service, for the given target external account. - /// - public ProductUserId GetExternalAccountMapping(GetExternalAccountMappingsOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Connect_GetExternalAccountMapping(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - ProductUserId funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Fetch a Product User ID that is logged in. This Product User ID is in the Epic Online Services namespace. - /// - /// an index into the list of logged in users. If the index is out of bounds, the returned Product User ID will be invalid. - /// - /// the Product User ID associated with the index passed. - /// - public ProductUserId GetLoggedInUserByIndex(int index) - { - var funcResult = Bindings.EOS_Connect_GetLoggedInUserByIndex(InnerHandle, index); - - ProductUserId funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Fetch the number of product users that are logged in. - /// - /// - /// the number of product users logged in. - /// - public int GetLoggedInUsersCount() - { - var funcResult = Bindings.EOS_Connect_GetLoggedInUsersCount(InnerHandle); - - return funcResult; - } - - /// - /// Fetches the login status for an Product User ID. This Product User ID is considered logged in as long as the underlying access token has not expired. - /// - /// the Product User ID of the user being queried. - /// - /// the enum value of a user's login status. - /// - public LoginStatus GetLoginStatus(ProductUserId localUserId) - { - var localUserIdInnerHandle = System.IntPtr.Zero; - Helper.TryMarshalSet(ref localUserIdInnerHandle, localUserId); - - var funcResult = Bindings.EOS_Connect_GetLoginStatus(InnerHandle, localUserIdInnerHandle); - - return funcResult; - } - - /// - /// Fetch the number of linked external accounts for a Product User ID. - /// - /// - /// The Options associated with retrieving the external account info count. - /// - /// Number of external accounts or 0 otherwise. - /// - public uint GetProductUserExternalAccountCount(GetProductUserExternalAccountCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Connect_GetProductUserExternalAccountCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Fetch an external account ID, in string form, that maps to a given Product User ID. - /// - /// structure containing the local user and target Product User ID. - /// The buffer into which the external account ID data should be written. The buffer must be long enough to hold a string of . - /// - /// The size of the OutBuffer in characters. - /// The input buffer should include enough space to be null-terminated. - /// When the function returns, this parameter will be filled with the length of the string copied into OutBuffer. - /// - /// - /// An that indicates the external account ID was copied into the OutBuffer. - /// if the information is available and passed out in OutUserInfo. - /// if you pass a null pointer for the out parameter. - /// if the mapping doesn't exist or hasn't been queried yet. - /// if the OutBuffer is not large enough to receive the external account ID. InOutBufferLength contains the required minimum length to perform the operation successfully. - /// - public Result GetProductUserIdMapping(GetProductUserIdMappingOptions options, out string outBuffer) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - System.IntPtr outBufferAddress = System.IntPtr.Zero; - int inOutBufferLength = ExternalAccountIdMaxLength + 1; - Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength, out _); - - var funcResult = Bindings.EOS_Connect_GetProductUserIdMapping(InnerHandle, optionsAddress, outBufferAddress, ref inOutBufferLength); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryMarshalGet(outBufferAddress, out outBuffer); - Helper.TryMarshalDispose(ref outBufferAddress); - - return funcResult; - } - - /// - /// Link a set of external auth credentials with an existing product user on the Epic Online Service. - /// - /// structure containing a continuance token from a "user not found" response during Login (always try login first) and a currently logged in user not already associated with this external auth provider. - /// arbitrary data that is passed back to you in the CompletionDelegate. - /// a callback that is fired when the link operation completes, either successfully or in error. - public void LinkAccount(LinkAccountOptions options, object clientData, OnLinkAccountCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnLinkAccountCallbackInternal(OnLinkAccountCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Connect_LinkAccount(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Login/Authenticate given a valid set of external auth credentials. - /// - /// structure containing the external account credentials and type to use during the login operation. - /// arbitrary data that is passed back to you in the CompletionDelegate. - /// a callback that is fired when the login operation completes, either successfully or in error. - public void Login(LoginOptions options, object clientData, OnLoginCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnLoginCallbackInternal(OnLoginCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Connect_Login(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Retrieve the equivalent Product User IDs from a list of external account IDs from supported account providers. - /// The values will be cached and retrievable through . - /// - /// structure containing a list of external account IDs, in string form, to query for the Product User ID representation. - /// arbitrary data that is passed back to you in the CompletionDelegate. - /// a callback that is fired when the query operation completes, either successfully or in error. - public void QueryExternalAccountMappings(QueryExternalAccountMappingsOptions options, object clientData, OnQueryExternalAccountMappingsCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnQueryExternalAccountMappingsCallbackInternal(OnQueryExternalAccountMappingsCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Connect_QueryExternalAccountMappings(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Retrieve the equivalent external account mappings from a list of Product User IDs. - /// This will include data for each external account info found for the linked product IDs. - /// - /// The values will be cached and retrievable via , , - /// or . - /// - /// - /// - /// - /// - /// - /// - /// - /// structure containing a list of Product User IDs to query for the external account representation. - /// arbitrary data that is passed back to you in the CompletionDelegate. - /// a callback that is fired when the query operation completes, either successfully or in error. - public void QueryProductUserIdMappings(QueryProductUserIdMappingsOptions options, object clientData, OnQueryProductUserIdMappingsCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnQueryProductUserIdMappingsCallbackInternal(OnQueryProductUserIdMappingsCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Connect_QueryProductUserIdMappings(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Unregister from receiving expiration notifications. - /// - /// handle representing the registered callback. - public void RemoveNotifyAuthExpiration(ulong inId) - { - Helper.TryRemoveCallbackByNotificationId(inId); - - Bindings.EOS_Connect_RemoveNotifyAuthExpiration(InnerHandle, inId); - } - - /// - /// Unregister from receiving user login status updates. - /// - /// handle representing the registered callback. - public void RemoveNotifyLoginStatusChanged(ulong inId) - { - Helper.TryRemoveCallbackByNotificationId(inId); - - Bindings.EOS_Connect_RemoveNotifyLoginStatusChanged(InnerHandle, inId); - } - - /// - /// Transfer a Device ID pseudo-account and the product user associated with it into another - /// keychain linked with real user accounts (such as Epic Games, PlayStation(TM)Network, Xbox Live, and other). - /// - /// This function allows transferring a product user, i.e. the local user's game progression - /// backend data from a Device ID owned keychain into a keychain with real user accounts - /// linked to it. The transfer of Device ID owned product user into a keychain of real user - /// accounts allows persisting the user's game data on the backend in the event that they - /// would lose access to the local device or otherwise switch to another device or platform. - /// - /// This function is only applicable in the situation of where the local user first plays - /// the game using the anonymous Device ID login, then later logs in using a real user - /// account that they have also already used to play the same game or another game under the - /// same organization within Epic Online Services. In such situation, while normally the login - /// attempt with a real user account would return and an - /// and allow calling the API to link it with the Device ID's keychain, - /// instead the login operation succeeds and finds an existing user because the association - /// already exists. Because the user cannot have two product users simultaneously to play with, - /// the game should prompt the user to choose which profile to keep and which one to discard - /// permanently. Based on the user choice, the game may then proceed to transfer the Device ID - /// login into the keychain that is persistent and backed by real user accounts, and if the user - /// chooses so, move the product user as well into the destination keychain and overwrite the - /// existing previous product user with it. To clarify, moving the product user with the Device ID - /// login in this way into a persisted keychain allows to preserve the so far only locally persisted - /// game progression and thus protect the user against a case where they lose access to the device. - /// - /// On success, the completion callback will return the preserved that remains - /// logged in while the discarded has been invalidated and deleted permanently. - /// Consecutive logins using the existing Device ID login type or the external account will - /// connect the user to the same backend data belonging to the preserved . - /// - /// Example walkthrough: Cross-platform mobile game using the anonymous Device ID login. - /// - /// For onboarding new users, the game will attempt to always automatically login the local user - /// by calling using the login type. If the local - /// Device ID credentials are not found, and the game wants a frictionless entry for the first time - /// user experience, the game will automatically call to create new - /// Device ID pseudo-account and then login the local user into it. Consecutive game starts will - /// thus automatically login the user to their locally persisted Device ID account. - /// - /// The user starts playing anonymously using the Device ID login type and makes significant game progress. - /// Later, they login using an external account that they have already used previously for the - /// same game perhaps on another platform, or another game owned by the same organization. - /// In such case, will automatically login the user to their existing account - /// linking keychain and create automatically a new empty product user for this product. - /// - /// In order for the user to use their existing previously created keychain and have the locally - /// created Device ID login reference to that keychain instead, the user's current product user - /// needs to be moved to be under that keychain so that their existing game progression will be - /// preserved. To do so, the game can call to transfer the - /// Device ID login and the product user associated with it into the other keychain that has real - /// external user account(s) linked to it. Note that it is important that the game either automatically - /// checks that the other product user does not have any meaningful progression data, or otherwise - /// will prompt the user to make the choice on which game progression to preserve and which can - /// be discarded permanently. The other product user will be discarded permanently and cannot be - /// recovered, so it is very important that the user is guided to make the right choice to avoid - /// accidental loss of all game progression. - /// - /// - /// - /// structure containing the logged in product users and specifying which one will be preserved. - /// arbitrary data that is passed back to you in the CompletionDelegate. - /// a callback that is fired when the transfer operation completes, either successfully or in error. - public void TransferDeviceIdAccount(TransferDeviceIdAccountOptions options, object clientData, OnTransferDeviceIdAccountCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnTransferDeviceIdAccountCallbackInternal(OnTransferDeviceIdAccountCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Connect_TransferDeviceIdAccount(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Unlink external auth credentials from the owning keychain of a logged in product user. - /// - /// This function allows recovering the user from scenarios where they have accidentally proceeded to creating - /// a new product user for the local native user account, instead of linking it with an existing keychain that - /// they have previously created by playing the game (or another game owned by the organization) on another platform. - /// - /// In such scenario, after the initial platform login and a new product user creation, the user wishes to re-login - /// using other set of external auth credentials to connect with their existing game progression data. In order to - /// allow automatic login also on the current platform, they will need to unlink the accidentally created new keychain - /// and product user and then use the and APIs to link the local native platform - /// account with that previously created existing product user and its owning keychain. - /// - /// In another scenario, the user may simply want to disassociate the account that they have logged in with from the current - /// keychain that it is linked with, perhaps to link it against another keychain or to separate the game progressions again. - /// - /// In order to protect against account theft, it is only possible to unlink user accounts that have been authenticated - /// and logged in to the product user in the current session. This prevents a malicious actor from gaining access to one - /// of the linked accounts and using it to remove all other accounts linked with the keychain. This also prevents a malicious - /// actor from replacing the unlinked account with their own corresponding account on the same platform, as the unlinking - /// operation will ensure that any existing authentication session cannot be used to re-link and overwrite the entry without - /// authenticating with one of the other linked accounts in the keychain. These restrictions limit the potential attack surface - /// related to account theft scenarios. - /// - /// structure containing operation input parameters. - /// arbitrary data that is passed back to you in the CompletionDelegate. - /// a callback that is fired when the unlink operation completes, either successfully or in error. - public void UnlinkAccount(UnlinkAccountOptions options, object clientData, OnUnlinkAccountCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnUnlinkAccountCallbackInternal(OnUnlinkAccountCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Connect_UnlinkAccount(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - [MonoPInvokeCallback(typeof(OnAuthExpirationCallbackInternal))] - internal static void OnAuthExpirationCallbackInternalImplementation(System.IntPtr data) - { - OnAuthExpirationCallback callback; - AuthExpirationCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnCreateDeviceIdCallbackInternal))] - internal static void OnCreateDeviceIdCallbackInternalImplementation(System.IntPtr data) - { - OnCreateDeviceIdCallback callback; - CreateDeviceIdCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnCreateUserCallbackInternal))] - internal static void OnCreateUserCallbackInternalImplementation(System.IntPtr data) - { - OnCreateUserCallback callback; - CreateUserCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnDeleteDeviceIdCallbackInternal))] - internal static void OnDeleteDeviceIdCallbackInternalImplementation(System.IntPtr data) - { - OnDeleteDeviceIdCallback callback; - DeleteDeviceIdCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnLinkAccountCallbackInternal))] - internal static void OnLinkAccountCallbackInternalImplementation(System.IntPtr data) - { - OnLinkAccountCallback callback; - LinkAccountCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnLoginCallbackInternal))] - internal static void OnLoginCallbackInternalImplementation(System.IntPtr data) - { - OnLoginCallback callback; - LoginCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnLoginStatusChangedCallbackInternal))] - internal static void OnLoginStatusChangedCallbackInternalImplementation(System.IntPtr data) - { - OnLoginStatusChangedCallback callback; - LoginStatusChangedCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnQueryExternalAccountMappingsCallbackInternal))] - internal static void OnQueryExternalAccountMappingsCallbackInternalImplementation(System.IntPtr data) - { - OnQueryExternalAccountMappingsCallback callback; - QueryExternalAccountMappingsCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnQueryProductUserIdMappingsCallbackInternal))] - internal static void OnQueryProductUserIdMappingsCallbackInternalImplementation(System.IntPtr data) - { - OnQueryProductUserIdMappingsCallback callback; - QueryProductUserIdMappingsCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnTransferDeviceIdAccountCallbackInternal))] - internal static void OnTransferDeviceIdAccountCallbackInternalImplementation(System.IntPtr data) - { - OnTransferDeviceIdAccountCallback callback; - TransferDeviceIdAccountCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnUnlinkAccountCallbackInternal))] - internal static void OnUnlinkAccountCallbackInternalImplementation(System.IntPtr data) - { - OnUnlinkAccountCallback callback; - UnlinkAccountCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/ConnectInterface.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/ConnectInterface.cs.meta deleted file mode 100644 index a3c672c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/ConnectInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 68b2e58ef562b09459ea5cfb8527c853 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CopyProductUserExternalAccountByAccountIdOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CopyProductUserExternalAccountByAccountIdOptions.cs deleted file mode 100644 index c179996..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CopyProductUserExternalAccountByAccountIdOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Input parameters for the function. - /// - public class CopyProductUserExternalAccountByAccountIdOptions - { - /// - /// The Product User ID to look for when copying external account info from the cache. - /// - public ProductUserId TargetUserId { get; set; } - - /// - /// External auth service account ID to look for when copying external account info from the cache. - /// - public string AccountId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyProductUserExternalAccountByAccountIdOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_TargetUserId; - private System.IntPtr m_AccountId; - - public ProductUserId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public string AccountId - { - set - { - Helper.TryMarshalSet(ref m_AccountId, value); - } - } - - public void Set(CopyProductUserExternalAccountByAccountIdOptions other) - { - if (other != null) - { - m_ApiVersion = ConnectInterface.CopyproductuserexternalaccountbyaccountidApiLatest; - TargetUserId = other.TargetUserId; - AccountId = other.AccountId; - } - } - - public void Set(object other) - { - Set(other as CopyProductUserExternalAccountByAccountIdOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_TargetUserId); - Helper.TryMarshalDispose(ref m_AccountId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CopyProductUserExternalAccountByAccountIdOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CopyProductUserExternalAccountByAccountIdOptions.cs.meta deleted file mode 100644 index 09717e3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CopyProductUserExternalAccountByAccountIdOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c3ff4dbbc4a68f5438601cbda0fe7b1b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CopyProductUserExternalAccountByAccountTypeOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CopyProductUserExternalAccountByAccountTypeOptions.cs deleted file mode 100644 index b4493c9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CopyProductUserExternalAccountByAccountTypeOptions.cs +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Input parameters for the function. - /// - public class CopyProductUserExternalAccountByAccountTypeOptions - { - /// - /// The Product User ID to look for when copying external account info from the cache. - /// - public ProductUserId TargetUserId { get; set; } - - /// - /// External auth service account type to look for when copying external account info from the cache. - /// - public ExternalAccountType AccountIdType { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyProductUserExternalAccountByAccountTypeOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_TargetUserId; - private ExternalAccountType m_AccountIdType; - - public ProductUserId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public ExternalAccountType AccountIdType - { - set - { - m_AccountIdType = value; - } - } - - public void Set(CopyProductUserExternalAccountByAccountTypeOptions other) - { - if (other != null) - { - m_ApiVersion = ConnectInterface.CopyproductuserexternalaccountbyaccounttypeApiLatest; - TargetUserId = other.TargetUserId; - AccountIdType = other.AccountIdType; - } - } - - public void Set(object other) - { - Set(other as CopyProductUserExternalAccountByAccountTypeOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CopyProductUserExternalAccountByAccountTypeOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CopyProductUserExternalAccountByAccountTypeOptions.cs.meta deleted file mode 100644 index 04ca1dd..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CopyProductUserExternalAccountByAccountTypeOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 58b9ef5314a41eb4392a7713621277b1 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CopyProductUserExternalAccountByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CopyProductUserExternalAccountByIndexOptions.cs deleted file mode 100644 index 54c7c6c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CopyProductUserExternalAccountByIndexOptions.cs +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Input parameters for the function. - /// - public class CopyProductUserExternalAccountByIndexOptions - { - /// - /// The Product User ID to look for when copying external account info from the cache. - /// - public ProductUserId TargetUserId { get; set; } - - /// - /// Index of the external account info to retrieve from the cache. - /// - public uint ExternalAccountInfoIndex { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyProductUserExternalAccountByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_TargetUserId; - private uint m_ExternalAccountInfoIndex; - - public ProductUserId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public uint ExternalAccountInfoIndex - { - set - { - m_ExternalAccountInfoIndex = value; - } - } - - public void Set(CopyProductUserExternalAccountByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = ConnectInterface.CopyproductuserexternalaccountbyindexApiLatest; - TargetUserId = other.TargetUserId; - ExternalAccountInfoIndex = other.ExternalAccountInfoIndex; - } - } - - public void Set(object other) - { - Set(other as CopyProductUserExternalAccountByIndexOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CopyProductUserExternalAccountByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CopyProductUserExternalAccountByIndexOptions.cs.meta deleted file mode 100644 index 47983cc..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CopyProductUserExternalAccountByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 08433b1f195b869459c3fc3820d09f7b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CopyProductUserInfoOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CopyProductUserInfoOptions.cs deleted file mode 100644 index 79ececb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CopyProductUserInfoOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Input parameters for the function. - /// - public class CopyProductUserInfoOptions - { - /// - /// Product user ID to look for when copying external account info from the cache. - /// - public ProductUserId TargetUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyProductUserInfoOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_TargetUserId; - - public ProductUserId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public void Set(CopyProductUserInfoOptions other) - { - if (other != null) - { - m_ApiVersion = ConnectInterface.CopyproductuserinfoApiLatest; - TargetUserId = other.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as CopyProductUserInfoOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CopyProductUserInfoOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CopyProductUserInfoOptions.cs.meta deleted file mode 100644 index 1abee60..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CopyProductUserInfoOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 285ed831a3f20f045afa33fa51a7464b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CreateDeviceIdCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CreateDeviceIdCallbackInfo.cs deleted file mode 100644 index 974a206..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CreateDeviceIdCallbackInfo.cs +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Output parameters for the function. - /// - public class CreateDeviceIdCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into . - /// - public object ClientData { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(CreateDeviceIdCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - } - } - - public void Set(object other) - { - Set(other as CreateDeviceIdCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CreateDeviceIdCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CreateDeviceIdCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CreateDeviceIdCallbackInfo.cs.meta deleted file mode 100644 index e811b0d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CreateDeviceIdCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 8648b5666e3063c42b63ba4919cf4e06 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CreateDeviceIdOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CreateDeviceIdOptions.cs deleted file mode 100644 index 78798e3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CreateDeviceIdOptions.cs +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Input parameters for the function. - /// - public class CreateDeviceIdOptions - { - /// - /// A freeform text description identifying the device type and model, - /// which can be used in account linking management to allow the player - /// and customer support to identify different devices linked to an EOS - /// user keychain. For example 'iPhone 6S' or 'PC Windows'. - /// - /// The input string must be in UTF-8 character format, with a maximum - /// length of 64 characters. Longer string will be silently truncated. - /// - /// This field is required to be present. - /// - public string DeviceModel { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CreateDeviceIdOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_DeviceModel; - - public string DeviceModel - { - set - { - Helper.TryMarshalSet(ref m_DeviceModel, value); - } - } - - public void Set(CreateDeviceIdOptions other) - { - if (other != null) - { - m_ApiVersion = ConnectInterface.CreatedeviceidApiLatest; - DeviceModel = other.DeviceModel; - } - } - - public void Set(object other) - { - Set(other as CreateDeviceIdOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_DeviceModel); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CreateDeviceIdOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CreateDeviceIdOptions.cs.meta deleted file mode 100644 index 0a93b00..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CreateDeviceIdOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 1c32b0a9a4676a24fb5df708ff91d5dd -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CreateUserCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CreateUserCallbackInfo.cs deleted file mode 100644 index b7d1309..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CreateUserCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Output parameters for the function. - /// - public class CreateUserCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into . - /// - public object ClientData { get; private set; } - - /// - /// If the operation succeeded, this is the Product User ID of the local user who was created. - /// - public ProductUserId LocalUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(CreateUserCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as CreateUserCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CreateUserCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CreateUserCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CreateUserCallbackInfo.cs.meta deleted file mode 100644 index 4a16553..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CreateUserCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 33ef1e3b189cd5248ba003400069ddfd -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CreateUserOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CreateUserOptions.cs deleted file mode 100644 index 0090bc0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CreateUserOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Input parameters for the function. - /// - public class CreateUserOptions - { - /// - /// Continuance token from previous call to - /// - public ContinuanceToken ContinuanceToken { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CreateUserOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_ContinuanceToken; - - public ContinuanceToken ContinuanceToken - { - set - { - Helper.TryMarshalSet(ref m_ContinuanceToken, value); - } - } - - public void Set(CreateUserOptions other) - { - if (other != null) - { - m_ApiVersion = ConnectInterface.CreateuserApiLatest; - ContinuanceToken = other.ContinuanceToken; - } - } - - public void Set(object other) - { - Set(other as CreateUserOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_ContinuanceToken); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CreateUserOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CreateUserOptions.cs.meta deleted file mode 100644 index 3209cf7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/CreateUserOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0c61c5a385f2a1c4fa61e7fa832ed0f0 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/Credentials.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/Credentials.cs deleted file mode 100644 index 3f1c3e3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/Credentials.cs +++ /dev/null @@ -1,95 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// A structure that contains external login credentials. - /// - /// This is part of the input structure . - /// - /// - /// - public class Credentials : ISettable - { - /// - /// External token associated with the user logging in. - /// - public string Token { get; set; } - - /// - /// Type of external login; identifies the auth method to use. - /// - public ExternalCredentialType Type { get; set; } - - internal void Set(CredentialsInternal? other) - { - if (other != null) - { - Token = other.Value.Token; - Type = other.Value.Type; - } - } - - public void Set(object other) - { - Set(other as CredentialsInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CredentialsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Token; - private ExternalCredentialType m_Type; - - public string Token - { - get - { - string value; - Helper.TryMarshalGet(m_Token, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Token, value); - } - } - - public ExternalCredentialType Type - { - get - { - return m_Type; - } - - set - { - m_Type = value; - } - } - - public void Set(Credentials other) - { - if (other != null) - { - m_ApiVersion = ConnectInterface.CredentialsApiLatest; - Token = other.Token; - Type = other.Type; - } - } - - public void Set(object other) - { - Set(other as Credentials); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Token); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/Credentials.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/Credentials.cs.meta deleted file mode 100644 index 3f5f70e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/Credentials.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 5f5b957e0d646c743a752a87f265b044 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/DeleteDeviceIdCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/DeleteDeviceIdCallbackInfo.cs deleted file mode 100644 index 3c5f226..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/DeleteDeviceIdCallbackInfo.cs +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Output parameters for the function. - /// - public class DeleteDeviceIdCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(DeleteDeviceIdCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - } - } - - public void Set(object other) - { - Set(other as DeleteDeviceIdCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct DeleteDeviceIdCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/DeleteDeviceIdCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/DeleteDeviceIdCallbackInfo.cs.meta deleted file mode 100644 index 0534468..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/DeleteDeviceIdCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9b95206c9df923b4ea5f45e75e193123 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/DeleteDeviceIdOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/DeleteDeviceIdOptions.cs deleted file mode 100644 index 3fa3796..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/DeleteDeviceIdOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Input parameters for the function. - /// - public class DeleteDeviceIdOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct DeleteDeviceIdOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(DeleteDeviceIdOptions other) - { - if (other != null) - { - m_ApiVersion = ConnectInterface.DeletedeviceidApiLatest; - } - } - - public void Set(object other) - { - Set(other as DeleteDeviceIdOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/DeleteDeviceIdOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/DeleteDeviceIdOptions.cs.meta deleted file mode 100644 index fcead0f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/DeleteDeviceIdOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f912df7eb6dfbc941a639c4027a489c4 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/ExternalAccountInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/ExternalAccountInfo.cs deleted file mode 100644 index f70869f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/ExternalAccountInfo.cs +++ /dev/null @@ -1,162 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Contains information about an external account info - /// - public class ExternalAccountInfo : ISettable - { - /// - /// The Product User ID of the target user. - /// - public ProductUserId ProductUserId { get; set; } - - /// - /// Display name, can be null if not set. - /// - public string DisplayName { get; set; } - - /// - /// External account ID. - /// - public string AccountId { get; set; } - - /// - /// The identity provider that owns the external account. - /// - public ExternalAccountType AccountIdType { get; set; } - - /// - /// The POSIX timestamp for the time the user last logged in, or . - /// - public System.DateTimeOffset? LastLoginTime { get; set; } - - internal void Set(ExternalAccountInfoInternal? other) - { - if (other != null) - { - ProductUserId = other.Value.ProductUserId; - DisplayName = other.Value.DisplayName; - AccountId = other.Value.AccountId; - AccountIdType = other.Value.AccountIdType; - LastLoginTime = other.Value.LastLoginTime; - } - } - - public void Set(object other) - { - Set(other as ExternalAccountInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct ExternalAccountInfoInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_ProductUserId; - private System.IntPtr m_DisplayName; - private System.IntPtr m_AccountId; - private ExternalAccountType m_AccountIdType; - private long m_LastLoginTime; - - public ProductUserId ProductUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_ProductUserId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_ProductUserId, value); - } - } - - public string DisplayName - { - get - { - string value; - Helper.TryMarshalGet(m_DisplayName, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_DisplayName, value); - } - } - - public string AccountId - { - get - { - string value; - Helper.TryMarshalGet(m_AccountId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_AccountId, value); - } - } - - public ExternalAccountType AccountIdType - { - get - { - return m_AccountIdType; - } - - set - { - m_AccountIdType = value; - } - } - - public System.DateTimeOffset? LastLoginTime - { - get - { - System.DateTimeOffset? value; - Helper.TryMarshalGet(m_LastLoginTime, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_LastLoginTime, value); - } - } - - public void Set(ExternalAccountInfo other) - { - if (other != null) - { - m_ApiVersion = ConnectInterface.CopyproductuserexternalaccountbyindexApiLatest; - ProductUserId = other.ProductUserId; - DisplayName = other.DisplayName; - AccountId = other.AccountId; - AccountIdType = other.AccountIdType; - LastLoginTime = other.LastLoginTime; - } - } - - public void Set(object other) - { - Set(other as ExternalAccountInfo); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_ProductUserId); - Helper.TryMarshalDispose(ref m_DisplayName); - Helper.TryMarshalDispose(ref m_AccountId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/ExternalAccountInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/ExternalAccountInfo.cs.meta deleted file mode 100644 index 642e2cd..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/ExternalAccountInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 1054ad1459dc768488d8e7650f69c651 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/GetExternalAccountMappingsOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/GetExternalAccountMappingsOptions.cs deleted file mode 100644 index 2a9f883..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/GetExternalAccountMappingsOptions.cs +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Input parameters for the function. - /// - public class GetExternalAccountMappingsOptions - { - /// - /// The Product User ID of the existing, logged-in user who is querying account mappings. - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// External auth service supplying the account IDs in string form. - /// - public ExternalAccountType AccountIdType { get; set; } - - /// - /// Target user to retrieve the mapping for, as an external account ID. - /// - public string TargetExternalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetExternalAccountMappingsOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private ExternalAccountType m_AccountIdType; - private System.IntPtr m_TargetExternalUserId; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public ExternalAccountType AccountIdType - { - set - { - m_AccountIdType = value; - } - } - - public string TargetExternalUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetExternalUserId, value); - } - } - - public void Set(GetExternalAccountMappingsOptions other) - { - if (other != null) - { - m_ApiVersion = ConnectInterface.GetexternalaccountmappingApiLatest; - LocalUserId = other.LocalUserId; - AccountIdType = other.AccountIdType; - TargetExternalUserId = other.TargetExternalUserId; - } - } - - public void Set(object other) - { - Set(other as GetExternalAccountMappingsOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_TargetExternalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/GetExternalAccountMappingsOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/GetExternalAccountMappingsOptions.cs.meta deleted file mode 100644 index 4ba0e1a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/GetExternalAccountMappingsOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 1314d7fab0cc59d4fa24c1dad0c53255 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/GetProductUserExternalAccountCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/GetProductUserExternalAccountCountOptions.cs deleted file mode 100644 index 572e4c8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/GetProductUserExternalAccountCountOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Input parameters for the function. - /// - public class GetProductUserExternalAccountCountOptions - { - /// - /// The Product User ID to look for when getting external account info count from the cache. - /// - public ProductUserId TargetUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetProductUserExternalAccountCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_TargetUserId; - - public ProductUserId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public void Set(GetProductUserExternalAccountCountOptions other) - { - if (other != null) - { - m_ApiVersion = ConnectInterface.GetproductuserexternalaccountcountApiLatest; - TargetUserId = other.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as GetProductUserExternalAccountCountOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/GetProductUserExternalAccountCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/GetProductUserExternalAccountCountOptions.cs.meta deleted file mode 100644 index 9247a0e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/GetProductUserExternalAccountCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 2ab1aeb6f9a14854595a44077065efb5 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/GetProductUserIdMappingOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/GetProductUserIdMappingOptions.cs deleted file mode 100644 index 62ca954..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/GetProductUserIdMappingOptions.cs +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Input parameters for the function. - /// - public class GetProductUserIdMappingOptions - { - /// - /// The Product User ID of the existing, logged-in user that is querying account mappings. - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// External auth service mapping to retrieve. - /// - public ExternalAccountType AccountIdType { get; set; } - - /// - /// The Product User ID of the user whose information is being requested. - /// - public ProductUserId TargetProductUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetProductUserIdMappingOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private ExternalAccountType m_AccountIdType; - private System.IntPtr m_TargetProductUserId; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public ExternalAccountType AccountIdType - { - set - { - m_AccountIdType = value; - } - } - - public ProductUserId TargetProductUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetProductUserId, value); - } - } - - public void Set(GetProductUserIdMappingOptions other) - { - if (other != null) - { - m_ApiVersion = ConnectInterface.GetproductuseridmappingApiLatest; - LocalUserId = other.LocalUserId; - AccountIdType = other.AccountIdType; - TargetProductUserId = other.TargetProductUserId; - } - } - - public void Set(object other) - { - Set(other as GetProductUserIdMappingOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_TargetProductUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/GetProductUserIdMappingOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/GetProductUserIdMappingOptions.cs.meta deleted file mode 100644 index 208da87..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/GetProductUserIdMappingOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3ea788f4af104934abdf833ecf1abeba -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/LinkAccountCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/LinkAccountCallbackInfo.cs deleted file mode 100644 index 8ccf3fe..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/LinkAccountCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Output parameters for the function. - /// - public class LinkAccountCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into . - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the existing, logged-in user whose account was linked (on success). - /// - public ProductUserId LocalUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(LinkAccountCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as LinkAccountCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LinkAccountCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/LinkAccountCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/LinkAccountCallbackInfo.cs.meta deleted file mode 100644 index aa29bab..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/LinkAccountCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 976f4c4fc27b79544988dda24fb6b848 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/LinkAccountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/LinkAccountOptions.cs deleted file mode 100644 index a6f8f82..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/LinkAccountOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Input parameters for the function. - /// - public class LinkAccountOptions - { - /// - /// The existing logged in product user for which to link the external account described by the continuance token. - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// Continuance token from previous call to . - /// - public ContinuanceToken ContinuanceToken { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LinkAccountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_ContinuanceToken; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public ContinuanceToken ContinuanceToken - { - set - { - Helper.TryMarshalSet(ref m_ContinuanceToken, value); - } - } - - public void Set(LinkAccountOptions other) - { - if (other != null) - { - m_ApiVersion = ConnectInterface.LinkaccountApiLatest; - LocalUserId = other.LocalUserId; - ContinuanceToken = other.ContinuanceToken; - } - } - - public void Set(object other) - { - Set(other as LinkAccountOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_ContinuanceToken); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/LinkAccountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/LinkAccountOptions.cs.meta deleted file mode 100644 index f73753f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/LinkAccountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 1568e451f55aecc408298c2212192140 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/LoginCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/LoginCallbackInfo.cs deleted file mode 100644 index dc39c5e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/LoginCallbackInfo.cs +++ /dev/null @@ -1,109 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Output parameters for the function. - /// - public class LoginCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into . - /// - public object ClientData { get; private set; } - - /// - /// If login was succesful, this is the Product User ID of the local player that logged in. - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// If the user was not found with credentials passed into , - /// this continuance token can be passed to either - /// or to continue the flow. - /// - public ContinuanceToken ContinuanceToken { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(LoginCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - ContinuanceToken = other.Value.ContinuanceToken; - } - } - - public void Set(object other) - { - Set(other as LoginCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LoginCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_ContinuanceToken; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public ContinuanceToken ContinuanceToken - { - get - { - ContinuanceToken value; - Helper.TryMarshalGet(m_ContinuanceToken, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/LoginCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/LoginCallbackInfo.cs.meta deleted file mode 100644 index f4f72c6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/LoginCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 5bc43069aea53b94db5de821cc858604 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/LoginOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/LoginOptions.cs deleted file mode 100644 index f3cf0d0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/LoginOptions.cs +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Input parameters for the function. - /// - public class LoginOptions - { - /// - /// Credentials specified for a given login method - /// - public Credentials Credentials { get; set; } - - /// - /// Additional non-authoritative information about the local user. - /// - /// This field is required to be set and only used when authenticating the user using Apple, Google, Nintendo Account, Nintendo Service Account, Oculus or the Device ID feature login. - /// When using other identity providers, set to NULL. - /// - public UserLoginInfo UserLoginInfo { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LoginOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Credentials; - private System.IntPtr m_UserLoginInfo; - - public Credentials Credentials - { - set - { - Helper.TryMarshalSet(ref m_Credentials, value); - } - } - - public UserLoginInfo UserLoginInfo - { - set - { - Helper.TryMarshalSet(ref m_UserLoginInfo, value); - } - } - - public void Set(LoginOptions other) - { - if (other != null) - { - m_ApiVersion = ConnectInterface.LoginApiLatest; - Credentials = other.Credentials; - UserLoginInfo = other.UserLoginInfo; - } - } - - public void Set(object other) - { - Set(other as LoginOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Credentials); - Helper.TryMarshalDispose(ref m_UserLoginInfo); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/LoginOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/LoginOptions.cs.meta deleted file mode 100644 index 6d1996d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/LoginOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d15d84d4dec35e14489dcbaa4d6822ee -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/LoginStatusChangedCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/LoginStatusChangedCallbackInfo.cs deleted file mode 100644 index a1cd9a5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/LoginStatusChangedCallbackInfo.cs +++ /dev/null @@ -1,105 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Output parameters for the function. - /// - public class LoginStatusChangedCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Context that was passed into . - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the local player whose status has changed. - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The status prior to the change. - /// - public LoginStatus PreviousStatus { get; private set; } - - /// - /// The status at the time of the notification. - /// - public LoginStatus CurrentStatus { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(LoginStatusChangedCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - PreviousStatus = other.Value.PreviousStatus; - CurrentStatus = other.Value.CurrentStatus; - } - } - - public void Set(object other) - { - Set(other as LoginStatusChangedCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LoginStatusChangedCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private LoginStatus m_PreviousStatus; - private LoginStatus m_CurrentStatus; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public LoginStatus PreviousStatus - { - get - { - return m_PreviousStatus; - } - } - - public LoginStatus CurrentStatus - { - get - { - return m_CurrentStatus; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/LoginStatusChangedCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/LoginStatusChangedCallbackInfo.cs.meta deleted file mode 100644 index 797e3b4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/LoginStatusChangedCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ab46084fb4a7ebc42aa246011192a334 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnAuthExpirationCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnAuthExpirationCallback.cs deleted file mode 100644 index b189df7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnAuthExpirationCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Function prototype definition for notifications that come from . - /// - /// A containing the output information and result. - public delegate void OnAuthExpirationCallback(AuthExpirationCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnAuthExpirationCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnAuthExpirationCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnAuthExpirationCallback.cs.meta deleted file mode 100644 index 9153ec6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnAuthExpirationCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b353a30cbebff4340a093b7157aa8179 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnCreateDeviceIdCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnCreateDeviceIdCallback.cs deleted file mode 100644 index b2ee687..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnCreateDeviceIdCallback.cs +++ /dev/null @@ -1,10 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - public delegate void OnCreateDeviceIdCallback(CreateDeviceIdCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnCreateDeviceIdCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnCreateDeviceIdCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnCreateDeviceIdCallback.cs.meta deleted file mode 100644 index d6c322f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnCreateDeviceIdCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 62322c91fd4c37c45ac124e166d2cd66 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnCreateUserCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnCreateUserCallback.cs deleted file mode 100644 index 0faf5be..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnCreateUserCallback.cs +++ /dev/null @@ -1,10 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - public delegate void OnCreateUserCallback(CreateUserCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnCreateUserCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnCreateUserCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnCreateUserCallback.cs.meta deleted file mode 100644 index aa5e293..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnCreateUserCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 80f0447118570c649aeace7c214d58d8 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnDeleteDeviceIdCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnDeleteDeviceIdCallback.cs deleted file mode 100644 index 3880f4b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnDeleteDeviceIdCallback.cs +++ /dev/null @@ -1,10 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - public delegate void OnDeleteDeviceIdCallback(DeleteDeviceIdCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnDeleteDeviceIdCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnDeleteDeviceIdCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnDeleteDeviceIdCallback.cs.meta deleted file mode 100644 index 68af0c1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnDeleteDeviceIdCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 24cd224ecbb77bc419d63d12137976c3 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnLinkAccountCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnLinkAccountCallback.cs deleted file mode 100644 index bd65f2b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnLinkAccountCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Function prototype definition for callbacks passed to . - /// - /// A containing the output information and result. - public delegate void OnLinkAccountCallback(LinkAccountCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnLinkAccountCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnLinkAccountCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnLinkAccountCallback.cs.meta deleted file mode 100644 index 68c48c3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnLinkAccountCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0c974e78494bf62429d64d035f17ba3e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnLoginCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnLoginCallback.cs deleted file mode 100644 index ee7ce7a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnLoginCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Function prototype definition for callbacks passed to . - /// - /// A containing the output information and result. - public delegate void OnLoginCallback(LoginCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnLoginCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnLoginCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnLoginCallback.cs.meta deleted file mode 100644 index 27c5a0e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnLoginCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 8ee20594b02ad9b44844e9cf1780fc0b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnLoginStatusChangedCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnLoginStatusChangedCallback.cs deleted file mode 100644 index b99c699..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnLoginStatusChangedCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Function prototype definition for notifications that come from . - /// - /// A containing the output information and result. - public delegate void OnLoginStatusChangedCallback(LoginStatusChangedCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnLoginStatusChangedCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnLoginStatusChangedCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnLoginStatusChangedCallback.cs.meta deleted file mode 100644 index 630b6d9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnLoginStatusChangedCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f08e8a95fe8a33d488605934686239ba -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnQueryExternalAccountMappingsCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnQueryExternalAccountMappingsCallback.cs deleted file mode 100644 index 727dad2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnQueryExternalAccountMappingsCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Function prototype definition for callbacks passed to . - /// - /// A containing the output information and result. - public delegate void OnQueryExternalAccountMappingsCallback(QueryExternalAccountMappingsCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnQueryExternalAccountMappingsCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnQueryExternalAccountMappingsCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnQueryExternalAccountMappingsCallback.cs.meta deleted file mode 100644 index ff0cdc4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnQueryExternalAccountMappingsCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: de1cdeffcd33f4e4e876d4297ea12852 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnQueryProductUserIdMappingsCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnQueryProductUserIdMappingsCallback.cs deleted file mode 100644 index 0a23737..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnQueryProductUserIdMappingsCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Function prototype definition for callbacks passed to . - /// - /// A containing the output information and result. - public delegate void OnQueryProductUserIdMappingsCallback(QueryProductUserIdMappingsCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnQueryProductUserIdMappingsCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnQueryProductUserIdMappingsCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnQueryProductUserIdMappingsCallback.cs.meta deleted file mode 100644 index 2a6faac..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnQueryProductUserIdMappingsCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4d73b4b65b646a944a1dbd0a4eb4d031 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnTransferDeviceIdAccountCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnTransferDeviceIdAccountCallback.cs deleted file mode 100644 index 7c10d89..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnTransferDeviceIdAccountCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Function prototype definition for callbacks passed to . - /// - /// A containing the output information and result. - public delegate void OnTransferDeviceIdAccountCallback(TransferDeviceIdAccountCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnTransferDeviceIdAccountCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnTransferDeviceIdAccountCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnTransferDeviceIdAccountCallback.cs.meta deleted file mode 100644 index b9c4cf9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnTransferDeviceIdAccountCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a0868717dac232b47b9606bdda190ece -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnUnlinkAccountCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnUnlinkAccountCallback.cs deleted file mode 100644 index d124730..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnUnlinkAccountCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Function prototype definition for callbacks passed to . - /// - /// A containing the output information and result - public delegate void OnUnlinkAccountCallback(UnlinkAccountCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnUnlinkAccountCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnUnlinkAccountCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnUnlinkAccountCallback.cs.meta deleted file mode 100644 index fdde9ea..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/OnUnlinkAccountCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d0cb92edf89cc3c44ad615a1f5d96f42 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/QueryExternalAccountMappingsCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/QueryExternalAccountMappingsCallbackInfo.cs deleted file mode 100644 index b1d7a30..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/QueryExternalAccountMappingsCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Output parameters for the function. - /// - public class QueryExternalAccountMappingsCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into . - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the existing, logged-in user who made the request. - /// - public ProductUserId LocalUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(QueryExternalAccountMappingsCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as QueryExternalAccountMappingsCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryExternalAccountMappingsCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/QueryExternalAccountMappingsCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/QueryExternalAccountMappingsCallbackInfo.cs.meta deleted file mode 100644 index 6efa32b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/QueryExternalAccountMappingsCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 6bcb8f53683418f4f86949bbf173add9 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/QueryExternalAccountMappingsOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/QueryExternalAccountMappingsOptions.cs deleted file mode 100644 index 7ea0509..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/QueryExternalAccountMappingsOptions.cs +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Input parameters for the function. - /// - public class QueryExternalAccountMappingsOptions - { - /// - /// The Product User ID of the existing, logged-in user who is querying account mappings. - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// External auth service supplying the account IDs in string form. - /// - public ExternalAccountType AccountIdType { get; set; } - - /// - /// An array of external account IDs to map to the product user ID representation. - /// - public string[] ExternalAccountIds { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryExternalAccountMappingsOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private ExternalAccountType m_AccountIdType; - private System.IntPtr m_ExternalAccountIds; - private uint m_ExternalAccountIdCount; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public ExternalAccountType AccountIdType - { - set - { - m_AccountIdType = value; - } - } - - public string[] ExternalAccountIds - { - set - { - Helper.TryMarshalSet(ref m_ExternalAccountIds, value, out m_ExternalAccountIdCount, true); - } - } - - public void Set(QueryExternalAccountMappingsOptions other) - { - if (other != null) - { - m_ApiVersion = ConnectInterface.QueryexternalaccountmappingsApiLatest; - LocalUserId = other.LocalUserId; - AccountIdType = other.AccountIdType; - ExternalAccountIds = other.ExternalAccountIds; - } - } - - public void Set(object other) - { - Set(other as QueryExternalAccountMappingsOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_ExternalAccountIds); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/QueryExternalAccountMappingsOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/QueryExternalAccountMappingsOptions.cs.meta deleted file mode 100644 index de43c00..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/QueryExternalAccountMappingsOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 7673e9d366bf0bc458e4fd1948ae3f5e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/QueryProductUserIdMappingsCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/QueryProductUserIdMappingsCallbackInfo.cs deleted file mode 100644 index 2cf83a8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/QueryProductUserIdMappingsCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Output parameters for the function. - /// - public class QueryProductUserIdMappingsCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into . - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the existing, logged-in user who made the request. - /// - public ProductUserId LocalUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(QueryProductUserIdMappingsCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as QueryProductUserIdMappingsCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryProductUserIdMappingsCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/QueryProductUserIdMappingsCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/QueryProductUserIdMappingsCallbackInfo.cs.meta deleted file mode 100644 index bc11207..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/QueryProductUserIdMappingsCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 082fda5854845fd4488c4ca0ada566ad -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/QueryProductUserIdMappingsOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/QueryProductUserIdMappingsOptions.cs deleted file mode 100644 index 9f21354..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/QueryProductUserIdMappingsOptions.cs +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Input parameters for the function. - /// - public class QueryProductUserIdMappingsOptions - { - /// - /// The Product User ID of the existing, logged-in user who is querying account mappings. - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// Deprecated - all external mappings are included in this call, it is no longer necessary to specify this value. - /// - public ExternalAccountType AccountIdType_DEPRECATED { get; set; } - - /// - /// An array of Product User IDs to query for the given external account representation. - /// - public ProductUserId[] ProductUserIds { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryProductUserIdMappingsOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private ExternalAccountType m_AccountIdType_DEPRECATED; - private System.IntPtr m_ProductUserIds; - private uint m_ProductUserIdCount; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public ExternalAccountType AccountIdType_DEPRECATED - { - set - { - m_AccountIdType_DEPRECATED = value; - } - } - - public ProductUserId[] ProductUserIds - { - set - { - Helper.TryMarshalSet(ref m_ProductUserIds, value, out m_ProductUserIdCount); - } - } - - public void Set(QueryProductUserIdMappingsOptions other) - { - if (other != null) - { - m_ApiVersion = ConnectInterface.QueryproductuseridmappingsApiLatest; - LocalUserId = other.LocalUserId; - AccountIdType_DEPRECATED = other.AccountIdType_DEPRECATED; - ProductUserIds = other.ProductUserIds; - } - } - - public void Set(object other) - { - Set(other as QueryProductUserIdMappingsOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_ProductUserIds); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/QueryProductUserIdMappingsOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/QueryProductUserIdMappingsOptions.cs.meta deleted file mode 100644 index 2e33938..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/QueryProductUserIdMappingsOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e3460b8ddc134b24fb3c6a46c23180e4 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/TransferDeviceIdAccountCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/TransferDeviceIdAccountCallbackInfo.cs deleted file mode 100644 index 2678bd9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/TransferDeviceIdAccountCallbackInfo.cs +++ /dev/null @@ -1,95 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Output parameters for the Function. - /// - public class TransferDeviceIdAccountCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into . - /// - public object ClientData { get; private set; } - - /// - /// The ProductUserIdToPreserve that was passed to the original call. - /// - /// On successful operation, this will have a valid authentication session - /// and the other value has been discarded and lost forever. - /// - /// The application should remove any registered notification callbacks for the discarded as obsolete. - /// - public ProductUserId LocalUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(TransferDeviceIdAccountCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as TransferDeviceIdAccountCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct TransferDeviceIdAccountCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/TransferDeviceIdAccountCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/TransferDeviceIdAccountCallbackInfo.cs.meta deleted file mode 100644 index dddbb71..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/TransferDeviceIdAccountCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 5e5d2419888f2954f95702d9fac2ece7 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/TransferDeviceIdAccountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/TransferDeviceIdAccountOptions.cs deleted file mode 100644 index 5db38b7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/TransferDeviceIdAccountOptions.cs +++ /dev/null @@ -1,91 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Input parameters for the Function. - /// - public class TransferDeviceIdAccountOptions - { - /// - /// The primary product user id, currently logged in, that is already associated with a real external user account (such as Epic Games, PlayStation(TM)Network, Xbox Live and other). - /// - /// The account linking keychain that owns this product user will be preserved and receive - /// the Device ID login credentials under it. - /// - public ProductUserId PrimaryLocalUserId { get; set; } - - /// - /// The product user id, currently logged in, that has been originally created using the anonymous local Device ID login type, - /// and whose Device ID login will be transferred to the keychain of the PrimaryLocalUserId. - /// - public ProductUserId LocalDeviceUserId { get; set; } - - /// - /// Specifies which (i.e. game progression) will be preserved in the operation. - /// - /// After a successful transfer operation, subsequent logins using the same external account or - /// the same local Device ID login will return user session for the ProductUserIdToPreserve. - /// - /// Set to either PrimaryLocalUserId or LocalDeviceUserId. - /// - public ProductUserId ProductUserIdToPreserve { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct TransferDeviceIdAccountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_PrimaryLocalUserId; - private System.IntPtr m_LocalDeviceUserId; - private System.IntPtr m_ProductUserIdToPreserve; - - public ProductUserId PrimaryLocalUserId - { - set - { - Helper.TryMarshalSet(ref m_PrimaryLocalUserId, value); - } - } - - public ProductUserId LocalDeviceUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalDeviceUserId, value); - } - } - - public ProductUserId ProductUserIdToPreserve - { - set - { - Helper.TryMarshalSet(ref m_ProductUserIdToPreserve, value); - } - } - - public void Set(TransferDeviceIdAccountOptions other) - { - if (other != null) - { - m_ApiVersion = ConnectInterface.TransferdeviceidaccountApiLatest; - PrimaryLocalUserId = other.PrimaryLocalUserId; - LocalDeviceUserId = other.LocalDeviceUserId; - ProductUserIdToPreserve = other.ProductUserIdToPreserve; - } - } - - public void Set(object other) - { - Set(other as TransferDeviceIdAccountOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_PrimaryLocalUserId); - Helper.TryMarshalDispose(ref m_LocalDeviceUserId); - Helper.TryMarshalDispose(ref m_ProductUserIdToPreserve); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/TransferDeviceIdAccountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/TransferDeviceIdAccountOptions.cs.meta deleted file mode 100644 index f5a14bc..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/TransferDeviceIdAccountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 64510cb7cde4a804f87a6e634572103f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/UnlinkAccountCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/UnlinkAccountCallbackInfo.cs deleted file mode 100644 index 07ad15a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/UnlinkAccountCallbackInfo.cs +++ /dev/null @@ -1,93 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Output parameters for the Function. - /// - public class UnlinkAccountCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into . - /// - public object ClientData { get; private set; } - - /// - /// The product user that was subject for the unlinking operation. - /// - /// On a successful operation, the local authentication session for the product user will have been invalidated. - /// As such, the LocalUserId value will no longer be valid in any context unless the user is logged into it again. - /// - public ProductUserId LocalUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(UnlinkAccountCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as UnlinkAccountCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct UnlinkAccountCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/UnlinkAccountCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/UnlinkAccountCallbackInfo.cs.meta deleted file mode 100644 index 8a24516..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/UnlinkAccountCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 04e0bd8a98d526e4a8d43a352389de53 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/UnlinkAccountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/UnlinkAccountOptions.cs deleted file mode 100644 index a90e291..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/UnlinkAccountOptions.cs +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Input parameters for the Function. - /// - public class UnlinkAccountOptions - { - /// - /// Existing logged in product user that is subject for the unlinking operation. - /// The external account that was used to login to the product user will be unlinked from the owning keychain. - /// - /// On a successful operation, the product user will be logged out as the external account used to authenticate the user was unlinked from the owning keychain. - /// - public ProductUserId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct UnlinkAccountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(UnlinkAccountOptions other) - { - if (other != null) - { - m_ApiVersion = ConnectInterface.UnlinkaccountApiLatest; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as UnlinkAccountOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/UnlinkAccountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/UnlinkAccountOptions.cs.meta deleted file mode 100644 index 191e4ef..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/UnlinkAccountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 97117a43ffc28cf46b707b9d63b52ba7 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/UserLoginInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/UserLoginInfo.cs deleted file mode 100644 index 0bd2812..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/UserLoginInfo.cs +++ /dev/null @@ -1,75 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Connect -{ - /// - /// Additional information about the local user. - /// - /// As the information passed here is client-controlled and not part of the user authentication tokens, - /// it is only treated as non-authoritative informational data to be used by some of the feature services. - /// For example displaying player names in Leaderboards rankings. - /// - public class UserLoginInfo : ISettable - { - /// - /// The user's display name on the identity provider systems as UTF-8 encoded null-terminated string. - /// The length of the name can be at maximum up to bytes. - /// - public string DisplayName { get; set; } - - internal void Set(UserLoginInfoInternal? other) - { - if (other != null) - { - DisplayName = other.Value.DisplayName; - } - } - - public void Set(object other) - { - Set(other as UserLoginInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct UserLoginInfoInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_DisplayName; - - public string DisplayName - { - get - { - string value; - Helper.TryMarshalGet(m_DisplayName, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_DisplayName, value); - } - } - - public void Set(UserLoginInfo other) - { - if (other != null) - { - m_ApiVersion = ConnectInterface.UserlogininfoApiLatest; - DisplayName = other.DisplayName; - } - } - - public void Set(object other) - { - Set(other as UserLoginInfo); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_DisplayName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/UserLoginInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/UserLoginInfo.cs.meta deleted file mode 100644 index a282aa8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Connect/UserLoginInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f84494e437e96194680213e568befbe5 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/ContinuanceToken.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/ContinuanceToken.cs deleted file mode 100644 index 0b2fb77..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/ContinuanceToken.cs +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices -{ - public sealed partial class ContinuanceToken : Handle - { - public ContinuanceToken() - { - } - - public ContinuanceToken(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// Retrieve a null-terminated stringified continuance token from an . - /// - /// To get the required buffer size, call once with OutBuffer set to NULL, InOutBufferLength will contain the buffer size needed. - /// Call again with valid params to get the stringified continuance token which will only contain UTF8-encoded printable characters (excluding the null-terminator). - /// - /// The continuance token for which to retrieve the stringified version. - /// The buffer into which the character data should be written - /// - /// The size of the OutBuffer in characters. - /// The input buffer should include enough space to be null-terminated. - /// When the function returns, this parameter will be filled with the length of the string copied into OutBuffer including the null termination character. - /// - /// - /// An that indicates whether the continuance token string was copied into the OutBuffer. - /// - The OutBuffer was filled, and InOutBufferLength contains the number of characters copied into OutBuffer including the null terminator. - /// - Either OutBuffer or InOutBufferLength were passed as NULL parameters. - /// - The AccountId is invalid and cannot be stringified. - /// - The OutBuffer is not large enough to receive the continuance token string. InOutBufferLength contains the required minimum length to perform the operation successfully. - /// - public Result ToString(out string outBuffer) - { - System.IntPtr outBufferAddress = System.IntPtr.Zero; - int inOutBufferLength = 1024; - Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength, out _); - - var funcResult = Bindings.EOS_ContinuanceToken_ToString(InnerHandle, outBufferAddress, ref inOutBufferLength); - - Helper.TryMarshalGet(outBufferAddress, out outBuffer); - Helper.TryMarshalDispose(ref outBufferAddress); - - return funcResult; - } - - public override string ToString() - { - string funcResult; - ToString(out funcResult); - return funcResult; - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/ContinuanceToken.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/ContinuanceToken.cs.meta deleted file mode 100644 index fafc5d9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/ContinuanceToken.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 7b41fd6fa0804dc4aadb5acb70184db8 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom.meta deleted file mode 100644 index 7227857..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: cfbc777a709c7d543b58b17e504c98e7 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CatalogItem.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CatalogItem.cs deleted file mode 100644 index 51b2d7a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CatalogItem.cs +++ /dev/null @@ -1,281 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Contains information about a single item within the catalog. Instances of this structure are created - /// by . They must be passed to . - /// - public class CatalogItem : ISettable - { - /// - /// Product namespace in which this item exists - /// - public string CatalogNamespace { get; set; } - - /// - /// The ID of this item - /// - public string Id { get; set; } - - /// - /// The entitlement name associated with this item - /// - public string EntitlementName { get; set; } - - /// - /// Localized UTF-8 title of this item - /// - public string TitleText { get; set; } - - /// - /// Localized UTF-8 description of this item - /// - public string DescriptionText { get; set; } - - /// - /// Localized UTF-8 long description of this item - /// - public string LongDescriptionText { get; set; } - - /// - /// Localized UTF-8 technical details of this item - /// - public string TechnicalDetailsText { get; set; } - - /// - /// Localized UTF-8 developer of this item - /// - public string DeveloperText { get; set; } - - /// - /// The type of item as defined in the catalog - /// - public EcomItemType ItemType { get; set; } - - /// - /// If not -1 then this is the POSIX timestamp that the entitlement will end - /// - public long EntitlementEndTimestamp { get; set; } - - internal void Set(CatalogItemInternal? other) - { - if (other != null) - { - CatalogNamespace = other.Value.CatalogNamespace; - Id = other.Value.Id; - EntitlementName = other.Value.EntitlementName; - TitleText = other.Value.TitleText; - DescriptionText = other.Value.DescriptionText; - LongDescriptionText = other.Value.LongDescriptionText; - TechnicalDetailsText = other.Value.TechnicalDetailsText; - DeveloperText = other.Value.DeveloperText; - ItemType = other.Value.ItemType; - EntitlementEndTimestamp = other.Value.EntitlementEndTimestamp; - } - } - - public void Set(object other) - { - Set(other as CatalogItemInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CatalogItemInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_CatalogNamespace; - private System.IntPtr m_Id; - private System.IntPtr m_EntitlementName; - private System.IntPtr m_TitleText; - private System.IntPtr m_DescriptionText; - private System.IntPtr m_LongDescriptionText; - private System.IntPtr m_TechnicalDetailsText; - private System.IntPtr m_DeveloperText; - private EcomItemType m_ItemType; - private long m_EntitlementEndTimestamp; - - public string CatalogNamespace - { - get - { - string value; - Helper.TryMarshalGet(m_CatalogNamespace, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_CatalogNamespace, value); - } - } - - public string Id - { - get - { - string value; - Helper.TryMarshalGet(m_Id, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Id, value); - } - } - - public string EntitlementName - { - get - { - string value; - Helper.TryMarshalGet(m_EntitlementName, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_EntitlementName, value); - } - } - - public string TitleText - { - get - { - string value; - Helper.TryMarshalGet(m_TitleText, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_TitleText, value); - } - } - - public string DescriptionText - { - get - { - string value; - Helper.TryMarshalGet(m_DescriptionText, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_DescriptionText, value); - } - } - - public string LongDescriptionText - { - get - { - string value; - Helper.TryMarshalGet(m_LongDescriptionText, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_LongDescriptionText, value); - } - } - - public string TechnicalDetailsText - { - get - { - string value; - Helper.TryMarshalGet(m_TechnicalDetailsText, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_TechnicalDetailsText, value); - } - } - - public string DeveloperText - { - get - { - string value; - Helper.TryMarshalGet(m_DeveloperText, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_DeveloperText, value); - } - } - - public EcomItemType ItemType - { - get - { - return m_ItemType; - } - - set - { - m_ItemType = value; - } - } - - public long EntitlementEndTimestamp - { - get - { - return m_EntitlementEndTimestamp; - } - - set - { - m_EntitlementEndTimestamp = value; - } - } - - public void Set(CatalogItem other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.CatalogitemApiLatest; - CatalogNamespace = other.CatalogNamespace; - Id = other.Id; - EntitlementName = other.EntitlementName; - TitleText = other.TitleText; - DescriptionText = other.DescriptionText; - LongDescriptionText = other.LongDescriptionText; - TechnicalDetailsText = other.TechnicalDetailsText; - DeveloperText = other.DeveloperText; - ItemType = other.ItemType; - EntitlementEndTimestamp = other.EntitlementEndTimestamp; - } - } - - public void Set(object other) - { - Set(other as CatalogItem); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_CatalogNamespace); - Helper.TryMarshalDispose(ref m_Id); - Helper.TryMarshalDispose(ref m_EntitlementName); - Helper.TryMarshalDispose(ref m_TitleText); - Helper.TryMarshalDispose(ref m_DescriptionText); - Helper.TryMarshalDispose(ref m_LongDescriptionText); - Helper.TryMarshalDispose(ref m_TechnicalDetailsText); - Helper.TryMarshalDispose(ref m_DeveloperText); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CatalogItem.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CatalogItem.cs.meta deleted file mode 100644 index cd912d0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CatalogItem.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 93ed81d7955cee647b56910730bfc6c6 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CatalogOffer.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CatalogOffer.cs deleted file mode 100644 index ad13450..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CatalogOffer.cs +++ /dev/null @@ -1,455 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Contains information about a single offer within the catalog. Instances of this structure are - /// created by . They must be passed to . - /// Prices are stored in the lowest denomination for the associated currency. If CurrencyCode is - /// "USD" then a price of 299 represents "$2.99". - /// - public class CatalogOffer : ISettable - { - /// - /// The index of this offer as it exists on the server. - /// This is useful for understanding pagination data. - /// - public int ServerIndex { get; set; } - - /// - /// Product namespace in which this offer exists - /// - public string CatalogNamespace { get; set; } - - /// - /// The ID of this offer - /// - public string Id { get; set; } - - /// - /// Localized UTF-8 title of this offer - /// - public string TitleText { get; set; } - - /// - /// Localized UTF-8 description of this offer - /// - public string DescriptionText { get; set; } - - /// - /// Localized UTF-8 long description of this offer - /// - public string LongDescriptionText { get; set; } - - /// - /// Deprecated. - /// ::TechnicalDetailsText has been deprecated. - /// ::TechnicalDetailsText is still valid. - /// - public string TechnicalDetailsText_DEPRECATED { get; set; } - - /// - /// The Currency Code for this offer - /// - public string CurrencyCode { get; set; } - - /// - /// If this value is then OriginalPrice, CurrentPrice, and DiscountPercentage contain valid data. - /// Otherwise this value represents the error that occurred on the price query. - /// - public Result PriceResult { get; set; } - - /// - /// The original price of this offer as a 32-bit number is deprecated. - /// - public uint OriginalPrice_DEPRECATED { get; set; } - - /// - /// The current price including discounts of this offer as a 32-bit number is deprecated.. - /// - public uint CurrentPrice_DEPRECATED { get; set; } - - /// - /// A value from 0 to 100 define the percentage of the OrignalPrice that the CurrentPrice represents - /// - public byte DiscountPercentage { get; set; } - - /// - /// Contains the POSIX timestamp that the offer expires or -1 if it does not expire - /// - public long ExpirationTimestamp { get; set; } - - /// - /// The number of times that the requesting account has purchased this offer. - /// - public uint PurchasedCount { get; set; } - - /// - /// The maximum number of times that the offer can be purchased. - /// A negative value implies there is no limit. - /// - public int PurchaseLimit { get; set; } - - /// - /// True if the user can purchase this offer. - /// - public bool AvailableForPurchase { get; set; } - - /// - /// The original price of this offer as a 64-bit number. - /// - public ulong OriginalPrice64 { get; set; } - - /// - /// The current price including discounts of this offer as a 64-bit number. - /// - public ulong CurrentPrice64 { get; set; } - - internal void Set(CatalogOfferInternal? other) - { - if (other != null) - { - ServerIndex = other.Value.ServerIndex; - CatalogNamespace = other.Value.CatalogNamespace; - Id = other.Value.Id; - TitleText = other.Value.TitleText; - DescriptionText = other.Value.DescriptionText; - LongDescriptionText = other.Value.LongDescriptionText; - TechnicalDetailsText_DEPRECATED = other.Value.TechnicalDetailsText_DEPRECATED; - CurrencyCode = other.Value.CurrencyCode; - PriceResult = other.Value.PriceResult; - OriginalPrice_DEPRECATED = other.Value.OriginalPrice_DEPRECATED; - CurrentPrice_DEPRECATED = other.Value.CurrentPrice_DEPRECATED; - DiscountPercentage = other.Value.DiscountPercentage; - ExpirationTimestamp = other.Value.ExpirationTimestamp; - PurchasedCount = other.Value.PurchasedCount; - PurchaseLimit = other.Value.PurchaseLimit; - AvailableForPurchase = other.Value.AvailableForPurchase; - OriginalPrice64 = other.Value.OriginalPrice64; - CurrentPrice64 = other.Value.CurrentPrice64; - } - } - - public void Set(object other) - { - Set(other as CatalogOfferInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CatalogOfferInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private int m_ServerIndex; - private System.IntPtr m_CatalogNamespace; - private System.IntPtr m_Id; - private System.IntPtr m_TitleText; - private System.IntPtr m_DescriptionText; - private System.IntPtr m_LongDescriptionText; - private System.IntPtr m_TechnicalDetailsText_DEPRECATED; - private System.IntPtr m_CurrencyCode; - private Result m_PriceResult; - private uint m_OriginalPrice_DEPRECATED; - private uint m_CurrentPrice_DEPRECATED; - private byte m_DiscountPercentage; - private long m_ExpirationTimestamp; - private uint m_PurchasedCount; - private int m_PurchaseLimit; - private int m_AvailableForPurchase; - private ulong m_OriginalPrice64; - private ulong m_CurrentPrice64; - - public int ServerIndex - { - get - { - return m_ServerIndex; - } - - set - { - m_ServerIndex = value; - } - } - - public string CatalogNamespace - { - get - { - string value; - Helper.TryMarshalGet(m_CatalogNamespace, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_CatalogNamespace, value); - } - } - - public string Id - { - get - { - string value; - Helper.TryMarshalGet(m_Id, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Id, value); - } - } - - public string TitleText - { - get - { - string value; - Helper.TryMarshalGet(m_TitleText, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_TitleText, value); - } - } - - public string DescriptionText - { - get - { - string value; - Helper.TryMarshalGet(m_DescriptionText, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_DescriptionText, value); - } - } - - public string LongDescriptionText - { - get - { - string value; - Helper.TryMarshalGet(m_LongDescriptionText, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_LongDescriptionText, value); - } - } - - public string TechnicalDetailsText_DEPRECATED - { - get - { - string value; - Helper.TryMarshalGet(m_TechnicalDetailsText_DEPRECATED, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_TechnicalDetailsText_DEPRECATED, value); - } - } - - public string CurrencyCode - { - get - { - string value; - Helper.TryMarshalGet(m_CurrencyCode, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_CurrencyCode, value); - } - } - - public Result PriceResult - { - get - { - return m_PriceResult; - } - - set - { - m_PriceResult = value; - } - } - - public uint OriginalPrice_DEPRECATED - { - get - { - return m_OriginalPrice_DEPRECATED; - } - - set - { - m_OriginalPrice_DEPRECATED = value; - } - } - - public uint CurrentPrice_DEPRECATED - { - get - { - return m_CurrentPrice_DEPRECATED; - } - - set - { - m_CurrentPrice_DEPRECATED = value; - } - } - - public byte DiscountPercentage - { - get - { - return m_DiscountPercentage; - } - - set - { - m_DiscountPercentage = value; - } - } - - public long ExpirationTimestamp - { - get - { - return m_ExpirationTimestamp; - } - - set - { - m_ExpirationTimestamp = value; - } - } - - public uint PurchasedCount - { - get - { - return m_PurchasedCount; - } - - set - { - m_PurchasedCount = value; - } - } - - public int PurchaseLimit - { - get - { - return m_PurchaseLimit; - } - - set - { - m_PurchaseLimit = value; - } - } - - public bool AvailableForPurchase - { - get - { - bool value; - Helper.TryMarshalGet(m_AvailableForPurchase, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_AvailableForPurchase, value); - } - } - - public ulong OriginalPrice64 - { - get - { - return m_OriginalPrice64; - } - - set - { - m_OriginalPrice64 = value; - } - } - - public ulong CurrentPrice64 - { - get - { - return m_CurrentPrice64; - } - - set - { - m_CurrentPrice64 = value; - } - } - - public void Set(CatalogOffer other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.CatalogofferApiLatest; - ServerIndex = other.ServerIndex; - CatalogNamespace = other.CatalogNamespace; - Id = other.Id; - TitleText = other.TitleText; - DescriptionText = other.DescriptionText; - LongDescriptionText = other.LongDescriptionText; - TechnicalDetailsText_DEPRECATED = other.TechnicalDetailsText_DEPRECATED; - CurrencyCode = other.CurrencyCode; - PriceResult = other.PriceResult; - OriginalPrice_DEPRECATED = other.OriginalPrice_DEPRECATED; - CurrentPrice_DEPRECATED = other.CurrentPrice_DEPRECATED; - DiscountPercentage = other.DiscountPercentage; - ExpirationTimestamp = other.ExpirationTimestamp; - PurchasedCount = other.PurchasedCount; - PurchaseLimit = other.PurchaseLimit; - AvailableForPurchase = other.AvailableForPurchase; - OriginalPrice64 = other.OriginalPrice64; - CurrentPrice64 = other.CurrentPrice64; - } - } - - public void Set(object other) - { - Set(other as CatalogOffer); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_CatalogNamespace); - Helper.TryMarshalDispose(ref m_Id); - Helper.TryMarshalDispose(ref m_TitleText); - Helper.TryMarshalDispose(ref m_DescriptionText); - Helper.TryMarshalDispose(ref m_LongDescriptionText); - Helper.TryMarshalDispose(ref m_TechnicalDetailsText_DEPRECATED); - Helper.TryMarshalDispose(ref m_CurrencyCode); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CatalogOffer.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CatalogOffer.cs.meta deleted file mode 100644 index 204c44c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CatalogOffer.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: cca819d92687728449f13af9f51964af -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CatalogRelease.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CatalogRelease.cs deleted file mode 100644 index 8adcb43..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CatalogRelease.cs +++ /dev/null @@ -1,121 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Contains information about a single release within the catalog. Instances of this structure are - /// created by . They must be passed to . - /// - public class CatalogRelease : ISettable - { - /// - /// A list of compatible APP IDs - /// - public string[] CompatibleAppIds { get; set; } - - /// - /// A list of compatible Platforms - /// - public string[] CompatiblePlatforms { get; set; } - - /// - /// Release note for compatible versions - /// - public string ReleaseNote { get; set; } - - internal void Set(CatalogReleaseInternal? other) - { - if (other != null) - { - CompatibleAppIds = other.Value.CompatibleAppIds; - CompatiblePlatforms = other.Value.CompatiblePlatforms; - ReleaseNote = other.Value.ReleaseNote; - } - } - - public void Set(object other) - { - Set(other as CatalogReleaseInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CatalogReleaseInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_CompatibleAppIdCount; - private System.IntPtr m_CompatibleAppIds; - private uint m_CompatiblePlatformCount; - private System.IntPtr m_CompatiblePlatforms; - private System.IntPtr m_ReleaseNote; - - public string[] CompatibleAppIds - { - get - { - string[] value; - Helper.TryMarshalGet(m_CompatibleAppIds, out value, m_CompatibleAppIdCount, true); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_CompatibleAppIds, value, out m_CompatibleAppIdCount, true); - } - } - - public string[] CompatiblePlatforms - { - get - { - string[] value; - Helper.TryMarshalGet(m_CompatiblePlatforms, out value, m_CompatiblePlatformCount, true); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_CompatiblePlatforms, value, out m_CompatiblePlatformCount, true); - } - } - - public string ReleaseNote - { - get - { - string value; - Helper.TryMarshalGet(m_ReleaseNote, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_ReleaseNote, value); - } - } - - public void Set(CatalogRelease other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.CatalogreleaseApiLatest; - CompatibleAppIds = other.CompatibleAppIds; - CompatiblePlatforms = other.CompatiblePlatforms; - ReleaseNote = other.ReleaseNote; - } - } - - public void Set(object other) - { - Set(other as CatalogRelease); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_CompatibleAppIds); - Helper.TryMarshalDispose(ref m_CompatiblePlatforms); - Helper.TryMarshalDispose(ref m_ReleaseNote); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CatalogRelease.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CatalogRelease.cs.meta deleted file mode 100644 index 4998618..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CatalogRelease.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: aa4e1a90ce6cdaa4a9711d13425f6324 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CheckoutCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CheckoutCallbackInfo.cs deleted file mode 100644 index a8d3e59..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CheckoutCallbackInfo.cs +++ /dev/null @@ -1,107 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Output parameters for the Function. - /// - public class CheckoutCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Result code for the operation. is returned for a successful request, otherwise one of the error codes is returned. See eos_common.h - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The Epic Online Services Account ID of the user who initiated the purchase - /// - public EpicAccountId LocalUserId { get; private set; } - - /// - /// The transaction ID which can be used to obtain an using . - /// - public string TransactionId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(CheckoutCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - TransactionId = other.Value.TransactionId; - } - } - - public void Set(object other) - { - Set(other as CheckoutCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CheckoutCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TransactionId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public EpicAccountId LocalUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public string TransactionId - { - get - { - string value; - Helper.TryMarshalGet(m_TransactionId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CheckoutCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CheckoutCallbackInfo.cs.meta deleted file mode 100644 index d6c425b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CheckoutCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3fe966403edb3d84dae9e4caf9f34b9d -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CheckoutEntry.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CheckoutEntry.cs deleted file mode 100644 index 22f6529..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CheckoutEntry.cs +++ /dev/null @@ -1,71 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Contains information about a request to purchase a single offer. This structure is set as part - /// of the structure. - /// - public class CheckoutEntry : ISettable - { - /// - /// The ID of the offer to purchase - /// - public string OfferId { get; set; } - - internal void Set(CheckoutEntryInternal? other) - { - if (other != null) - { - OfferId = other.Value.OfferId; - } - } - - public void Set(object other) - { - Set(other as CheckoutEntryInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CheckoutEntryInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_OfferId; - - public string OfferId - { - get - { - string value; - Helper.TryMarshalGet(m_OfferId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_OfferId, value); - } - } - - public void Set(CheckoutEntry other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.CheckoutentryApiLatest; - OfferId = other.OfferId; - } - } - - public void Set(object other) - { - Set(other as CheckoutEntry); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_OfferId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CheckoutEntry.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CheckoutEntry.cs.meta deleted file mode 100644 index 7856df6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CheckoutEntry.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: eaaf5665700b3bc409bd67acc25b6c1d -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CheckoutOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CheckoutOptions.cs deleted file mode 100644 index 5fd81a2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CheckoutOptions.cs +++ /dev/null @@ -1,83 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Input parameters for the function. - /// - public class CheckoutOptions - { - /// - /// The Epic Online Services Account ID of the local user who is making the purchase - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The catalog namespace will be the current Sandbox ID (in ) unless overridden by this field - /// - public string OverrideCatalogNamespace { get; set; } - - /// - /// An array of elements, each containing the details of a single offer - /// - public CheckoutEntry[] Entries { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CheckoutOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_OverrideCatalogNamespace; - private uint m_EntryCount; - private System.IntPtr m_Entries; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string OverrideCatalogNamespace - { - set - { - Helper.TryMarshalSet(ref m_OverrideCatalogNamespace, value); - } - } - - public CheckoutEntry[] Entries - { - set - { - Helper.TryMarshalSet(ref m_Entries, value, out m_EntryCount); - } - } - - public void Set(CheckoutOptions other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.CheckoutApiLatest; - LocalUserId = other.LocalUserId; - OverrideCatalogNamespace = other.OverrideCatalogNamespace; - Entries = other.Entries; - } - } - - public void Set(object other) - { - Set(other as CheckoutOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_OverrideCatalogNamespace); - Helper.TryMarshalDispose(ref m_Entries); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CheckoutOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CheckoutOptions.cs.meta deleted file mode 100644 index 6afd2da..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CheckoutOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 76761776a3ea0884ab0a0bfa2bc03d3d -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyEntitlementByIdOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyEntitlementByIdOptions.cs deleted file mode 100644 index 9df6353..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyEntitlementByIdOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Input parameters for the function. - /// - public class CopyEntitlementByIdOptions - { - /// - /// The Epic Online Services Account ID of the local user whose entitlement is being copied - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// ID of the entitlement to retrieve from the cache - /// - public string EntitlementId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyEntitlementByIdOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_EntitlementId; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string EntitlementId - { - set - { - Helper.TryMarshalSet(ref m_EntitlementId, value); - } - } - - public void Set(CopyEntitlementByIdOptions other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.CopyentitlementbyidApiLatest; - LocalUserId = other.LocalUserId; - EntitlementId = other.EntitlementId; - } - } - - public void Set(object other) - { - Set(other as CopyEntitlementByIdOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_EntitlementId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyEntitlementByIdOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyEntitlementByIdOptions.cs.meta deleted file mode 100644 index 8430b19..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyEntitlementByIdOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c8cc7a577ee32b54f98ba37f6dbd37ab -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyEntitlementByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyEntitlementByIndexOptions.cs deleted file mode 100644 index 0dfad4b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyEntitlementByIndexOptions.cs +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Input parameters for the function. - /// - public class CopyEntitlementByIndexOptions - { - /// - /// The Epic Online Services Account ID of the local user whose entitlement is being copied - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// Index of the entitlement to retrieve from the cache - /// - public uint EntitlementIndex { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyEntitlementByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private uint m_EntitlementIndex; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public uint EntitlementIndex - { - set - { - m_EntitlementIndex = value; - } - } - - public void Set(CopyEntitlementByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.CopyentitlementbyindexApiLatest; - LocalUserId = other.LocalUserId; - EntitlementIndex = other.EntitlementIndex; - } - } - - public void Set(object other) - { - Set(other as CopyEntitlementByIndexOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyEntitlementByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyEntitlementByIndexOptions.cs.meta deleted file mode 100644 index 4c54261..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyEntitlementByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 2a7400774c80ac24a863d9b735aca0af -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyEntitlementByNameAndIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyEntitlementByNameAndIndexOptions.cs deleted file mode 100644 index 8615248..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyEntitlementByNameAndIndexOptions.cs +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Input parameters for the function. - /// - public class CopyEntitlementByNameAndIndexOptions - { - /// - /// The Epic Online Services Account ID of the local user whose entitlement is being copied - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// Name of the entitlement to retrieve from the cache - /// - public string EntitlementName { get; set; } - - /// - /// Index of the entitlement within the named set to retrieve from the cache. - /// - public uint Index { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyEntitlementByNameAndIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_EntitlementName; - private uint m_Index; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string EntitlementName - { - set - { - Helper.TryMarshalSet(ref m_EntitlementName, value); - } - } - - public uint Index - { - set - { - m_Index = value; - } - } - - public void Set(CopyEntitlementByNameAndIndexOptions other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.CopyentitlementbynameandindexApiLatest; - LocalUserId = other.LocalUserId; - EntitlementName = other.EntitlementName; - Index = other.Index; - } - } - - public void Set(object other) - { - Set(other as CopyEntitlementByNameAndIndexOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_EntitlementName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyEntitlementByNameAndIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyEntitlementByNameAndIndexOptions.cs.meta deleted file mode 100644 index 7254441..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyEntitlementByNameAndIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: db271fd9b0a87134bb05d7b4491c734e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyItemByIdOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyItemByIdOptions.cs deleted file mode 100644 index 4207c45..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyItemByIdOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Input parameters for the function. - /// - public class CopyItemByIdOptions - { - /// - /// The Epic Online Services Account ID of the local user whose item is being copied - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The ID of the item to get. - /// - public string ItemId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyItemByIdOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_ItemId; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string ItemId - { - set - { - Helper.TryMarshalSet(ref m_ItemId, value); - } - } - - public void Set(CopyItemByIdOptions other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.CopyitembyidApiLatest; - LocalUserId = other.LocalUserId; - ItemId = other.ItemId; - } - } - - public void Set(object other) - { - Set(other as CopyItemByIdOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_ItemId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyItemByIdOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyItemByIdOptions.cs.meta deleted file mode 100644 index ca9c4e9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyItemByIdOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ad3a9f1b0c36d1c4691417d6e0251276 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyItemImageInfoByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyItemImageInfoByIndexOptions.cs deleted file mode 100644 index f94c4eb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyItemImageInfoByIndexOptions.cs +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Input parameters for the function. - /// - public class CopyItemImageInfoByIndexOptions - { - /// - /// The Epic Online Services Account ID of the local user whose item image is being copied - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The ID of the item to get the images for. - /// - public string ItemId { get; set; } - - /// - /// The index of the image to get. - /// - public uint ImageInfoIndex { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyItemImageInfoByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_ItemId; - private uint m_ImageInfoIndex; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string ItemId - { - set - { - Helper.TryMarshalSet(ref m_ItemId, value); - } - } - - public uint ImageInfoIndex - { - set - { - m_ImageInfoIndex = value; - } - } - - public void Set(CopyItemImageInfoByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.CopyitemimageinfobyindexApiLatest; - LocalUserId = other.LocalUserId; - ItemId = other.ItemId; - ImageInfoIndex = other.ImageInfoIndex; - } - } - - public void Set(object other) - { - Set(other as CopyItemImageInfoByIndexOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_ItemId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyItemImageInfoByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyItemImageInfoByIndexOptions.cs.meta deleted file mode 100644 index 6a0e48d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyItemImageInfoByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 7b686d3e730de0c4bb86b17fc2906cb0 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyItemReleaseByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyItemReleaseByIndexOptions.cs deleted file mode 100644 index 98e8605..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyItemReleaseByIndexOptions.cs +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Input parameters for the function. - /// - public class CopyItemReleaseByIndexOptions - { - /// - /// The Epic Online Services Account ID of the local user whose item release is being copied - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The ID of the item to get the releases for. - /// - public string ItemId { get; set; } - - /// - /// The index of the release to get. - /// - public uint ReleaseIndex { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyItemReleaseByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_ItemId; - private uint m_ReleaseIndex; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string ItemId - { - set - { - Helper.TryMarshalSet(ref m_ItemId, value); - } - } - - public uint ReleaseIndex - { - set - { - m_ReleaseIndex = value; - } - } - - public void Set(CopyItemReleaseByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.CopyitemreleasebyindexApiLatest; - LocalUserId = other.LocalUserId; - ItemId = other.ItemId; - ReleaseIndex = other.ReleaseIndex; - } - } - - public void Set(object other) - { - Set(other as CopyItemReleaseByIndexOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_ItemId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyItemReleaseByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyItemReleaseByIndexOptions.cs.meta deleted file mode 100644 index 982d5d4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyItemReleaseByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 7c35a95364d0999449aa9f9d026e9470 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyOfferByIdOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyOfferByIdOptions.cs deleted file mode 100644 index 6eddd44..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyOfferByIdOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Input parameters for the function. - /// - public class CopyOfferByIdOptions - { - /// - /// The Epic Online Services Account ID of the local user whose offer is being copied - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The ID of the offer to get. - /// - public string OfferId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyOfferByIdOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_OfferId; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string OfferId - { - set - { - Helper.TryMarshalSet(ref m_OfferId, value); - } - } - - public void Set(CopyOfferByIdOptions other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.CopyofferbyidApiLatest; - LocalUserId = other.LocalUserId; - OfferId = other.OfferId; - } - } - - public void Set(object other) - { - Set(other as CopyOfferByIdOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_OfferId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyOfferByIdOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyOfferByIdOptions.cs.meta deleted file mode 100644 index 2fc9f73..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyOfferByIdOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 879baa6f2b057e14e95591c40d4081fc -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyOfferByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyOfferByIndexOptions.cs deleted file mode 100644 index 8c52158..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyOfferByIndexOptions.cs +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Input parameters for the function. - /// - public class CopyOfferByIndexOptions - { - /// - /// The Epic Online Services Account ID of the local user whose offer is being copied - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The index of the offer to get. - /// - public uint OfferIndex { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyOfferByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private uint m_OfferIndex; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public uint OfferIndex - { - set - { - m_OfferIndex = value; - } - } - - public void Set(CopyOfferByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.CopyofferbyindexApiLatest; - LocalUserId = other.LocalUserId; - OfferIndex = other.OfferIndex; - } - } - - public void Set(object other) - { - Set(other as CopyOfferByIndexOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyOfferByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyOfferByIndexOptions.cs.meta deleted file mode 100644 index d514eb1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyOfferByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b84455b097a06bc4386ff40b01fa3853 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyOfferImageInfoByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyOfferImageInfoByIndexOptions.cs deleted file mode 100644 index c9b4633..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyOfferImageInfoByIndexOptions.cs +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Input parameters for the function. - /// - public class CopyOfferImageInfoByIndexOptions - { - /// - /// The Epic Online Services Account ID of the local user whose offer image is being copied. - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The ID of the offer to get the images for. - /// - public string OfferId { get; set; } - - /// - /// The index of the image to get. - /// - public uint ImageInfoIndex { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyOfferImageInfoByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_OfferId; - private uint m_ImageInfoIndex; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string OfferId - { - set - { - Helper.TryMarshalSet(ref m_OfferId, value); - } - } - - public uint ImageInfoIndex - { - set - { - m_ImageInfoIndex = value; - } - } - - public void Set(CopyOfferImageInfoByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.CopyofferimageinfobyindexApiLatest; - LocalUserId = other.LocalUserId; - OfferId = other.OfferId; - ImageInfoIndex = other.ImageInfoIndex; - } - } - - public void Set(object other) - { - Set(other as CopyOfferImageInfoByIndexOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_OfferId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyOfferImageInfoByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyOfferImageInfoByIndexOptions.cs.meta deleted file mode 100644 index d409289..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyOfferImageInfoByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0d014f12c9f57974d91c1e91682a711f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyOfferItemByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyOfferItemByIndexOptions.cs deleted file mode 100644 index 652cc60..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyOfferItemByIndexOptions.cs +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Input parameters for the function. - /// - public class CopyOfferItemByIndexOptions - { - /// - /// The Epic Online Services Account ID of the local user whose item is being copied - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The ID of the offer to get the items for. - /// - public string OfferId { get; set; } - - /// - /// The index of the item to get. - /// - public uint ItemIndex { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyOfferItemByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_OfferId; - private uint m_ItemIndex; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string OfferId - { - set - { - Helper.TryMarshalSet(ref m_OfferId, value); - } - } - - public uint ItemIndex - { - set - { - m_ItemIndex = value; - } - } - - public void Set(CopyOfferItemByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.CopyofferitembyindexApiLatest; - LocalUserId = other.LocalUserId; - OfferId = other.OfferId; - ItemIndex = other.ItemIndex; - } - } - - public void Set(object other) - { - Set(other as CopyOfferItemByIndexOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_OfferId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyOfferItemByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyOfferItemByIndexOptions.cs.meta deleted file mode 100644 index e2df1fc..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyOfferItemByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 118d1b36f9c21e2458214dd7a484ba9f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyTransactionByIdOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyTransactionByIdOptions.cs deleted file mode 100644 index 9bc235e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyTransactionByIdOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Input parameters for the function. - /// - public class CopyTransactionByIdOptions - { - /// - /// The Epic Online Services Account ID of the local user who is associated with the transaction - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The ID of the transaction to get - /// - public string TransactionId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyTransactionByIdOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TransactionId; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string TransactionId - { - set - { - Helper.TryMarshalSet(ref m_TransactionId, value); - } - } - - public void Set(CopyTransactionByIdOptions other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.CopytransactionbyidApiLatest; - LocalUserId = other.LocalUserId; - TransactionId = other.TransactionId; - } - } - - public void Set(object other) - { - Set(other as CopyTransactionByIdOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_TransactionId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyTransactionByIdOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyTransactionByIdOptions.cs.meta deleted file mode 100644 index 70b7df2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyTransactionByIdOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d77e4d277dd97064dad6d91ff4aee7e5 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyTransactionByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyTransactionByIndexOptions.cs deleted file mode 100644 index 142d3b1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyTransactionByIndexOptions.cs +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Input parameters for the function. - /// - public class CopyTransactionByIndexOptions - { - /// - /// The Epic Online Services Account ID of the local user who is associated with the transaction - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The index of the transaction to get - /// - public uint TransactionIndex { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyTransactionByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private uint m_TransactionIndex; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public uint TransactionIndex - { - set - { - m_TransactionIndex = value; - } - } - - public void Set(CopyTransactionByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.CopytransactionbyindexApiLatest; - LocalUserId = other.LocalUserId; - TransactionIndex = other.TransactionIndex; - } - } - - public void Set(object other) - { - Set(other as CopyTransactionByIndexOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyTransactionByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyTransactionByIndexOptions.cs.meta deleted file mode 100644 index b42a6f8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/CopyTransactionByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3778d74437a64f34f993c1709fea9989 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/EcomInterface.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/EcomInterface.cs deleted file mode 100644 index bf83b80..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/EcomInterface.cs +++ /dev/null @@ -1,957 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - public sealed partial class EcomInterface : Handle - { - public EcomInterface() - { - } - - public EcomInterface(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// The most recent version of the struct. - /// - public const int CatalogitemApiLatest = 1; - - /// - /// Timestamp value representing an undefined EntitlementEndTimestamp for - /// - public const int CatalogitemEntitlementendtimestampUndefined = -1; - - /// - /// The most recent version of the struct. - /// - public const int CatalogofferApiLatest = 3; - - /// - /// Timestamp value representing an undefined ExpirationTimestamp for - /// - public const int CatalogofferExpirationtimestampUndefined = -1; - - /// - /// The most recent version of the struct. - /// - public const int CatalogreleaseApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int CheckoutApiLatest = 1; - - /// - /// The maximum number of entries in a single checkout. - /// - public const int CheckoutMaxEntries = 10; - - /// - /// The most recent version of the struct. - /// - public const int CheckoutentryApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int CopyentitlementbyidApiLatest = 2; - - /// - /// The most recent version of the API. - /// - public const int CopyentitlementbyindexApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int CopyentitlementbynameandindexApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int CopyitembyidApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int CopyitemimageinfobyindexApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int CopyitemreleasebyindexApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int CopyofferbyidApiLatest = 2; - - /// - /// The most recent version of the API. - /// - public const int CopyofferbyindexApiLatest = 2; - - /// - /// The most recent version of the API. - /// - public const int CopyofferimageinfobyindexApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int CopyofferitembyindexApiLatest = 1; - - /// - /// The most recent version of the Function. - /// - public const int CopytransactionbyidApiLatest = 1; - - /// - /// The most recent version of the Function. - /// - public const int CopytransactionbyindexApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int EntitlementApiLatest = 2; - - /// - /// Timestamp value representing an undefined EndTimestamp for - /// - public const int EntitlementEndtimestampUndefined = -1; - - /// - /// The most recent version of the API. - /// - public const int GetentitlementsbynamecountApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetentitlementscountApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetitemimageinfocountApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetitemreleasecountApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetoffercountApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetofferimageinfocountApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetofferitemcountApiLatest = 1; - - /// - /// The most recent version of the Function. - /// - public const int GettransactioncountApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int ItemownershipApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int KeyimageinfoApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int QueryentitlementsApiLatest = 2; - - /// - /// The maximum number of entitlements that may be queried in a single pass - /// - public const int QueryentitlementsMaxEntitlementIds = 32; - - /// - /// The most recent version of the API. - /// - public const int QueryoffersApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int QueryownershipApiLatest = 2; - - /// - /// The maximum number of catalog items that may be queried in a single pass - /// - public const int QueryownershipMaxCatalogIds = 32; - - /// - /// The most recent version of the API. - /// - public const int QueryownershiptokenApiLatest = 2; - - /// - /// The maximum number of catalog items that may be queried in a single pass - /// - public const int QueryownershiptokenMaxCatalogitemIds = 32; - - /// - /// The most recent version of the API. - /// - public const int RedeementitlementsApiLatest = 1; - - /// - /// The maximum number of entitlement IDs that may be redeemed in a single pass - /// - public const int RedeementitlementsMaxIds = 32; - - /// - /// The maximum length of a transaction ID. - /// - public const int TransactionidMaximumLength = 64; - - /// - /// Initiates the purchase flow for a set of offers. The callback is triggered after the purchase flow. - /// On success, the set of entitlements that were unlocked will be cached. - /// On success, a Transaction ID will be returned. The Transaction ID can be used to obtain an - /// handle. The handle can then be used to retrieve the entitlements rewarded by the purchase. - /// - /// - /// structure containing filter criteria - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the async operation completes, either successfully or in error - public void Checkout(CheckoutOptions options, object clientData, OnCheckoutCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnCheckoutCallbackInternal(OnCheckoutCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Ecom_Checkout(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Fetches the entitlement with the given ID. - /// - /// - /// - /// structure containing the Epic Online Services Account ID and entitlement ID being accessed - /// the entitlement for the given ID, if it exists and is valid, use when finished - /// - /// if the information is available and passed out in OutEntitlement - /// if the entitlement information is stale and passed out in OutEntitlement - /// if you pass a null pointer for the out parameter - /// if the entitlement is not found - /// - public Result CopyEntitlementById(CopyEntitlementByIdOptions options, out Entitlement outEntitlement) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outEntitlementAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Ecom_CopyEntitlementById(InnerHandle, optionsAddress, ref outEntitlementAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outEntitlementAddress, out outEntitlement)) - { - Bindings.EOS_Ecom_Entitlement_Release(outEntitlementAddress); - } - - return funcResult; - } - - /// - /// Fetches an entitlement from a given index. - /// - /// - /// structure containing the Epic Online Services Account ID and index being accessed - /// the entitlement for the given index, if it exists and is valid, use when finished - /// - /// if the information is available and passed out in OutEntitlement - /// if the entitlement information is stale and passed out in OutEntitlement - /// if you pass a null pointer for the out parameter - /// if the entitlement is not found - /// - public Result CopyEntitlementByIndex(CopyEntitlementByIndexOptions options, out Entitlement outEntitlement) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outEntitlementAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Ecom_CopyEntitlementByIndex(InnerHandle, optionsAddress, ref outEntitlementAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outEntitlementAddress, out outEntitlement)) - { - Bindings.EOS_Ecom_Entitlement_Release(outEntitlementAddress); - } - - return funcResult; - } - - /// - /// Fetches a single entitlement with a given Entitlement Name. The Index is used to access individual - /// entitlements among those with the same Entitlement Name. The Index can be a value from 0 to - /// one less than the result from . - /// - /// - /// structure containing the Epic Online Services Account ID, entitlement name, and index being accessed - /// the entitlement for the given name index pair, if it exists and is valid, use when finished - /// - /// if the information is available and passed out in OutEntitlement - /// if the entitlement information is stale and passed out in OutEntitlement - /// if you pass a null pointer for the out parameter - /// if the entitlement is not found - /// - public Result CopyEntitlementByNameAndIndex(CopyEntitlementByNameAndIndexOptions options, out Entitlement outEntitlement) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outEntitlementAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Ecom_CopyEntitlementByNameAndIndex(InnerHandle, optionsAddress, ref outEntitlementAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outEntitlementAddress, out outEntitlement)) - { - Bindings.EOS_Ecom_Entitlement_Release(outEntitlementAddress); - } - - return funcResult; - } - - /// - /// Fetches an item with a given ID. - /// - /// - /// - /// - /// structure containing the item ID being accessed - /// the item for the given index, if it exists and is valid, use when finished - /// - /// if the information is available and passed out in OutItem - /// if the item information is stale and passed out in OutItem - /// if you pass a null pointer for the out parameter - /// if the offer is not found - /// - public Result CopyItemById(CopyItemByIdOptions options, out CatalogItem outItem) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outItemAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Ecom_CopyItemById(InnerHandle, optionsAddress, ref outItemAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outItemAddress, out outItem)) - { - Bindings.EOS_Ecom_CatalogItem_Release(outItemAddress); - } - - return funcResult; - } - - /// - /// Fetches an image from a given index. - /// - /// - /// structure containing the item ID and index being accessed - /// the image for the given index, if it exists and is valid, use when finished - /// - /// if the information is available and passed out in OutImageInfo - /// if you pass a null pointer for the out parameter - /// if the associated item information is stale - /// if the image is not found - /// - public Result CopyItemImageInfoByIndex(CopyItemImageInfoByIndexOptions options, out KeyImageInfo outImageInfo) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outImageInfoAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Ecom_CopyItemImageInfoByIndex(InnerHandle, optionsAddress, ref outImageInfoAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outImageInfoAddress, out outImageInfo)) - { - Bindings.EOS_Ecom_KeyImageInfo_Release(outImageInfoAddress); - } - - return funcResult; - } - - /// - /// Fetches a release from a given index. - /// - /// - /// structure containing the item ID and index being accessed - /// the release for the given index, if it exists and is valid, use when finished - /// - /// if the information is available and passed out in OutRelease - /// if you pass a null pointer for the out parameter - /// if the associated item information is stale - /// if the release is not found - /// - public Result CopyItemReleaseByIndex(CopyItemReleaseByIndexOptions options, out CatalogRelease outRelease) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outReleaseAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Ecom_CopyItemReleaseByIndex(InnerHandle, optionsAddress, ref outReleaseAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outReleaseAddress, out outRelease)) - { - Bindings.EOS_Ecom_CatalogRelease_Release(outReleaseAddress); - } - - return funcResult; - } - - /// - /// Fetches an offer with a given ID. The pricing and text are localized to the provided account. - /// - /// - /// - /// structure containing the Epic Online Services Account ID and offer ID being accessed - /// the offer for the given index, if it exists and is valid, use when finished - /// - /// if the information is available and passed out in OutOffer - /// if the offer information is stale and passed out in OutOffer - /// if the offer information has an invalid price and passed out in OutOffer - /// if you pass a null pointer for the out parameter - /// if the offer is not found - /// - public Result CopyOfferById(CopyOfferByIdOptions options, out CatalogOffer outOffer) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outOfferAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Ecom_CopyOfferById(InnerHandle, optionsAddress, ref outOfferAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outOfferAddress, out outOffer)) - { - Bindings.EOS_Ecom_CatalogOffer_Release(outOfferAddress); - } - - return funcResult; - } - - /// - /// Fetches an offer from a given index. The pricing and text are localized to the provided account. - /// - /// - /// - /// structure containing the Epic Online Services Account ID and index being accessed - /// the offer for the given index, if it exists and is valid, use when finished - /// - /// if the information is available and passed out in OutOffer - /// if the offer information is stale and passed out in OutOffer - /// if the offer information has an invalid price and passed out in OutOffer - /// if you pass a null pointer for the out parameter - /// if the offer is not found - /// - public Result CopyOfferByIndex(CopyOfferByIndexOptions options, out CatalogOffer outOffer) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outOfferAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Ecom_CopyOfferByIndex(InnerHandle, optionsAddress, ref outOfferAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outOfferAddress, out outOffer)) - { - Bindings.EOS_Ecom_CatalogOffer_Release(outOfferAddress); - } - - return funcResult; - } - - /// - /// Fetches an image from a given index. - /// - /// - /// structure containing the offer ID and index being accessed - /// the image for the given index, if it exists and is valid, use when finished - /// - /// if the information is available and passed out in OutImageInfo - /// if you pass a null pointer for the out parameter - /// if the associated offer information is stale - /// if the image is not found - /// - public Result CopyOfferImageInfoByIndex(CopyOfferImageInfoByIndexOptions options, out KeyImageInfo outImageInfo) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outImageInfoAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Ecom_CopyOfferImageInfoByIndex(InnerHandle, optionsAddress, ref outImageInfoAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outImageInfoAddress, out outImageInfo)) - { - Bindings.EOS_Ecom_KeyImageInfo_Release(outImageInfoAddress); - } - - return funcResult; - } - - /// - /// Fetches an item from a given index. - /// - /// - /// - /// - /// structure containing the Epic Online Services Account ID and index being accessed - /// the item for the given index, if it exists and is valid, use when finished - /// - /// if the information is available and passed out in OutItem - /// if you pass a null pointer for the out parameter - /// if the item information is stale - /// if the item is not found - /// - public Result CopyOfferItemByIndex(CopyOfferItemByIndexOptions options, out CatalogItem outItem) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outItemAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Ecom_CopyOfferItemByIndex(InnerHandle, optionsAddress, ref outItemAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outItemAddress, out outItem)) - { - Bindings.EOS_Ecom_CatalogItem_Release(outItemAddress); - } - - return funcResult; - } - - /// - /// Fetches the transaction handle at the given index. - /// - /// - /// - /// structure containing the Epic Online Services Account ID and transaction ID being accessed - /// - /// if the information is available and passed out in OutTransaction - /// if you pass a null pointer for the out parameter - /// if the transaction is not found - /// - public Result CopyTransactionById(CopyTransactionByIdOptions options, out Transaction outTransaction) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outTransactionAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Ecom_CopyTransactionById(InnerHandle, optionsAddress, ref outTransactionAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryMarshalGet(outTransactionAddress, out outTransaction); - - return funcResult; - } - - /// - /// Fetches the transaction handle at the given index. - /// - /// - /// - /// structure containing the Epic Online Services Account ID and index being accessed - /// - /// if the information is available and passed out in OutTransaction - /// if you pass a null pointer for the out parameter - /// if the transaction is not found - /// - public Result CopyTransactionByIndex(CopyTransactionByIndexOptions options, out Transaction outTransaction) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outTransactionAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Ecom_CopyTransactionByIndex(InnerHandle, optionsAddress, ref outTransactionAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryMarshalGet(outTransactionAddress, out outTransaction); - - return funcResult; - } - - /// - /// Fetch the number of entitlements with the given Entitlement Name that are cached for a given local user. - /// - /// - /// structure containing the Epic Online Services Account ID and name being accessed - /// - /// the number of entitlements found. - /// - public uint GetEntitlementsByNameCount(GetEntitlementsByNameCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Ecom_GetEntitlementsByNameCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Fetch the number of entitlements that are cached for a given local user. - /// - /// - /// structure containing the Epic Online Services Account ID being accessed - /// - /// the number of entitlements found. - /// - public uint GetEntitlementsCount(GetEntitlementsCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Ecom_GetEntitlementsCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Fetch the number of images that are associated with a given cached item for a local user. - /// - /// - /// the number of images found. - /// - public uint GetItemImageInfoCount(GetItemImageInfoCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Ecom_GetItemImageInfoCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Fetch the number of releases that are associated with a given cached item for a local user. - /// - /// - /// the number of releases found. - /// - public uint GetItemReleaseCount(GetItemReleaseCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Ecom_GetItemReleaseCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Fetch the number of offers that are cached for a given local user. - /// - /// - /// structure containing the Epic Online Services Account ID being accessed - /// - /// the number of offers found. - /// - public uint GetOfferCount(GetOfferCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Ecom_GetOfferCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Fetch the number of images that are associated with a given cached offer for a local user. - /// - /// - /// the number of images found. - /// - public uint GetOfferImageInfoCount(GetOfferImageInfoCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Ecom_GetOfferImageInfoCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Fetch the number of items that are associated with a given cached offer for a local user. - /// - /// - /// the number of items found. - /// - public uint GetOfferItemCount(GetOfferItemCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Ecom_GetOfferItemCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Fetch the number of transactions that are cached for a given local user. - /// - /// - /// - /// - /// the number of transactions found. - /// - public uint GetTransactionCount(GetTransactionCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Ecom_GetTransactionCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Query the entitlement information defined with Epic Online Services. - /// A set of entitlement names can be provided to filter the set of entitlements associated with the account. - /// This data will be cached for a limited time and retrieved again from the backend when necessary. - /// Use , , and to get the entitlement details. - /// Use to retrieve the number of entitlements with a specific entitlement name. - /// - /// structure containing the account and entitlement names to retrieve - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the async operation completes, either successfully or in error - public void QueryEntitlements(QueryEntitlementsOptions options, object clientData, OnQueryEntitlementsCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnQueryEntitlementsCallbackInternal(OnQueryEntitlementsCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Ecom_QueryEntitlements(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Query for a list of catalog offers defined with Epic Online Services. - /// This data will be cached for a limited time and retrieved again from the backend when necessary. - /// - /// structure containing filter criteria - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the async operation completes, either successfully or in error - public void QueryOffers(QueryOffersOptions options, object clientData, OnQueryOffersCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnQueryOffersCallbackInternal(OnQueryOffersCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Ecom_QueryOffers(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Query the ownership status for a given list of catalog item IDs defined with Epic Online Services. - /// This data will be cached for a limited time and retrieved again from the backend when necessary - /// - /// structure containing the account and catalog item IDs to retrieve - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the async operation completes, either successfully or in error - public void QueryOwnership(QueryOwnershipOptions options, object clientData, OnQueryOwnershipCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnQueryOwnershipCallbackInternal(OnQueryOwnershipCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Ecom_QueryOwnership(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Query the ownership status for a given list of catalog item IDs defined with Epic Online Services. - /// The data is return via the callback in the form of a signed JWT that should be verified by an external backend server using a public key for authenticity. - /// - /// structure containing the account and catalog item IDs to retrieve in token form - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the async operation completes, either successfully or in error - public void QueryOwnershipToken(QueryOwnershipTokenOptions options, object clientData, OnQueryOwnershipTokenCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnQueryOwnershipTokenCallbackInternal(OnQueryOwnershipTokenCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Ecom_QueryOwnershipToken(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Requests that the provided entitlement be marked redeemed. This will cause that entitlement - /// to no longer be returned from QueryEntitlements unless the include redeemed request flag is set true. - /// - /// structure containing entitlement to redeem - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the async operation completes, either successfully or in error - public void RedeemEntitlements(RedeemEntitlementsOptions options, object clientData, OnRedeemEntitlementsCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnRedeemEntitlementsCallbackInternal(OnRedeemEntitlementsCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Ecom_RedeemEntitlements(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - [MonoPInvokeCallback(typeof(OnCheckoutCallbackInternal))] - internal static void OnCheckoutCallbackInternalImplementation(System.IntPtr data) - { - OnCheckoutCallback callback; - CheckoutCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnQueryEntitlementsCallbackInternal))] - internal static void OnQueryEntitlementsCallbackInternalImplementation(System.IntPtr data) - { - OnQueryEntitlementsCallback callback; - QueryEntitlementsCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnQueryOffersCallbackInternal))] - internal static void OnQueryOffersCallbackInternalImplementation(System.IntPtr data) - { - OnQueryOffersCallback callback; - QueryOffersCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnQueryOwnershipCallbackInternal))] - internal static void OnQueryOwnershipCallbackInternalImplementation(System.IntPtr data) - { - OnQueryOwnershipCallback callback; - QueryOwnershipCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnQueryOwnershipTokenCallbackInternal))] - internal static void OnQueryOwnershipTokenCallbackInternalImplementation(System.IntPtr data) - { - OnQueryOwnershipTokenCallback callback; - QueryOwnershipTokenCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnRedeemEntitlementsCallbackInternal))] - internal static void OnRedeemEntitlementsCallbackInternalImplementation(System.IntPtr data) - { - OnRedeemEntitlementsCallback callback; - RedeemEntitlementsCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/EcomInterface.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/EcomInterface.cs.meta deleted file mode 100644 index 4416952..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/EcomInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 19e201c68699c7840963cc847067f987 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/EcomItemType.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/EcomItemType.cs deleted file mode 100644 index 592c43c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/EcomItemType.cs +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// An enumeration defining the type of catalog item. The primary use is to identify how the item is expended. - /// - public enum EcomItemType : int - { - /// - /// This entitlement is intended to persist. - /// - Durable = 0, - /// - /// This entitlement is intended to be transient and redeemed. - /// - /// - Consumable = 1, - /// - /// This entitlement has a type that is not currently intneded for an in-game store. - /// - Other = 2 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/EcomItemType.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/EcomItemType.cs.meta deleted file mode 100644 index 700f681..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/EcomItemType.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 462c6a0bb6575954a9b0f81c714b0dc1 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/Entitlement.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/Entitlement.cs deleted file mode 100644 index 9dafc9b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/Entitlement.cs +++ /dev/null @@ -1,186 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Contains information about a single entitlement associated with an account. Instances of this structure are - /// created by , , or . - /// They must be passed to . - /// - public class Entitlement : ISettable - { - /// - /// Name of the entitlement - /// - public string EntitlementName { get; set; } - - /// - /// ID of the entitlement owned by an account - /// - public string EntitlementId { get; set; } - - /// - /// ID of the item associated with the offer which granted this entitlement - /// - public string CatalogItemId { get; set; } - - /// - /// If queried using pagination then ServerIndex represents the index of the entitlement as it - /// exists on the server. If not queried using pagination then ServerIndex will be -1. - /// - public int ServerIndex { get; set; } - - /// - /// If true then the catalog has this entitlement marked as redeemed - /// - public bool Redeemed { get; set; } - - /// - /// If not -1 then this is a POSIX timestamp that this entitlement will end - /// - public long EndTimestamp { get; set; } - - internal void Set(EntitlementInternal? other) - { - if (other != null) - { - EntitlementName = other.Value.EntitlementName; - EntitlementId = other.Value.EntitlementId; - CatalogItemId = other.Value.CatalogItemId; - ServerIndex = other.Value.ServerIndex; - Redeemed = other.Value.Redeemed; - EndTimestamp = other.Value.EndTimestamp; - } - } - - public void Set(object other) - { - Set(other as EntitlementInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct EntitlementInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_EntitlementName; - private System.IntPtr m_EntitlementId; - private System.IntPtr m_CatalogItemId; - private int m_ServerIndex; - private int m_Redeemed; - private long m_EndTimestamp; - - public string EntitlementName - { - get - { - string value; - Helper.TryMarshalGet(m_EntitlementName, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_EntitlementName, value); - } - } - - public string EntitlementId - { - get - { - string value; - Helper.TryMarshalGet(m_EntitlementId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_EntitlementId, value); - } - } - - public string CatalogItemId - { - get - { - string value; - Helper.TryMarshalGet(m_CatalogItemId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_CatalogItemId, value); - } - } - - public int ServerIndex - { - get - { - return m_ServerIndex; - } - - set - { - m_ServerIndex = value; - } - } - - public bool Redeemed - { - get - { - bool value; - Helper.TryMarshalGet(m_Redeemed, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Redeemed, value); - } - } - - public long EndTimestamp - { - get - { - return m_EndTimestamp; - } - - set - { - m_EndTimestamp = value; - } - } - - public void Set(Entitlement other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.EntitlementApiLatest; - EntitlementName = other.EntitlementName; - EntitlementId = other.EntitlementId; - CatalogItemId = other.CatalogItemId; - ServerIndex = other.ServerIndex; - Redeemed = other.Redeemed; - EndTimestamp = other.EndTimestamp; - } - } - - public void Set(object other) - { - Set(other as Entitlement); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_EntitlementName); - Helper.TryMarshalDispose(ref m_EntitlementId); - Helper.TryMarshalDispose(ref m_CatalogItemId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/Entitlement.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/Entitlement.cs.meta deleted file mode 100644 index db4f793..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/Entitlement.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 58bdaf8015c66ba49992d27a18514a1b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetEntitlementsByNameCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetEntitlementsByNameCountOptions.cs deleted file mode 100644 index e771c72..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetEntitlementsByNameCountOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Input parameters for the function. - /// - public class GetEntitlementsByNameCountOptions - { - /// - /// The Epic Online Services Account ID of the local user for which to retrieve the entitlement count - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// Name of the entitlement to count in the cache - /// - public string EntitlementName { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetEntitlementsByNameCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_EntitlementName; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string EntitlementName - { - set - { - Helper.TryMarshalSet(ref m_EntitlementName, value); - } - } - - public void Set(GetEntitlementsByNameCountOptions other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.GetentitlementsbynamecountApiLatest; - LocalUserId = other.LocalUserId; - EntitlementName = other.EntitlementName; - } - } - - public void Set(object other) - { - Set(other as GetEntitlementsByNameCountOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_EntitlementName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetEntitlementsByNameCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetEntitlementsByNameCountOptions.cs.meta deleted file mode 100644 index 7c8a771..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetEntitlementsByNameCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ed68e2ef46d7ddf4ca42c9b5a4026dac -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetEntitlementsCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetEntitlementsCountOptions.cs deleted file mode 100644 index 2834ebc..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetEntitlementsCountOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Input parameters for the function. - /// - public class GetEntitlementsCountOptions - { - /// - /// The Epic Online Services Account ID of the local user for which to retrieve the entitlement count - /// - public EpicAccountId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetEntitlementsCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(GetEntitlementsCountOptions other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.GetentitlementscountApiLatest; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as GetEntitlementsCountOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetEntitlementsCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetEntitlementsCountOptions.cs.meta deleted file mode 100644 index 5fa1dcc..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetEntitlementsCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 559d33a465183de4f8c9aabc918ed5f0 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetItemImageInfoCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetItemImageInfoCountOptions.cs deleted file mode 100644 index 28728f7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetItemImageInfoCountOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Input parameters for the function. - /// - public class GetItemImageInfoCountOptions - { - /// - /// The Epic Online Services Account ID of the local user whose item image is being accessed - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The ID of the item to get the images for. - /// - public string ItemId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetItemImageInfoCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_ItemId; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string ItemId - { - set - { - Helper.TryMarshalSet(ref m_ItemId, value); - } - } - - public void Set(GetItemImageInfoCountOptions other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.GetitemimageinfocountApiLatest; - LocalUserId = other.LocalUserId; - ItemId = other.ItemId; - } - } - - public void Set(object other) - { - Set(other as GetItemImageInfoCountOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_ItemId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetItemImageInfoCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetItemImageInfoCountOptions.cs.meta deleted file mode 100644 index 2dcea98..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetItemImageInfoCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 37e2536378a540e49b6d7bd97b40f4a9 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetItemReleaseCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetItemReleaseCountOptions.cs deleted file mode 100644 index 6dc370c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetItemReleaseCountOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Input parameters for the function. - /// - public class GetItemReleaseCountOptions - { - /// - /// The Epic Online Services Account ID of the local user whose item release is being accessed - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The ID of the item to get the releases for. - /// - public string ItemId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetItemReleaseCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_ItemId; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string ItemId - { - set - { - Helper.TryMarshalSet(ref m_ItemId, value); - } - } - - public void Set(GetItemReleaseCountOptions other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.GetitemreleasecountApiLatest; - LocalUserId = other.LocalUserId; - ItemId = other.ItemId; - } - } - - public void Set(object other) - { - Set(other as GetItemReleaseCountOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_ItemId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetItemReleaseCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetItemReleaseCountOptions.cs.meta deleted file mode 100644 index 5caa651..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetItemReleaseCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0cfe63f7c3e580a48886a4de01520a81 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetOfferCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetOfferCountOptions.cs deleted file mode 100644 index 21cd25e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetOfferCountOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Input parameters for the function. - /// - public class GetOfferCountOptions - { - /// - /// The Epic Online Services Account ID of the local user whose offers are being accessed - /// - public EpicAccountId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetOfferCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(GetOfferCountOptions other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.GetoffercountApiLatest; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as GetOfferCountOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetOfferCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetOfferCountOptions.cs.meta deleted file mode 100644 index 53b2026..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetOfferCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 8b83ce40345338c4fa85204536176870 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetOfferImageInfoCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetOfferImageInfoCountOptions.cs deleted file mode 100644 index bf31467..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetOfferImageInfoCountOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Input parameters for the function. - /// - public class GetOfferImageInfoCountOptions - { - /// - /// The Epic Online Services Account ID of the local user whose offer image is being accessed. - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The ID of the offer to get the images for. - /// - public string OfferId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetOfferImageInfoCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_OfferId; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string OfferId - { - set - { - Helper.TryMarshalSet(ref m_OfferId, value); - } - } - - public void Set(GetOfferImageInfoCountOptions other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.GetofferimageinfocountApiLatest; - LocalUserId = other.LocalUserId; - OfferId = other.OfferId; - } - } - - public void Set(object other) - { - Set(other as GetOfferImageInfoCountOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_OfferId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetOfferImageInfoCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetOfferImageInfoCountOptions.cs.meta deleted file mode 100644 index f57c1c5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetOfferImageInfoCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b27aaee9280104441b3dfc9171ea441d -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetOfferItemCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetOfferItemCountOptions.cs deleted file mode 100644 index 84f30df..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetOfferItemCountOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Input parameters for the function. - /// - public class GetOfferItemCountOptions - { - /// - /// The Epic Online Services Account ID of the local user who made the initial request for the Catalog Offer through - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// An ID that corresponds to a cached Catalog Offer (retrieved by ) - /// - public string OfferId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetOfferItemCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_OfferId; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string OfferId - { - set - { - Helper.TryMarshalSet(ref m_OfferId, value); - } - } - - public void Set(GetOfferItemCountOptions other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.GetofferitemcountApiLatest; - LocalUserId = other.LocalUserId; - OfferId = other.OfferId; - } - } - - public void Set(object other) - { - Set(other as GetOfferItemCountOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_OfferId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetOfferItemCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetOfferItemCountOptions.cs.meta deleted file mode 100644 index f6d16a2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetOfferItemCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 42232e64a11e4b647804cedc4d9cdc14 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetTransactionCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetTransactionCountOptions.cs deleted file mode 100644 index 23d19bd..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetTransactionCountOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Input parameters for the function. - /// - public class GetTransactionCountOptions - { - /// - /// The Epic Online Services Account ID of the local user whose transaction count to get - /// - public EpicAccountId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetTransactionCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(GetTransactionCountOptions other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.GettransactioncountApiLatest; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as GetTransactionCountOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetTransactionCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetTransactionCountOptions.cs.meta deleted file mode 100644 index a461057..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/GetTransactionCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 44fbe2199fdde7343a3a5d419af0d459 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/ItemOwnership.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/ItemOwnership.cs deleted file mode 100644 index 965b99c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/ItemOwnership.cs +++ /dev/null @@ -1,92 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Contains information about a single item ownership associated with an account. This structure is - /// returned as part of the structure. - /// - public class ItemOwnership : ISettable - { - /// - /// ID of the catalog item - /// - public string Id { get; set; } - - /// - /// Is this catalog item owned by the local user - /// - public OwnershipStatus OwnershipStatus { get; set; } - - internal void Set(ItemOwnershipInternal? other) - { - if (other != null) - { - Id = other.Value.Id; - OwnershipStatus = other.Value.OwnershipStatus; - } - } - - public void Set(object other) - { - Set(other as ItemOwnershipInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct ItemOwnershipInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Id; - private OwnershipStatus m_OwnershipStatus; - - public string Id - { - get - { - string value; - Helper.TryMarshalGet(m_Id, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Id, value); - } - } - - public OwnershipStatus OwnershipStatus - { - get - { - return m_OwnershipStatus; - } - - set - { - m_OwnershipStatus = value; - } - } - - public void Set(ItemOwnership other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.ItemownershipApiLatest; - Id = other.Id; - OwnershipStatus = other.OwnershipStatus; - } - } - - public void Set(object other) - { - Set(other as ItemOwnership); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Id); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/ItemOwnership.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/ItemOwnership.cs.meta deleted file mode 100644 index 94da81f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/ItemOwnership.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 28f54abc364ddd24383f383d5ebbab82 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/KeyImageInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/KeyImageInfo.cs deleted file mode 100644 index 6da5af8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/KeyImageInfo.cs +++ /dev/null @@ -1,141 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Contains information about a key image used by the catalog. Instances of this structure are - /// created by . They must be passed to . - /// A Key Image is defined within Dev Portal and is associated with a Catalog Item. A Key Image is - /// intended to be used to provide imagery for an in-game store. - /// - /// - /// - public class KeyImageInfo : ISettable - { - /// - /// Describes the usage of the image (ex: home_thumbnail) - /// - public string Type { get; set; } - - /// - /// The URL of the image - /// - public string Url { get; set; } - - /// - /// The expected width in pixels of the image - /// - public uint Width { get; set; } - - /// - /// The expected height in pixels of the image - /// - public uint Height { get; set; } - - internal void Set(KeyImageInfoInternal? other) - { - if (other != null) - { - Type = other.Value.Type; - Url = other.Value.Url; - Width = other.Value.Width; - Height = other.Value.Height; - } - } - - public void Set(object other) - { - Set(other as KeyImageInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct KeyImageInfoInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Type; - private System.IntPtr m_Url; - private uint m_Width; - private uint m_Height; - - public string Type - { - get - { - string value; - Helper.TryMarshalGet(m_Type, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Type, value); - } - } - - public string Url - { - get - { - string value; - Helper.TryMarshalGet(m_Url, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Url, value); - } - } - - public uint Width - { - get - { - return m_Width; - } - - set - { - m_Width = value; - } - } - - public uint Height - { - get - { - return m_Height; - } - - set - { - m_Height = value; - } - } - - public void Set(KeyImageInfo other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.KeyimageinfoApiLatest; - Type = other.Type; - Url = other.Url; - Width = other.Width; - Height = other.Height; - } - } - - public void Set(object other) - { - Set(other as KeyImageInfo); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Type); - Helper.TryMarshalDispose(ref m_Url); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/KeyImageInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/KeyImageInfo.cs.meta deleted file mode 100644 index 6b09eb0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/KeyImageInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: beaf92e896dce5a43993ae0c8fb2b456 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnCheckoutCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnCheckoutCallback.cs deleted file mode 100644 index a531fbe..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnCheckoutCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnCheckoutCallback(CheckoutCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnCheckoutCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnCheckoutCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnCheckoutCallback.cs.meta deleted file mode 100644 index a8a7d23..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnCheckoutCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 7d7d753828e48a24bbb23884f9c05174 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnQueryEntitlementsCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnQueryEntitlementsCallback.cs deleted file mode 100644 index 34e0d08..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnQueryEntitlementsCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnQueryEntitlementsCallback(QueryEntitlementsCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnQueryEntitlementsCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnQueryEntitlementsCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnQueryEntitlementsCallback.cs.meta deleted file mode 100644 index f67d6b8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnQueryEntitlementsCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 17488c61c1c47dc41b438d3af157f68f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnQueryOffersCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnQueryOffersCallback.cs deleted file mode 100644 index 1313b34..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnQueryOffersCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnQueryOffersCallback(QueryOffersCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnQueryOffersCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnQueryOffersCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnQueryOffersCallback.cs.meta deleted file mode 100644 index b5f5f5c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnQueryOffersCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a69dd0123a2e1fa4f8f5021780a6dc76 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnQueryOwnershipCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnQueryOwnershipCallback.cs deleted file mode 100644 index 64af385..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnQueryOwnershipCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnQueryOwnershipCallback(QueryOwnershipCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnQueryOwnershipCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnQueryOwnershipCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnQueryOwnershipCallback.cs.meta deleted file mode 100644 index af112aa..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnQueryOwnershipCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 271cb0d48e8b9344492ce9b86809fce7 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnQueryOwnershipTokenCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnQueryOwnershipTokenCallback.cs deleted file mode 100644 index eeb01b1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnQueryOwnershipTokenCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnQueryOwnershipTokenCallback(QueryOwnershipTokenCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnQueryOwnershipTokenCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnQueryOwnershipTokenCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnQueryOwnershipTokenCallback.cs.meta deleted file mode 100644 index 4dc010b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnQueryOwnershipTokenCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4f9f16928aead5446b2854ae250eb39b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnRedeemEntitlementsCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnRedeemEntitlementsCallback.cs deleted file mode 100644 index 954e4ad..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnRedeemEntitlementsCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnRedeemEntitlementsCallback(RedeemEntitlementsCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnRedeemEntitlementsCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnRedeemEntitlementsCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnRedeemEntitlementsCallback.cs.meta deleted file mode 100644 index c7d3dd3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OnRedeemEntitlementsCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 13fe76546acb06b4982ddad93a7b7a54 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OwnershipStatus.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OwnershipStatus.cs deleted file mode 100644 index b06945c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OwnershipStatus.cs +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// An enumeration of the different ownership statuses. - /// - public enum OwnershipStatus : int - { - /// - /// The catalog item is not owned by the local user - /// - NotOwned = 0, - /// - /// The catalog item is owned by the local user - /// - Owned = 1 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OwnershipStatus.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OwnershipStatus.cs.meta deleted file mode 100644 index 9a2c2e3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/OwnershipStatus.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 23ee8ab21d1689140ad95fb12cbf62e0 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryEntitlementsCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryEntitlementsCallbackInfo.cs deleted file mode 100644 index 8d811f9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryEntitlementsCallbackInfo.cs +++ /dev/null @@ -1,87 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Output parameters for the Function. - /// - public class QueryEntitlementsCallbackInfo : ICallbackInfo, ISettable - { - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The Epic Online Services Account ID of the local user whose entitlement was queried - /// - public EpicAccountId LocalUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(QueryEntitlementsCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as QueryEntitlementsCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryEntitlementsCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public EpicAccountId LocalUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryEntitlementsCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryEntitlementsCallbackInfo.cs.meta deleted file mode 100644 index 8c62783..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryEntitlementsCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4b086e38c43b094459dc1b9f20cf6f1f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryEntitlementsOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryEntitlementsOptions.cs deleted file mode 100644 index b24126d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryEntitlementsOptions.cs +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Input parameters for the function. - /// - public class QueryEntitlementsOptions - { - /// - /// The Epic Online Services Account ID of the local user whose Entitlements you want to retrieve - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// An array of Entitlement Names that you want to check - /// - public string[] EntitlementNames { get; set; } - - /// - /// If true, Entitlements that have been redeemed will be included in the results. - /// - public bool IncludeRedeemed { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryEntitlementsOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_EntitlementNames; - private uint m_EntitlementNameCount; - private int m_IncludeRedeemed; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string[] EntitlementNames - { - set - { - Helper.TryMarshalSet(ref m_EntitlementNames, value, out m_EntitlementNameCount); - } - } - - public bool IncludeRedeemed - { - set - { - Helper.TryMarshalSet(ref m_IncludeRedeemed, value); - } - } - - public void Set(QueryEntitlementsOptions other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.QueryentitlementsApiLatest; - LocalUserId = other.LocalUserId; - EntitlementNames = other.EntitlementNames; - IncludeRedeemed = other.IncludeRedeemed; - } - } - - public void Set(object other) - { - Set(other as QueryEntitlementsOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_EntitlementNames); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryEntitlementsOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryEntitlementsOptions.cs.meta deleted file mode 100644 index 16a5a22..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryEntitlementsOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 97d0e7e6a95ff004db058aa36afb66fd -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOffersCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOffersCallbackInfo.cs deleted file mode 100644 index d95c3d8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOffersCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Output parameters for the Function. - /// - public class QueryOffersCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The Epic Online Services Account ID of the local user whose offer was queried; needed for localization of Catalog Item (Item) description text and pricing information - /// - public EpicAccountId LocalUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(QueryOffersCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as QueryOffersCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryOffersCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public EpicAccountId LocalUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOffersCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOffersCallbackInfo.cs.meta deleted file mode 100644 index 3441755..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOffersCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e7f1d3f12206389408b4fd663385fd7e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOffersOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOffersOptions.cs deleted file mode 100644 index d21f17f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOffersOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Input parameters for the function. - /// - public class QueryOffersOptions - { - /// - /// The Epic Online Services Account ID of the local user whose offer to query - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// If not provided then the SandboxId is used as the catalog namespace - /// - public string OverrideCatalogNamespace { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryOffersOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_OverrideCatalogNamespace; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string OverrideCatalogNamespace - { - set - { - Helper.TryMarshalSet(ref m_OverrideCatalogNamespace, value); - } - } - - public void Set(QueryOffersOptions other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.QueryoffersApiLatest; - LocalUserId = other.LocalUserId; - OverrideCatalogNamespace = other.OverrideCatalogNamespace; - } - } - - public void Set(object other) - { - Set(other as QueryOffersOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_OverrideCatalogNamespace); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOffersOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOffersOptions.cs.meta deleted file mode 100644 index 76db04e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOffersOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 1300be193e2ca944eb113b8dc0fcde13 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOwnershipCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOwnershipCallbackInfo.cs deleted file mode 100644 index 2340a99..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOwnershipCallbackInfo.cs +++ /dev/null @@ -1,108 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Output parameters for the Function. - /// - public class QueryOwnershipCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The Epic Online Services Account ID of the local user whose ownership was queried - /// - public EpicAccountId LocalUserId { get; private set; } - - /// - /// List of catalog items and their ownership status - /// - public ItemOwnership[] ItemOwnership { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(QueryOwnershipCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - ItemOwnership = other.Value.ItemOwnership; - } - } - - public void Set(object other) - { - Set(other as QueryOwnershipCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryOwnershipCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_ItemOwnership; - private uint m_ItemOwnershipCount; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public EpicAccountId LocalUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public ItemOwnership[] ItemOwnership - { - get - { - ItemOwnership[] value; - Helper.TryMarshalGet(m_ItemOwnership, out value, m_ItemOwnershipCount); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOwnershipCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOwnershipCallbackInfo.cs.meta deleted file mode 100644 index 32df65b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOwnershipCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 7d50751bcb4b28d4f9f69c3df026f5a1 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOwnershipOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOwnershipOptions.cs deleted file mode 100644 index f74ad4e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOwnershipOptions.cs +++ /dev/null @@ -1,83 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Input parameters for the function. - /// - public class QueryOwnershipOptions - { - /// - /// The Epic Online Services Account ID of the local user whose ownership to query - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The array of Catalog Item IDs to check for ownership - /// - public string[] CatalogItemIds { get; set; } - - /// - /// Optional product namespace, if not the one specified during initialization - /// - public string CatalogNamespace { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryOwnershipOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_CatalogItemIds; - private uint m_CatalogItemIdCount; - private System.IntPtr m_CatalogNamespace; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string[] CatalogItemIds - { - set - { - Helper.TryMarshalSet(ref m_CatalogItemIds, value, out m_CatalogItemIdCount); - } - } - - public string CatalogNamespace - { - set - { - Helper.TryMarshalSet(ref m_CatalogNamespace, value); - } - } - - public void Set(QueryOwnershipOptions other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.QueryownershipApiLatest; - LocalUserId = other.LocalUserId; - CatalogItemIds = other.CatalogItemIds; - CatalogNamespace = other.CatalogNamespace; - } - } - - public void Set(object other) - { - Set(other as QueryOwnershipOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_CatalogItemIds); - Helper.TryMarshalDispose(ref m_CatalogNamespace); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOwnershipOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOwnershipOptions.cs.meta deleted file mode 100644 index 0c37256..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOwnershipOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 085f4c6a1c0c3244789489844d8b9274 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOwnershipTokenCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOwnershipTokenCallbackInfo.cs deleted file mode 100644 index ab7e0fe..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOwnershipTokenCallbackInfo.cs +++ /dev/null @@ -1,107 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Output parameters for the Function. - /// - public class QueryOwnershipTokenCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The Epic Online Services Account ID of the local user whose ownership token was queried - /// - public EpicAccountId LocalUserId { get; private set; } - - /// - /// Ownership token containing details about the catalog items queried - /// - public string OwnershipToken { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(QueryOwnershipTokenCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - OwnershipToken = other.Value.OwnershipToken; - } - } - - public void Set(object other) - { - Set(other as QueryOwnershipTokenCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryOwnershipTokenCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_OwnershipToken; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public EpicAccountId LocalUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public string OwnershipToken - { - get - { - string value; - Helper.TryMarshalGet(m_OwnershipToken, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOwnershipTokenCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOwnershipTokenCallbackInfo.cs.meta deleted file mode 100644 index 3a5ccc5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOwnershipTokenCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3054d14c2a6626e4da95797335790c32 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOwnershipTokenOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOwnershipTokenOptions.cs deleted file mode 100644 index 7aa5afb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOwnershipTokenOptions.cs +++ /dev/null @@ -1,83 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Input parameters for the function. - /// - public class QueryOwnershipTokenOptions - { - /// - /// The Epic Online Services Account ID of the local user whose ownership token you want to query - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The array of Catalog Item IDs to check for ownership, matching in number to the CatalogItemIdCount - /// - public string[] CatalogItemIds { get; set; } - - /// - /// Optional product namespace, if not the one specified during initialization - /// - public string CatalogNamespace { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryOwnershipTokenOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_CatalogItemIds; - private uint m_CatalogItemIdCount; - private System.IntPtr m_CatalogNamespace; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string[] CatalogItemIds - { - set - { - Helper.TryMarshalSet(ref m_CatalogItemIds, value, out m_CatalogItemIdCount); - } - } - - public string CatalogNamespace - { - set - { - Helper.TryMarshalSet(ref m_CatalogNamespace, value); - } - } - - public void Set(QueryOwnershipTokenOptions other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.QueryownershiptokenApiLatest; - LocalUserId = other.LocalUserId; - CatalogItemIds = other.CatalogItemIds; - CatalogNamespace = other.CatalogNamespace; - } - } - - public void Set(object other) - { - Set(other as QueryOwnershipTokenOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_CatalogItemIds); - Helper.TryMarshalDispose(ref m_CatalogNamespace); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOwnershipTokenOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOwnershipTokenOptions.cs.meta deleted file mode 100644 index 01775c2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/QueryOwnershipTokenOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 20e32c7d5480f4a4b9a174c9ed83d576 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/RedeemEntitlementsCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/RedeemEntitlementsCallbackInfo.cs deleted file mode 100644 index d1bbc5d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/RedeemEntitlementsCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Output parameters for the Function. - /// - public class RedeemEntitlementsCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Result code for the operation. is returned for a successful request, otherwise one of the error codes is returned. See eos_common.h - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The Epic Online Services Account ID of the user who has redeemed entitlements - /// - public EpicAccountId LocalUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(RedeemEntitlementsCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as RedeemEntitlementsCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct RedeemEntitlementsCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public EpicAccountId LocalUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/RedeemEntitlementsCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/RedeemEntitlementsCallbackInfo.cs.meta deleted file mode 100644 index b4912fc..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/RedeemEntitlementsCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3f365779f47a0ef4fa425379a7882a3f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/RedeemEntitlementsOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/RedeemEntitlementsOptions.cs deleted file mode 100644 index fe90a8a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/RedeemEntitlementsOptions.cs +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Input parameters for the function. - /// - public class RedeemEntitlementsOptions - { - /// - /// The Epic Online Services Account ID of the user who is redeeming Entitlements - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The array of Entitlements to redeem - /// - public string[] EntitlementIds { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct RedeemEntitlementsOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private uint m_EntitlementIdCount; - private System.IntPtr m_EntitlementIds; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string[] EntitlementIds - { - set - { - Helper.TryMarshalSet(ref m_EntitlementIds, value, out m_EntitlementIdCount); - } - } - - public void Set(RedeemEntitlementsOptions other) - { - if (other != null) - { - m_ApiVersion = EcomInterface.RedeementitlementsApiLatest; - LocalUserId = other.LocalUserId; - EntitlementIds = other.EntitlementIds; - } - } - - public void Set(object other) - { - Set(other as RedeemEntitlementsOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_EntitlementIds); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/RedeemEntitlementsOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/RedeemEntitlementsOptions.cs.meta deleted file mode 100644 index bc30cd4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/RedeemEntitlementsOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 481ed9b53735d474ea9d3774f5143d79 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/Transaction.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/Transaction.cs deleted file mode 100644 index f3e41a5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/Transaction.cs +++ /dev/null @@ -1,115 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - public sealed partial class Transaction : Handle - { - public Transaction() - { - } - - public Transaction(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// The most recent version of the Function. - /// - public const int TransactionCopyentitlementbyindexApiLatest = 1; - - /// - /// The most recent version of the Function. - /// - public const int TransactionGetentitlementscountApiLatest = 1; - - /// - /// Fetches an entitlement from a given index. - /// - /// - /// structure containing the index being accessed - /// the entitlement for the given index, if it exists and is valid, use when finished - /// - /// if the information is available and passed out in OutEntitlement - /// if the entitlement information is stale and passed out in OutEntitlement - /// if you pass a null pointer for the out parameter - /// if the entitlement is not found - /// - public Result CopyEntitlementByIndex(TransactionCopyEntitlementByIndexOptions options, out Entitlement outEntitlement) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outEntitlementAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Ecom_Transaction_CopyEntitlementByIndex(InnerHandle, optionsAddress, ref outEntitlementAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outEntitlementAddress, out outEntitlement)) - { - Bindings.EOS_Ecom_Entitlement_Release(outEntitlementAddress); - } - - return funcResult; - } - - /// - /// Fetch the number of entitlements that are part of this transaction. - /// - /// - /// structure containing the Epic Online Services Account ID being accessed - /// - /// the number of entitlements found. - /// - public uint GetEntitlementsCount(TransactionGetEntitlementsCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Ecom_Transaction_GetEntitlementsCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// The Ecom Transaction Interface exposes getters for accessing information about a completed transaction. - /// All Ecom Transaction Interface calls take a handle of type as the first parameter. - /// An handle is originally returned as part of the struct. - /// An handle can also be retrieved from an handle using . - /// It is expected that after a transaction that is called. - /// When is called any remaining transactions will also be released. - /// - /// - /// - /// - public Result GetTransactionId(out string outBuffer) - { - System.IntPtr outBufferAddress = System.IntPtr.Zero; - int inOutBufferLength = EcomInterface.TransactionidMaximumLength + 1; - Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength, out _); - - var funcResult = Bindings.EOS_Ecom_Transaction_GetTransactionId(InnerHandle, outBufferAddress, ref inOutBufferLength); - - Helper.TryMarshalGet(outBufferAddress, out outBuffer); - Helper.TryMarshalDispose(ref outBufferAddress); - - return funcResult; - } - - /// - /// Release the memory associated with an . Is is expected to be called after - /// being received from a . - /// - /// - /// - /// - /// A handle to a transaction. - public void Release() - { - Bindings.EOS_Ecom_Transaction_Release(InnerHandle); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/Transaction.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/Transaction.cs.meta deleted file mode 100644 index 73dad37..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/Transaction.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 1e1453463c3bb14469ca206806e83c4d -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/TransactionCopyEntitlementByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/TransactionCopyEntitlementByIndexOptions.cs deleted file mode 100644 index c005819..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/TransactionCopyEntitlementByIndexOptions.cs +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Input parameters for the function. - /// - public class TransactionCopyEntitlementByIndexOptions - { - /// - /// The index of the entitlement to get - /// - public uint EntitlementIndex { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct TransactionCopyEntitlementByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_EntitlementIndex; - - public uint EntitlementIndex - { - set - { - m_EntitlementIndex = value; - } - } - - public void Set(TransactionCopyEntitlementByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = Transaction.TransactionCopyentitlementbyindexApiLatest; - EntitlementIndex = other.EntitlementIndex; - } - } - - public void Set(object other) - { - Set(other as TransactionCopyEntitlementByIndexOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/TransactionCopyEntitlementByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/TransactionCopyEntitlementByIndexOptions.cs.meta deleted file mode 100644 index 3f20cda..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/TransactionCopyEntitlementByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 10cae0974c140db4f8691e69769cb8c7 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/TransactionGetEntitlementsCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/TransactionGetEntitlementsCountOptions.cs deleted file mode 100644 index 173502b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/TransactionGetEntitlementsCountOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Ecom -{ - /// - /// Input parameters for the function. - /// - public class TransactionGetEntitlementsCountOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct TransactionGetEntitlementsCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(TransactionGetEntitlementsCountOptions other) - { - if (other != null) - { - m_ApiVersion = Transaction.TransactionGetentitlementscountApiLatest; - } - } - - public void Set(object other) - { - Set(other as TransactionGetEntitlementsCountOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/TransactionGetEntitlementsCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/TransactionGetEntitlementsCountOptions.cs.meta deleted file mode 100644 index ba223ee..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Ecom/TransactionGetEntitlementsCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0ecae553fb6a7564b907ba01d4579f7f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/EpicAccountId.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/EpicAccountId.cs deleted file mode 100644 index 3ab1f36..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/EpicAccountId.cs +++ /dev/null @@ -1,100 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices -{ - public sealed partial class EpicAccountId : Handle - { - public EpicAccountId() - { - } - - public EpicAccountId(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// A character buffer of this size is large enough to fit a successful output of . This length does not include the null-terminator. - /// The EpicAccountId data structure is opaque in nature and no assumptions of its structure should be inferred - /// - public const int EpicaccountidMaxLength = 32; - - /// - /// Retrieve an from a raw string representing an Epic Online Services Account ID. The input string must be null-terminated. - /// NOTE: There is no validation on the string format, this should only be used with values serialized from legitimate sources such as - /// - /// The stringified account ID for which to retrieve the Epic Online Services Account ID - /// - /// The that corresponds to the AccountIdString - /// - public static EpicAccountId FromString(string accountIdString) - { - var accountIdStringAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref accountIdStringAddress, accountIdString); - - var funcResult = Bindings.EOS_EpicAccountId_FromString(accountIdStringAddress); - - Helper.TryMarshalDispose(ref accountIdStringAddress); - - EpicAccountId funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Check whether or not the given Epic Online Services Account ID is considered valid - /// NOTE: This will return true for any created with as there is no validation - /// - /// The Epic Online Services Account ID to check for validity - /// - /// true if the is valid, otherwise false - /// - public bool IsValid() - { - var funcResult = Bindings.EOS_EpicAccountId_IsValid(InnerHandle); - - bool funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Retrieve a null-terminated stringified Epic Online Services Account ID from an . This is useful for replication of Epic Online Services Account IDs in multiplayer games. - /// This string will be no larger than + 1 and will only contain UTF8-encoded printable characters (excluding the null-terminator). - /// - /// The Epic Online Services Account ID for which to retrieve the stringified version. - /// The buffer into which the character data should be written - /// - /// The size of the OutBuffer in characters. - /// The input buffer should include enough space to be null-terminated. - /// When the function returns, this parameter will be filled with the length of the string copied into OutBuffer including the null termination character. - /// - /// - /// An that indicates whether the Epic Online Services Account ID string was copied into the OutBuffer. - /// - The OutBuffer was filled, and InOutBufferLength contains the number of characters copied into OutBuffer including the null terminator. - /// - Either OutBuffer or InOutBufferLength were passed as NULL parameters. - /// - The AccountId is invalid and cannot be stringified. - /// - The OutBuffer is not large enough to receive the Epic Online Services Account ID string. InOutBufferLength contains the required minimum length to perform the operation successfully. - /// - public Result ToString(out string outBuffer) - { - System.IntPtr outBufferAddress = System.IntPtr.Zero; - int inOutBufferLength = EpicaccountidMaxLength + 1; - Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength, out _); - - var funcResult = Bindings.EOS_EpicAccountId_ToString(InnerHandle, outBufferAddress, ref inOutBufferLength); - - Helper.TryMarshalGet(outBufferAddress, out outBuffer); - Helper.TryMarshalDispose(ref outBufferAddress); - - return funcResult; - } - - public override string ToString() - { - string funcResult; - ToString(out funcResult); - return funcResult; - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/EpicAccountId.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/EpicAccountId.cs.meta deleted file mode 100644 index b59a41b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/EpicAccountId.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e5546a14899946348b50622f44ad9f7c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/ExternalAccountType.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/ExternalAccountType.cs deleted file mode 100644 index 9597575..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/ExternalAccountType.cs +++ /dev/null @@ -1,71 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices -{ - /// - /// All supported external account providers - /// - /// - public enum ExternalAccountType : int - { - /// - /// External account is associated with Epic Games - /// - Epic = 0, - /// - /// External account is associated with Steam - /// - Steam = 1, - /// - /// External account is associated with PlayStation(TM)Network - /// - Psn = 2, - /// - /// External account is associated with Xbox Live - /// - /// With EOS Connect API, the associated account type is Partner XUID (PXUID). - /// With EOS UserInfo API, the associated account type is Xbox Live ID (XUID). - /// - Xbl = 3, - /// - /// External account is associated with Discord - /// - Discord = 4, - /// - /// External account is associated with GOG - /// - Gog = 5, - /// - /// External account is associated with Nintendo - /// - /// With both EOS Connect and EOS UserInfo APIs, the associated account type is Nintendo Service Account ID. - /// Local user authentication is possible using Nintendo Account ID, while the account type does not get exposed to the SDK in queries related to linked accounts information. - /// - Nintendo = 6, - /// - /// External account is associated with Uplay - /// - Uplay = 7, - /// - /// External account is associated with an OpenID Provider - /// - Openid = 8, - /// - /// External account is associated with Apple - /// - Apple = 9, - /// - /// External account is associated with Google - /// - Google = 10, - /// - /// External account is associated with Oculus - /// - Oculus = 11, - /// - /// External account is associated with itch.io - /// - Itchio = 12 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/ExternalAccountType.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/ExternalAccountType.cs.meta deleted file mode 100644 index d026217..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/ExternalAccountType.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d4508452da5a0e343b4971832cc0a0b5 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/ExternalCredentialType.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/ExternalCredentialType.cs deleted file mode 100644 index 9654711..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/ExternalCredentialType.cs +++ /dev/null @@ -1,174 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices -{ - /// - /// List of the supported identity providers to authenticate a user. - /// - /// The type of authentication token is specific to each provider. - /// Tokens in string format should be passed as-is to the function. - /// Tokens retrieved as raw byte arrays should be converted into a hex-encoded UTF-8 string (e.g. "FA87097A..") before being passed to the function. - /// can be used for this conversion. - /// - /// - /// - public enum ExternalCredentialType : int - { - /// - /// Epic Games User Token - /// - /// Acquired using that returns ::AccessToken. - /// - /// Supported with . - /// - Epic = 0, - /// - /// Steam Encrypted App Ticket - /// - /// Generated using the ISteamUser::RequestEncryptedAppTicket API of Steamworks SDK. - /// For ticket generation parameters, use pDataToInclude(NULL) and cbDataToInclude(0). - /// - /// The retrieved App Ticket byte buffer needs to be converted into a hex-encoded UTF-8 string (e.g. "FA87097A..") before passing it to the or APIs. - /// can be used for this conversion. - /// - /// Supported with , . - /// - SteamAppTicket = 1, - /// - /// PlayStation(TM)Network ID Token - /// - /// Retrieved from the PlayStation(R) SDK. Please see first-party documentation for additional information. - /// - /// Supported with , . - /// - PsnIdToken = 2, - /// - /// Xbox Live XSTS Token - /// - /// Retrieved from the GDK and XDK. Please see first-party documentation for additional information. - /// - /// Supported with , . - /// - XblXstsToken = 3, - /// - /// Discord Access Token - /// - /// Retrieved using the ApplicationManager::GetOAuth2Token API of Discord SDK. - /// - /// Supported with . - /// - DiscordAccessToken = 4, - /// - /// GOG Galaxy Encrypted App Ticket - /// - /// Generated using the IUser::RequestEncryptedAppTicket API of GOG Galaxy SDK. - /// For ticket generation parameters, use data(NULL) and dataSize(0). - /// - /// The retrieved App Ticket byte buffer needs to be converted into a hex-encoded UTF-8 string (e.g. "FA87097A..") before passing it to the API. - /// For C/C++ API integration, use the API for the conversion. - /// For C# integration, you can use for the conversion. - /// - /// Supported with . - /// - GogSessionTicket = 5, - /// - /// Nintendo Account ID Token - /// - /// Identifies a Nintendo user account and is acquired through web flow authentication where the local user logs in using their email address/sign-in ID and password. - /// This is the common Nintendo account that users login with outside the Nintendo Switch device. - /// - /// Supported with , . - /// - NintendoIdToken = 6, - /// - /// Nintendo Service Account ID Token (NSA ID) - /// - /// The NSA ID identifies uniquely the local Nintendo Switch device. The authentication token is acquired locally without explicit user credentials. - /// As such, it is the primary authentication method for seamless login on Nintendo Switch. - /// - /// The NSA ID is not exposed directly to the user and does not provide any means for login outside the local device. - /// Because of this, Nintendo Switch users will need to link their Nintendo Account or another external user account - /// to their Product User ID in order to share their game progression across other platforms. Otherwise, the user will - /// not be able to login to their existing Product User ID on another platform due to missing login credentials to use. - /// It is recommended that the game explicitly communicates this restriction to the user so that they will know to add - /// the first linked external account on the Nintendo Switch device and then proceed with login on another platform. - /// - /// In addition to sharing cross-platform game progression, linking the Nintendo Account or another external account - /// will allow preserving the game progression permanently. Otherwise, the game progression will be tied only to the - /// local device. In case the user loses access to their local device, they will not be able to recover the game - /// progression if it is only associated with this account type. - /// - /// Supported with , . - /// - NintendoNsaIdToken = 7, - /// - /// Uplay Access Token - /// - UplayAccessToken = 8, - /// - /// OpenID Provider Access Token - /// - /// Supported with . - /// - OpenidAccessToken = 9, - /// - /// Device ID access token that identifies the current locally logged in user profile on the local device. - /// The local user profile here refers to the operating system user login, for example the user's Windows Account - /// or on a mobile device the default active user profile. - /// - /// This credential type is used to automatically login the local user using the EOS Connect Device ID feature. - /// - /// The intended use of the Device ID feature is to allow automatically logging in the user on a mobile device - /// and to allow playing the game without requiring the user to necessarily login using a real user account at all. - /// This makes a seamless first-time experience possible and allows linking the local device with a real external - /// user account at a later time, sharing the same that is being used with the Device ID feature. - /// - /// Supported with . - /// - /// - DeviceidAccessToken = 10, - /// - /// Apple ID Token - /// - /// Supported with . - /// - AppleIdToken = 11, - /// - /// Google ID Token - /// - /// Supported with . - /// - GoogleIdToken = 12, - /// - /// Oculus User ID and Nonce - /// - /// Call ovr_User_GetUserProof(), or Platform.User.GetUserProof() if you are using Unity, to retrieve the nonce. - /// Then pass the local User ID and the Nonce as a "|" formatted string for the Token parameter. - /// - /// Note that in order to successfully retrieve a valid non-zero id for the local user using ovr_User_GetUser(), - /// your Oculus App needs to be configured in the Oculus Developer Dashboard to have the User ID feature enabled. - /// - /// Supported with . - /// - OculusUseridNonce = 13, - /// - /// itch.io JWT Access Token - /// - /// Use the itch.io app manifest to receive a JWT access token for the local user via the ITCHIO_API_KEY process environment variable. - /// The itch.io access token is valid for 7 days after which the game needs to be restarted by the user as otherwise EOS Connect - /// authentication session can no longer be refreshed. - /// - /// Supported with . - /// - ItchioJwt = 14, - /// - /// itch.io Key Access Token - /// - /// This access token type is retrieved through the OAuth 2.0 authentication flow for the itch.io application. - /// - /// Supported with . - /// - ItchioKey = 15 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/ExternalCredentialType.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/ExternalCredentialType.cs.meta deleted file mode 100644 index f1cc2e5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/ExternalCredentialType.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 2404c6fa1750b204db8aca404f08db5b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends.meta deleted file mode 100644 index 6082c9d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 30eb20d6b42187542abfb943f6b91ecd -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/AcceptInviteCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/AcceptInviteCallbackInfo.cs deleted file mode 100644 index f9bbcc4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/AcceptInviteCallbackInfo.cs +++ /dev/null @@ -1,107 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Friends -{ - /// - /// Output parameters for the Function. - /// - public class AcceptInviteCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Result code for the operation. is returned if an invite was accepted, otherwise one of the error codes is returned. See eos_common.h - /// - public Result ResultCode { get; private set; } - - /// - /// Context that is passed into - /// - public object ClientData { get; private set; } - - /// - /// The Epic Online Services Account ID of the user who is accepting the friends list invitation - /// - public EpicAccountId LocalUserId { get; private set; } - - /// - /// The Epic Online Services Account ID of the user who sent the local user a friends list invitation - /// - public EpicAccountId TargetUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(AcceptInviteCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - TargetUserId = other.Value.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as AcceptInviteCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AcceptInviteCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public EpicAccountId LocalUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public EpicAccountId TargetUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_TargetUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/AcceptInviteCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/AcceptInviteCallbackInfo.cs.meta deleted file mode 100644 index 7b88905..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/AcceptInviteCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: addc0ce661988174f9a8c014ae0f0081 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/AcceptInviteOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/AcceptInviteOptions.cs deleted file mode 100644 index ddde6b4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/AcceptInviteOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Friends -{ - /// - /// Input parameters for the function. - /// - public class AcceptInviteOptions - { - /// - /// The Epic Online Services Account ID of the local, logged-in user who is accepting the friends list invitation - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The Epic Online Services Account ID of the user who sent the friends list invitation - /// - public EpicAccountId TargetUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AcceptInviteOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public EpicAccountId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public void Set(AcceptInviteOptions other) - { - if (other != null) - { - m_ApiVersion = FriendsInterface.AcceptinviteApiLatest; - LocalUserId = other.LocalUserId; - TargetUserId = other.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as AcceptInviteOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/AcceptInviteOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/AcceptInviteOptions.cs.meta deleted file mode 100644 index 44c2359..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/AcceptInviteOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 512a7d1e50fc78c41ac58df0c1c14886 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/AddNotifyFriendsUpdateOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/AddNotifyFriendsUpdateOptions.cs deleted file mode 100644 index 9a8efe7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/AddNotifyFriendsUpdateOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Friends -{ - /// - /// Input parameters for the function. - /// - public class AddNotifyFriendsUpdateOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyFriendsUpdateOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(AddNotifyFriendsUpdateOptions other) - { - if (other != null) - { - m_ApiVersion = FriendsInterface.AddnotifyfriendsupdateApiLatest; - } - } - - public void Set(object other) - { - Set(other as AddNotifyFriendsUpdateOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/AddNotifyFriendsUpdateOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/AddNotifyFriendsUpdateOptions.cs.meta deleted file mode 100644 index fd3eb9b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/AddNotifyFriendsUpdateOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ecbda98459fea46498e458297354055d -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/FriendsInterface.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/FriendsInterface.cs deleted file mode 100644 index 5cada69..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/FriendsInterface.cs +++ /dev/null @@ -1,306 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Friends -{ - public sealed partial class FriendsInterface : Handle - { - public FriendsInterface() - { - } - - public FriendsInterface(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// The most recent version of the API. - /// - public const int AcceptinviteApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int AddnotifyfriendsupdateApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetfriendatindexApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetfriendscountApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetstatusApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int QueryfriendsApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int RejectinviteApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int SendinviteApiLatest = 1; - - /// - /// Starts an asynchronous task that accepts a friend invitation from another user. The completion delegate is executed after the backend response has been received. - /// - /// structure containing the logged in account and the inviting account - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the async operation completes, either successfully or in error - public void AcceptInvite(AcceptInviteOptions options, object clientData, OnAcceptInviteCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnAcceptInviteCallbackInternal(OnAcceptInviteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Friends_AcceptInvite(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Listen for changes to friends for a particular account. - /// - /// Information about who would like notifications. - /// This value is returned to the caller when FriendsUpdateHandler is invoked. - /// The callback to be invoked when a change to any friend status changes. - /// - /// A valid notification ID if successfully bound, or otherwise - /// - public ulong AddNotifyFriendsUpdate(AddNotifyFriendsUpdateOptions options, object clientData, OnFriendsUpdateCallback friendsUpdateHandler) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var friendsUpdateHandlerInternal = new OnFriendsUpdateCallbackInternal(OnFriendsUpdateCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, friendsUpdateHandler, friendsUpdateHandlerInternal); - - var funcResult = Bindings.EOS_Friends_AddNotifyFriendsUpdate(InnerHandle, optionsAddress, clientDataAddress, friendsUpdateHandlerInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Retrieves the Epic Online Services Account ID of an entry from the friends list that has already been retrieved by the API. - /// The Epic Online Services Account ID returned by this function may belong to an account that has been invited to be a friend or that has invited the local user to be a friend. - /// To determine if the Epic Online Services Account ID returned by this function is a friend or a pending friend invitation, use the function. - /// - /// - /// - /// structure containing the Epic Online Services Account ID of the owner of the friends list and the index into the list - /// - /// the Epic Online Services Account ID of the friend. Note that if the index provided is out of bounds, the returned Epic Online Services Account ID will be a "null" account ID. - /// - public EpicAccountId GetFriendAtIndex(GetFriendAtIndexOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Friends_GetFriendAtIndex(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - EpicAccountId funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Retrieves the number of friends on the friends list that has already been retrieved by the API. - /// - /// - /// structure containing the Epic Online Services Account ID of user who owns the friends list - /// - /// the number of friends on the list - /// - public int GetFriendsCount(GetFriendsCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Friends_GetFriendsCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Retrieve the friendship status between the local user and another user. - /// - /// - /// structure containing the Epic Online Services Account ID of the friend list to check and the account of the user to test friendship status - /// - /// A value indicating whether the two accounts have a friendship, pending invites in either direction, or no relationship - /// is returned for two users that have confirmed friendship - /// is returned when the local user has sent a friend invitation but the other user has not accepted or rejected it - /// is returned when the other user has sent a friend invitation to the local user - /// is returned when there is no known relationship - /// - public FriendsStatus GetStatus(GetStatusOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Friends_GetStatus(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Starts an asynchronous task that reads the user's friends list from the backend service, caching it for future use. - /// - /// @note When the Social Overlay is enabled then this will be called automatically. The Social Overlay is enabled by default (see ). - /// - /// structure containing the account for which to retrieve the friends list - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the async operation completes, either successfully or in error - public void QueryFriends(QueryFriendsOptions options, object clientData, OnQueryFriendsCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnQueryFriendsCallbackInternal(OnQueryFriendsCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Friends_QueryFriends(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Starts an asynchronous task that rejects a friend invitation from another user. The completion delegate is executed after the backend response has been received. - /// - /// structure containing the logged in account and the inviting account - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the async operation completes, either successfully or in error - public void RejectInvite(RejectInviteOptions options, object clientData, OnRejectInviteCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnRejectInviteCallbackInternal(OnRejectInviteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Friends_RejectInvite(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Stop listening for friends changes on a previously bound handler. - /// - /// The previously bound notification ID. - public void RemoveNotifyFriendsUpdate(ulong notificationId) - { - Helper.TryRemoveCallbackByNotificationId(notificationId); - - Bindings.EOS_Friends_RemoveNotifyFriendsUpdate(InnerHandle, notificationId); - } - - /// - /// Starts an asynchronous task that sends a friend invitation to another user. The completion delegate is executed after the backend response has been received. - /// It does not indicate that the target user has responded to the friend invitation. - /// - /// structure containing the account to send the invite from and the account to send the invite to - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the async operation completes, either successfully or in error - public void SendInvite(SendInviteOptions options, object clientData, OnSendInviteCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnSendInviteCallbackInternal(OnSendInviteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Friends_SendInvite(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - [MonoPInvokeCallback(typeof(OnAcceptInviteCallbackInternal))] - internal static void OnAcceptInviteCallbackInternalImplementation(System.IntPtr data) - { - OnAcceptInviteCallback callback; - AcceptInviteCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnFriendsUpdateCallbackInternal))] - internal static void OnFriendsUpdateCallbackInternalImplementation(System.IntPtr data) - { - OnFriendsUpdateCallback callback; - OnFriendsUpdateInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnQueryFriendsCallbackInternal))] - internal static void OnQueryFriendsCallbackInternalImplementation(System.IntPtr data) - { - OnQueryFriendsCallback callback; - QueryFriendsCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnRejectInviteCallbackInternal))] - internal static void OnRejectInviteCallbackInternalImplementation(System.IntPtr data) - { - OnRejectInviteCallback callback; - RejectInviteCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnSendInviteCallbackInternal))] - internal static void OnSendInviteCallbackInternalImplementation(System.IntPtr data) - { - OnSendInviteCallback callback; - SendInviteCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/FriendsInterface.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/FriendsInterface.cs.meta deleted file mode 100644 index 4dd5810..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/FriendsInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 702b2a7398b4b4a4a90a4d6cf24b171e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/FriendsStatus.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/FriendsStatus.cs deleted file mode 100644 index 2ebd5f9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/FriendsStatus.cs +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Friends -{ - /// - /// An enumeration of the different friendship statuses. - /// - public enum FriendsStatus : int - { - /// - /// The two accounts have no friendship status - /// - NotFriends = 0, - /// - /// The local account has sent a friend invite to the other account - /// - InviteSent = 1, - /// - /// The other account has sent a friend invite to the local account - /// - InviteReceived = 2, - /// - /// The accounts have accepted friendship - /// - Friends = 3 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/FriendsStatus.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/FriendsStatus.cs.meta deleted file mode 100644 index fde207a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/FriendsStatus.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 17174af1a956faa40b2a5131c96e955b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/GetFriendAtIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/GetFriendAtIndexOptions.cs deleted file mode 100644 index 3087e80..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/GetFriendAtIndexOptions.cs +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Friends -{ - /// - /// Input parameters for the function. - /// - public class GetFriendAtIndexOptions - { - /// - /// The Epic Online Services Account ID of the user whose friend list is being queried - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// Index into the friend list. This value must be between 0 and -1 inclusively. - /// - public int Index { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetFriendAtIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private int m_Index; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public int Index - { - set - { - m_Index = value; - } - } - - public void Set(GetFriendAtIndexOptions other) - { - if (other != null) - { - m_ApiVersion = FriendsInterface.GetfriendatindexApiLatest; - LocalUserId = other.LocalUserId; - Index = other.Index; - } - } - - public void Set(object other) - { - Set(other as GetFriendAtIndexOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/GetFriendAtIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/GetFriendAtIndexOptions.cs.meta deleted file mode 100644 index c97e124..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/GetFriendAtIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 72ac25a9d25384147ac5303dbbc6f156 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/GetFriendsCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/GetFriendsCountOptions.cs deleted file mode 100644 index f67045f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/GetFriendsCountOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Friends -{ - /// - /// Input parameters for the function. - /// - public class GetFriendsCountOptions - { - /// - /// The Epic Online Services Account ID of the user whose friends should be counted - /// - public EpicAccountId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetFriendsCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(GetFriendsCountOptions other) - { - if (other != null) - { - m_ApiVersion = FriendsInterface.GetfriendscountApiLatest; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as GetFriendsCountOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/GetFriendsCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/GetFriendsCountOptions.cs.meta deleted file mode 100644 index 13da162..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/GetFriendsCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: cdeadb659eb33c94ea916efced6573b1 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/GetStatusOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/GetStatusOptions.cs deleted file mode 100644 index 293e1eb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/GetStatusOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Friends -{ - /// - /// Input parameters for the function. - /// - public class GetStatusOptions - { - /// - /// The Epic Online Services Account ID of the local, logged in user - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The Epic Online Services Account ID of the user whose friendship status with the local user is being queried - /// - public EpicAccountId TargetUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetStatusOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public EpicAccountId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public void Set(GetStatusOptions other) - { - if (other != null) - { - m_ApiVersion = FriendsInterface.GetstatusApiLatest; - LocalUserId = other.LocalUserId; - TargetUserId = other.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as GetStatusOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/GetStatusOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/GetStatusOptions.cs.meta deleted file mode 100644 index 9073ef7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/GetStatusOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 97d6fe89a9e05914daf1b780c3a4386c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnAcceptInviteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnAcceptInviteCallback.cs deleted file mode 100644 index 49da2bf..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnAcceptInviteCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Friends -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result. - public delegate void OnAcceptInviteCallback(AcceptInviteCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnAcceptInviteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnAcceptInviteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnAcceptInviteCallback.cs.meta deleted file mode 100644 index 028068f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnAcceptInviteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 219cc05a05ea0554fb88fef1bcb57d68 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnFriendsUpdateCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnFriendsUpdateCallback.cs deleted file mode 100644 index 3ccc5e1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnFriendsUpdateCallback.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Friends -{ - /// - /// Callback for information related to a friend status update. - /// - public delegate void OnFriendsUpdateCallback(OnFriendsUpdateInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnFriendsUpdateCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnFriendsUpdateCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnFriendsUpdateCallback.cs.meta deleted file mode 100644 index 7d1a5c8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnFriendsUpdateCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4438b4c28a7fddd40b6db231fb24e448 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnFriendsUpdateInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnFriendsUpdateInfo.cs deleted file mode 100644 index ce7cb52..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnFriendsUpdateInfo.cs +++ /dev/null @@ -1,122 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Friends -{ - /// - /// Structure containing information about a friend status update. - /// - public class OnFriendsUpdateInfo : ICallbackInfo, ISettable - { - /// - /// Client-specified data passed into - /// - public object ClientData { get; private set; } - - /// - /// The Epic Online Services Account ID of the local user who is receiving the update - /// - public EpicAccountId LocalUserId { get; private set; } - - /// - /// The Epic Online Services Account ID of the user whose status is being updated. - /// - public EpicAccountId TargetUserId { get; private set; } - - /// - /// The previous status of the user. - /// - public FriendsStatus PreviousStatus { get; private set; } - - /// - /// The current status of the user. - /// - public FriendsStatus CurrentStatus { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(OnFriendsUpdateInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - TargetUserId = other.Value.TargetUserId; - PreviousStatus = other.Value.PreviousStatus; - CurrentStatus = other.Value.CurrentStatus; - } - } - - public void Set(object other) - { - Set(other as OnFriendsUpdateInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct OnFriendsUpdateInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - private FriendsStatus m_PreviousStatus; - private FriendsStatus m_CurrentStatus; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public EpicAccountId LocalUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public EpicAccountId TargetUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_TargetUserId, out value); - return value; - } - } - - public FriendsStatus PreviousStatus - { - get - { - return m_PreviousStatus; - } - } - - public FriendsStatus CurrentStatus - { - get - { - return m_CurrentStatus; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnFriendsUpdateInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnFriendsUpdateInfo.cs.meta deleted file mode 100644 index abf63e0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnFriendsUpdateInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 29a3d9b2b113f1f4fa1719daf837512e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnQueryFriendsCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnQueryFriendsCallback.cs deleted file mode 100644 index c78cc7b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnQueryFriendsCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Friends -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnQueryFriendsCallback(QueryFriendsCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnQueryFriendsCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnQueryFriendsCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnQueryFriendsCallback.cs.meta deleted file mode 100644 index c80646f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnQueryFriendsCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 131eb553320c0804a8f0f64c1271d447 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnRejectInviteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnRejectInviteCallback.cs deleted file mode 100644 index 6992183..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnRejectInviteCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Friends -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing output information and the result. - public delegate void OnRejectInviteCallback(RejectInviteCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnRejectInviteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnRejectInviteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnRejectInviteCallback.cs.meta deleted file mode 100644 index a872bc8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnRejectInviteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b8e35b1bdc6576c4b895c0a545f94f8f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnSendInviteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnSendInviteCallback.cs deleted file mode 100644 index 919eb35..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnSendInviteCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Friends -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result. - public delegate void OnSendInviteCallback(SendInviteCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnSendInviteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnSendInviteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnSendInviteCallback.cs.meta deleted file mode 100644 index e3ad0f1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/OnSendInviteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 832ec241457fcd64f9e1094b2e34a293 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/QueryFriendsCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/QueryFriendsCallbackInfo.cs deleted file mode 100644 index 04a912c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/QueryFriendsCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Friends -{ - /// - /// Output parameters for the Function. These parameters are received through the callback provided to - /// - public class QueryFriendsCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The Epic Online Services Account ID of the user whose friends were queried - /// - public EpicAccountId LocalUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(QueryFriendsCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as QueryFriendsCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryFriendsCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public EpicAccountId LocalUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/QueryFriendsCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/QueryFriendsCallbackInfo.cs.meta deleted file mode 100644 index 8464301..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/QueryFriendsCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: babf34d0fc5f64548bf4d37591d1d3a8 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/QueryFriendsOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/QueryFriendsOptions.cs deleted file mode 100644 index 857b070..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/QueryFriendsOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Friends -{ - /// - /// Input parameters for the function. - /// - public class QueryFriendsOptions - { - /// - /// The Epic Online Services Account ID of the local, logged-in user whose friends list you want to retrieve - /// - public EpicAccountId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryFriendsOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(QueryFriendsOptions other) - { - if (other != null) - { - m_ApiVersion = FriendsInterface.QueryfriendsApiLatest; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as QueryFriendsOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/QueryFriendsOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/QueryFriendsOptions.cs.meta deleted file mode 100644 index 0d98a93..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/QueryFriendsOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 255cfe9cbe5e97a46bbdcaadab6ae60f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/RejectInviteCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/RejectInviteCallbackInfo.cs deleted file mode 100644 index 1355c45..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/RejectInviteCallbackInfo.cs +++ /dev/null @@ -1,107 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Friends -{ - /// - /// Output parameters for the Function. - /// - public class RejectInviteCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Result code for the operation. is returned if an invite was accepted, otherwise one of the error codes is returned. See eos_common.h - /// - public Result ResultCode { get; private set; } - - /// - /// Context that is passed into - /// - public object ClientData { get; private set; } - - /// - /// The Epic Online Services Account ID of the user who is rejecting the friends list invitation - /// - public EpicAccountId LocalUserId { get; private set; } - - /// - /// The Epic Online Services Account ID of the user who sent the friends list invitation - /// - public EpicAccountId TargetUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(RejectInviteCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - TargetUserId = other.Value.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as RejectInviteCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct RejectInviteCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public EpicAccountId LocalUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public EpicAccountId TargetUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_TargetUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/RejectInviteCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/RejectInviteCallbackInfo.cs.meta deleted file mode 100644 index cd0ab44..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/RejectInviteCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 1568749c99c5f644d8c53cb714fcd07c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/RejectInviteOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/RejectInviteOptions.cs deleted file mode 100644 index 9ce62f9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/RejectInviteOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Friends -{ - /// - /// Input parameters for the function. - /// - public class RejectInviteOptions - { - /// - /// The Epic Online Services Account ID of the local, logged-in user who is rejecting a friends list invitation - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The Epic Online Services Account ID of the user who sent the friends list invitation - /// - public EpicAccountId TargetUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct RejectInviteOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public EpicAccountId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public void Set(RejectInviteOptions other) - { - if (other != null) - { - m_ApiVersion = FriendsInterface.RejectinviteApiLatest; - LocalUserId = other.LocalUserId; - TargetUserId = other.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as RejectInviteOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/RejectInviteOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/RejectInviteOptions.cs.meta deleted file mode 100644 index a652dea..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/RejectInviteOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b5ac09b0bea3d1d4ea95540af2cafda9 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/SendInviteCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/SendInviteCallbackInfo.cs deleted file mode 100644 index 3965fee..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/SendInviteCallbackInfo.cs +++ /dev/null @@ -1,107 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Friends -{ - /// - /// Output parameters for the API. - /// - public class SendInviteCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Result code for the operation. is returned if the invitation was sent, otherwise one of the error codes is returned. See eos_common.h - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The Epic Online Services Account ID of the user who sent the friends list invitation - /// - public EpicAccountId LocalUserId { get; private set; } - - /// - /// The Epic Online Services Account ID of the user to whom the friends list invitation was sent - /// - public EpicAccountId TargetUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(SendInviteCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - TargetUserId = other.Value.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as SendInviteCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SendInviteCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public EpicAccountId LocalUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public EpicAccountId TargetUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_TargetUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/SendInviteCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/SendInviteCallbackInfo.cs.meta deleted file mode 100644 index c6ed9b6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/SendInviteCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e76d44ddaf200164f938abc822eafc65 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/SendInviteOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/SendInviteOptions.cs deleted file mode 100644 index ab7cdeb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/SendInviteOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Friends -{ - /// - /// Input parameters for the function. - /// - public class SendInviteOptions - { - /// - /// The Epic Online Services Account ID of the local, logged-in user who is sending the friends list invitation - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The Epic Online Services Account ID of the user who is receiving the friends list invitation - /// - public EpicAccountId TargetUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SendInviteOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public EpicAccountId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public void Set(SendInviteOptions other) - { - if (other != null) - { - m_ApiVersion = FriendsInterface.SendinviteApiLatest; - LocalUserId = other.LocalUserId; - TargetUserId = other.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as SendInviteOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/SendInviteOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/SendInviteOptions.cs.meta deleted file mode 100644 index 5faca76..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Friends/SendInviteOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 354e85c1d71475b43aaff4c27a90e06b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/IOS.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/IOS.meta deleted file mode 100644 index 711042c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/IOS.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: c4e2c8142a8bbd54f849b66b64e2f41d -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/IOS/Auth.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/IOS/Auth.meta deleted file mode 100644 index 4b1fbee..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/IOS/Auth.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: f34a811300e2b8748afd1f40a21c96b0 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/IOS/Auth/AuthInterface.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/IOS/Auth/AuthInterface.cs deleted file mode 100644 index 8846520..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/IOS/Auth/AuthInterface.cs +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - public sealed partial class AuthInterface : Handle - { - /// - /// The most recent version of the structure. - /// - public const int AuthIoscredentialssystemauthcredentialsoptionsApiLatest = 1; - - public void Login(IOSLoginOptions options, object clientData, OnLoginCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnLoginCallbackInternal(OnLoginCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Auth_Login(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/IOS/Auth/AuthInterface.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/IOS/Auth/AuthInterface.cs.meta deleted file mode 100644 index fb41d54..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/IOS/Auth/AuthInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 49084b77c143d1e458f237231c2f8aff -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/IOS/Auth/IOSCredentials.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/IOS/Auth/IOSCredentials.cs deleted file mode 100644 index bc7e417..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/IOS/Auth/IOSCredentials.cs +++ /dev/null @@ -1,179 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - /// - /// A structure that contains login credentials. What is required is dependent on the type of login being initiated. - /// - /// This is part of the input structure and related to device auth. - /// - /// Use of the ID and Token fields differs based on the Type. They should be null, unless specified: - /// - ID is the email address, and Token is the password. - /// - Token is the exchange code. - /// - If targeting console platforms, Token is the long lived refresh token. Otherwise N/A. - /// - N/A. - /// - ID is the host (e.g. localhost:6547), and Token is the credential name registered in the EOS Developer Authentication Tool. - /// - Token is the refresh token. - /// - SystemAuthCredentialsOptions may be required if targeting mobile platforms. Otherwise N/A. - /// - Token is the external auth token specified by ExternalType. - /// - /// - /// - /// - public class IOSCredentials : ISettable - { - /// - /// ID of the user logging in, based on - /// - public string Id { get; set; } - - /// - /// Credentials or token related to the user logging in - /// - public string Token { get; set; } - - /// - /// Type of login. Needed to identify the auth method to use - /// - public LoginCredentialType Type { get; set; } - - /// - /// This field is for system specific options, if any. - /// - /// If provided, the structure will be located in (System)/eos_(system).h. - /// The structure will be named EOS_(System)_Auth_CredentialsOptions. - /// - public IOSCredentialsSystemAuthCredentialsOptions SystemAuthCredentialsOptions { get; set; } - - /// - /// Type of external login. Needed to identify the external auth method to use. - /// Used when login type is set to , ignored for other methods. - /// - public ExternalCredentialType ExternalType { get; set; } - - internal void Set(IOSCredentialsInternal? other) - { - if (other != null) - { - Id = other.Value.Id; - Token = other.Value.Token; - Type = other.Value.Type; - SystemAuthCredentialsOptions = other.Value.SystemAuthCredentialsOptions; - ExternalType = other.Value.ExternalType; - } - } - - public void Set(object other) - { - Set(other as IOSCredentialsInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct IOSCredentialsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Id; - private System.IntPtr m_Token; - private LoginCredentialType m_Type; - private System.IntPtr m_SystemAuthCredentialsOptions; - private ExternalCredentialType m_ExternalType; - - public string Id - { - get - { - string value; - Helper.TryMarshalGet(m_Id, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Id, value); - } - } - - public string Token - { - get - { - string value; - Helper.TryMarshalGet(m_Token, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Token, value); - } - } - - public LoginCredentialType Type - { - get - { - return m_Type; - } - - set - { - m_Type = value; - } - } - - public IOSCredentialsSystemAuthCredentialsOptions SystemAuthCredentialsOptions - { - get - { - IOSCredentialsSystemAuthCredentialsOptions value; - Helper.TryMarshalGet(m_SystemAuthCredentialsOptions, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_SystemAuthCredentialsOptions, value); - } - } - - public ExternalCredentialType ExternalType - { - get - { - return m_ExternalType; - } - - set - { - m_ExternalType = value; - } - } - - public void Set(IOSCredentials other) - { - if (other != null) - { - m_ApiVersion = AuthInterface.CredentialsApiLatest; - Id = other.Id; - Token = other.Token; - Type = other.Type; - SystemAuthCredentialsOptions = other.SystemAuthCredentialsOptions; - ExternalType = other.ExternalType; - } - } - - public void Set(object other) - { - Set(other as IOSCredentials); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Id); - Helper.TryMarshalDispose(ref m_Token); - Helper.TryMarshalDispose(ref m_SystemAuthCredentialsOptions); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/IOS/Auth/IOSCredentials.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/IOS/Auth/IOSCredentials.cs.meta deleted file mode 100644 index 48effd4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/IOS/Auth/IOSCredentials.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: dad144cd8e084c14cada22c9476bf6e3 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/IOS/Auth/IOSCredentialsSystemAuthCredentialsOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/IOS/Auth/IOSCredentialsSystemAuthCredentialsOptions.cs deleted file mode 100644 index 6adec2e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/IOS/Auth/IOSCredentialsSystemAuthCredentialsOptions.cs +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - /// - /// Options for initializing login for IOS. - /// - public class IOSCredentialsSystemAuthCredentialsOptions : ISettable - { - /// - /// When calling - /// NSObject that implements the ASWebAuthenticationPresentationContextProviding protocol, - /// typically this is added to the applications UIViewController. - /// Required for iOS 13+ only, for earlier versions this value must be a nullptr. - /// using: (void*)CFBridgingRetain(presentationContextProviding) - /// EOSSDK will release this bridged object when the value is consumed for iOS 13+. - /// - public System.IntPtr PresentationContextProviding { get; set; } - - internal void Set(IOSCredentialsSystemAuthCredentialsOptionsInternal? other) - { - if (other != null) - { - PresentationContextProviding = other.Value.PresentationContextProviding; - } - } - - public void Set(object other) - { - Set(other as IOSCredentialsSystemAuthCredentialsOptionsInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct IOSCredentialsSystemAuthCredentialsOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_PresentationContextProviding; - - public System.IntPtr PresentationContextProviding - { - get - { - return m_PresentationContextProviding; - } - - set - { - m_PresentationContextProviding = value; - } - } - - public void Set(IOSCredentialsSystemAuthCredentialsOptions other) - { - if (other != null) - { - m_ApiVersion = AuthInterface.AuthIoscredentialssystemauthcredentialsoptionsApiLatest; - PresentationContextProviding = other.PresentationContextProviding; - } - } - - public void Set(object other) - { - Set(other as IOSCredentialsSystemAuthCredentialsOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_PresentationContextProviding); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/IOS/Auth/IOSCredentialsSystemAuthCredentialsOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/IOS/Auth/IOSCredentialsSystemAuthCredentialsOptions.cs.meta deleted file mode 100644 index c7889c2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/IOS/Auth/IOSCredentialsSystemAuthCredentialsOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c13756854fbcf4f468ffb3983a48a4a1 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/IOS/Auth/IOSLoginOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/IOS/Auth/IOSLoginOptions.cs deleted file mode 100644 index c1f32ca..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/IOS/Auth/IOSLoginOptions.cs +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Auth -{ - /// - /// Input parameters for the function. - /// - public class IOSLoginOptions - { - /// - /// Credentials specified for a given login method - /// - public IOSCredentials Credentials { get; set; } - - /// - /// Auth scope flags are permissions to request from the user while they are logging in. This is a bitwise-or union of flags defined above - /// - public AuthScopeFlags ScopeFlags { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct IOSLoginOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Credentials; - private AuthScopeFlags m_ScopeFlags; - - public IOSCredentials Credentials - { - set - { - Helper.TryMarshalSet(ref m_Credentials, value); - } - } - - public AuthScopeFlags ScopeFlags - { - set - { - m_ScopeFlags = value; - } - } - - public void Set(IOSLoginOptions other) - { - if (other != null) - { - m_ApiVersion = AuthInterface.LoginApiLatest; - Credentials = other.Credentials; - ScopeFlags = other.ScopeFlags; - } - } - - public void Set(object other) - { - Set(other as IOSLoginOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Credentials); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/IOS/Auth/IOSLoginOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/IOS/Auth/IOSLoginOptions.cs.meta deleted file mode 100644 index 99d2dc3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/IOS/Auth/IOSLoginOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 977aab44af152fd43a26e65a81194e50 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS.meta deleted file mode 100644 index 4fecb8f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: c2bdfde16650411409809e0eb396291c -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/AddNotifyPermissionsUpdateReceivedOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/AddNotifyPermissionsUpdateReceivedOptions.cs deleted file mode 100644 index 796d07b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/AddNotifyPermissionsUpdateReceivedOptions.cs +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.KWS -{ - public class AddNotifyPermissionsUpdateReceivedOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyPermissionsUpdateReceivedOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(AddNotifyPermissionsUpdateReceivedOptions other) - { - if (other != null) - { - m_ApiVersion = KWSInterface.AddnotifypermissionsupdatereceivedApiLatest; - } - } - - public void Set(object other) - { - Set(other as AddNotifyPermissionsUpdateReceivedOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/AddNotifyPermissionsUpdateReceivedOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/AddNotifyPermissionsUpdateReceivedOptions.cs.meta deleted file mode 100644 index 18f9271..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/AddNotifyPermissionsUpdateReceivedOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 6d9d5d28037eb8a4380ffa4106461a52 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/CopyPermissionByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/CopyPermissionByIndexOptions.cs deleted file mode 100644 index 9d214eb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/CopyPermissionByIndexOptions.cs +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.KWS -{ - /// - /// Input parameters for the function. - /// - public class CopyPermissionByIndexOptions - { - /// - /// The Product User ID of the local user whose permissions are being accessed - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The index of the permission to get. - /// - public uint Index { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyPermissionByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private uint m_Index; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public uint Index - { - set - { - m_Index = value; - } - } - - public void Set(CopyPermissionByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = KWSInterface.CopypermissionbyindexApiLatest; - LocalUserId = other.LocalUserId; - Index = other.Index; - } - } - - public void Set(object other) - { - Set(other as CopyPermissionByIndexOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/CopyPermissionByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/CopyPermissionByIndexOptions.cs.meta deleted file mode 100644 index 0555650..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/CopyPermissionByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b6a4c62ad85e56947ab88767ba78dd31 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/CreateUserCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/CreateUserCallbackInfo.cs deleted file mode 100644 index 813ec4f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/CreateUserCallbackInfo.cs +++ /dev/null @@ -1,124 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.KWS -{ - /// - /// Output parameters for the Function. These parameters are received through the callback provided to - /// - public class CreateUserCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// Local user that created a KWS entry - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// KWS UserId created - /// - public string KWSUserId { get; private set; } - - /// - /// Is this user a minor - /// - public bool IsMinor { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(CreateUserCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - KWSUserId = other.Value.KWSUserId; - IsMinor = other.Value.IsMinor; - } - } - - public void Set(object other) - { - Set(other as CreateUserCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CreateUserCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_KWSUserId; - private int m_IsMinor; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public string KWSUserId - { - get - { - string value; - Helper.TryMarshalGet(m_KWSUserId, out value); - return value; - } - } - - public bool IsMinor - { - get - { - bool value; - Helper.TryMarshalGet(m_IsMinor, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/CreateUserCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/CreateUserCallbackInfo.cs.meta deleted file mode 100644 index 2c12cd4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/CreateUserCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: df4f102a65f6e3849960685977544452 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/CreateUserOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/CreateUserOptions.cs deleted file mode 100644 index 43da858..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/CreateUserOptions.cs +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.KWS -{ - /// - /// Input parameters for the function. - /// - public class CreateUserOptions - { - /// - /// Local user creating a KWS entry - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// Date of birth in ISO8601 form (YYYY-MM-DD) - /// - public string DateOfBirth { get; set; } - - /// - /// Parent email - /// - public string ParentEmail { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CreateUserOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_DateOfBirth; - private System.IntPtr m_ParentEmail; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string DateOfBirth - { - set - { - Helper.TryMarshalSet(ref m_DateOfBirth, value); - } - } - - public string ParentEmail - { - set - { - Helper.TryMarshalSet(ref m_ParentEmail, value); - } - } - - public void Set(CreateUserOptions other) - { - if (other != null) - { - m_ApiVersion = KWSInterface.CreateuserApiLatest; - LocalUserId = other.LocalUserId; - DateOfBirth = other.DateOfBirth; - ParentEmail = other.ParentEmail; - } - } - - public void Set(object other) - { - Set(other as CreateUserOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_DateOfBirth); - Helper.TryMarshalDispose(ref m_ParentEmail); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/CreateUserOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/CreateUserOptions.cs.meta deleted file mode 100644 index 68f229d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/CreateUserOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a13f7900ad0d840449f8f981297c5929 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/GetPermissionByKeyOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/GetPermissionByKeyOptions.cs deleted file mode 100644 index 6bc0dd0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/GetPermissionByKeyOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.KWS -{ - /// - /// Input parameters for the function. - /// - public class GetPermissionByKeyOptions - { - /// - /// The Product User ID of the local user getting permissions - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// Permission name to query - /// - public string Key { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetPermissionByKeyOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_Key; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string Key - { - set - { - Helper.TryMarshalSet(ref m_Key, value); - } - } - - public void Set(GetPermissionByKeyOptions other) - { - if (other != null) - { - m_ApiVersion = KWSInterface.GetpermissionbykeyApiLatest; - LocalUserId = other.LocalUserId; - Key = other.Key; - } - } - - public void Set(object other) - { - Set(other as GetPermissionByKeyOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_Key); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/GetPermissionByKeyOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/GetPermissionByKeyOptions.cs.meta deleted file mode 100644 index 71912f9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/GetPermissionByKeyOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 01ceeff5ac9490f4099bd80f7ac3feb7 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/GetPermissionsCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/GetPermissionsCountOptions.cs deleted file mode 100644 index 0fc990d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/GetPermissionsCountOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.KWS -{ - /// - /// Input parameters for the function. - /// - public class GetPermissionsCountOptions - { - /// - /// The Product User ID of the local user whose permissions are being accessed - /// - public ProductUserId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetPermissionsCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(GetPermissionsCountOptions other) - { - if (other != null) - { - m_ApiVersion = KWSInterface.GetpermissionscountApiLatest; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as GetPermissionsCountOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/GetPermissionsCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/GetPermissionsCountOptions.cs.meta deleted file mode 100644 index 1f402a7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/GetPermissionsCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 72765ba93cd23ea4c8e386e792038b78 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/KWSInterface.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/KWSInterface.cs deleted file mode 100644 index 7045940..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/KWSInterface.cs +++ /dev/null @@ -1,408 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.KWS -{ - public sealed partial class KWSInterface : Handle - { - public KWSInterface() - { - } - - public KWSInterface(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// The most recent version of the API. - /// - public const int AddnotifypermissionsupdatereceivedApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int CopypermissionbyindexApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int CreateuserApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetpermissionbykeyApiLatest = 1; - - public const int GetpermissionscountApiLatest = 1; - - /// - /// Maximum size of the name for the permission - /// - public const int MaxPermissionLength = 32; - - /// - /// Maximum number of permissions that may be requested - /// - public const int MaxPermissions = 16; - - /// - /// The most recent version of the API. - /// - public const int PermissionstatusApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int QueryagegateApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int QuerypermissionsApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int RequestpermissionsApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int UpdateparentemailApiLatest = 1; - - /// - /// This interface is not available for general access at this time. - /// - /// Register to receive notifications about KWS permissions changes for any logged in local users - /// @note must call to remove the notification - /// - /// Structure containing information about the request. - /// Arbitrary data that is passed back to you in the CompletionDelegate. - /// A callback that is fired when a notification is received. - /// - /// handle representing the registered callback - /// - public ulong AddNotifyPermissionsUpdateReceived(AddNotifyPermissionsUpdateReceivedOptions options, object clientData, OnPermissionsUpdateReceivedCallback notificationFn) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var notificationFnInternal = new OnPermissionsUpdateReceivedCallbackInternal(OnPermissionsUpdateReceivedCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - - var funcResult = Bindings.EOS_KWS_AddNotifyPermissionsUpdateReceived(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// This interface is not available for general access at this time. - /// - /// Fetch a permission for a given by index for a given local user - /// - /// - /// - /// - /// - /// Structure containing the input parameters - /// the permission for the given index, if it exists and is valid, use when finished - /// - /// if the permission state is known for the given user and index - /// if the user is not found or the index is invalid - /// - public Result CopyPermissionByIndex(CopyPermissionByIndexOptions options, out PermissionStatus outPermission) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outPermissionAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_KWS_CopyPermissionByIndex(InnerHandle, optionsAddress, ref outPermissionAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outPermissionAddress, out outPermission)) - { - Bindings.EOS_KWS_PermissionStatus_Release(outPermissionAddress); - } - - return funcResult; - } - - /// - /// This interface is not available for general access at this time. - /// - /// Create an account with Kids Web Services and associate it with the local Product User ID - /// - /// options required for creating an account such as the local users Product User ID, their data of birth, and parental contact information - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// A callback that is fired when the operation completes, either successfully or in error - /// - /// if account creation completes successfully - /// if any of the options are incorrect - /// if the number of allowed requests is exceeded - /// - public void CreateUser(CreateUserOptions options, object clientData, OnCreateUserCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnCreateUserCallbackInternal(OnCreateUserCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_KWS_CreateUser(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// This interface is not available for general access at this time. - /// - /// Fetch the state of a given permission that are cached for a given local user. - /// - /// - /// - /// - /// Structure containing the input parameters - /// the permission for the given key, if it exists and is valid - /// - /// if the permission state is known for the given user and key - /// if the user or the permission is not found - /// - public Result GetPermissionByKey(GetPermissionByKeyOptions options, out KWSPermissionStatus outPermission) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - outPermission = Helper.GetDefault(); - - var funcResult = Bindings.EOS_KWS_GetPermissionByKey(InnerHandle, optionsAddress, ref outPermission); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// This interface is not available for general access at this time. - /// - /// Fetch the number of permissions found for a given local user - /// - /// Structure containing the input parameters - /// - /// the number of permissions associated with the given user - /// - public int GetPermissionsCount(GetPermissionsCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_KWS_GetPermissionsCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// This interface is not available for general access at this time. - /// - /// Query the client's country and age permissions for client side reasoning about the possible need enforce age based restrictions - /// - /// options required for interacting with the age gate system - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// A callback that is fired when the operation completes, either successfully or in error - /// - /// if the query completes successfully - /// if any of the options are incorrect - /// if the number of allowed queries is exceeded - /// - public void QueryAgeGate(QueryAgeGateOptions options, object clientData, OnQueryAgeGateCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnQueryAgeGateCallbackInternal(OnQueryAgeGateCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_KWS_QueryAgeGate(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// This interface is not available for general access at this time. - /// - /// Query the current state of permissions for a given local Product User ID - /// - /// options required for querying permissions such as the local users Product User ID - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// A callback that is fired when the operation completes, either successfully or in error - /// - /// if the account query completes successfully - /// if any of the options are incorrect - /// if the number of allowed requests is exceeded - /// - public void QueryPermissions(QueryPermissionsOptions options, object clientData, OnQueryPermissionsCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnQueryPermissionsCallbackInternal(OnQueryPermissionsCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_KWS_QueryPermissions(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// This interface is not available for general access at this time. - /// - /// Unregister from receiving notifications about KWS permissions related to logged in users - /// - /// Handle representing the registered callback - public void RemoveNotifyPermissionsUpdateReceived(ulong inId) - { - Helper.TryRemoveCallbackByNotificationId(inId); - - Bindings.EOS_KWS_RemoveNotifyPermissionsUpdateReceived(InnerHandle, inId); - } - - /// - /// This interface is not available for general access at this time. - /// - /// Request new permissions for a given local Product User ID - /// - /// options required for updating permissions such as the new list of permissions - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// A callback that is fired when the operation completes, either successfully or in error - /// - /// if contact information update completes successfully - /// if any of the options are incorrect - /// if the number of allowed requests is exceeded - /// if the account requesting permissions has no parent email associated with it - /// if the number of permissions exceeds , or if any permission name exceeds - /// - public void RequestPermissions(RequestPermissionsOptions options, object clientData, OnRequestPermissionsCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnRequestPermissionsCallbackInternal(OnRequestPermissionsCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_KWS_RequestPermissions(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// This interface is not available for general access at this time. - /// - /// Update the parent contact information for a given local Product User ID - /// - /// options required for updating the contact information such as the new email address - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// A callback that is fired when the operation completes, either successfully or in error - /// - /// if contact information update completes successfully - /// if any of the options are incorrect - /// if the number of allowed requests is exceeded - /// - public void UpdateParentEmail(UpdateParentEmailOptions options, object clientData, OnUpdateParentEmailCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnUpdateParentEmailCallbackInternal(OnUpdateParentEmailCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_KWS_UpdateParentEmail(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - [MonoPInvokeCallback(typeof(OnCreateUserCallbackInternal))] - internal static void OnCreateUserCallbackInternalImplementation(System.IntPtr data) - { - OnCreateUserCallback callback; - CreateUserCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnPermissionsUpdateReceivedCallbackInternal))] - internal static void OnPermissionsUpdateReceivedCallbackInternalImplementation(System.IntPtr data) - { - OnPermissionsUpdateReceivedCallback callback; - PermissionsUpdateReceivedCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnQueryAgeGateCallbackInternal))] - internal static void OnQueryAgeGateCallbackInternalImplementation(System.IntPtr data) - { - OnQueryAgeGateCallback callback; - QueryAgeGateCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnQueryPermissionsCallbackInternal))] - internal static void OnQueryPermissionsCallbackInternalImplementation(System.IntPtr data) - { - OnQueryPermissionsCallback callback; - QueryPermissionsCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnRequestPermissionsCallbackInternal))] - internal static void OnRequestPermissionsCallbackInternalImplementation(System.IntPtr data) - { - OnRequestPermissionsCallback callback; - RequestPermissionsCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnUpdateParentEmailCallbackInternal))] - internal static void OnUpdateParentEmailCallbackInternalImplementation(System.IntPtr data) - { - OnUpdateParentEmailCallback callback; - UpdateParentEmailCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/KWSInterface.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/KWSInterface.cs.meta deleted file mode 100644 index ac0f0f0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/KWSInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 12aa585d3ca1acb4e81b288635e51b0b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/KWSPermissionStatus.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/KWSPermissionStatus.cs deleted file mode 100644 index 521b365..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/KWSPermissionStatus.cs +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.KWS -{ - /// - /// An enumeration of the different permission statuses. - /// - public enum KWSPermissionStatus : int - { - /// - /// Permission has been granted - /// - Granted = 0, - /// - /// Permission has been rejected - /// - Rejected = 1, - /// - /// Permission is still pending approval - /// - Pending = 2 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/KWSPermissionStatus.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/KWSPermissionStatus.cs.meta deleted file mode 100644 index 8aedc24..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/KWSPermissionStatus.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d264c38b113661e49b09841569b5545e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnCreateUserCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnCreateUserCallback.cs deleted file mode 100644 index 86dac1b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnCreateUserCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.KWS -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnCreateUserCallback(CreateUserCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnCreateUserCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnCreateUserCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnCreateUserCallback.cs.meta deleted file mode 100644 index 9e97df0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnCreateUserCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d28bcb0bd88bff04097d15a94524a20c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnPermissionsUpdateReceivedCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnPermissionsUpdateReceivedCallback.cs deleted file mode 100644 index f0215eb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnPermissionsUpdateReceivedCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.KWS -{ - /// - /// Function prototype definition for notifications that comes from - /// - /// A containing the output information and result - public delegate void OnPermissionsUpdateReceivedCallback(PermissionsUpdateReceivedCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnPermissionsUpdateReceivedCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnPermissionsUpdateReceivedCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnPermissionsUpdateReceivedCallback.cs.meta deleted file mode 100644 index 9a3589c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnPermissionsUpdateReceivedCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: bb92cb7e5f193e748b3c72c806257ba5 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnQueryAgeGateCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnQueryAgeGateCallback.cs deleted file mode 100644 index bf8ccc9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnQueryAgeGateCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.KWS -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnQueryAgeGateCallback(QueryAgeGateCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnQueryAgeGateCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnQueryAgeGateCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnQueryAgeGateCallback.cs.meta deleted file mode 100644 index f3bc9ba..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnQueryAgeGateCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 7e56ff2d7825ba24a86d9c540956347c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnQueryPermissionsCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnQueryPermissionsCallback.cs deleted file mode 100644 index 9442a3a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnQueryPermissionsCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.KWS -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnQueryPermissionsCallback(QueryPermissionsCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnQueryPermissionsCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnQueryPermissionsCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnQueryPermissionsCallback.cs.meta deleted file mode 100644 index f66bfd4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnQueryPermissionsCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b9dd43e8bb2f16647be3a75e9b591b26 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnRequestPermissionsCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnRequestPermissionsCallback.cs deleted file mode 100644 index c179eca..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnRequestPermissionsCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.KWS -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnRequestPermissionsCallback(RequestPermissionsCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnRequestPermissionsCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnRequestPermissionsCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnRequestPermissionsCallback.cs.meta deleted file mode 100644 index 31b1109..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnRequestPermissionsCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: dbf5a3bf9dfbd6f4aad45b3e44e39078 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnUpdateParentEmailCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnUpdateParentEmailCallback.cs deleted file mode 100644 index 73da653..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnUpdateParentEmailCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.KWS -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnUpdateParentEmailCallback(UpdateParentEmailCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnUpdateParentEmailCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnUpdateParentEmailCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnUpdateParentEmailCallback.cs.meta deleted file mode 100644 index bf90b53..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/OnUpdateParentEmailCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d054ae5a4e99dd14b940fc545448f643 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/PermissionStatus.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/PermissionStatus.cs deleted file mode 100644 index 3f9c92f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/PermissionStatus.cs +++ /dev/null @@ -1,88 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.KWS -{ - public class PermissionStatus : ISettable - { - /// - /// Name of the permission - /// - public string Name { get; set; } - - /// - /// Status of the permission - /// - public KWSPermissionStatus Status { get; set; } - - internal void Set(PermissionStatusInternal? other) - { - if (other != null) - { - Name = other.Value.Name; - Status = other.Value.Status; - } - } - - public void Set(object other) - { - Set(other as PermissionStatusInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct PermissionStatusInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Name; - private KWSPermissionStatus m_Status; - - public string Name - { - get - { - string value; - Helper.TryMarshalGet(m_Name, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Name, value); - } - } - - public KWSPermissionStatus Status - { - get - { - return m_Status; - } - - set - { - m_Status = value; - } - } - - public void Set(PermissionStatus other) - { - if (other != null) - { - m_ApiVersion = KWSInterface.PermissionstatusApiLatest; - Name = other.Name; - Status = other.Status; - } - } - - public void Set(object other) - { - Set(other as PermissionStatus); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Name); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/PermissionStatus.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/PermissionStatus.cs.meta deleted file mode 100644 index 3c9ed84..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/PermissionStatus.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 61f05b9ccc180854a8db7690d45ba245 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/PermissionsUpdateReceivedCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/PermissionsUpdateReceivedCallbackInfo.cs deleted file mode 100644 index 83682a0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/PermissionsUpdateReceivedCallbackInfo.cs +++ /dev/null @@ -1,75 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.KWS -{ - /// - /// Output parameters for the Function. - /// - public class PermissionsUpdateReceivedCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// Recipient Local user id - /// - public ProductUserId LocalUserId { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(PermissionsUpdateReceivedCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as PermissionsUpdateReceivedCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct PermissionsUpdateReceivedCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/PermissionsUpdateReceivedCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/PermissionsUpdateReceivedCallbackInfo.cs.meta deleted file mode 100644 index d9b7e37..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/PermissionsUpdateReceivedCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b9c51247588c2b24eb07e3626c175593 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/QueryAgeGateCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/QueryAgeGateCallbackInfo.cs deleted file mode 100644 index 3683bce..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/QueryAgeGateCallbackInfo.cs +++ /dev/null @@ -1,105 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.KWS -{ - /// - /// Output parameters for the Function. These parameters are received through the callback provided to - /// - public class QueryAgeGateCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// Country code determined for this request based on the local client's ip address that the backend resolves - /// - public string CountryCode { get; private set; } - - /// - /// Age of consent in the given country - /// - public uint AgeOfConsent { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(QueryAgeGateCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - CountryCode = other.Value.CountryCode; - AgeOfConsent = other.Value.AgeOfConsent; - } - } - - public void Set(object other) - { - Set(other as QueryAgeGateCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryAgeGateCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_CountryCode; - private uint m_AgeOfConsent; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public string CountryCode - { - get - { - string value; - Helper.TryMarshalGet(m_CountryCode, out value); - return value; - } - } - - public uint AgeOfConsent - { - get - { - return m_AgeOfConsent; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/QueryAgeGateCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/QueryAgeGateCallbackInfo.cs.meta deleted file mode 100644 index 83adb61..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/QueryAgeGateCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 020258c5d325b1449a7dc0277f3a72ac -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/QueryAgeGateOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/QueryAgeGateOptions.cs deleted file mode 100644 index 7af7ddb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/QueryAgeGateOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.KWS -{ - /// - /// Input parameters for the function. - /// - public class QueryAgeGateOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryAgeGateOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(QueryAgeGateOptions other) - { - if (other != null) - { - m_ApiVersion = KWSInterface.QueryagegateApiLatest; - } - } - - public void Set(object other) - { - Set(other as QueryAgeGateOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/QueryAgeGateOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/QueryAgeGateOptions.cs.meta deleted file mode 100644 index 102a7bd..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/QueryAgeGateOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 28f69c227595abb4d9eba2329ab7dd1e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/QueryPermissionsCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/QueryPermissionsCallbackInfo.cs deleted file mode 100644 index e8b3bc2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/QueryPermissionsCallbackInfo.cs +++ /dev/null @@ -1,141 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.KWS -{ - /// - /// Output parameters for the Function. These parameters are received through the callback provided to - /// - public class QueryPermissionsCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// Local user querying their permisssions - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// KWS UserId created - /// - public string KWSUserId { get; private set; } - - /// - /// Date of birth in ISO8601 form (YYYY-MM-DD) - /// - public string DateOfBirth { get; private set; } - - /// - /// Is this user a minor - /// - public bool IsMinor { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(QueryPermissionsCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - KWSUserId = other.Value.KWSUserId; - DateOfBirth = other.Value.DateOfBirth; - IsMinor = other.Value.IsMinor; - } - } - - public void Set(object other) - { - Set(other as QueryPermissionsCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryPermissionsCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_KWSUserId; - private System.IntPtr m_DateOfBirth; - private int m_IsMinor; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public string KWSUserId - { - get - { - string value; - Helper.TryMarshalGet(m_KWSUserId, out value); - return value; - } - } - - public string DateOfBirth - { - get - { - string value; - Helper.TryMarshalGet(m_DateOfBirth, out value); - return value; - } - } - - public bool IsMinor - { - get - { - bool value; - Helper.TryMarshalGet(m_IsMinor, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/QueryPermissionsCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/QueryPermissionsCallbackInfo.cs.meta deleted file mode 100644 index 8343a54..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/QueryPermissionsCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a73ae0dd9b32dbb44a246d5e4756c457 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/QueryPermissionsOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/QueryPermissionsOptions.cs deleted file mode 100644 index 7bd17c8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/QueryPermissionsOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.KWS -{ - /// - /// Input parameters for the function. - /// - public class QueryPermissionsOptions - { - /// - /// Local user querying their permisssions - /// - public ProductUserId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryPermissionsOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(QueryPermissionsOptions other) - { - if (other != null) - { - m_ApiVersion = KWSInterface.QuerypermissionsApiLatest; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as QueryPermissionsOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/QueryPermissionsOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/QueryPermissionsOptions.cs.meta deleted file mode 100644 index b3fbdc5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/QueryPermissionsOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e716b8c9feeac084381651d1d850c8d9 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/RequestPermissionsCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/RequestPermissionsCallbackInfo.cs deleted file mode 100644 index 9bd4a45..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/RequestPermissionsCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.KWS -{ - /// - /// Output parameters for the Function. These parameters are received through the callback provided to - /// - public class RequestPermissionsCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// Local user requesting new permisssions - /// - public ProductUserId LocalUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(RequestPermissionsCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as RequestPermissionsCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct RequestPermissionsCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/RequestPermissionsCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/RequestPermissionsCallbackInfo.cs.meta deleted file mode 100644 index d69b6ae..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/RequestPermissionsCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 8a6ca4dda3b10eb4da52a096bb7d953c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/RequestPermissionsOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/RequestPermissionsOptions.cs deleted file mode 100644 index e4cf908..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/RequestPermissionsOptions.cs +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.KWS -{ - /// - /// Input parameters for the function. - /// - public class RequestPermissionsOptions - { - /// - /// Local user requesting new permisssions - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// Names of the permissions to request (Setup with KWS) - /// - public string[] PermissionKeys { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct RequestPermissionsOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private uint m_PermissionKeyCount; - private System.IntPtr m_PermissionKeys; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string[] PermissionKeys - { - set - { - Helper.TryMarshalSet(ref m_PermissionKeys, value, out m_PermissionKeyCount, true); - } - } - - public void Set(RequestPermissionsOptions other) - { - if (other != null) - { - m_ApiVersion = KWSInterface.RequestpermissionsApiLatest; - LocalUserId = other.LocalUserId; - PermissionKeys = other.PermissionKeys; - } - } - - public void Set(object other) - { - Set(other as RequestPermissionsOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_PermissionKeys); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/RequestPermissionsOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/RequestPermissionsOptions.cs.meta deleted file mode 100644 index b7840e5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/RequestPermissionsOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 19ecc27202536d246a56bd9821a2edc0 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/UpdateParentEmailCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/UpdateParentEmailCallbackInfo.cs deleted file mode 100644 index d04f8c7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/UpdateParentEmailCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.KWS -{ - /// - /// Output parameters for the Function. These parameters are received through the callback provided to - /// - public class UpdateParentEmailCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// Local user updating their parental email - /// - public ProductUserId LocalUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(UpdateParentEmailCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as UpdateParentEmailCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct UpdateParentEmailCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/UpdateParentEmailCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/UpdateParentEmailCallbackInfo.cs.meta deleted file mode 100644 index 7aca0a7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/UpdateParentEmailCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ed870fbc6f328614d82ddadb80dffa32 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/UpdateParentEmailOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/UpdateParentEmailOptions.cs deleted file mode 100644 index f2c9e80..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/UpdateParentEmailOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.KWS -{ - /// - /// Input parameters for the function. - /// - public class UpdateParentEmailOptions - { - /// - /// Local user updating parental information - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// New parent email - /// - public string ParentEmail { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct UpdateParentEmailOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_ParentEmail; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string ParentEmail - { - set - { - Helper.TryMarshalSet(ref m_ParentEmail, value); - } - } - - public void Set(UpdateParentEmailOptions other) - { - if (other != null) - { - m_ApiVersion = KWSInterface.UpdateparentemailApiLatest; - LocalUserId = other.LocalUserId; - ParentEmail = other.ParentEmail; - } - } - - public void Set(object other) - { - Set(other as UpdateParentEmailOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_ParentEmail); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/UpdateParentEmailOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/UpdateParentEmailOptions.cs.meta deleted file mode 100644 index b466925..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/KWS/UpdateParentEmailOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 82f12ec2a0b998746b472da4c7be695a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards.meta deleted file mode 100644 index 5ccbe18..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 2590407af2364e24c926ef01e58095fe -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardDefinitionByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardDefinitionByIndexOptions.cs deleted file mode 100644 index 6a1fcb8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardDefinitionByIndexOptions.cs +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Leaderboards -{ - /// - /// Input parameters for the function. - /// - public class CopyLeaderboardDefinitionByIndexOptions - { - /// - /// Index of the leaderboard definition to retrieve from the cache - /// - public uint LeaderboardIndex { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyLeaderboardDefinitionByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_LeaderboardIndex; - - public uint LeaderboardIndex - { - set - { - m_LeaderboardIndex = value; - } - } - - public void Set(CopyLeaderboardDefinitionByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = LeaderboardsInterface.CopyleaderboarddefinitionbyindexApiLatest; - LeaderboardIndex = other.LeaderboardIndex; - } - } - - public void Set(object other) - { - Set(other as CopyLeaderboardDefinitionByIndexOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardDefinitionByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardDefinitionByIndexOptions.cs.meta deleted file mode 100644 index e88d206..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardDefinitionByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b0f2c0d4fcc53db4b83aca3b904e4700 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardDefinitionByLeaderboardIdOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardDefinitionByLeaderboardIdOptions.cs deleted file mode 100644 index e62557c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardDefinitionByLeaderboardIdOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Leaderboards -{ - /// - /// Input parameters for the function. - /// - public class CopyLeaderboardDefinitionByLeaderboardIdOptions - { - /// - /// The ID of the leaderboard whose definition you want to copy from the cache - /// - public string LeaderboardId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyLeaderboardDefinitionByLeaderboardIdOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LeaderboardId; - - public string LeaderboardId - { - set - { - Helper.TryMarshalSet(ref m_LeaderboardId, value); - } - } - - public void Set(CopyLeaderboardDefinitionByLeaderboardIdOptions other) - { - if (other != null) - { - m_ApiVersion = LeaderboardsInterface.CopyleaderboarddefinitionbyleaderboardidApiLatest; - LeaderboardId = other.LeaderboardId; - } - } - - public void Set(object other) - { - Set(other as CopyLeaderboardDefinitionByLeaderboardIdOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LeaderboardId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardDefinitionByLeaderboardIdOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardDefinitionByLeaderboardIdOptions.cs.meta deleted file mode 100644 index 579fc93..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardDefinitionByLeaderboardIdOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9b02d82a7f85eb34eb19d0b6a557dfb5 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardRecordByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardRecordByIndexOptions.cs deleted file mode 100644 index 6035fd4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardRecordByIndexOptions.cs +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Leaderboards -{ - /// - /// Input parameters for the function. - /// - public class CopyLeaderboardRecordByIndexOptions - { - /// - /// Index of the leaderboard record to retrieve from the cache - /// - public uint LeaderboardRecordIndex { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyLeaderboardRecordByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_LeaderboardRecordIndex; - - public uint LeaderboardRecordIndex - { - set - { - m_LeaderboardRecordIndex = value; - } - } - - public void Set(CopyLeaderboardRecordByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = LeaderboardsInterface.CopyleaderboardrecordbyindexApiLatest; - LeaderboardRecordIndex = other.LeaderboardRecordIndex; - } - } - - public void Set(object other) - { - Set(other as CopyLeaderboardRecordByIndexOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardRecordByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardRecordByIndexOptions.cs.meta deleted file mode 100644 index 2479ae9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardRecordByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d1ab398c8570bfb46bf9296e9e57fa4b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardRecordByUserIdOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardRecordByUserIdOptions.cs deleted file mode 100644 index 855ee3e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardRecordByUserIdOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Leaderboards -{ - /// - /// Input parameters for the function. - /// - public class CopyLeaderboardRecordByUserIdOptions - { - /// - /// Leaderboard data will be copied from the cache if it relates to the user matching this Product User ID - /// - public ProductUserId UserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyLeaderboardRecordByUserIdOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_UserId; - - public ProductUserId UserId - { - set - { - Helper.TryMarshalSet(ref m_UserId, value); - } - } - - public void Set(CopyLeaderboardRecordByUserIdOptions other) - { - if (other != null) - { - m_ApiVersion = LeaderboardsInterface.CopyleaderboardrecordbyuseridApiLatest; - UserId = other.UserId; - } - } - - public void Set(object other) - { - Set(other as CopyLeaderboardRecordByUserIdOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_UserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardRecordByUserIdOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardRecordByUserIdOptions.cs.meta deleted file mode 100644 index 50ca511..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardRecordByUserIdOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3b8157c7f92ecb84cbc6a4729aea431c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardUserScoreByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardUserScoreByIndexOptions.cs deleted file mode 100644 index 4c8219f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardUserScoreByIndexOptions.cs +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Leaderboards -{ - /// - /// Input parameters for the function. - /// - public class CopyLeaderboardUserScoreByIndexOptions - { - /// - /// Index of the sorted leaderboard user score to retrieve from the cache. - /// - public uint LeaderboardUserScoreIndex { get; set; } - - /// - /// Name of the stat used to rank the leaderboard. - /// - public string StatName { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyLeaderboardUserScoreByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_LeaderboardUserScoreIndex; - private System.IntPtr m_StatName; - - public uint LeaderboardUserScoreIndex - { - set - { - m_LeaderboardUserScoreIndex = value; - } - } - - public string StatName - { - set - { - Helper.TryMarshalSet(ref m_StatName, value); - } - } - - public void Set(CopyLeaderboardUserScoreByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = LeaderboardsInterface.CopyleaderboarduserscorebyindexApiLatest; - LeaderboardUserScoreIndex = other.LeaderboardUserScoreIndex; - StatName = other.StatName; - } - } - - public void Set(object other) - { - Set(other as CopyLeaderboardUserScoreByIndexOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_StatName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardUserScoreByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardUserScoreByIndexOptions.cs.meta deleted file mode 100644 index 60be1de..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardUserScoreByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 08e7fb423b75cef4ab625a8987e92f8d -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardUserScoreByUserIdOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardUserScoreByUserIdOptions.cs deleted file mode 100644 index 8029f6a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardUserScoreByUserIdOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Leaderboards -{ - /// - /// Input parameters for the function. - /// - public class CopyLeaderboardUserScoreByUserIdOptions - { - /// - /// The Product User ID to look for when copying leaderboard score data from the cache - /// - public ProductUserId UserId { get; set; } - - /// - /// The name of the stat that is used to rank this leaderboard - /// - public string StatName { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyLeaderboardUserScoreByUserIdOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_UserId; - private System.IntPtr m_StatName; - - public ProductUserId UserId - { - set - { - Helper.TryMarshalSet(ref m_UserId, value); - } - } - - public string StatName - { - set - { - Helper.TryMarshalSet(ref m_StatName, value); - } - } - - public void Set(CopyLeaderboardUserScoreByUserIdOptions other) - { - if (other != null) - { - m_ApiVersion = LeaderboardsInterface.CopyleaderboarduserscorebyuseridApiLatest; - UserId = other.UserId; - StatName = other.StatName; - } - } - - public void Set(object other) - { - Set(other as CopyLeaderboardUserScoreByUserIdOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_UserId); - Helper.TryMarshalDispose(ref m_StatName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardUserScoreByUserIdOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardUserScoreByUserIdOptions.cs.meta deleted file mode 100644 index b2f0b01..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/CopyLeaderboardUserScoreByUserIdOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 16c1d8ee7e069d44fbfd96b8a6c118d1 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/Definition.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/Definition.cs deleted file mode 100644 index 400584c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/Definition.cs +++ /dev/null @@ -1,161 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Leaderboards -{ - /// - /// Contains information about a single leaderboard definition - /// - public class Definition : ISettable - { - /// - /// Unique ID to identify leaderboard. - /// - public string LeaderboardId { get; set; } - - /// - /// Name of stat used to rank leaderboard. - /// - public string StatName { get; set; } - - /// - /// Aggregation used to sort leaderboard. - /// - public LeaderboardAggregation Aggregation { get; set; } - - /// - /// The POSIX timestamp for the start time, or . - /// - public System.DateTimeOffset? StartTime { get; set; } - - /// - /// The POSIX timestamp for the end time, or . - /// - public System.DateTimeOffset? EndTime { get; set; } - - internal void Set(DefinitionInternal? other) - { - if (other != null) - { - LeaderboardId = other.Value.LeaderboardId; - StatName = other.Value.StatName; - Aggregation = other.Value.Aggregation; - StartTime = other.Value.StartTime; - EndTime = other.Value.EndTime; - } - } - - public void Set(object other) - { - Set(other as DefinitionInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct DefinitionInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LeaderboardId; - private System.IntPtr m_StatName; - private LeaderboardAggregation m_Aggregation; - private long m_StartTime; - private long m_EndTime; - - public string LeaderboardId - { - get - { - string value; - Helper.TryMarshalGet(m_LeaderboardId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_LeaderboardId, value); - } - } - - public string StatName - { - get - { - string value; - Helper.TryMarshalGet(m_StatName, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_StatName, value); - } - } - - public LeaderboardAggregation Aggregation - { - get - { - return m_Aggregation; - } - - set - { - m_Aggregation = value; - } - } - - public System.DateTimeOffset? StartTime - { - get - { - System.DateTimeOffset? value; - Helper.TryMarshalGet(m_StartTime, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_StartTime, value); - } - } - - public System.DateTimeOffset? EndTime - { - get - { - System.DateTimeOffset? value; - Helper.TryMarshalGet(m_EndTime, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_EndTime, value); - } - } - - public void Set(Definition other) - { - if (other != null) - { - m_ApiVersion = LeaderboardsInterface.DefinitionApiLatest; - LeaderboardId = other.LeaderboardId; - StatName = other.StatName; - Aggregation = other.Aggregation; - StartTime = other.StartTime; - EndTime = other.EndTime; - } - } - - public void Set(object other) - { - Set(other as Definition); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LeaderboardId); - Helper.TryMarshalDispose(ref m_StatName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/Definition.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/Definition.cs.meta deleted file mode 100644 index 34a4f24..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/Definition.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e52b26c0ef6f8d64ea1e1a8e7ce7ac29 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/GetLeaderboardDefinitionCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/GetLeaderboardDefinitionCountOptions.cs deleted file mode 100644 index 3e3eb9d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/GetLeaderboardDefinitionCountOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Leaderboards -{ - /// - /// Input parameters for the function. - /// - public class GetLeaderboardDefinitionCountOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetLeaderboardDefinitionCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(GetLeaderboardDefinitionCountOptions other) - { - if (other != null) - { - m_ApiVersion = LeaderboardsInterface.GetleaderboarddefinitioncountApiLatest; - } - } - - public void Set(object other) - { - Set(other as GetLeaderboardDefinitionCountOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/GetLeaderboardDefinitionCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/GetLeaderboardDefinitionCountOptions.cs.meta deleted file mode 100644 index f7a3687..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/GetLeaderboardDefinitionCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e582a3f5179269a4a8dabf2dd1753576 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/GetLeaderboardRecordCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/GetLeaderboardRecordCountOptions.cs deleted file mode 100644 index 5796a68..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/GetLeaderboardRecordCountOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Leaderboards -{ - /// - /// Input parameters for the function. - /// - public class GetLeaderboardRecordCountOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetLeaderboardRecordCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(GetLeaderboardRecordCountOptions other) - { - if (other != null) - { - m_ApiVersion = LeaderboardsInterface.GetleaderboardrecordcountApiLatest; - } - } - - public void Set(object other) - { - Set(other as GetLeaderboardRecordCountOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/GetLeaderboardRecordCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/GetLeaderboardRecordCountOptions.cs.meta deleted file mode 100644 index eb9469a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/GetLeaderboardRecordCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 02270b9822729b144bcf68634cc5cb37 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/GetLeaderboardUserScoreCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/GetLeaderboardUserScoreCountOptions.cs deleted file mode 100644 index 475a0ee..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/GetLeaderboardUserScoreCountOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Leaderboards -{ - /// - /// Input parameters for the function. - /// - public class GetLeaderboardUserScoreCountOptions - { - /// - /// Name of stat used to rank leaderboard. - /// - public string StatName { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetLeaderboardUserScoreCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_StatName; - - public string StatName - { - set - { - Helper.TryMarshalSet(ref m_StatName, value); - } - } - - public void Set(GetLeaderboardUserScoreCountOptions other) - { - if (other != null) - { - m_ApiVersion = LeaderboardsInterface.GetleaderboarduserscorecountApiLatest; - StatName = other.StatName; - } - } - - public void Set(object other) - { - Set(other as GetLeaderboardUserScoreCountOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_StatName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/GetLeaderboardUserScoreCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/GetLeaderboardUserScoreCountOptions.cs.meta deleted file mode 100644 index 8504852..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/GetLeaderboardUserScoreCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: cec09345cbdb8b843a2bd6df5ce31d88 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/LeaderboardAggregation.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/LeaderboardAggregation.cs deleted file mode 100644 index e4857c6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/LeaderboardAggregation.cs +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Leaderboards -{ - /// - /// An enumeration of the different leaderboard aggregation types. - /// - public enum LeaderboardAggregation : int - { - /// - /// Minimum - /// - Min = 0, - /// - /// Maximum - /// - Max = 1, - /// - /// Sum - /// - Sum = 2, - /// - /// Latest - /// - Latest = 3 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/LeaderboardAggregation.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/LeaderboardAggregation.cs.meta deleted file mode 100644 index 1324308..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/LeaderboardAggregation.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: dc4291a3978fe0d40aa8db798dfa39e1 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/LeaderboardRecord.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/LeaderboardRecord.cs deleted file mode 100644 index fee3374..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/LeaderboardRecord.cs +++ /dev/null @@ -1,136 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Leaderboards -{ - /// - /// Contains information about a single leaderboard record - /// - public class LeaderboardRecord : ISettable - { - /// - /// The Product User ID assoicated with this record - /// - public ProductUserId UserId { get; set; } - - /// - /// Sorted position on leaderboard - /// - public uint Rank { get; set; } - - /// - /// Leaderboard score - /// - public int Score { get; set; } - - /// - /// The latest display name seen for the user since they last time logged in. This is empty if the user does not have a display name set. - /// - public string UserDisplayName { get; set; } - - internal void Set(LeaderboardRecordInternal? other) - { - if (other != null) - { - UserId = other.Value.UserId; - Rank = other.Value.Rank; - Score = other.Value.Score; - UserDisplayName = other.Value.UserDisplayName; - } - } - - public void Set(object other) - { - Set(other as LeaderboardRecordInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LeaderboardRecordInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_UserId; - private uint m_Rank; - private int m_Score; - private System.IntPtr m_UserDisplayName; - - public ProductUserId UserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_UserId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_UserId, value); - } - } - - public uint Rank - { - get - { - return m_Rank; - } - - set - { - m_Rank = value; - } - } - - public int Score - { - get - { - return m_Score; - } - - set - { - m_Score = value; - } - } - - public string UserDisplayName - { - get - { - string value; - Helper.TryMarshalGet(m_UserDisplayName, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_UserDisplayName, value); - } - } - - public void Set(LeaderboardRecord other) - { - if (other != null) - { - m_ApiVersion = LeaderboardsInterface.LeaderboardrecordApiLatest; - UserId = other.UserId; - Rank = other.Rank; - Score = other.Score; - UserDisplayName = other.UserDisplayName; - } - } - - public void Set(object other) - { - Set(other as LeaderboardRecord); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_UserId); - Helper.TryMarshalDispose(ref m_UserDisplayName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/LeaderboardRecord.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/LeaderboardRecord.cs.meta deleted file mode 100644 index 315f70a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/LeaderboardRecord.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 33f1bc10f6a94e84e859ff03f0e9166c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/LeaderboardUserScore.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/LeaderboardUserScore.cs deleted file mode 100644 index 87c5ecd..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/LeaderboardUserScore.cs +++ /dev/null @@ -1,91 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Leaderboards -{ - /// - /// Contains information about a single leaderboard user score - /// - public class LeaderboardUserScore : ISettable - { - /// - /// The Product User ID of the user who got this score - /// - public ProductUserId UserId { get; set; } - - /// - /// Leaderboard score - /// - public int Score { get; set; } - - internal void Set(LeaderboardUserScoreInternal? other) - { - if (other != null) - { - UserId = other.Value.UserId; - Score = other.Value.Score; - } - } - - public void Set(object other) - { - Set(other as LeaderboardUserScoreInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LeaderboardUserScoreInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_UserId; - private int m_Score; - - public ProductUserId UserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_UserId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_UserId, value); - } - } - - public int Score - { - get - { - return m_Score; - } - - set - { - m_Score = value; - } - } - - public void Set(LeaderboardUserScore other) - { - if (other != null) - { - m_ApiVersion = LeaderboardsInterface.LeaderboarduserscoreApiLatest; - UserId = other.UserId; - Score = other.Score; - } - } - - public void Set(object other) - { - Set(other as LeaderboardUserScore); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_UserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/LeaderboardUserScore.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/LeaderboardUserScore.cs.meta deleted file mode 100644 index 1dc4a1b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/LeaderboardUserScore.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3effc0fc9e797724ca31294df589be0b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/LeaderboardsInterface.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/LeaderboardsInterface.cs deleted file mode 100644 index b1fbd72..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/LeaderboardsInterface.cs +++ /dev/null @@ -1,452 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Leaderboards -{ - public sealed partial class LeaderboardsInterface : Handle - { - public LeaderboardsInterface() - { - } - - public LeaderboardsInterface(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// The most recent version of the struct. - /// - public const int CopyleaderboarddefinitionbyindexApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int CopyleaderboarddefinitionbyleaderboardidApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int CopyleaderboardrecordbyindexApiLatest = 2; - - /// - /// The most recent version of the struct. - /// - public const int CopyleaderboardrecordbyuseridApiLatest = 2; - - /// - /// The most recent version of the struct. - /// - public const int CopyleaderboarduserscorebyindexApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int CopyleaderboarduserscorebyuseridApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int DefinitionApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetleaderboarddefinitioncountApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetleaderboardrecordcountApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetleaderboarduserscorecountApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int LeaderboardrecordApiLatest = 2; - - /// - /// The most recent version of the struct. - /// - public const int LeaderboarduserscoreApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int QueryleaderboarddefinitionsApiLatest = 2; - - /// - /// The most recent version of the struct. - /// - public const int QueryleaderboardranksApiLatest = 2; - - /// - /// The most recent version of the struct. - /// - public const int QueryleaderboarduserscoresApiLatest = 2; - - /// - /// Timestamp value representing an undefined time for . - /// - public const int TimeUndefined = -1; - - /// - /// The most recent version of the struct. - /// - public const int UserscoresquerystatinfoApiLatest = 1; - - /// - /// Fetches a leaderboard definition from the cache using an index. - /// - /// - /// Structure containing the index being accessed. - /// The leaderboard data for the given index, if it exists and is valid, use when finished. - /// - /// if the information is available and passed out in OutLeaderboardDefinition - /// if you pass a null pointer for the out parameter - /// if the leaderboard is not found - /// - public Result CopyLeaderboardDefinitionByIndex(CopyLeaderboardDefinitionByIndexOptions options, out Definition outLeaderboardDefinition) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outLeaderboardDefinitionAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Leaderboards_CopyLeaderboardDefinitionByIndex(InnerHandle, optionsAddress, ref outLeaderboardDefinitionAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outLeaderboardDefinitionAddress, out outLeaderboardDefinition)) - { - Bindings.EOS_Leaderboards_Definition_Release(outLeaderboardDefinitionAddress); - } - - return funcResult; - } - - /// - /// Fetches a leaderboard definition from the cache using a leaderboard ID. - /// - /// - /// Structure containing the leaderboard ID being accessed. - /// The leaderboard definition for the given leaderboard ID, if it exists and is valid, use when finished. - /// - /// if the information is available and passed out in OutLeaderboardDefinition - /// if you pass a null pointer for the out parameter - /// if the leaderboard data is not found - /// - public Result CopyLeaderboardDefinitionByLeaderboardId(CopyLeaderboardDefinitionByLeaderboardIdOptions options, out Definition outLeaderboardDefinition) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outLeaderboardDefinitionAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Leaderboards_CopyLeaderboardDefinitionByLeaderboardId(InnerHandle, optionsAddress, ref outLeaderboardDefinitionAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outLeaderboardDefinitionAddress, out outLeaderboardDefinition)) - { - Bindings.EOS_Leaderboards_Definition_Release(outLeaderboardDefinitionAddress); - } - - return funcResult; - } - - /// - /// Fetches a leaderboard record from a given index. - /// - /// - /// Structure containing the index being accessed. - /// The leaderboard record for the given index, if it exists and is valid, use when finished. - /// - /// if the leaderboard record is available and passed out in OutLeaderboardRecord - /// if you pass a null pointer for the out parameter - /// if the leaderboard is not found - /// - public Result CopyLeaderboardRecordByIndex(CopyLeaderboardRecordByIndexOptions options, out LeaderboardRecord outLeaderboardRecord) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outLeaderboardRecordAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Leaderboards_CopyLeaderboardRecordByIndex(InnerHandle, optionsAddress, ref outLeaderboardRecordAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outLeaderboardRecordAddress, out outLeaderboardRecord)) - { - Bindings.EOS_Leaderboards_LeaderboardRecord_Release(outLeaderboardRecordAddress); - } - - return funcResult; - } - - /// - /// Fetches a leaderboard record from a given user ID. - /// - /// - /// Structure containing the user ID being accessed. - /// The leaderboard record for the given user ID, if it exists and is valid, use when finished. - /// - /// if the leaderboard record is available and passed out in OutLeaderboardRecord - /// if you pass a null pointer for the out parameter - /// if the leaderboard data is not found - /// - public Result CopyLeaderboardRecordByUserId(CopyLeaderboardRecordByUserIdOptions options, out LeaderboardRecord outLeaderboardRecord) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outLeaderboardRecordAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Leaderboards_CopyLeaderboardRecordByUserId(InnerHandle, optionsAddress, ref outLeaderboardRecordAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outLeaderboardRecordAddress, out outLeaderboardRecord)) - { - Bindings.EOS_Leaderboards_LeaderboardRecord_Release(outLeaderboardRecordAddress); - } - - return funcResult; - } - - /// - /// Fetches leaderboard user score from a given index. - /// - /// - /// Structure containing the index being accessed. - /// The leaderboard user score for the given index, if it exists and is valid, use when finished. - /// - /// if the leaderboard scores are available and passed out in OutLeaderboardUserScore - /// if you pass a null pointer for the out parameter - /// if the leaderboard user scores are not found - /// - public Result CopyLeaderboardUserScoreByIndex(CopyLeaderboardUserScoreByIndexOptions options, out LeaderboardUserScore outLeaderboardUserScore) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outLeaderboardUserScoreAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Leaderboards_CopyLeaderboardUserScoreByIndex(InnerHandle, optionsAddress, ref outLeaderboardUserScoreAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outLeaderboardUserScoreAddress, out outLeaderboardUserScore)) - { - Bindings.EOS_Leaderboards_LeaderboardUserScore_Release(outLeaderboardUserScoreAddress); - } - - return funcResult; - } - - /// - /// Fetches leaderboard user score from a given user ID. - /// - /// - /// Structure containing the user ID being accessed. - /// The leaderboard user score for the given user ID, if it exists and is valid, use when finished. - /// - /// if the leaderboard scores are available and passed out in OutLeaderboardUserScore - /// if you pass a null pointer for the out parameter - /// if the leaderboard user scores are not found - /// - public Result CopyLeaderboardUserScoreByUserId(CopyLeaderboardUserScoreByUserIdOptions options, out LeaderboardUserScore outLeaderboardUserScore) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outLeaderboardUserScoreAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Leaderboards_CopyLeaderboardUserScoreByUserId(InnerHandle, optionsAddress, ref outLeaderboardUserScoreAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outLeaderboardUserScoreAddress, out outLeaderboardUserScore)) - { - Bindings.EOS_Leaderboards_LeaderboardUserScore_Release(outLeaderboardUserScoreAddress); - } - - return funcResult; - } - - /// - /// Fetch the number of leaderboards definitions that are cached locally. - /// - /// - /// - /// The Options associated with retrieving the leaderboard count. - /// - /// Number of leaderboards or 0 if there is an error - /// - public uint GetLeaderboardDefinitionCount(GetLeaderboardDefinitionCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Leaderboards_GetLeaderboardDefinitionCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Fetch the number of leaderboard records that are cached locally. - /// - /// - /// - /// The Options associated with retrieving the leaderboard record count. - /// - /// Number of leaderboard records or 0 if there is an error - /// - public uint GetLeaderboardRecordCount(GetLeaderboardRecordCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Leaderboards_GetLeaderboardRecordCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Fetch the number of leaderboard user scores that are cached locally. - /// - /// - /// - /// The Options associated with retrieving the leaderboard user scores count. - /// - /// Number of leaderboard records or 0 if there is an error - /// - public uint GetLeaderboardUserScoreCount(GetLeaderboardUserScoreCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Leaderboards_GetLeaderboardUserScoreCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Query for a list of existing leaderboards definitions including their attributes. - /// - /// Structure containing information about the application whose leaderboard definitions we're retrieving. - /// Arbitrary data that is passed back to you in the CompletionDelegate. - /// This function is called when the query operation completes. - /// - /// if the operation completes successfully - /// if any of the options are incorrect - /// - public void QueryLeaderboardDefinitions(QueryLeaderboardDefinitionsOptions options, object clientData, OnQueryLeaderboardDefinitionsCompleteCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnQueryLeaderboardDefinitionsCompleteCallbackInternal(OnQueryLeaderboardDefinitionsCompleteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Leaderboards_QueryLeaderboardDefinitions(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Retrieves top leaderboard records by rank in the leaderboard matching the given leaderboard ID. - /// - /// Structure containing information about the leaderboard records we're retrieving. - /// Arbitrary data that is passed back to you in the CompletionDelegate. - /// This function is called when the query operation completes. - /// - /// if the operation completes successfully - /// if any of the options are incorrect - /// - public void QueryLeaderboardRanks(QueryLeaderboardRanksOptions options, object clientData, OnQueryLeaderboardRanksCompleteCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnQueryLeaderboardRanksCompleteCallbackInternal(OnQueryLeaderboardRanksCompleteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Leaderboards_QueryLeaderboardRanks(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Query for a list of scores for a given list of users. - /// - /// Structure containing information about the users whose scores we're retrieving. - /// Arbitrary data that is passed back to you in the CompletionDelegate. - /// This function is called when the query operation completes. - /// - /// if the operation completes successfully - /// if any of the options are incorrect - /// - public void QueryLeaderboardUserScores(QueryLeaderboardUserScoresOptions options, object clientData, OnQueryLeaderboardUserScoresCompleteCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnQueryLeaderboardUserScoresCompleteCallbackInternal(OnQueryLeaderboardUserScoresCompleteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Leaderboards_QueryLeaderboardUserScores(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - [MonoPInvokeCallback(typeof(OnQueryLeaderboardDefinitionsCompleteCallbackInternal))] - internal static void OnQueryLeaderboardDefinitionsCompleteCallbackInternalImplementation(System.IntPtr data) - { - OnQueryLeaderboardDefinitionsCompleteCallback callback; - OnQueryLeaderboardDefinitionsCompleteCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnQueryLeaderboardRanksCompleteCallbackInternal))] - internal static void OnQueryLeaderboardRanksCompleteCallbackInternalImplementation(System.IntPtr data) - { - OnQueryLeaderboardRanksCompleteCallback callback; - OnQueryLeaderboardRanksCompleteCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnQueryLeaderboardUserScoresCompleteCallbackInternal))] - internal static void OnQueryLeaderboardUserScoresCompleteCallbackInternalImplementation(System.IntPtr data) - { - OnQueryLeaderboardUserScoresCompleteCallback callback; - OnQueryLeaderboardUserScoresCompleteCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/LeaderboardsInterface.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/LeaderboardsInterface.cs.meta deleted file mode 100644 index 026758d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/LeaderboardsInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9a859968d01f0984ca7dd60f105f7049 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardDefinitionsCompleteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardDefinitionsCompleteCallback.cs deleted file mode 100644 index 70db0a5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardDefinitionsCompleteCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Leaderboards -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnQueryLeaderboardDefinitionsCompleteCallback(OnQueryLeaderboardDefinitionsCompleteCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnQueryLeaderboardDefinitionsCompleteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardDefinitionsCompleteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardDefinitionsCompleteCallback.cs.meta deleted file mode 100644 index 515a7ec..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardDefinitionsCompleteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4f39050f8f83e664d9ed6219ab798211 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardDefinitionsCompleteCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardDefinitionsCompleteCallbackInfo.cs deleted file mode 100644 index dc2c55f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardDefinitionsCompleteCallbackInfo.cs +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Leaderboards -{ - /// - /// Data containing the result information for a query leaderboard definitions request. - /// - public class OnQueryLeaderboardDefinitionsCompleteCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into . - /// - public object ClientData { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(OnQueryLeaderboardDefinitionsCompleteCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - } - } - - public void Set(object other) - { - Set(other as OnQueryLeaderboardDefinitionsCompleteCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct OnQueryLeaderboardDefinitionsCompleteCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardDefinitionsCompleteCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardDefinitionsCompleteCallbackInfo.cs.meta deleted file mode 100644 index c9ef619..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardDefinitionsCompleteCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d9a2bd49787c0ea45a1b90e9aa384ed8 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardRanksCompleteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardRanksCompleteCallback.cs deleted file mode 100644 index 826392e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardRanksCompleteCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Leaderboards -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnQueryLeaderboardRanksCompleteCallback(OnQueryLeaderboardRanksCompleteCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnQueryLeaderboardRanksCompleteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardRanksCompleteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardRanksCompleteCallback.cs.meta deleted file mode 100644 index cf6baec..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardRanksCompleteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 638e42d885078174c90912a7a339a6cd -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardRanksCompleteCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardRanksCompleteCallbackInfo.cs deleted file mode 100644 index 477a4d6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardRanksCompleteCallbackInfo.cs +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Leaderboards -{ - /// - /// Data containing the result information for a query leaderboard ranks request. - /// - public class OnQueryLeaderboardRanksCompleteCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into . - /// - public object ClientData { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(OnQueryLeaderboardRanksCompleteCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - } - } - - public void Set(object other) - { - Set(other as OnQueryLeaderboardRanksCompleteCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct OnQueryLeaderboardRanksCompleteCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardRanksCompleteCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardRanksCompleteCallbackInfo.cs.meta deleted file mode 100644 index 05254ef..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardRanksCompleteCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 78db9f31918b3cf4f96f0aa2a8605b8a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardUserScoresCompleteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardUserScoresCompleteCallback.cs deleted file mode 100644 index 09cf79c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardUserScoresCompleteCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Leaderboards -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnQueryLeaderboardUserScoresCompleteCallback(OnQueryLeaderboardUserScoresCompleteCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnQueryLeaderboardUserScoresCompleteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardUserScoresCompleteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardUserScoresCompleteCallback.cs.meta deleted file mode 100644 index 91018a1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardUserScoresCompleteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f6a918bfd989a034c8ea147e6ffed675 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardUserScoresCompleteCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardUserScoresCompleteCallbackInfo.cs deleted file mode 100644 index 53ba430..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardUserScoresCompleteCallbackInfo.cs +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Leaderboards -{ - /// - /// Data containing the result information for a query leaderboard user scores request. - /// - public class OnQueryLeaderboardUserScoresCompleteCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into . - /// - public object ClientData { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(OnQueryLeaderboardUserScoresCompleteCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - } - } - - public void Set(object other) - { - Set(other as OnQueryLeaderboardUserScoresCompleteCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct OnQueryLeaderboardUserScoresCompleteCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardUserScoresCompleteCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardUserScoresCompleteCallbackInfo.cs.meta deleted file mode 100644 index daf0b51..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/OnQueryLeaderboardUserScoresCompleteCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 8fd41293763da5646960e70f611fc6c2 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/QueryLeaderboardDefinitionsOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/QueryLeaderboardDefinitionsOptions.cs deleted file mode 100644 index 5ee52e8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/QueryLeaderboardDefinitionsOptions.cs +++ /dev/null @@ -1,84 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Leaderboards -{ - /// - /// Input parameters for the function. - /// StartTime and EndTime are optional parameters, they can be used to limit the list of definitions - /// to overlap the time window specified. - /// - public class QueryLeaderboardDefinitionsOptions - { - /// - /// An optional POSIX timestamp for the leaderboard's start time, or - /// - public System.DateTimeOffset? StartTime { get; set; } - - /// - /// An optional POSIX timestamp for the leaderboard's end time, or - /// - public System.DateTimeOffset? EndTime { get; set; } - - /// - /// Product User ID for user who is querying definitions. - /// Must be set when using a client policy that requires a valid logged in user. - /// Not used for Dedicated Server where no user is available. - /// - public ProductUserId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryLeaderboardDefinitionsOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private long m_StartTime; - private long m_EndTime; - private System.IntPtr m_LocalUserId; - - public System.DateTimeOffset? StartTime - { - set - { - Helper.TryMarshalSet(ref m_StartTime, value); - } - } - - public System.DateTimeOffset? EndTime - { - set - { - Helper.TryMarshalSet(ref m_EndTime, value); - } - } - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(QueryLeaderboardDefinitionsOptions other) - { - if (other != null) - { - m_ApiVersion = LeaderboardsInterface.QueryleaderboarddefinitionsApiLatest; - StartTime = other.StartTime; - EndTime = other.EndTime; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as QueryLeaderboardDefinitionsOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/QueryLeaderboardDefinitionsOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/QueryLeaderboardDefinitionsOptions.cs.meta deleted file mode 100644 index c7aac60..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/QueryLeaderboardDefinitionsOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 19af4d60f20707c47b12c6d3cad09ad7 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/QueryLeaderboardRanksOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/QueryLeaderboardRanksOptions.cs deleted file mode 100644 index 2f72ff5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/QueryLeaderboardRanksOptions.cs +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Leaderboards -{ - /// - /// Input parameters for the function. - /// - /// - public class QueryLeaderboardRanksOptions - { - /// - /// The ID of the leaderboard whose information you want to retrieve. - /// - public string LeaderboardId { get; set; } - - /// - /// Product User ID for user who is querying ranks. - /// Must be set when using a client policy that requires a valid logged in user. - /// Not used for Dedicated Server where no user is available. - /// - public ProductUserId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryLeaderboardRanksOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LeaderboardId; - private System.IntPtr m_LocalUserId; - - public string LeaderboardId - { - set - { - Helper.TryMarshalSet(ref m_LeaderboardId, value); - } - } - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(QueryLeaderboardRanksOptions other) - { - if (other != null) - { - m_ApiVersion = LeaderboardsInterface.QueryleaderboardranksApiLatest; - LeaderboardId = other.LeaderboardId; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as QueryLeaderboardRanksOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LeaderboardId); - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/QueryLeaderboardRanksOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/QueryLeaderboardRanksOptions.cs.meta deleted file mode 100644 index cea043d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/QueryLeaderboardRanksOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 11f5aba4c6e5293498b03379e0e548d8 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/QueryLeaderboardUserScoresOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/QueryLeaderboardUserScoresOptions.cs deleted file mode 100644 index 7de6de3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/QueryLeaderboardUserScoresOptions.cs +++ /dev/null @@ -1,116 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Leaderboards -{ - /// - /// Input parameters for the function. - /// - public class QueryLeaderboardUserScoresOptions - { - /// - /// An array of Product User IDs indicating the users whose scores you want to retrieve - /// - public ProductUserId[] UserIds { get; set; } - - /// - /// The stats to be collected, along with the sorting method to use when determining rank order for each stat - /// - public UserScoresQueryStatInfo[] StatInfo { get; set; } - - /// - /// An optional POSIX timestamp, or ; results will only include scores made after this time - /// - public System.DateTimeOffset? StartTime { get; set; } - - /// - /// An optional POSIX timestamp, or ; results will only include scores made before this time - /// - public System.DateTimeOffset? EndTime { get; set; } - - /// - /// Product User ID for user who is querying user scores. - /// Must be set when using a client policy that requires a valid logged in user. - /// Not used for Dedicated Server where no user is available. - /// - public ProductUserId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryLeaderboardUserScoresOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_UserIds; - private uint m_UserIdsCount; - private System.IntPtr m_StatInfo; - private uint m_StatInfoCount; - private long m_StartTime; - private long m_EndTime; - private System.IntPtr m_LocalUserId; - - public ProductUserId[] UserIds - { - set - { - Helper.TryMarshalSet(ref m_UserIds, value, out m_UserIdsCount); - } - } - - public UserScoresQueryStatInfo[] StatInfo - { - set - { - Helper.TryMarshalSet(ref m_StatInfo, value, out m_StatInfoCount); - } - } - - public System.DateTimeOffset? StartTime - { - set - { - Helper.TryMarshalSet(ref m_StartTime, value); - } - } - - public System.DateTimeOffset? EndTime - { - set - { - Helper.TryMarshalSet(ref m_EndTime, value); - } - } - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(QueryLeaderboardUserScoresOptions other) - { - if (other != null) - { - m_ApiVersion = LeaderboardsInterface.QueryleaderboarduserscoresApiLatest; - UserIds = other.UserIds; - StatInfo = other.StatInfo; - StartTime = other.StartTime; - EndTime = other.EndTime; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as QueryLeaderboardUserScoresOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_UserIds); - Helper.TryMarshalDispose(ref m_StatInfo); - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/QueryLeaderboardUserScoresOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/QueryLeaderboardUserScoresOptions.cs.meta deleted file mode 100644 index 5454b47..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/QueryLeaderboardUserScoresOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e74c386ae3573a140ac0331fc8fc4fd6 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/UserScoresQueryStatInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/UserScoresQueryStatInfo.cs deleted file mode 100644 index 0d46d54..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/UserScoresQueryStatInfo.cs +++ /dev/null @@ -1,91 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Leaderboards -{ - /// - /// Contains information about a single stat to query with user scores. - /// - public class UserScoresQueryStatInfo : ISettable - { - /// - /// The name of the stat to query. - /// - public string StatName { get; set; } - - /// - /// Aggregation used to sort the cached user scores. - /// - public LeaderboardAggregation Aggregation { get; set; } - - internal void Set(UserScoresQueryStatInfoInternal? other) - { - if (other != null) - { - StatName = other.Value.StatName; - Aggregation = other.Value.Aggregation; - } - } - - public void Set(object other) - { - Set(other as UserScoresQueryStatInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct UserScoresQueryStatInfoInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_StatName; - private LeaderboardAggregation m_Aggregation; - - public string StatName - { - get - { - string value; - Helper.TryMarshalGet(m_StatName, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_StatName, value); - } - } - - public LeaderboardAggregation Aggregation - { - get - { - return m_Aggregation; - } - - set - { - m_Aggregation = value; - } - } - - public void Set(UserScoresQueryStatInfo other) - { - if (other != null) - { - m_ApiVersion = LeaderboardsInterface.UserscoresquerystatinfoApiLatest; - StatName = other.StatName; - Aggregation = other.Aggregation; - } - } - - public void Set(object other) - { - Set(other as UserScoresQueryStatInfo); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_StatName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/UserScoresQueryStatInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/UserScoresQueryStatInfo.cs.meta deleted file mode 100644 index 4bbef20..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Leaderboards/UserScoresQueryStatInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3db3f110bf230624ebeeb0ba47e2c66a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby.meta deleted file mode 100644 index 0c45688..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: ebed7fec7c5a39a44a458d8765fa96d6 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyJoinLobbyAcceptedOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyJoinLobbyAcceptedOptions.cs deleted file mode 100644 index 2760e7a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyJoinLobbyAcceptedOptions.cs +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - public class AddNotifyJoinLobbyAcceptedOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyJoinLobbyAcceptedOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(AddNotifyJoinLobbyAcceptedOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyInterface.AddnotifyjoinlobbyacceptedApiLatest; - } - } - - public void Set(object other) - { - Set(other as AddNotifyJoinLobbyAcceptedOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyJoinLobbyAcceptedOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyJoinLobbyAcceptedOptions.cs.meta deleted file mode 100644 index 4a3c70e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyJoinLobbyAcceptedOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 5e06c3f83f4b06b43ae3b3aab12aa533 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyLobbyInviteAcceptedOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyLobbyInviteAcceptedOptions.cs deleted file mode 100644 index 256b6bd..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyLobbyInviteAcceptedOptions.cs +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - public class AddNotifyLobbyInviteAcceptedOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyLobbyInviteAcceptedOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(AddNotifyLobbyInviteAcceptedOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyInterface.AddnotifylobbyinviteacceptedApiLatest; - } - } - - public void Set(object other) - { - Set(other as AddNotifyLobbyInviteAcceptedOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyLobbyInviteAcceptedOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyLobbyInviteAcceptedOptions.cs.meta deleted file mode 100644 index 6da5ac5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyLobbyInviteAcceptedOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 7fd3e6f425769764fa92a3b9f0ad7360 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyLobbyInviteReceivedOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyLobbyInviteReceivedOptions.cs deleted file mode 100644 index 1cb35f7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyLobbyInviteReceivedOptions.cs +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - public class AddNotifyLobbyInviteReceivedOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyLobbyInviteReceivedOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(AddNotifyLobbyInviteReceivedOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyInterface.AddnotifylobbyinvitereceivedApiLatest; - } - } - - public void Set(object other) - { - Set(other as AddNotifyLobbyInviteReceivedOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyLobbyInviteReceivedOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyLobbyInviteReceivedOptions.cs.meta deleted file mode 100644 index 6fbf59c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyLobbyInviteReceivedOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3b4191b6b5ca2ec4aa320ce3d0fc832f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyLobbyMemberStatusReceivedOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyLobbyMemberStatusReceivedOptions.cs deleted file mode 100644 index e45f55d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyLobbyMemberStatusReceivedOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class AddNotifyLobbyMemberStatusReceivedOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyLobbyMemberStatusReceivedOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(AddNotifyLobbyMemberStatusReceivedOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyInterface.AddnotifylobbymemberstatusreceivedApiLatest; - } - } - - public void Set(object other) - { - Set(other as AddNotifyLobbyMemberStatusReceivedOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyLobbyMemberStatusReceivedOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyLobbyMemberStatusReceivedOptions.cs.meta deleted file mode 100644 index f4dd1a4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyLobbyMemberStatusReceivedOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 13edac33f6a464743a0aaeb715d3185e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyLobbyMemberUpdateReceivedOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyLobbyMemberUpdateReceivedOptions.cs deleted file mode 100644 index feab64a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyLobbyMemberUpdateReceivedOptions.cs +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - public class AddNotifyLobbyMemberUpdateReceivedOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyLobbyMemberUpdateReceivedOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(AddNotifyLobbyMemberUpdateReceivedOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyInterface.AddnotifylobbymemberupdatereceivedApiLatest; - } - } - - public void Set(object other) - { - Set(other as AddNotifyLobbyMemberUpdateReceivedOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyLobbyMemberUpdateReceivedOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyLobbyMemberUpdateReceivedOptions.cs.meta deleted file mode 100644 index f2d23fe..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyLobbyMemberUpdateReceivedOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d84acc132a53240489cfb967095a5587 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyLobbyUpdateReceivedOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyLobbyUpdateReceivedOptions.cs deleted file mode 100644 index a6bde50..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyLobbyUpdateReceivedOptions.cs +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - public class AddNotifyLobbyUpdateReceivedOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyLobbyUpdateReceivedOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(AddNotifyLobbyUpdateReceivedOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyInterface.AddnotifylobbyupdatereceivedApiLatest; - } - } - - public void Set(object other) - { - Set(other as AddNotifyLobbyUpdateReceivedOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyLobbyUpdateReceivedOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyLobbyUpdateReceivedOptions.cs.meta deleted file mode 100644 index 7b0a324..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyLobbyUpdateReceivedOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 96bf26d500675914e94d5015623eca48 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyRTCRoomConnectionChangedOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyRTCRoomConnectionChangedOptions.cs deleted file mode 100644 index 58c0396..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyRTCRoomConnectionChangedOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class AddNotifyRTCRoomConnectionChangedOptions - { - /// - /// The ID of the lobby to receive RTC Room connection change notifications for - /// - public string LobbyId { get; set; } - - /// - /// The Product User ID of the local user in the lobby - /// - public ProductUserId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyRTCRoomConnectionChangedOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LobbyId; - private System.IntPtr m_LocalUserId; - - public string LobbyId - { - set - { - Helper.TryMarshalSet(ref m_LobbyId, value); - } - } - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(AddNotifyRTCRoomConnectionChangedOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyInterface.AddnotifyrtcroomconnectionchangedApiLatest; - LobbyId = other.LobbyId; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as AddNotifyRTCRoomConnectionChangedOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LobbyId); - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyRTCRoomConnectionChangedOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyRTCRoomConnectionChangedOptions.cs.meta deleted file mode 100644 index 350aed1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AddNotifyRTCRoomConnectionChangedOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e35b44ebe6f918b419a6dbd5d3a7a424 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/Attribute.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/Attribute.cs deleted file mode 100644 index fe4eab1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/Attribute.cs +++ /dev/null @@ -1,92 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// An attribute and its visibility setting stored with a lobby. - /// Used to store both lobby and lobby member data - /// - public class Attribute : ISettable - { - /// - /// Key/Value pair describing the attribute - /// - public AttributeData Data { get; set; } - - /// - /// Is this attribute public or private to the lobby and its members - /// - public LobbyAttributeVisibility Visibility { get; set; } - - internal void Set(AttributeInternal? other) - { - if (other != null) - { - Data = other.Value.Data; - Visibility = other.Value.Visibility; - } - } - - public void Set(object other) - { - Set(other as AttributeInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AttributeInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Data; - private LobbyAttributeVisibility m_Visibility; - - public AttributeData Data - { - get - { - AttributeData value; - Helper.TryMarshalGet(m_Data, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Data, value); - } - } - - public LobbyAttributeVisibility Visibility - { - get - { - return m_Visibility; - } - - set - { - m_Visibility = value; - } - } - - public void Set(Attribute other) - { - if (other != null) - { - m_ApiVersion = LobbyInterface.AttributeApiLatest; - Data = other.Data; - Visibility = other.Visibility; - } - } - - public void Set(object other) - { - Set(other as Attribute); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Data); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/Attribute.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/Attribute.cs.meta deleted file mode 100644 index 7bf73c3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/Attribute.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 6a682d95ea71d51409dc14367c91d8ec -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AttributeData.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AttributeData.cs deleted file mode 100644 index f7f067c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AttributeData.cs +++ /dev/null @@ -1,91 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Contains information about lobby and lobby member data - /// - public class AttributeData : ISettable - { - /// - /// Name of the lobby attribute - /// - public string Key { get; set; } - - public AttributeDataValue Value { get; set; } - - internal void Set(AttributeDataInternal? other) - { - if (other != null) - { - Key = other.Value.Key; - Value = other.Value.Value; - } - } - - public void Set(object other) - { - Set(other as AttributeDataInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AttributeDataInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Key; - private AttributeDataValueInternal m_Value; - - public string Key - { - get - { - string value; - Helper.TryMarshalGet(m_Key, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Key, value); - } - } - - public AttributeDataValue Value - { - get - { - AttributeDataValue value; - Helper.TryMarshalGet(m_Value, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Value, value); - } - } - - public void Set(AttributeData other) - { - if (other != null) - { - m_ApiVersion = LobbyInterface.AttributedataApiLatest; - Key = other.Key; - Value = other.Value; - } - } - - public void Set(object other) - { - Set(other as AttributeData); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Key); - Helper.TryMarshalDispose(ref m_Value); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AttributeData.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AttributeData.cs.meta deleted file mode 100644 index 5e943d3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AttributeData.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f5b866b948948d14685b3d32bc88a5f5 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AttributeDataValue.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AttributeDataValue.cs deleted file mode 100644 index 28b9184..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AttributeDataValue.cs +++ /dev/null @@ -1,234 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - public class AttributeDataValue : ISettable - { - private long? m_AsInt64; - private double? m_AsDouble; - private bool? m_AsBool; - private string m_AsUtf8; - private AttributeType m_ValueType; - - /// - /// Stored as an 8 byte integer - /// - public long? AsInt64 - { - get - { - long? value; - Helper.TryMarshalGet(m_AsInt64, out value, m_ValueType, AttributeType.Int64); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_AsInt64, value, ref m_ValueType, AttributeType.Int64); - } - } - - /// - /// Stored as a double precision floating point - /// - public double? AsDouble - { - get - { - double? value; - Helper.TryMarshalGet(m_AsDouble, out value, m_ValueType, AttributeType.Double); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_AsDouble, value, ref m_ValueType, AttributeType.Double); - } - } - - /// - /// Stored as a boolean - /// - public bool? AsBool - { - get - { - bool? value; - Helper.TryMarshalGet(m_AsBool, out value, m_ValueType, AttributeType.Boolean); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_AsBool, value, ref m_ValueType, AttributeType.Boolean); - } - } - - /// - /// Stored as a null terminated UTF8 string - /// - public string AsUtf8 - { - get - { - string value; - Helper.TryMarshalGet(m_AsUtf8, out value, m_ValueType, AttributeType.String); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_AsUtf8, value, ref m_ValueType, AttributeType.String); - } - } - - /// - /// Type of value stored in the union - /// - public AttributeType ValueType - { - get - { - return m_ValueType; - } - - private set - { - m_ValueType = value; - } - } - - public static implicit operator AttributeDataValue(long value) - { - return new AttributeDataValue() { AsInt64 = value }; - } - - public static implicit operator AttributeDataValue(double value) - { - return new AttributeDataValue() { AsDouble = value }; - } - - public static implicit operator AttributeDataValue(bool value) - { - return new AttributeDataValue() { AsBool = value }; - } - - public static implicit operator AttributeDataValue(string value) - { - return new AttributeDataValue() { AsUtf8 = value }; - } - - internal void Set(AttributeDataValueInternal? other) - { - if (other != null) - { - AsInt64 = other.Value.AsInt64; - AsDouble = other.Value.AsDouble; - AsBool = other.Value.AsBool; - AsUtf8 = other.Value.AsUtf8; - } - } - - public void Set(object other) - { - Set(other as AttributeDataValueInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Explicit, Pack = 8)] - internal struct AttributeDataValueInternal : ISettable, System.IDisposable - { - [System.Runtime.InteropServices.FieldOffset(0)] - private long m_AsInt64; - [System.Runtime.InteropServices.FieldOffset(0)] - private double m_AsDouble; - [System.Runtime.InteropServices.FieldOffset(0)] - private int m_AsBool; - [System.Runtime.InteropServices.FieldOffset(0)] - private System.IntPtr m_AsUtf8; - [System.Runtime.InteropServices.FieldOffset(8)] - private AttributeType m_ValueType; - - public long? AsInt64 - { - get - { - long? value; - Helper.TryMarshalGet(m_AsInt64, out value, m_ValueType, AttributeType.Int64); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_AsInt64, value, ref m_ValueType, AttributeType.Int64, this); - } - } - - public double? AsDouble - { - get - { - double? value; - Helper.TryMarshalGet(m_AsDouble, out value, m_ValueType, AttributeType.Double); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_AsDouble, value, ref m_ValueType, AttributeType.Double, this); - } - } - - public bool? AsBool - { - get - { - bool? value; - Helper.TryMarshalGet(m_AsBool, out value, m_ValueType, AttributeType.Boolean); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_AsBool, value, ref m_ValueType, AttributeType.Boolean, this); - } - } - - public string AsUtf8 - { - get - { - string value; - Helper.TryMarshalGet(m_AsUtf8, out value, m_ValueType, AttributeType.String); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_AsUtf8, value, ref m_ValueType, AttributeType.String, this); - } - } - - public void Set(AttributeDataValue other) - { - if (other != null) - { - AsInt64 = other.AsInt64; - AsDouble = other.AsDouble; - AsBool = other.AsBool; - AsUtf8 = other.AsUtf8; - } - } - - public void Set(object other) - { - Set(other as AttributeDataValue); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_AsUtf8, m_ValueType, AttributeType.String); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AttributeDataValue.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AttributeDataValue.cs.meta deleted file mode 100644 index bd36ed7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/AttributeDataValue.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 909a7d5bfeb14c34782caa2f1c1f529f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CopyLobbyDetailsHandleByInviteIdOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CopyLobbyDetailsHandleByInviteIdOptions.cs deleted file mode 100644 index d600fea..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CopyLobbyDetailsHandleByInviteIdOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class CopyLobbyDetailsHandleByInviteIdOptions - { - /// - /// The ID of an invitation to join the lobby - /// - public string InviteId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyLobbyDetailsHandleByInviteIdOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_InviteId; - - public string InviteId - { - set - { - Helper.TryMarshalSet(ref m_InviteId, value); - } - } - - public void Set(CopyLobbyDetailsHandleByInviteIdOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyInterface.CopylobbydetailshandlebyinviteidApiLatest; - InviteId = other.InviteId; - } - } - - public void Set(object other) - { - Set(other as CopyLobbyDetailsHandleByInviteIdOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_InviteId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CopyLobbyDetailsHandleByInviteIdOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CopyLobbyDetailsHandleByInviteIdOptions.cs.meta deleted file mode 100644 index c7954c4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CopyLobbyDetailsHandleByInviteIdOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 074e2fe7450820c44a2fa2922239ebbb -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CopyLobbyDetailsHandleByUiEventIdOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CopyLobbyDetailsHandleByUiEventIdOptions.cs deleted file mode 100644 index bad9903..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CopyLobbyDetailsHandleByUiEventIdOptions.cs +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class CopyLobbyDetailsHandleByUiEventIdOptions - { - /// - /// UI Event associated with the lobby - /// - public ulong UiEventId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyLobbyDetailsHandleByUiEventIdOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private ulong m_UiEventId; - - public ulong UiEventId - { - set - { - m_UiEventId = value; - } - } - - public void Set(CopyLobbyDetailsHandleByUiEventIdOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyInterface.CopylobbydetailshandlebyuieventidApiLatest; - UiEventId = other.UiEventId; - } - } - - public void Set(object other) - { - Set(other as CopyLobbyDetailsHandleByUiEventIdOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CopyLobbyDetailsHandleByUiEventIdOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CopyLobbyDetailsHandleByUiEventIdOptions.cs.meta deleted file mode 100644 index 1ca8cf9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CopyLobbyDetailsHandleByUiEventIdOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 98293fa3642bc11478e85cb2a04ca55d -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CopyLobbyDetailsHandleOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CopyLobbyDetailsHandleOptions.cs deleted file mode 100644 index 68e3d03..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CopyLobbyDetailsHandleOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class CopyLobbyDetailsHandleOptions - { - /// - /// The ID of the lobby - /// - public string LobbyId { get; set; } - - /// - /// The Product User ID of the local user making the request - /// - public ProductUserId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyLobbyDetailsHandleOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LobbyId; - private System.IntPtr m_LocalUserId; - - public string LobbyId - { - set - { - Helper.TryMarshalSet(ref m_LobbyId, value); - } - } - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(CopyLobbyDetailsHandleOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyInterface.CopylobbydetailshandleApiLatest; - LobbyId = other.LobbyId; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as CopyLobbyDetailsHandleOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LobbyId); - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CopyLobbyDetailsHandleOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CopyLobbyDetailsHandleOptions.cs.meta deleted file mode 100644 index 7eb51c0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CopyLobbyDetailsHandleOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 623cd5acca8126f469518880b9474bd4 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CreateLobbyCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CreateLobbyCallbackInfo.cs deleted file mode 100644 index d9e6908..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CreateLobbyCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Output parameters for the function. - /// - public class CreateLobbyCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The new lobby's ID - /// - public string LobbyId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(CreateLobbyCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LobbyId = other.Value.LobbyId; - } - } - - public void Set(object other) - { - Set(other as CreateLobbyCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CreateLobbyCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LobbyId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public string LobbyId - { - get - { - string value; - Helper.TryMarshalGet(m_LobbyId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CreateLobbyCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CreateLobbyCallbackInfo.cs.meta deleted file mode 100644 index df91242..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CreateLobbyCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a3256c75cebae99469b976c10d0a42f6 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CreateLobbyOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CreateLobbyOptions.cs deleted file mode 100644 index 9005afc..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CreateLobbyOptions.cs +++ /dev/null @@ -1,207 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class CreateLobbyOptions - { - /// - /// The Product User ID of the local user creating the lobby; this user will automatically join the lobby as its owner - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The maximum number of users who can be in the lobby at a time - /// - public uint MaxLobbyMembers { get; set; } - - /// - /// The initial permission level of the lobby - /// - public LobbyPermissionLevel PermissionLevel { get; set; } - - /// - /// If true, this lobby will be associated with presence information. A user's presence can only be associated with one lobby at a time. - /// This affects the ability of the Social Overlay to show game related actions to take in the user's social graph. - /// - /// @note The Social Overlay can handle only one of the following three options at a time: - /// using the bPresenceEnabled flags within the Sessions interface - /// using the bPresenceEnabled flags within the Lobby interface - /// using - /// - /// - /// - /// - /// - public bool PresenceEnabled { get; set; } - - /// - /// Are members of the lobby allowed to invite others - /// - public bool AllowInvites { get; set; } - - /// - /// Bucket ID associated with the lobby - /// - public string BucketId { get; set; } - - /// - /// Is host migration allowed (will the lobby stay open if the original host leaves?) - /// NOTE: is still allowed regardless of this setting - /// - public bool DisableHostMigration { get; set; } - - /// - /// Creates a real-time communication (RTC) room for all members of this lobby. All members of the lobby will automatically join the RTC - /// room when they connect to the lobby and they will automatically leave the RTC room when they leave or are removed from the lobby. - /// While the joining and leaving of the RTC room is automatic, applications will still need to use the EOS RTC interfaces to handle all - /// other functionality for the room. - /// - /// - /// - public bool EnableRTCRoom { get; set; } - - /// - /// (Optional) Allows the local application to set local audio options for the RTC Room if it is enabled. Set this to NULL if the RTC - /// RTC room is disabled or you would like to use the defaults. - /// - public LocalRTCOptions LocalRTCOptions { get; set; } - - /// - /// (Optional) Set to a globally unique value to override the backend assignment - /// If not specified the backend service will assign one to the lobby. Do not mix and match override and non override settings. - /// This value can be of size [, ] - /// - public string LobbyId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CreateLobbyOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private uint m_MaxLobbyMembers; - private LobbyPermissionLevel m_PermissionLevel; - private int m_PresenceEnabled; - private int m_AllowInvites; - private System.IntPtr m_BucketId; - private int m_DisableHostMigration; - private int m_EnableRTCRoom; - private System.IntPtr m_LocalRTCOptions; - private System.IntPtr m_LobbyId; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public uint MaxLobbyMembers - { - set - { - m_MaxLobbyMembers = value; - } - } - - public LobbyPermissionLevel PermissionLevel - { - set - { - m_PermissionLevel = value; - } - } - - public bool PresenceEnabled - { - set - { - Helper.TryMarshalSet(ref m_PresenceEnabled, value); - } - } - - public bool AllowInvites - { - set - { - Helper.TryMarshalSet(ref m_AllowInvites, value); - } - } - - public string BucketId - { - set - { - Helper.TryMarshalSet(ref m_BucketId, value); - } - } - - public bool DisableHostMigration - { - set - { - Helper.TryMarshalSet(ref m_DisableHostMigration, value); - } - } - - public bool EnableRTCRoom - { - set - { - Helper.TryMarshalSet(ref m_EnableRTCRoom, value); - } - } - - public LocalRTCOptions LocalRTCOptions - { - set - { - Helper.TryMarshalSet(ref m_LocalRTCOptions, value); - } - } - - public string LobbyId - { - set - { - Helper.TryMarshalSet(ref m_LobbyId, value); - } - } - - public void Set(CreateLobbyOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyInterface.CreatelobbyApiLatest; - LocalUserId = other.LocalUserId; - MaxLobbyMembers = other.MaxLobbyMembers; - PermissionLevel = other.PermissionLevel; - PresenceEnabled = other.PresenceEnabled; - AllowInvites = other.AllowInvites; - BucketId = other.BucketId; - DisableHostMigration = other.DisableHostMigration; - EnableRTCRoom = other.EnableRTCRoom; - LocalRTCOptions = other.LocalRTCOptions; - LobbyId = other.LobbyId; - } - } - - public void Set(object other) - { - Set(other as CreateLobbyOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_BucketId); - Helper.TryMarshalDispose(ref m_LocalRTCOptions); - Helper.TryMarshalDispose(ref m_LobbyId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CreateLobbyOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CreateLobbyOptions.cs.meta deleted file mode 100644 index 0429085..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CreateLobbyOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0e4d5dc96a7f7b94e8b0850abed588e5 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CreateLobbySearchOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CreateLobbySearchOptions.cs deleted file mode 100644 index a12e553..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CreateLobbySearchOptions.cs +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class CreateLobbySearchOptions - { - /// - /// Maximum number of results allowed from the search - /// - public uint MaxResults { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CreateLobbySearchOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_MaxResults; - - public uint MaxResults - { - set - { - m_MaxResults = value; - } - } - - public void Set(CreateLobbySearchOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyInterface.CreatelobbysearchApiLatest; - MaxResults = other.MaxResults; - } - } - - public void Set(object other) - { - Set(other as CreateLobbySearchOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CreateLobbySearchOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CreateLobbySearchOptions.cs.meta deleted file mode 100644 index 2b3911c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/CreateLobbySearchOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 7a8f8912638afff4cbec565ee688239b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/DestroyLobbyCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/DestroyLobbyCallbackInfo.cs deleted file mode 100644 index c2e2743..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/DestroyLobbyCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Output parameters for the function. - /// - public class DestroyLobbyCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The destroyed lobby's ID - /// - public string LobbyId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(DestroyLobbyCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LobbyId = other.Value.LobbyId; - } - } - - public void Set(object other) - { - Set(other as DestroyLobbyCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct DestroyLobbyCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LobbyId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public string LobbyId - { - get - { - string value; - Helper.TryMarshalGet(m_LobbyId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/DestroyLobbyCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/DestroyLobbyCallbackInfo.cs.meta deleted file mode 100644 index 6822c4e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/DestroyLobbyCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e6e5061f0211e1a45817a8e716234167 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/DestroyLobbyOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/DestroyLobbyOptions.cs deleted file mode 100644 index f47f2b1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/DestroyLobbyOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class DestroyLobbyOptions - { - /// - /// The Product User ID of the local user requesting destruction of the lobby; this user must currently own the lobby - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The ID of the lobby to destroy - /// - public string LobbyId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct DestroyLobbyOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_LobbyId; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string LobbyId - { - set - { - Helper.TryMarshalSet(ref m_LobbyId, value); - } - } - - public void Set(DestroyLobbyOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyInterface.DestroylobbyApiLatest; - LocalUserId = other.LocalUserId; - LobbyId = other.LobbyId; - } - } - - public void Set(object other) - { - Set(other as DestroyLobbyOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_LobbyId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/DestroyLobbyOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/DestroyLobbyOptions.cs.meta deleted file mode 100644 index cec2726..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/DestroyLobbyOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 45a290071be27d244b4b73714f9b7c90 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/GetInviteCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/GetInviteCountOptions.cs deleted file mode 100644 index 5b5c6ab..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/GetInviteCountOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class GetInviteCountOptions - { - /// - /// The Product User ID of the local user whose cached lobby invitations you want to count - /// - public ProductUserId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetInviteCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(GetInviteCountOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyInterface.GetinvitecountApiLatest; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as GetInviteCountOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/GetInviteCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/GetInviteCountOptions.cs.meta deleted file mode 100644 index 88ccd74..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/GetInviteCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 65813cdd9cd1e494f9626a1ddb672748 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/GetInviteIdByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/GetInviteIdByIndexOptions.cs deleted file mode 100644 index ae281d3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/GetInviteIdByIndexOptions.cs +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class GetInviteIdByIndexOptions - { - /// - /// The Product User ID of the local user who received the cached invitation - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The index of the invitation ID to retrieve - /// - public uint Index { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetInviteIdByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private uint m_Index; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public uint Index - { - set - { - m_Index = value; - } - } - - public void Set(GetInviteIdByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyInterface.GetinviteidbyindexApiLatest; - LocalUserId = other.LocalUserId; - Index = other.Index; - } - } - - public void Set(object other) - { - Set(other as GetInviteIdByIndexOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/GetInviteIdByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/GetInviteIdByIndexOptions.cs.meta deleted file mode 100644 index 767c707..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/GetInviteIdByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 16a4f002e66199d4d89b1a4230c5c99b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/GetRTCRoomNameOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/GetRTCRoomNameOptions.cs deleted file mode 100644 index 73387e2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/GetRTCRoomNameOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class GetRTCRoomNameOptions - { - /// - /// The ID of the lobby to get the RTC Room name for - /// - public string LobbyId { get; set; } - - /// - /// The Product User ID of the local user in the lobby - /// - public ProductUserId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetRTCRoomNameOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LobbyId; - private System.IntPtr m_LocalUserId; - - public string LobbyId - { - set - { - Helper.TryMarshalSet(ref m_LobbyId, value); - } - } - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(GetRTCRoomNameOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyInterface.GetrtcroomnameApiLatest; - LobbyId = other.LobbyId; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as GetRTCRoomNameOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LobbyId); - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/GetRTCRoomNameOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/GetRTCRoomNameOptions.cs.meta deleted file mode 100644 index cd59419..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/GetRTCRoomNameOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4b5c5d44cec49494e99f119ba77e68de -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/IsRTCRoomConnectedOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/IsRTCRoomConnectedOptions.cs deleted file mode 100644 index 57db283..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/IsRTCRoomConnectedOptions.cs +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - public class IsRTCRoomConnectedOptions - { - /// - /// The ID of the lobby to get the RTC Room name for - /// - public string LobbyId { get; set; } - - /// - /// The Product User ID of the local user in the lobby - /// - public ProductUserId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct IsRTCRoomConnectedOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LobbyId; - private System.IntPtr m_LocalUserId; - - public string LobbyId - { - set - { - Helper.TryMarshalSet(ref m_LobbyId, value); - } - } - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(IsRTCRoomConnectedOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyInterface.IsrtcroomconnectedApiLatest; - LobbyId = other.LobbyId; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as IsRTCRoomConnectedOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LobbyId); - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/IsRTCRoomConnectedOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/IsRTCRoomConnectedOptions.cs.meta deleted file mode 100644 index 5ee1bb7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/IsRTCRoomConnectedOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4327a6bcef5a7724092fc7dd7ac70cc5 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/JoinLobbyAcceptedCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/JoinLobbyAcceptedCallbackInfo.cs deleted file mode 100644 index 4cc8eb9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/JoinLobbyAcceptedCallbackInfo.cs +++ /dev/null @@ -1,92 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Output parameters for the Function. - /// - public class JoinLobbyAcceptedCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the local user who is joining - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The UI Event associated with this Join Game event. - /// This should be used with to get a handle to be used - /// when calling . - /// - public ulong UiEventId { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(JoinLobbyAcceptedCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - UiEventId = other.Value.UiEventId; - } - } - - public void Set(object other) - { - Set(other as JoinLobbyAcceptedCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct JoinLobbyAcceptedCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private ulong m_UiEventId; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public ulong UiEventId - { - get - { - return m_UiEventId; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/JoinLobbyAcceptedCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/JoinLobbyAcceptedCallbackInfo.cs.meta deleted file mode 100644 index b8e3bea..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/JoinLobbyAcceptedCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f8b8c1bf2c2b8eb45b9879f5018ab4a0 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/JoinLobbyCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/JoinLobbyCallbackInfo.cs deleted file mode 100644 index 42458ba..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/JoinLobbyCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Output parameters for the function. - /// - public class JoinLobbyCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The ID of the lobby - /// - public string LobbyId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(JoinLobbyCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LobbyId = other.Value.LobbyId; - } - } - - public void Set(object other) - { - Set(other as JoinLobbyCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct JoinLobbyCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LobbyId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public string LobbyId - { - get - { - string value; - Helper.TryMarshalGet(m_LobbyId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/JoinLobbyCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/JoinLobbyCallbackInfo.cs.meta deleted file mode 100644 index e29b5b5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/JoinLobbyCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: fa9009633d289704fa445fddeec1a14a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/JoinLobbyOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/JoinLobbyOptions.cs deleted file mode 100644 index 3c5d6ce..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/JoinLobbyOptions.cs +++ /dev/null @@ -1,110 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class JoinLobbyOptions - { - /// - /// The handle of the lobby to join - /// - public LobbyDetails LobbyDetailsHandle { get; set; } - - /// - /// The Product User ID of the local user joining the lobby - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// If true, this lobby will be associated with the user's presence information. A user can only associate one lobby at a time with their presence information. - /// This affects the ability of the Social Overlay to show game related actions to take in the user's social graph. - /// - /// @note The Social Overlay can handle only one of the following three options at a time: - /// using the bPresenceEnabled flags within the Sessions interface - /// using the bPresenceEnabled flags within the Lobby interface - /// using - /// - /// - /// - /// - /// - /// - public bool PresenceEnabled { get; set; } - - /// - /// (Optional) Set this value to override the default local options for the RTC Room, if it is enabled for this lobby. Set this to NULL if - /// your application does not use the Lobby RTC Rooms feature, or if you would like to use the default settings. This option is ignored if - /// the specified lobby does not have an RTC Room enabled and will not cause errors. - /// - public LocalRTCOptions LocalRTCOptions { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct JoinLobbyOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LobbyDetailsHandle; - private System.IntPtr m_LocalUserId; - private int m_PresenceEnabled; - private System.IntPtr m_LocalRTCOptions; - - public LobbyDetails LobbyDetailsHandle - { - set - { - Helper.TryMarshalSet(ref m_LobbyDetailsHandle, value); - } - } - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public bool PresenceEnabled - { - set - { - Helper.TryMarshalSet(ref m_PresenceEnabled, value); - } - } - - public LocalRTCOptions LocalRTCOptions - { - set - { - Helper.TryMarshalSet(ref m_LocalRTCOptions, value); - } - } - - public void Set(JoinLobbyOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyInterface.JoinlobbyApiLatest; - LobbyDetailsHandle = other.LobbyDetailsHandle; - LocalUserId = other.LocalUserId; - PresenceEnabled = other.PresenceEnabled; - LocalRTCOptions = other.LocalRTCOptions; - } - } - - public void Set(object other) - { - Set(other as JoinLobbyOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LobbyDetailsHandle); - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_LocalRTCOptions); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/JoinLobbyOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/JoinLobbyOptions.cs.meta deleted file mode 100644 index 878f026..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/JoinLobbyOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d148f0ac83e703143b7eadc3c99d45c8 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/KickMemberCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/KickMemberCallbackInfo.cs deleted file mode 100644 index f95ef60..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/KickMemberCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Output parameters for the function. - /// - public class KickMemberCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The ID of the lobby - /// - public string LobbyId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(KickMemberCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LobbyId = other.Value.LobbyId; - } - } - - public void Set(object other) - { - Set(other as KickMemberCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct KickMemberCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LobbyId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public string LobbyId - { - get - { - string value; - Helper.TryMarshalGet(m_LobbyId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/KickMemberCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/KickMemberCallbackInfo.cs.meta deleted file mode 100644 index 3325fd4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/KickMemberCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 89b2666396a910b40879fabef0011770 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/KickMemberOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/KickMemberOptions.cs deleted file mode 100644 index 12d2a15..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/KickMemberOptions.cs +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class KickMemberOptions - { - /// - /// The ID of the lobby - /// - public string LobbyId { get; set; } - - /// - /// The Product User ID of the local user requesting the removal; this user must be the lobby owner - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The Product User ID of the lobby member to remove - /// - public ProductUserId TargetUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct KickMemberOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LobbyId; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - - public string LobbyId - { - set - { - Helper.TryMarshalSet(ref m_LobbyId, value); - } - } - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public ProductUserId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public void Set(KickMemberOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyInterface.KickmemberApiLatest; - LobbyId = other.LobbyId; - LocalUserId = other.LocalUserId; - TargetUserId = other.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as KickMemberOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LobbyId); - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/KickMemberOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/KickMemberOptions.cs.meta deleted file mode 100644 index 9b80d13..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/KickMemberOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c9fec2f3d48a76244871497f7fe7dd05 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LeaveLobbyCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LeaveLobbyCallbackInfo.cs deleted file mode 100644 index ed866ee..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LeaveLobbyCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Output parameters for the function. - /// - public class LeaveLobbyCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The ID of the lobby - /// - public string LobbyId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(LeaveLobbyCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LobbyId = other.Value.LobbyId; - } - } - - public void Set(object other) - { - Set(other as LeaveLobbyCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LeaveLobbyCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LobbyId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public string LobbyId - { - get - { - string value; - Helper.TryMarshalGet(m_LobbyId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LeaveLobbyCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LeaveLobbyCallbackInfo.cs.meta deleted file mode 100644 index 5b71d6c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LeaveLobbyCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: fb308dbeb2482b546b1b80e3f66b1f11 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LeaveLobbyOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LeaveLobbyOptions.cs deleted file mode 100644 index 43113b3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LeaveLobbyOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class LeaveLobbyOptions - { - /// - /// The Product User ID of the local user leaving the lobby - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The ID of the lobby - /// - public string LobbyId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LeaveLobbyOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_LobbyId; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string LobbyId - { - set - { - Helper.TryMarshalSet(ref m_LobbyId, value); - } - } - - public void Set(LeaveLobbyOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyInterface.LeavelobbyApiLatest; - LocalUserId = other.LocalUserId; - LobbyId = other.LobbyId; - } - } - - public void Set(object other) - { - Set(other as LeaveLobbyOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_LobbyId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LeaveLobbyOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LeaveLobbyOptions.cs.meta deleted file mode 100644 index af462ad..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LeaveLobbyOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: aabf255ec735f4841b953b3722d5309f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyAttributeVisibility.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyAttributeVisibility.cs deleted file mode 100644 index 892009d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyAttributeVisibility.cs +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Advertisement properties for a single attribute associated with a lobby - /// - public enum LobbyAttributeVisibility : int - { - /// - /// Data is visible outside the lobby - /// - Public = 0, - /// - /// Only members in the lobby can see this data - /// - Private = 1 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyAttributeVisibility.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyAttributeVisibility.cs.meta deleted file mode 100644 index 81a67ef..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyAttributeVisibility.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d7723f8be17b2664db52c4f398ae90a3 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetails.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetails.cs deleted file mode 100644 index dabfdd0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetails.cs +++ /dev/null @@ -1,346 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - public sealed partial class LobbyDetails : Handle - { - public LobbyDetails() - { - } - - public LobbyDetails(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// The most recent version of the API. - /// - public const int LobbydetailsCopyattributebyindexApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int LobbydetailsCopyattributebykeyApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int LobbydetailsCopyinfoApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int LobbydetailsCopymemberattributebyindexApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int LobbydetailsCopymemberattributebykeyApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int LobbydetailsGetattributecountApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int LobbydetailsGetlobbyownerApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int LobbydetailsGetmemberattributecountApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int LobbydetailsGetmemberbyindexApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int LobbydetailsGetmembercountApiLatest = 1; - - public const int LobbydetailsInfoApiLatest = 1; - - /// - /// is used to immediately retrieve a copy of a lobby attribute from a given source such as a existing lobby or a search result. - /// If the call returns an result, the out parameter, OutAttribute, must be passed to to release the memory associated with it. - /// - /// - /// - /// - /// Structure containing the input parameters - /// Out parameter used to receive the structure. - /// - /// if the information is available and passed out in OutAttribute - /// if you pass a null pointer for the out parameter - /// if the API version passed in is incorrect - /// - public Result CopyAttributeByIndex(LobbyDetailsCopyAttributeByIndexOptions options, out Attribute outAttribute) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outAttributeAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_LobbyDetails_CopyAttributeByIndex(InnerHandle, optionsAddress, ref outAttributeAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outAttributeAddress, out outAttribute)) - { - Bindings.EOS_Lobby_Attribute_Release(outAttributeAddress); - } - - return funcResult; - } - - /// - /// is used to immediately retrieve a copy of a lobby attribute from a given source such as a existing lobby or a search result. - /// If the call returns an result, the out parameter, OutAttribute, must be passed to to release the memory associated with it. - /// - /// - /// - /// - /// Structure containing the input parameters - /// Out parameter used to receive the structure. - /// - /// if the information is available and passed out in OutAttribute - /// if you pass a null pointer for the out parameter - /// if the API version passed in is incorrect - /// - public Result CopyAttributeByKey(LobbyDetailsCopyAttributeByKeyOptions options, out Attribute outAttribute) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outAttributeAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_LobbyDetails_CopyAttributeByKey(InnerHandle, optionsAddress, ref outAttributeAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outAttributeAddress, out outAttribute)) - { - Bindings.EOS_Lobby_Attribute_Release(outAttributeAddress); - } - - return funcResult; - } - - /// - /// is used to immediately retrieve a copy of lobby information from a given source such as a existing lobby or a search result. - /// If the call returns an result, the out parameter, OutLobbyDetailsInfo, must be passed to to release the memory associated with it. - /// - /// - /// - /// - /// Structure containing the input parameters - /// Out parameter used to receive the structure. - /// - /// if the information is available and passed out in OutLobbyDetailsInfo - /// if you pass a null pointer for the out parameter - /// if the API version passed in is incorrect - /// - public Result CopyInfo(LobbyDetailsCopyInfoOptions options, out LobbyDetailsInfo outLobbyDetailsInfo) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outLobbyDetailsInfoAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_LobbyDetails_CopyInfo(InnerHandle, optionsAddress, ref outLobbyDetailsInfoAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outLobbyDetailsInfoAddress, out outLobbyDetailsInfo)) - { - Bindings.EOS_LobbyDetails_Info_Release(outLobbyDetailsInfoAddress); - } - - return funcResult; - } - - /// - /// is used to immediately retrieve a copy of a lobby member attribute from an existing lobby. - /// If the call returns an result, the out parameter, OutAttribute, must be passed to to release the memory associated with it. - /// - /// - /// - /// - /// Structure containing the input parameters - /// Out parameter used to receive the structure. - /// - /// if the information is available and passed out in OutAttribute - /// if you pass a null pointer for the out parameter - /// if the API version passed in is incorrect - /// - public Result CopyMemberAttributeByIndex(LobbyDetailsCopyMemberAttributeByIndexOptions options, out Attribute outAttribute) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outAttributeAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_LobbyDetails_CopyMemberAttributeByIndex(InnerHandle, optionsAddress, ref outAttributeAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outAttributeAddress, out outAttribute)) - { - Bindings.EOS_Lobby_Attribute_Release(outAttributeAddress); - } - - return funcResult; - } - - /// - /// is used to immediately retrieve a copy of a lobby member attribute from an existing lobby. - /// If the call returns an result, the out parameter, OutAttribute, must be passed to to release the memory associated with it. - /// - /// - /// - /// - /// Structure containing the input parameters - /// Out parameter used to receive the structure. - /// - /// if the information is available and passed out in OutAttribute - /// if you pass a null pointer for the out parameter - /// if the API version passed in is incorrect - /// - public Result CopyMemberAttributeByKey(LobbyDetailsCopyMemberAttributeByKeyOptions options, out Attribute outAttribute) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outAttributeAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_LobbyDetails_CopyMemberAttributeByKey(InnerHandle, optionsAddress, ref outAttributeAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outAttributeAddress, out outAttribute)) - { - Bindings.EOS_Lobby_Attribute_Release(outAttributeAddress); - } - - return funcResult; - } - - /// - /// Get the number of attributes associated with this lobby - /// - /// the Options associated with retrieving the attribute count - /// - /// number of attributes on the lobby or 0 if there is an error - /// - public uint GetAttributeCount(LobbyDetailsGetAttributeCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_LobbyDetails_GetAttributeCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Get the product user ID of the current owner for a given lobby - /// - /// Structure containing the input parameters - /// - /// the product user ID for the lobby owner or null if the input parameters are invalid - /// - public ProductUserId GetLobbyOwner(LobbyDetailsGetLobbyOwnerOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_LobbyDetails_GetLobbyOwner(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - ProductUserId funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// is used to immediately retrieve the attribute count for members in a lobby. - /// - /// - /// - /// Structure containing the input parameters - /// - /// the number of attributes associated with a given lobby member or 0 if that member is invalid - /// - public uint GetMemberAttributeCount(LobbyDetailsGetMemberAttributeCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_LobbyDetails_GetMemberAttributeCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// is used to immediately retrieve individual members registered with a lobby. - /// - /// - /// - /// Structure containing the input parameters - /// - /// the product user ID for the registered member at a given index or null if that index is invalid - /// - public ProductUserId GetMemberByIndex(LobbyDetailsGetMemberByIndexOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_LobbyDetails_GetMemberByIndex(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - ProductUserId funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Get the number of members associated with this lobby - /// - /// the Options associated with retrieving the member count - /// - /// number of members in the existing lobby or 0 if there is an error - /// - public uint GetMemberCount(LobbyDetailsGetMemberCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_LobbyDetails_GetMemberCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Release the memory associated with a single lobby. This must be called on data retrieved from . - /// - /// - /// - The lobby handle to release - public void Release() - { - Bindings.EOS_LobbyDetails_Release(InnerHandle); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetails.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetails.cs.meta deleted file mode 100644 index 882e485..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetails.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3f1bb19df6855b2469a47075e511bc8f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsCopyAttributeByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsCopyAttributeByIndexOptions.cs deleted file mode 100644 index 8b919ef..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsCopyAttributeByIndexOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class LobbyDetailsCopyAttributeByIndexOptions - { - /// - /// The index of the attribute to retrieve - /// - /// - public uint AttrIndex { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbyDetailsCopyAttributeByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_AttrIndex; - - public uint AttrIndex - { - set - { - m_AttrIndex = value; - } - } - - public void Set(LobbyDetailsCopyAttributeByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyDetails.LobbydetailsCopyattributebyindexApiLatest; - AttrIndex = other.AttrIndex; - } - } - - public void Set(object other) - { - Set(other as LobbyDetailsCopyAttributeByIndexOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsCopyAttributeByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsCopyAttributeByIndexOptions.cs.meta deleted file mode 100644 index a41d674..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsCopyAttributeByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 487abc5629ac3af429dc9dceb15c2ded -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsCopyAttributeByKeyOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsCopyAttributeByKeyOptions.cs deleted file mode 100644 index 85ae482..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsCopyAttributeByKeyOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class LobbyDetailsCopyAttributeByKeyOptions - { - /// - /// Name of the attribute - /// - public string AttrKey { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbyDetailsCopyAttributeByKeyOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_AttrKey; - - public string AttrKey - { - set - { - Helper.TryMarshalSet(ref m_AttrKey, value); - } - } - - public void Set(LobbyDetailsCopyAttributeByKeyOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyDetails.LobbydetailsCopyattributebykeyApiLatest; - AttrKey = other.AttrKey; - } - } - - public void Set(object other) - { - Set(other as LobbyDetailsCopyAttributeByKeyOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_AttrKey); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsCopyAttributeByKeyOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsCopyAttributeByKeyOptions.cs.meta deleted file mode 100644 index 3de01cf..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsCopyAttributeByKeyOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 022a6de8e7a7c5a4cb0f204c9bd0d3a5 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsCopyInfoOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsCopyInfoOptions.cs deleted file mode 100644 index 310b232..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsCopyInfoOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class LobbyDetailsCopyInfoOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbyDetailsCopyInfoOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(LobbyDetailsCopyInfoOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyDetails.LobbydetailsCopyinfoApiLatest; - } - } - - public void Set(object other) - { - Set(other as LobbyDetailsCopyInfoOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsCopyInfoOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsCopyInfoOptions.cs.meta deleted file mode 100644 index 62d96be..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsCopyInfoOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a2583fd0bff07654d86bd3fd3721c04c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsCopyMemberAttributeByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsCopyMemberAttributeByIndexOptions.cs deleted file mode 100644 index de2481f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsCopyMemberAttributeByIndexOptions.cs +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class LobbyDetailsCopyMemberAttributeByIndexOptions - { - /// - /// The Product User ID of the lobby member - /// - public ProductUserId TargetUserId { get; set; } - - /// - /// The index of the attribute to copy - /// - public uint AttrIndex { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbyDetailsCopyMemberAttributeByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_TargetUserId; - private uint m_AttrIndex; - - public ProductUserId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public uint AttrIndex - { - set - { - m_AttrIndex = value; - } - } - - public void Set(LobbyDetailsCopyMemberAttributeByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyDetails.LobbydetailsCopymemberattributebyindexApiLatest; - TargetUserId = other.TargetUserId; - AttrIndex = other.AttrIndex; - } - } - - public void Set(object other) - { - Set(other as LobbyDetailsCopyMemberAttributeByIndexOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsCopyMemberAttributeByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsCopyMemberAttributeByIndexOptions.cs.meta deleted file mode 100644 index 9061688..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsCopyMemberAttributeByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 711851a12dfc42b4f9a1da3e2340475a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsCopyMemberAttributeByKeyOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsCopyMemberAttributeByKeyOptions.cs deleted file mode 100644 index d59dad1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsCopyMemberAttributeByKeyOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class LobbyDetailsCopyMemberAttributeByKeyOptions - { - /// - /// The Product User ID of the lobby member - /// - public ProductUserId TargetUserId { get; set; } - - /// - /// Name of the attribute to copy - /// - public string AttrKey { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbyDetailsCopyMemberAttributeByKeyOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_TargetUserId; - private System.IntPtr m_AttrKey; - - public ProductUserId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public string AttrKey - { - set - { - Helper.TryMarshalSet(ref m_AttrKey, value); - } - } - - public void Set(LobbyDetailsCopyMemberAttributeByKeyOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyDetails.LobbydetailsCopymemberattributebykeyApiLatest; - TargetUserId = other.TargetUserId; - AttrKey = other.AttrKey; - } - } - - public void Set(object other) - { - Set(other as LobbyDetailsCopyMemberAttributeByKeyOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_TargetUserId); - Helper.TryMarshalDispose(ref m_AttrKey); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsCopyMemberAttributeByKeyOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsCopyMemberAttributeByKeyOptions.cs.meta deleted file mode 100644 index d7f3cdf..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsCopyMemberAttributeByKeyOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ddd59dc3822887448a0642d0c5b3ec57 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsGetAttributeCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsGetAttributeCountOptions.cs deleted file mode 100644 index 94d5bae..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsGetAttributeCountOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class LobbyDetailsGetAttributeCountOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbyDetailsGetAttributeCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(LobbyDetailsGetAttributeCountOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyDetails.LobbydetailsGetattributecountApiLatest; - } - } - - public void Set(object other) - { - Set(other as LobbyDetailsGetAttributeCountOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsGetAttributeCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsGetAttributeCountOptions.cs.meta deleted file mode 100644 index 94a4763..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsGetAttributeCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 639c6d8d2328acd4f8d993152edff449 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsGetLobbyOwnerOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsGetLobbyOwnerOptions.cs deleted file mode 100644 index 08498b5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsGetLobbyOwnerOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class LobbyDetailsGetLobbyOwnerOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbyDetailsGetLobbyOwnerOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(LobbyDetailsGetLobbyOwnerOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyDetails.LobbydetailsGetlobbyownerApiLatest; - } - } - - public void Set(object other) - { - Set(other as LobbyDetailsGetLobbyOwnerOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsGetLobbyOwnerOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsGetLobbyOwnerOptions.cs.meta deleted file mode 100644 index b329e64..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsGetLobbyOwnerOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 577c1b785a04b5b458d3683e6023e354 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsGetMemberAttributeCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsGetMemberAttributeCountOptions.cs deleted file mode 100644 index 01c57c3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsGetMemberAttributeCountOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class LobbyDetailsGetMemberAttributeCountOptions - { - /// - /// The Product User ID of the lobby member - /// - public ProductUserId TargetUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbyDetailsGetMemberAttributeCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_TargetUserId; - - public ProductUserId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public void Set(LobbyDetailsGetMemberAttributeCountOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyDetails.LobbydetailsGetmemberattributecountApiLatest; - TargetUserId = other.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as LobbyDetailsGetMemberAttributeCountOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsGetMemberAttributeCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsGetMemberAttributeCountOptions.cs.meta deleted file mode 100644 index 1b09dc8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsGetMemberAttributeCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 47d3594bf95170944bae2adb99b28b9b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsGetMemberByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsGetMemberByIndexOptions.cs deleted file mode 100644 index 92329d3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsGetMemberByIndexOptions.cs +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class LobbyDetailsGetMemberByIndexOptions - { - /// - /// Index of the member to retrieve - /// - public uint MemberIndex { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbyDetailsGetMemberByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_MemberIndex; - - public uint MemberIndex - { - set - { - m_MemberIndex = value; - } - } - - public void Set(LobbyDetailsGetMemberByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyDetails.LobbydetailsGetmemberbyindexApiLatest; - MemberIndex = other.MemberIndex; - } - } - - public void Set(object other) - { - Set(other as LobbyDetailsGetMemberByIndexOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsGetMemberByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsGetMemberByIndexOptions.cs.meta deleted file mode 100644 index dfbc320..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsGetMemberByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 6a6b7b5e79be64349b53bfb402857d1f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsGetMemberCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsGetMemberCountOptions.cs deleted file mode 100644 index 8acafa8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsGetMemberCountOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class LobbyDetailsGetMemberCountOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbyDetailsGetMemberCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(LobbyDetailsGetMemberCountOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyDetails.LobbydetailsGetmembercountApiLatest; - } - } - - public void Set(object other) - { - Set(other as LobbyDetailsGetMemberCountOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsGetMemberCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsGetMemberCountOptions.cs.meta deleted file mode 100644 index 1af39fd..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsGetMemberCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ab8e128bbfb444248b1149b9ddec1d6c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsInfo.cs deleted file mode 100644 index 8f22889..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsInfo.cs +++ /dev/null @@ -1,247 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - public class LobbyDetailsInfo : ISettable - { - /// - /// Lobby ID - /// - public string LobbyId { get; set; } - - /// - /// The Product User ID of the current owner of the lobby - /// - public ProductUserId LobbyOwnerUserId { get; set; } - - /// - /// Permission level of the lobby - /// - public LobbyPermissionLevel PermissionLevel { get; set; } - - /// - /// Current available space - /// - public uint AvailableSlots { get; set; } - - /// - /// Max allowed members in the lobby - /// - public uint MaxMembers { get; set; } - - /// - /// If true, users can invite others to this lobby - /// - public bool AllowInvites { get; set; } - - /// - /// The main indexed parameter for this lobby, can be any string (ie "Region:GameMode") - /// - public string BucketId { get; set; } - - /// - /// Is host migration allowed - /// - public bool AllowHostMigration { get; set; } - - /// - /// Was a Real-Time Communication (RTC) room enabled at lobby creation? - /// - public bool RTCRoomEnabled { get; set; } - - internal void Set(LobbyDetailsInfoInternal? other) - { - if (other != null) - { - LobbyId = other.Value.LobbyId; - LobbyOwnerUserId = other.Value.LobbyOwnerUserId; - PermissionLevel = other.Value.PermissionLevel; - AvailableSlots = other.Value.AvailableSlots; - MaxMembers = other.Value.MaxMembers; - AllowInvites = other.Value.AllowInvites; - BucketId = other.Value.BucketId; - AllowHostMigration = other.Value.AllowHostMigration; - RTCRoomEnabled = other.Value.RTCRoomEnabled; - } - } - - public void Set(object other) - { - Set(other as LobbyDetailsInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbyDetailsInfoInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LobbyId; - private System.IntPtr m_LobbyOwnerUserId; - private LobbyPermissionLevel m_PermissionLevel; - private uint m_AvailableSlots; - private uint m_MaxMembers; - private int m_AllowInvites; - private System.IntPtr m_BucketId; - private int m_AllowHostMigration; - private int m_RTCRoomEnabled; - - public string LobbyId - { - get - { - string value; - Helper.TryMarshalGet(m_LobbyId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_LobbyId, value); - } - } - - public ProductUserId LobbyOwnerUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LobbyOwnerUserId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_LobbyOwnerUserId, value); - } - } - - public LobbyPermissionLevel PermissionLevel - { - get - { - return m_PermissionLevel; - } - - set - { - m_PermissionLevel = value; - } - } - - public uint AvailableSlots - { - get - { - return m_AvailableSlots; - } - - set - { - m_AvailableSlots = value; - } - } - - public uint MaxMembers - { - get - { - return m_MaxMembers; - } - - set - { - m_MaxMembers = value; - } - } - - public bool AllowInvites - { - get - { - bool value; - Helper.TryMarshalGet(m_AllowInvites, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_AllowInvites, value); - } - } - - public string BucketId - { - get - { - string value; - Helper.TryMarshalGet(m_BucketId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_BucketId, value); - } - } - - public bool AllowHostMigration - { - get - { - bool value; - Helper.TryMarshalGet(m_AllowHostMigration, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_AllowHostMigration, value); - } - } - - public bool RTCRoomEnabled - { - get - { - bool value; - Helper.TryMarshalGet(m_RTCRoomEnabled, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_RTCRoomEnabled, value); - } - } - - public void Set(LobbyDetailsInfo other) - { - if (other != null) - { - m_ApiVersion = LobbyDetails.LobbydetailsInfoApiLatest; - LobbyId = other.LobbyId; - LobbyOwnerUserId = other.LobbyOwnerUserId; - PermissionLevel = other.PermissionLevel; - AvailableSlots = other.AvailableSlots; - MaxMembers = other.MaxMembers; - AllowInvites = other.AllowInvites; - BucketId = other.BucketId; - AllowHostMigration = other.AllowHostMigration; - RTCRoomEnabled = other.RTCRoomEnabled; - } - } - - public void Set(object other) - { - Set(other as LobbyDetailsInfo); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LobbyId); - Helper.TryMarshalDispose(ref m_LobbyOwnerUserId); - Helper.TryMarshalDispose(ref m_BucketId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsInfo.cs.meta deleted file mode 100644 index 1358552..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyDetailsInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e59fb03a9aeb6fd4cbbbb62bd1963812 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyInterface.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyInterface.cs deleted file mode 100644 index cc93b38..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyInterface.cs +++ /dev/null @@ -1,1217 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - public sealed partial class LobbyInterface : Handle - { - public LobbyInterface() - { - } - - public LobbyInterface(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// The most recent version of the API. - /// - public const int AddnotifyjoinlobbyacceptedApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int AddnotifylobbyinviteacceptedApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int AddnotifylobbyinvitereceivedApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int AddnotifylobbymemberstatusreceivedApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int AddnotifylobbymemberupdatereceivedApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int AddnotifylobbyupdatereceivedApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int AddnotifyrtcroomconnectionchangedApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int AttributeApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int AttributedataApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int CopylobbydetailshandleApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int CopylobbydetailshandlebyinviteidApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int CopylobbydetailshandlebyuieventidApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int CreatelobbyApiLatest = 7; - - /// - /// The most recent version of the API. - /// - public const int CreatelobbysearchApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int DestroylobbyApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetinvitecountApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetinviteidbyindexApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetrtcroomnameApiLatest = 1; - - /// - /// Max length of an invite ID - /// - public const int InviteidMaxLength = 64; - - /// - /// The most recent version of the API. - /// - public const int IsrtcroomconnectedApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int JoinlobbyApiLatest = 3; - - /// - /// The most recent version of the API. - /// - public const int KickmemberApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int LeavelobbyApiLatest = 1; - - public const int LocalrtcoptionsApiLatest = 1; - - /// - /// All lobbies are referenced by a unique lobby ID - /// - public const int MaxLobbies = 16; - - public const int MaxLobbyMembers = 64; - - /// - /// Maximum number of characters allowed in the lobby id override - /// - public const int MaxLobbyidoverrideLength = 60; - - public const int MaxSearchResults = 200; - - /// - /// Minimum number of characters allowed in the lobby id override - /// - public const int MinLobbyidoverrideLength = 4; - - /// - /// The most recent version of the API. - /// - public const int PromotememberApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int QueryinvitesApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int RejectinviteApiLatest = 1; - - /// - /// Search for a matching bucket ID (value is string) - /// - public const string SearchBucketId = "bucket"; - - /// - /// Search for lobbies that contain at least this number of members (value is int) - /// - public const string SearchMincurrentmembers = "mincurrentmembers"; - - /// - /// Search for a match with min free space (value is int) - /// - public const string SearchMinslotsavailable = "minslotsavailable"; - - /// - /// The most recent version of the API. - /// - public const int SendinviteApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int UpdatelobbyApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int UpdatelobbymodificationApiLatest = 1; - - /// - /// Register to receive notifications about lobby join game accepted by local user via the overlay. - /// @note must call to remove the notification - /// - /// Structure containing information about the request. - /// Arbitrary data that is passed back to you in the CompletionDelegate. - /// A callback that is fired when a notification is received. - /// - /// handle representing the registered callback - /// - public ulong AddNotifyJoinLobbyAccepted(AddNotifyJoinLobbyAcceptedOptions options, object clientData, OnJoinLobbyAcceptedCallback notificationFn) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var notificationFnInternal = new OnJoinLobbyAcceptedCallbackInternal(OnJoinLobbyAcceptedCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - - var funcResult = Bindings.EOS_Lobby_AddNotifyJoinLobbyAccepted(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Register to receive notifications about lobby invites accepted by local user via the overlay. - /// @note must call RemoveNotifyLobbyInviteAccepted to remove the notification - /// - /// Structure containing information about the request. - /// Arbitrary data that is passed back to you in the CompletionDelegate. - /// A callback that is fired when a a notification is received. - /// - /// handle representing the registered callback - /// - public ulong AddNotifyLobbyInviteAccepted(AddNotifyLobbyInviteAcceptedOptions options, object clientData, OnLobbyInviteAcceptedCallback notificationFn) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var notificationFnInternal = new OnLobbyInviteAcceptedCallbackInternal(OnLobbyInviteAcceptedCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - - var funcResult = Bindings.EOS_Lobby_AddNotifyLobbyInviteAccepted(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Register to receive notifications about lobby invites sent to local users. - /// @note must call RemoveNotifyLobbyInviteReceived to remove the notification - /// - /// Structure containing information about the request. - /// Arbitrary data that is passed back to you in the CompletionDelegate. - /// A callback that is fired when a a notification is received. - /// - /// handle representing the registered callback - /// - public ulong AddNotifyLobbyInviteReceived(AddNotifyLobbyInviteReceivedOptions options, object clientData, OnLobbyInviteReceivedCallback notificationFn) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var notificationFnInternal = new OnLobbyInviteReceivedCallbackInternal(OnLobbyInviteReceivedCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - - var funcResult = Bindings.EOS_Lobby_AddNotifyLobbyInviteReceived(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Register to receive notifications about the changing status of lobby members. - /// @note must call RemoveNotifyLobbyMemberStatusReceived to remove the notification - /// - /// Structure containing information about the request. - /// Arbitrary data that is passed back to you in the CompletionDelegate. - /// A callback that is fired when a a notification is received. - /// - /// handle representing the registered callback - /// - public ulong AddNotifyLobbyMemberStatusReceived(AddNotifyLobbyMemberStatusReceivedOptions options, object clientData, OnLobbyMemberStatusReceivedCallback notificationFn) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var notificationFnInternal = new OnLobbyMemberStatusReceivedCallbackInternal(OnLobbyMemberStatusReceivedCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - - var funcResult = Bindings.EOS_Lobby_AddNotifyLobbyMemberStatusReceived(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Register to receive notifications when a lobby member updates the attributes associated with themselves inside the lobby. - /// @note must call RemoveNotifyLobbyMemberUpdateReceived to remove the notification - /// - /// Structure containing information about the request. - /// Arbitrary data that is passed back to you in the CompletionDelegate. - /// A callback that is fired when a a notification is received. - /// - /// handle representing the registered callback - /// - public ulong AddNotifyLobbyMemberUpdateReceived(AddNotifyLobbyMemberUpdateReceivedOptions options, object clientData, OnLobbyMemberUpdateReceivedCallback notificationFn) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var notificationFnInternal = new OnLobbyMemberUpdateReceivedCallbackInternal(OnLobbyMemberUpdateReceivedCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - - var funcResult = Bindings.EOS_Lobby_AddNotifyLobbyMemberUpdateReceived(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Register to receive notifications when a lobby owner updates the attributes associated with the lobby. - /// @note must call RemoveNotifyLobbyUpdateReceived to remove the notification - /// - /// Structure containing information about the request. - /// Arbitrary data that is passed back to you in the CompletionDelegate. - /// A callback that is fired when a a notification is received. - /// - /// handle representing the registered callback - /// - public ulong AddNotifyLobbyUpdateReceived(AddNotifyLobbyUpdateReceivedOptions options, object clientData, OnLobbyUpdateReceivedCallback notificationFn) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var notificationFnInternal = new OnLobbyUpdateReceivedCallbackInternal(OnLobbyUpdateReceivedCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - - var funcResult = Bindings.EOS_Lobby_AddNotifyLobbyUpdateReceived(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Register to receive notifications of when the RTC Room for a particular lobby has a connection status change. - /// - /// The RTC Room connection status is independent of the lobby connection status, however the lobby system will attempt to keep - /// them consistent, automatically connecting to the RTC room after joining a lobby which has an associated RTC room and disconnecting - /// from the RTC room when a lobby is left or disconnected. - /// - /// This notification is entirely informational and requires no action in response by the application. If the connected status is offline - /// (bIsConnected is false), the connection will automatically attempt to reconnect. The purpose of this notification is to allow - /// applications to show the current connection status of the RTC room when the connection is not established. - /// - /// Unlike , should not be called when the RTC room is disconnected. - /// - /// This function will only succeed when called on a lobby the local user is currently a member of. - /// - /// - /// Structure containing information about the lobby to receive updates about - /// Arbitrary data that is passed back to you in the CompletionDelegate. - /// The function to call if the RTC Room's connection status changes - /// - /// A valid notification ID if the NotificationFn was successfully registered, or if the input was invalid, the lobby did not exist, or the lobby did not have an RTC room. - /// - public ulong AddNotifyRTCRoomConnectionChanged(AddNotifyRTCRoomConnectionChangedOptions options, object clientData, OnRTCRoomConnectionChangedCallback notificationFn) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var notificationFnInternal = new OnRTCRoomConnectionChangedCallbackInternal(OnRTCRoomConnectionChangedCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - - var funcResult = Bindings.EOS_Lobby_AddNotifyRTCRoomConnectionChanged(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Create a handle to an existing lobby. - /// If the call returns an result, the out parameter, OutLobbyDetailsHandle, must be passed to to release the memory associated with it. - /// - /// Structure containing information about the lobby to retrieve - /// The new active lobby handle or null if there was an error - /// - /// if the lobby handle was created successfully - /// if any of the options are incorrect - /// if the API version passed in is incorrect - /// if the lobby doesn't exist - /// - public Result CopyLobbyDetailsHandle(CopyLobbyDetailsHandleOptions options, out LobbyDetails outLobbyDetailsHandle) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outLobbyDetailsHandleAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Lobby_CopyLobbyDetailsHandle(InnerHandle, optionsAddress, ref outLobbyDetailsHandleAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryMarshalGet(outLobbyDetailsHandleAddress, out outLobbyDetailsHandle); - - return funcResult; - } - - /// - /// is used to immediately retrieve a handle to the lobby information from after notification of an invite - /// If the call returns an result, the out parameter, OutLobbyDetailsHandle, must be passed to to release the memory associated with it. - /// - /// - /// - /// Structure containing the input parameters - /// out parameter used to receive the lobby handle - /// - /// if the information is available and passed out in OutLobbyDetailsHandle - /// if you pass an invalid invite ID or a null pointer for the out parameter - /// if the API version passed in is incorrect - /// If the invite ID cannot be found - /// - public Result CopyLobbyDetailsHandleByInviteId(CopyLobbyDetailsHandleByInviteIdOptions options, out LobbyDetails outLobbyDetailsHandle) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outLobbyDetailsHandleAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Lobby_CopyLobbyDetailsHandleByInviteId(InnerHandle, optionsAddress, ref outLobbyDetailsHandleAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryMarshalGet(outLobbyDetailsHandleAddress, out outLobbyDetailsHandle); - - return funcResult; - } - - /// - /// is used to immediately retrieve a handle to the lobby information from after notification of an join game - /// If the call returns an result, the out parameter, OutLobbyDetailsHandle, must be passed to to release the memory associated with it. - /// - /// - /// - /// Structure containing the input parameters - /// out parameter used to receive the lobby handle - /// - /// if the information is available and passed out in OutLobbyDetailsHandle - /// if you pass an invalid ui event ID - /// if the API version passed in is incorrect - /// If the invite ID cannot be found - /// - public Result CopyLobbyDetailsHandleByUiEventId(CopyLobbyDetailsHandleByUiEventIdOptions options, out LobbyDetails outLobbyDetailsHandle) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outLobbyDetailsHandleAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Lobby_CopyLobbyDetailsHandleByUiEventId(InnerHandle, optionsAddress, ref outLobbyDetailsHandleAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryMarshalGet(outLobbyDetailsHandleAddress, out outLobbyDetailsHandle); - - return funcResult; - } - - /// - /// Creates a lobby and adds the user to the lobby membership. There is no data associated with the lobby at the start and can be added vis - /// - /// If the lobby is successfully created with an RTC Room enabled, the lobby system will automatically join and maintain the connection to the RTC room as long as the - /// local user remains in the lobby. Applications can use the to get the name of the RTC Room associated with a lobby, which may be used with - /// suite of functions. This can be useful to: register for notifications for talking status; to mute or unmute the local user's audio output; - /// to block or unblock room participants; to set local audio device settings; and more. - /// - /// Required fields for the creation of a lobby such as a user count and its starting advertised state - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// A callback that is fired when the create operation completes, either successfully or in error - /// - /// if the creation completes successfully - /// if any of the options are incorrect - /// if the number of allowed lobbies is exceeded - /// - public void CreateLobby(CreateLobbyOptions options, object clientData, OnCreateLobbyCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnCreateLobbyCallbackInternal(OnCreateLobbyCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Lobby_CreateLobby(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Create a lobby search handle. This handle may be modified to include various search parameters. - /// Searching is possible in three methods, all mutually exclusive - /// - set the lobby ID to find a specific lobby - /// - set the target user ID to find a specific user - /// - set lobby parameters to find an array of lobbies that match the search criteria (not available yet) - /// - /// Structure containing required parameters such as the maximum number of search results - /// The new search handle or null if there was an error creating the search handle - /// - /// if the search creation completes successfully - /// if any of the options are incorrect - /// - public Result CreateLobbySearch(CreateLobbySearchOptions options, out LobbySearch outLobbySearchHandle) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outLobbySearchHandleAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Lobby_CreateLobbySearch(InnerHandle, optionsAddress, ref outLobbySearchHandleAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryMarshalGet(outLobbySearchHandleAddress, out outLobbySearchHandle); - - return funcResult; - } - - /// - /// Destroy a lobby given a lobby ID - /// - /// Structure containing information about the lobby to be destroyed - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// A callback that is fired when the destroy operation completes, either successfully or in error - /// - /// if the destroy completes successfully - /// if any of the options are incorrect - /// if the lobby is already marked for destroy - /// if the lobby to be destroyed does not exist - /// - public void DestroyLobby(DestroyLobbyOptions options, object clientData, OnDestroyLobbyCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnDestroyLobbyCallbackInternal(OnDestroyLobbyCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Lobby_DestroyLobby(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Get the number of known invites for a given user - /// - /// the Options associated with retrieving the current invite count - /// - /// number of known invites for a given user or 0 if there is an error - /// - public uint GetInviteCount(GetInviteCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Lobby_GetInviteCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Retrieve an invite ID from a list of active invites for a given user - /// - /// - /// - /// Structure containing the input parameters - /// - /// if the input is valid and an invite ID was returned - /// if any of the options are incorrect - /// if the invite doesn't exist - /// - public Result GetInviteIdByIndex(GetInviteIdByIndexOptions options, out string outBuffer) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - System.IntPtr outBufferAddress = System.IntPtr.Zero; - int inOutBufferLength = InviteidMaxLength + 1; - Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength, out _); - - var funcResult = Bindings.EOS_Lobby_GetInviteIdByIndex(InnerHandle, optionsAddress, outBufferAddress, ref inOutBufferLength); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryMarshalGet(outBufferAddress, out outBuffer); - Helper.TryMarshalDispose(ref outBufferAddress); - - return funcResult; - } - - /// - /// Get the name of the RTC room associated with a specific lobby a local user belongs to. - /// - /// suite of functions. RTC Room Names must not be used with - /// , , or . Doing so will return or - /// if used with those functions. - /// - /// This function will only succeed when called on a lobby the local user is currently a member of. - /// - /// Structure containing information about the RTC room name to retrieve - /// The buffer to store the null-terminated room name string within - /// In: The maximum amount of writable chars in OutBuffer, Out: The minimum amount of chars needed in OutBuffer to store the RTC room name (including the null-terminator) - /// - /// if a room exists for the specified lobby, there was enough space in OutBuffer, and the name was written successfully - /// if the lobby does not exist - /// if the lobby exists, but did not have the RTC Room feature enabled when created - /// if you pass a null pointer on invalid length for any of the parameters - /// The OutBuffer is not large enough to receive the room name. InOutBufferLength contains the required minimum length to perform the operation successfully. - /// - public Result GetRTCRoomName(GetRTCRoomNameOptions options, out string outBuffer) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - System.IntPtr outBufferAddress = System.IntPtr.Zero; - uint inOutBufferLength = 256; - Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength, out _); - - var funcResult = Bindings.EOS_Lobby_GetRTCRoomName(InnerHandle, optionsAddress, outBufferAddress, ref inOutBufferLength); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryMarshalGet(outBufferAddress, out outBuffer); - Helper.TryMarshalDispose(ref outBufferAddress); - - return funcResult; - } - - /// - /// Get the current connection status of the RTC Room for a lobby. - /// - /// The RTC Room connection status is independent of the lobby connection status, however the lobby system will attempt to keep - /// them consistent, automatically connecting to the RTC room after joining a lobby which has an associated RTC room and disconnecting - /// from the RTC room when a lobby is left or disconnected. - /// - /// This function will only succeed when called on a lobby the local user is currently a member of. - /// - /// - /// Structure containing information about the lobby to query the RTC Room connection status for - /// If the result is , this will be set to true if we are connected, or false if we are not yet connected. - /// - /// if we are connected to the specified lobby, the input options and parameters were valid and we were able to write to bOutIsConnected successfully. - /// if the lobby doesn't exist - /// if the lobby exists, but did not have the RTC Room feature enabled when created - /// if bOutIsConnected is NULL, or any other parameters are NULL or invalid - /// - public Result IsRTCRoomConnected(IsRTCRoomConnectedOptions options, out bool bOutIsConnected) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - int bOutIsConnectedInt = 0; - - var funcResult = Bindings.EOS_Lobby_IsRTCRoomConnected(InnerHandle, optionsAddress, ref bOutIsConnectedInt); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryMarshalGet(bOutIsConnectedInt, out bOutIsConnected); - - return funcResult; - } - - /// - /// Join a lobby, creating a local instance under a given lobby ID. Backend will validate various conditions to make sure it is possible to join the lobby. - /// - /// If the lobby is successfully join has an RTC Room enabled, the lobby system will automatically join and maintain the connection to the RTC room as long as the - /// local user remains in the lobby. Applications can use the to get the name of the RTC Room associated with a lobby, which may be used with - /// suite of functions. This can be useful to: register for notifications for talking status; to mute or unmute the local user's audio output; - /// to block or unblock room participants; to set local audio device settings; and more. - /// - /// Structure containing information about the lobby to be joined - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// A callback that is fired when the join operation completes, either successfully or in error - /// - /// if the destroy completes successfully - /// if any of the options are incorrect - /// - public void JoinLobby(JoinLobbyOptions options, object clientData, OnJoinLobbyCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnJoinLobbyCallbackInternal(OnJoinLobbyCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Lobby_JoinLobby(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Kick an existing member from the lobby - /// - /// Structure containing information about the lobby and member to be kicked - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// A callback that is fired when the kick operation completes, either successfully or in error - /// - /// if the kick completes successfully - /// if any of the options are incorrect - /// if the calling user is not the owner of the lobby - /// if a lobby of interest does not exist - /// - public void KickMember(KickMemberOptions options, object clientData, OnKickMemberCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnKickMemberCallbackInternal(OnKickMemberCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Lobby_KickMember(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Leave a lobby given a lobby ID - /// - /// If the lobby you are leaving had an RTC Room enabled, leaving the lobby will also automatically leave the RTC room. - /// - /// Structure containing information about the lobby to be left - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// A callback that is fired when the leave operation completes, either successfully or in error - /// - /// if the leave completes successfully - /// if any of the options are incorrect - /// if the lobby is already marked for leave - /// if a lobby to be left does not exist - /// - public void LeaveLobby(LeaveLobbyOptions options, object clientData, OnLeaveLobbyCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnLeaveLobbyCallbackInternal(OnLeaveLobbyCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Lobby_LeaveLobby(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Promote an existing member of the lobby to owner, allowing them to make lobby data modifications - /// - /// Structure containing information about the lobby and member to be promoted - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// A callback that is fired when the promotion operation completes, either successfully or in error - /// - /// if the promote completes successfully - /// if any of the options are incorrect - /// if the calling user is not the owner of the lobby - /// if the lobby of interest does not exist - /// - public void PromoteMember(PromoteMemberOptions options, object clientData, OnPromoteMemberCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnPromoteMemberCallbackInternal(OnPromoteMemberCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Lobby_PromoteMember(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Retrieve all existing invites for a single user - /// - /// Structure containing information about the invites to query - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// A callback that is fired when the query invites operation completes, either successfully or in error - public void QueryInvites(QueryInvitesOptions options, object clientData, OnQueryInvitesCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnQueryInvitesCallbackInternal(OnQueryInvitesCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Lobby_QueryInvites(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Reject an invite from another user. - /// - /// Structure containing information about the invite to reject - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// A callback that is fired when the reject invite operation completes, either successfully or in error - /// - /// if the invite rejection completes successfully - /// if any of the options are incorrect - /// if the invite does not exist - /// - public void RejectInvite(RejectInviteOptions options, object clientData, OnRejectInviteCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnRejectInviteCallbackInternal(OnRejectInviteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Lobby_RejectInvite(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Unregister from receiving notifications when a user accepts a lobby invitation via the overlay. - /// - /// Handle representing the registered callback - public void RemoveNotifyJoinLobbyAccepted(ulong inId) - { - Helper.TryRemoveCallbackByNotificationId(inId); - - Bindings.EOS_Lobby_RemoveNotifyJoinLobbyAccepted(InnerHandle, inId); - } - - /// - /// Unregister from receiving notifications when a user accepts a lobby invitation via the overlay. - /// - /// Handle representing the registered callback - public void RemoveNotifyLobbyInviteAccepted(ulong inId) - { - Helper.TryRemoveCallbackByNotificationId(inId); - - Bindings.EOS_Lobby_RemoveNotifyLobbyInviteAccepted(InnerHandle, inId); - } - - /// - /// Unregister from receiving notifications when a user receives a lobby invitation. - /// - /// Handle representing the registered callback - public void RemoveNotifyLobbyInviteReceived(ulong inId) - { - Helper.TryRemoveCallbackByNotificationId(inId); - - Bindings.EOS_Lobby_RemoveNotifyLobbyInviteReceived(InnerHandle, inId); - } - - /// - /// Unregister from receiving notifications when lobby members status change. - /// - /// Handle representing the registered callback - public void RemoveNotifyLobbyMemberStatusReceived(ulong inId) - { - Helper.TryRemoveCallbackByNotificationId(inId); - - Bindings.EOS_Lobby_RemoveNotifyLobbyMemberStatusReceived(InnerHandle, inId); - } - - /// - /// Unregister from receiving notifications when lobby members change their data. - /// - /// Handle representing the registered callback - public void RemoveNotifyLobbyMemberUpdateReceived(ulong inId) - { - Helper.TryRemoveCallbackByNotificationId(inId); - - Bindings.EOS_Lobby_RemoveNotifyLobbyMemberUpdateReceived(InnerHandle, inId); - } - - /// - /// Unregister from receiving notifications when a lobby changes its data. - /// - /// Handle representing the registered callback - public void RemoveNotifyLobbyUpdateReceived(ulong inId) - { - Helper.TryRemoveCallbackByNotificationId(inId); - - Bindings.EOS_Lobby_RemoveNotifyLobbyUpdateReceived(InnerHandle, inId); - } - - /// - /// Unregister from receiving notifications when an RTC Room's connection status changes. - /// - /// This should be called when the local user is leaving a lobby. - /// - /// - /// Handle representing the registered callback - public void RemoveNotifyRTCRoomConnectionChanged(ulong inId) - { - Helper.TryRemoveCallbackByNotificationId(inId); - - Bindings.EOS_Lobby_RemoveNotifyRTCRoomConnectionChanged(InnerHandle, inId); - } - - /// - /// Send an invite to another user. User must be a member of the lobby or else the call will fail - /// - /// Structure containing information about the lobby and user to invite - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// A callback that is fired when the send invite operation completes, either successfully or in error - /// - /// if the send invite completes successfully - /// if any of the options are incorrect - /// if the lobby to send the invite from does not exist - /// - public void SendInvite(SendInviteOptions options, object clientData, OnSendInviteCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnSendInviteCallbackInternal(OnSendInviteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Lobby_SendInvite(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Update a lobby given a lobby modification handle created by - /// - /// Structure containing information about the lobby to be updated - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// A callback that is fired when the update operation completes, either successfully or in error - /// - /// if the update completes successfully - /// if any of the options are incorrect - /// if the lobby modification contains modifications that are only allowed by the owner - /// if the lobby to update does not exist - /// - public void UpdateLobby(UpdateLobbyOptions options, object clientData, OnUpdateLobbyCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnUpdateLobbyCallbackInternal(OnUpdateLobbyCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Lobby_UpdateLobby(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Creates a lobby modification handle (). The lobby modification handle is used to modify an existing lobby and can be applied with . - /// The must be released by calling once it is no longer needed. - /// - /// - /// - /// - /// Required fields such as lobby ID - /// Pointer to a Lobby Modification Handle only set if successful - /// - /// if we successfully created the Lobby Modification Handle pointed at in OutLobbyModificationHandle, or an error result if the input data was invalid - /// if any of the options are incorrect - /// - public Result UpdateLobbyModification(UpdateLobbyModificationOptions options, out LobbyModification outLobbyModificationHandle) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outLobbyModificationHandleAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Lobby_UpdateLobbyModification(InnerHandle, optionsAddress, ref outLobbyModificationHandleAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryMarshalGet(outLobbyModificationHandleAddress, out outLobbyModificationHandle); - - return funcResult; - } - - [MonoPInvokeCallback(typeof(OnCreateLobbyCallbackInternal))] - internal static void OnCreateLobbyCallbackInternalImplementation(System.IntPtr data) - { - OnCreateLobbyCallback callback; - CreateLobbyCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnDestroyLobbyCallbackInternal))] - internal static void OnDestroyLobbyCallbackInternalImplementation(System.IntPtr data) - { - OnDestroyLobbyCallback callback; - DestroyLobbyCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnJoinLobbyAcceptedCallbackInternal))] - internal static void OnJoinLobbyAcceptedCallbackInternalImplementation(System.IntPtr data) - { - OnJoinLobbyAcceptedCallback callback; - JoinLobbyAcceptedCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnJoinLobbyCallbackInternal))] - internal static void OnJoinLobbyCallbackInternalImplementation(System.IntPtr data) - { - OnJoinLobbyCallback callback; - JoinLobbyCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnKickMemberCallbackInternal))] - internal static void OnKickMemberCallbackInternalImplementation(System.IntPtr data) - { - OnKickMemberCallback callback; - KickMemberCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnLeaveLobbyCallbackInternal))] - internal static void OnLeaveLobbyCallbackInternalImplementation(System.IntPtr data) - { - OnLeaveLobbyCallback callback; - LeaveLobbyCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnLobbyInviteAcceptedCallbackInternal))] - internal static void OnLobbyInviteAcceptedCallbackInternalImplementation(System.IntPtr data) - { - OnLobbyInviteAcceptedCallback callback; - LobbyInviteAcceptedCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnLobbyInviteReceivedCallbackInternal))] - internal static void OnLobbyInviteReceivedCallbackInternalImplementation(System.IntPtr data) - { - OnLobbyInviteReceivedCallback callback; - LobbyInviteReceivedCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnLobbyMemberStatusReceivedCallbackInternal))] - internal static void OnLobbyMemberStatusReceivedCallbackInternalImplementation(System.IntPtr data) - { - OnLobbyMemberStatusReceivedCallback callback; - LobbyMemberStatusReceivedCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnLobbyMemberUpdateReceivedCallbackInternal))] - internal static void OnLobbyMemberUpdateReceivedCallbackInternalImplementation(System.IntPtr data) - { - OnLobbyMemberUpdateReceivedCallback callback; - LobbyMemberUpdateReceivedCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnLobbyUpdateReceivedCallbackInternal))] - internal static void OnLobbyUpdateReceivedCallbackInternalImplementation(System.IntPtr data) - { - OnLobbyUpdateReceivedCallback callback; - LobbyUpdateReceivedCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnPromoteMemberCallbackInternal))] - internal static void OnPromoteMemberCallbackInternalImplementation(System.IntPtr data) - { - OnPromoteMemberCallback callback; - PromoteMemberCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnQueryInvitesCallbackInternal))] - internal static void OnQueryInvitesCallbackInternalImplementation(System.IntPtr data) - { - OnQueryInvitesCallback callback; - QueryInvitesCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnRTCRoomConnectionChangedCallbackInternal))] - internal static void OnRTCRoomConnectionChangedCallbackInternalImplementation(System.IntPtr data) - { - OnRTCRoomConnectionChangedCallback callback; - RTCRoomConnectionChangedCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnRejectInviteCallbackInternal))] - internal static void OnRejectInviteCallbackInternalImplementation(System.IntPtr data) - { - OnRejectInviteCallback callback; - RejectInviteCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnSendInviteCallbackInternal))] - internal static void OnSendInviteCallbackInternalImplementation(System.IntPtr data) - { - OnSendInviteCallback callback; - SendInviteCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnUpdateLobbyCallbackInternal))] - internal static void OnUpdateLobbyCallbackInternalImplementation(System.IntPtr data) - { - OnUpdateLobbyCallback callback; - UpdateLobbyCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyInterface.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyInterface.cs.meta deleted file mode 100644 index c4b6363..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4cf470e52d488764b816ce1ac64d60cd -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyInviteAcceptedCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyInviteAcceptedCallbackInfo.cs deleted file mode 100644 index ee5d0e7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyInviteAcceptedCallbackInfo.cs +++ /dev/null @@ -1,126 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Output parameters for the Function. - /// - public class LobbyInviteAcceptedCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The invite ID - /// - public string InviteId { get; private set; } - - /// - /// The Product User ID of the local user who received the invitation - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The Product User ID of the user who sent the invitation - /// - public ProductUserId TargetUserId { get; private set; } - - /// - /// Lobby ID that the user has been invited to - /// - public string LobbyId { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(LobbyInviteAcceptedCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - InviteId = other.Value.InviteId; - LocalUserId = other.Value.LocalUserId; - TargetUserId = other.Value.TargetUserId; - LobbyId = other.Value.LobbyId; - } - } - - public void Set(object other) - { - Set(other as LobbyInviteAcceptedCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbyInviteAcceptedCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_InviteId; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - private System.IntPtr m_LobbyId; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public string InviteId - { - get - { - string value; - Helper.TryMarshalGet(m_InviteId, out value); - return value; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public ProductUserId TargetUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_TargetUserId, out value); - return value; - } - } - - public string LobbyId - { - get - { - string value; - Helper.TryMarshalGet(m_LobbyId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyInviteAcceptedCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyInviteAcceptedCallbackInfo.cs.meta deleted file mode 100644 index a1434c5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyInviteAcceptedCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 924fbd75809943c44bb73966376ef419 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyInviteReceivedCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyInviteReceivedCallbackInfo.cs deleted file mode 100644 index 950e80e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyInviteReceivedCallbackInfo.cs +++ /dev/null @@ -1,109 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Output parameters for the Function. - /// - public class LobbyInviteReceivedCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The ID of the invitation - /// - public string InviteId { get; private set; } - - /// - /// The Product User ID of the local user who received the invitation - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The Product User ID of the user who sent the invitation - /// - public ProductUserId TargetUserId { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(LobbyInviteReceivedCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - InviteId = other.Value.InviteId; - LocalUserId = other.Value.LocalUserId; - TargetUserId = other.Value.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as LobbyInviteReceivedCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbyInviteReceivedCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_InviteId; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public string InviteId - { - get - { - string value; - Helper.TryMarshalGet(m_InviteId, out value); - return value; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public ProductUserId TargetUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_TargetUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyInviteReceivedCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyInviteReceivedCallbackInfo.cs.meta deleted file mode 100644 index eaaf299..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyInviteReceivedCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: af862d10176f4774d93b2c827b26ab72 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyMemberStatus.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyMemberStatus.cs deleted file mode 100644 index fee9e63..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyMemberStatus.cs +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Various types of lobby member updates - /// - public enum LobbyMemberStatus : int - { - /// - /// The user has joined the lobby - /// - Joined = 0, - /// - /// The user has explicitly left the lobby - /// - Left = 1, - /// - /// The user has unexpectedly left the lobby - /// - Disconnected = 2, - /// - /// The user has been kicked from the lobby - /// - Kicked = 3, - /// - /// The user has been promoted to lobby owner - /// - Promoted = 4, - /// - /// The lobby has been closed and user has been removed - /// - Closed = 5 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyMemberStatus.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyMemberStatus.cs.meta deleted file mode 100644 index 6cc4965..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyMemberStatus.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 76cc95b70b7f1c64b9152bcd8892792b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyMemberStatusReceivedCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyMemberStatusReceivedCallbackInfo.cs deleted file mode 100644 index c52a12b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyMemberStatusReceivedCallbackInfo.cs +++ /dev/null @@ -1,107 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Output parameters for the function. - /// - public class LobbyMemberStatusReceivedCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The ID of the lobby - /// - public string LobbyId { get; private set; } - - /// - /// The Product User ID of the lobby member - /// - public ProductUserId TargetUserId { get; private set; } - - /// - /// Latest status of the user - /// - public LobbyMemberStatus CurrentStatus { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(LobbyMemberStatusReceivedCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - LobbyId = other.Value.LobbyId; - TargetUserId = other.Value.TargetUserId; - CurrentStatus = other.Value.CurrentStatus; - } - } - - public void Set(object other) - { - Set(other as LobbyMemberStatusReceivedCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbyMemberStatusReceivedCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_LobbyId; - private System.IntPtr m_TargetUserId; - private LobbyMemberStatus m_CurrentStatus; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public string LobbyId - { - get - { - string value; - Helper.TryMarshalGet(m_LobbyId, out value); - return value; - } - } - - public ProductUserId TargetUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_TargetUserId, out value); - return value; - } - } - - public LobbyMemberStatus CurrentStatus - { - get - { - return m_CurrentStatus; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyMemberStatusReceivedCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyMemberStatusReceivedCallbackInfo.cs.meta deleted file mode 100644 index e74f2bf..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyMemberStatusReceivedCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 124b0c5df211d0f4eb33d251800e8455 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyMemberUpdateReceivedCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyMemberUpdateReceivedCallbackInfo.cs deleted file mode 100644 index 14f1026..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyMemberUpdateReceivedCallbackInfo.cs +++ /dev/null @@ -1,92 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Output parameters for the Function. - /// - public class LobbyMemberUpdateReceivedCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The ID of the lobby - /// - public string LobbyId { get; private set; } - - /// - /// The Product User ID of the lobby member - /// - public ProductUserId TargetUserId { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(LobbyMemberUpdateReceivedCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - LobbyId = other.Value.LobbyId; - TargetUserId = other.Value.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as LobbyMemberUpdateReceivedCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbyMemberUpdateReceivedCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_LobbyId; - private System.IntPtr m_TargetUserId; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public string LobbyId - { - get - { - string value; - Helper.TryMarshalGet(m_LobbyId, out value); - return value; - } - } - - public ProductUserId TargetUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_TargetUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyMemberUpdateReceivedCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyMemberUpdateReceivedCallbackInfo.cs.meta deleted file mode 100644 index 713fe82..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyMemberUpdateReceivedCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0153be0e4f1c361459aaef9d3acbc2ae -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModification.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModification.cs deleted file mode 100644 index 3fbdfac..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModification.cs +++ /dev/null @@ -1,244 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - public sealed partial class LobbyModification : Handle - { - public LobbyModification() - { - } - - public LobbyModification(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// The most recent version of the API. - /// - public const int LobbymodificationAddattributeApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int LobbymodificationAddmemberattributeApiLatest = 1; - - /// - /// Maximum length of the name of the attribute associated with the lobby - /// - public const int LobbymodificationMaxAttributeLength = 64; - - /// - /// Maximum number of attributes allowed on the lobby - /// - public const int LobbymodificationMaxAttributes = 64; - - /// - /// The most recent version of the API. - /// - public const int LobbymodificationRemoveattributeApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int LobbymodificationRemovememberattributeApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int LobbymodificationSetbucketidApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int LobbymodificationSetinvitesallowedApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int LobbymodificationSetmaxmembersApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int LobbymodificationSetpermissionlevelApiLatest = 1; - - /// - /// Associate an attribute with this lobby - /// An attribute is something may be public or private with the lobby. - /// If public, it can be queried for in a search, otherwise the data remains known only to lobby members - /// - /// Options to set the attribute and its visibility state - /// - /// if setting this parameter was successful - /// if the attribute is missing information or otherwise invalid - /// if the API version passed in is incorrect - /// - public Result AddAttribute(LobbyModificationAddAttributeOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_LobbyModification_AddAttribute(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Associate an attribute with a member of the lobby - /// Lobby member data is always private to the lobby - /// - /// Options to set the attribute and its visibility state - /// - /// if setting this parameter was successful - /// if the attribute is missing information or otherwise invalid - /// if the API version passed in is incorrect - /// - public Result AddMemberAttribute(LobbyModificationAddMemberAttributeOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_LobbyModification_AddMemberAttribute(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - public void Release() - { - Bindings.EOS_LobbyModification_Release(InnerHandle); - } - - /// - /// Remove an attribute associated with the lobby - /// - /// Specify the key of the attribute to remove - /// - /// if removing this parameter was successful - /// if the key is null or empty - /// if the API version passed in is incorrect - /// - public Result RemoveAttribute(LobbyModificationRemoveAttributeOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_LobbyModification_RemoveAttribute(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Remove an attribute associated with of member of the lobby - /// - /// Specify the key of the member attribute to remove - /// - /// if removing this parameter was successful - /// if the key is null or empty - /// if the API version passed in is incorrect - /// - public Result RemoveMemberAttribute(LobbyModificationRemoveMemberAttributeOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_LobbyModification_RemoveMemberAttribute(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Set the bucket ID associated with this lobby. - /// Values such as region, game mode, etc can be combined here depending on game need. - /// Setting this is strongly recommended to improve search performance. - /// - /// Options associated with the bucket ID of the lobby - /// - /// if setting this parameter was successful - /// if the bucket ID is invalid or null - /// if the API version passed in is incorrect - /// - public Result SetBucketId(LobbyModificationSetBucketIdOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_LobbyModification_SetBucketId(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Allows enabling or disabling invites for this lobby. - /// The lobby will also need to have `bPresenceEnabled` true. - /// - /// Options associated with invites allowed flag for this lobby. - /// - /// if setting this parameter was successful - /// if the API version passed in is incorrect - /// - public Result SetInvitesAllowed(LobbyModificationSetInvitesAllowedOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_LobbyModification_SetInvitesAllowed(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Set the maximum number of members allowed in this lobby. - /// When updating the lobby, it is not possible to reduce this number below the current number of existing members - /// - /// Options associated with max number of members in this lobby - /// - /// if setting this parameter was successful - /// if the API version passed in is incorrect - /// - public Result SetMaxMembers(LobbyModificationSetMaxMembersOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_LobbyModification_SetMaxMembers(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Set the permissions associated with this lobby. - /// The permissions range from "public" to "invite only" and are described by - /// - /// Options associated with the permission level of the lobby - /// - /// if setting this parameter was successful - /// if the API version passed in is incorrect - /// - public Result SetPermissionLevel(LobbyModificationSetPermissionLevelOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_LobbyModification_SetPermissionLevel(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModification.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModification.cs.meta deleted file mode 100644 index 8adcd36..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModification.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4e2f9b3fc8d61c441aea828c91b37bd6 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationAddAttributeOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationAddAttributeOptions.cs deleted file mode 100644 index 19c091c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationAddAttributeOptions.cs +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class LobbyModificationAddAttributeOptions - { - /// - /// Key/Value pair describing the attribute to add to the lobby - /// - public AttributeData Attribute { get; set; } - - /// - /// Is this attribute public or private to the lobby and its members - /// - public LobbyAttributeVisibility Visibility { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbyModificationAddAttributeOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Attribute; - private LobbyAttributeVisibility m_Visibility; - - public AttributeData Attribute - { - set - { - Helper.TryMarshalSet(ref m_Attribute, value); - } - } - - public LobbyAttributeVisibility Visibility - { - set - { - m_Visibility = value; - } - } - - public void Set(LobbyModificationAddAttributeOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyModification.LobbymodificationAddattributeApiLatest; - Attribute = other.Attribute; - Visibility = other.Visibility; - } - } - - public void Set(object other) - { - Set(other as LobbyModificationAddAttributeOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Attribute); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationAddAttributeOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationAddAttributeOptions.cs.meta deleted file mode 100644 index ec86090..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationAddAttributeOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b57f1cb4f9538b14ba264d3161ba788c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationAddMemberAttributeOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationAddMemberAttributeOptions.cs deleted file mode 100644 index c19ad0a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationAddMemberAttributeOptions.cs +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class LobbyModificationAddMemberAttributeOptions - { - /// - /// Key/Value pair describing the attribute to add to the lobby member - /// - public AttributeData Attribute { get; set; } - - /// - /// Is this attribute public or private to the rest of the lobby members - /// - public LobbyAttributeVisibility Visibility { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbyModificationAddMemberAttributeOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Attribute; - private LobbyAttributeVisibility m_Visibility; - - public AttributeData Attribute - { - set - { - Helper.TryMarshalSet(ref m_Attribute, value); - } - } - - public LobbyAttributeVisibility Visibility - { - set - { - m_Visibility = value; - } - } - - public void Set(LobbyModificationAddMemberAttributeOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyModification.LobbymodificationAddmemberattributeApiLatest; - Attribute = other.Attribute; - Visibility = other.Visibility; - } - } - - public void Set(object other) - { - Set(other as LobbyModificationAddMemberAttributeOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Attribute); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationAddMemberAttributeOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationAddMemberAttributeOptions.cs.meta deleted file mode 100644 index 8eb2253..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationAddMemberAttributeOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 6d6d0df78ae5bcb428fb236b0da80236 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationRemoveAttributeOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationRemoveAttributeOptions.cs deleted file mode 100644 index 97b7f6c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationRemoveAttributeOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class LobbyModificationRemoveAttributeOptions - { - /// - /// Name of the key - /// - public string Key { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbyModificationRemoveAttributeOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Key; - - public string Key - { - set - { - Helper.TryMarshalSet(ref m_Key, value); - } - } - - public void Set(LobbyModificationRemoveAttributeOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyModification.LobbymodificationRemoveattributeApiLatest; - Key = other.Key; - } - } - - public void Set(object other) - { - Set(other as LobbyModificationRemoveAttributeOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Key); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationRemoveAttributeOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationRemoveAttributeOptions.cs.meta deleted file mode 100644 index 5fafc57..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationRemoveAttributeOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4d65f0ac8a2599d41adde96315eec30a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationRemoveMemberAttributeOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationRemoveMemberAttributeOptions.cs deleted file mode 100644 index 3d5bca0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationRemoveMemberAttributeOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class LobbyModificationRemoveMemberAttributeOptions - { - /// - /// Name of the key - /// - public string Key { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbyModificationRemoveMemberAttributeOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Key; - - public string Key - { - set - { - Helper.TryMarshalSet(ref m_Key, value); - } - } - - public void Set(LobbyModificationRemoveMemberAttributeOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyModification.LobbymodificationRemovememberattributeApiLatest; - Key = other.Key; - } - } - - public void Set(object other) - { - Set(other as LobbyModificationRemoveMemberAttributeOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Key); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationRemoveMemberAttributeOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationRemoveMemberAttributeOptions.cs.meta deleted file mode 100644 index 100845a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationRemoveMemberAttributeOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 5c327c214e2d96242975f58819347731 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationSetBucketIdOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationSetBucketIdOptions.cs deleted file mode 100644 index d27835b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationSetBucketIdOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class LobbyModificationSetBucketIdOptions - { - /// - /// The new bucket id associated with the lobby - /// - public string BucketId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbyModificationSetBucketIdOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_BucketId; - - public string BucketId - { - set - { - Helper.TryMarshalSet(ref m_BucketId, value); - } - } - - public void Set(LobbyModificationSetBucketIdOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyModification.LobbymodificationSetbucketidApiLatest; - BucketId = other.BucketId; - } - } - - public void Set(object other) - { - Set(other as LobbyModificationSetBucketIdOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_BucketId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationSetBucketIdOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationSetBucketIdOptions.cs.meta deleted file mode 100644 index 1b88b4d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationSetBucketIdOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 104386af86b484c4089028dd52fe6587 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationSetInvitesAllowedOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationSetInvitesAllowedOptions.cs deleted file mode 100644 index 89602c8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationSetInvitesAllowedOptions.cs +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the Function. - /// - public class LobbyModificationSetInvitesAllowedOptions - { - /// - /// If true then invites can currently be sent for the associated lobby - /// - public bool InvitesAllowed { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbyModificationSetInvitesAllowedOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private int m_InvitesAllowed; - - public bool InvitesAllowed - { - set - { - Helper.TryMarshalSet(ref m_InvitesAllowed, value); - } - } - - public void Set(LobbyModificationSetInvitesAllowedOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyModification.LobbymodificationSetinvitesallowedApiLatest; - InvitesAllowed = other.InvitesAllowed; - } - } - - public void Set(object other) - { - Set(other as LobbyModificationSetInvitesAllowedOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationSetInvitesAllowedOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationSetInvitesAllowedOptions.cs.meta deleted file mode 100644 index f5dd4c9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationSetInvitesAllowedOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ec51645bcc05a9b4f883564b7f8164bd -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationSetMaxMembersOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationSetMaxMembersOptions.cs deleted file mode 100644 index 021eb55..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationSetMaxMembersOptions.cs +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class LobbyModificationSetMaxMembersOptions - { - /// - /// New maximum number of lobby members - /// - public uint MaxMembers { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbyModificationSetMaxMembersOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_MaxMembers; - - public uint MaxMembers - { - set - { - m_MaxMembers = value; - } - } - - public void Set(LobbyModificationSetMaxMembersOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyModification.LobbymodificationSetmaxmembersApiLatest; - MaxMembers = other.MaxMembers; - } - } - - public void Set(object other) - { - Set(other as LobbyModificationSetMaxMembersOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationSetMaxMembersOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationSetMaxMembersOptions.cs.meta deleted file mode 100644 index d6a6d87..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationSetMaxMembersOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b63a9bba88258184bbc3775aaeaf2395 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationSetPermissionLevelOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationSetPermissionLevelOptions.cs deleted file mode 100644 index e24707b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationSetPermissionLevelOptions.cs +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class LobbyModificationSetPermissionLevelOptions - { - /// - /// Permission level of the lobby - /// - public LobbyPermissionLevel PermissionLevel { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbyModificationSetPermissionLevelOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private LobbyPermissionLevel m_PermissionLevel; - - public LobbyPermissionLevel PermissionLevel - { - set - { - m_PermissionLevel = value; - } - } - - public void Set(LobbyModificationSetPermissionLevelOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyModification.LobbymodificationSetpermissionlevelApiLatest; - PermissionLevel = other.PermissionLevel; - } - } - - public void Set(object other) - { - Set(other as LobbyModificationSetPermissionLevelOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationSetPermissionLevelOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationSetPermissionLevelOptions.cs.meta deleted file mode 100644 index 226a9d1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyModificationSetPermissionLevelOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b5e92bd7b767910429e03c25d2024388 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyPermissionLevel.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyPermissionLevel.cs deleted file mode 100644 index 52d37e5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyPermissionLevel.cs +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Permission level gets more restrictive further down - /// - public enum LobbyPermissionLevel : int - { - /// - /// Anyone can find this lobby as long as it isn't full - /// - Publicadvertised = 0, - /// - /// Players who have access to presence can see this lobby - /// - Joinviapresence = 1, - /// - /// Only players with invites registered can see this lobby - /// - Inviteonly = 2 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyPermissionLevel.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyPermissionLevel.cs.meta deleted file mode 100644 index c3a8f37..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyPermissionLevel.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4a6968624c852304686ae42a168d619b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearch.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearch.cs deleted file mode 100644 index 09c09a0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearch.cs +++ /dev/null @@ -1,262 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - public sealed partial class LobbySearch : Handle - { - public LobbySearch() - { - } - - public LobbySearch(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// The most recent version of the API. - /// - public const int LobbysearchCopysearchresultbyindexApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int LobbysearchFindApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int LobbysearchGetsearchresultcountApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int LobbysearchRemoveparameterApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int LobbysearchSetlobbyidApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int LobbysearchSetmaxresultsApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int LobbysearchSetparameterApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int LobbysearchSettargetuseridApiLatest = 1; - - /// - /// is used to immediately retrieve a handle to the lobby information from a given search result. - /// If the call returns an result, the out parameter, OutLobbyDetailsHandle, must be passed to to release the memory associated with it. - /// - /// - /// - /// Structure containing the input parameters - /// out parameter used to receive the lobby details handle - /// - /// if the information is available and passed out in OutLobbyDetailsHandle - /// if you pass an invalid index or a null pointer for the out parameter - /// if the API version passed in is incorrect - /// - public Result CopySearchResultByIndex(LobbySearchCopySearchResultByIndexOptions options, out LobbyDetails outLobbyDetailsHandle) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outLobbyDetailsHandleAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_LobbySearch_CopySearchResultByIndex(InnerHandle, optionsAddress, ref outLobbyDetailsHandleAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryMarshalGet(outLobbyDetailsHandleAddress, out outLobbyDetailsHandle); - - return funcResult; - } - - /// - /// Find lobbies matching the search criteria setup via this lobby search handle. - /// When the operation completes, this handle will have the search results that can be parsed - /// - /// Structure containing information about the search criteria to use - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// A callback that is fired when the search operation completes, either successfully or in error - /// - /// if the find operation completes successfully - /// if searching for an individual lobby by lobby ID or target user ID returns no results - /// if any of the options are incorrect - /// - public void Find(LobbySearchFindOptions options, object clientData, LobbySearchOnFindCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new LobbySearchOnFindCallbackInternal(OnFindCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_LobbySearch_Find(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Get the number of search results found by the search parameters in this search - /// - /// Options associated with the search count - /// - /// return the number of search results found by the query or 0 if search is not complete - /// - public uint GetSearchResultCount(LobbySearchGetSearchResultCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_LobbySearch_GetSearchResultCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Release the memory associated with a lobby search. This must be called on data retrieved from . - /// - /// - /// - The lobby search handle to release - public void Release() - { - Bindings.EOS_LobbySearch_Release(InnerHandle); - } - - /// - /// Remove a parameter from the array of search criteria. - /// - /// @params Options a search parameter key name to remove - /// - /// - /// if removing this search parameter was successful - /// if the search key is invalid or null - /// if the parameter was not a part of the search criteria - /// if the API version passed in is incorrect - /// - public Result RemoveParameter(LobbySearchRemoveParameterOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_LobbySearch_RemoveParameter(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Set a lobby ID to find and will return at most one search result. Setting TargetUserId or SearchParameters will result in failing - /// - /// A specific lobby ID for which to search - /// - /// if setting this lobby ID was successful - /// if the lobby ID is invalid or null - /// if the API version passed in is incorrect - /// - public Result SetLobbyId(LobbySearchSetLobbyIdOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_LobbySearch_SetLobbyId(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Set the maximum number of search results to return in the query, can't be more than - /// - /// maximum number of search results to return in the query - /// - /// if setting the max results was successful - /// if the number of results requested is invalid - /// if the API version passed in is incorrect - /// - public Result SetMaxResults(LobbySearchSetMaxResultsOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_LobbySearch_SetMaxResults(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Add a parameter to an array of search criteria combined via an implicit AND operator. Setting LobbyId or TargetUserId will result in failing - /// - /// - /// - /// a search parameter and its comparison op - /// - /// if setting this search parameter was successful - /// if the search criteria is invalid or null - /// if the API version passed in is incorrect - /// - public Result SetParameter(LobbySearchSetParameterOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_LobbySearch_SetParameter(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Set a target user ID to find. Setting LobbyId or SearchParameters will result in failing - /// @note a search result will only be found if this user is in a public lobby - /// - /// a specific target user ID to find - /// - /// if setting this target user ID was successful - /// if the target user ID is invalid or null - /// if the API version passed in is incorrect - /// - public Result SetTargetUserId(LobbySearchSetTargetUserIdOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_LobbySearch_SetTargetUserId(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - [MonoPInvokeCallback(typeof(LobbySearchOnFindCallbackInternal))] - internal static void OnFindCallbackInternalImplementation(System.IntPtr data) - { - LobbySearchOnFindCallback callback; - LobbySearchFindCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearch.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearch.cs.meta deleted file mode 100644 index eabaffa..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearch.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 8bde45f088bb53647af336a2942468a9 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchCopySearchResultByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchCopySearchResultByIndexOptions.cs deleted file mode 100644 index 68a5b7f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchCopySearchResultByIndexOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class LobbySearchCopySearchResultByIndexOptions - { - /// - /// The index of the lobby to retrieve within the completed search query - /// - /// - public uint LobbyIndex { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbySearchCopySearchResultByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_LobbyIndex; - - public uint LobbyIndex - { - set - { - m_LobbyIndex = value; - } - } - - public void Set(LobbySearchCopySearchResultByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = LobbySearch.LobbysearchCopysearchresultbyindexApiLatest; - LobbyIndex = other.LobbyIndex; - } - } - - public void Set(object other) - { - Set(other as LobbySearchCopySearchResultByIndexOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchCopySearchResultByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchCopySearchResultByIndexOptions.cs.meta deleted file mode 100644 index 80603c9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchCopySearchResultByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 2fa1e9202cc31a144bc6789e85c80215 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchFindCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchFindCallbackInfo.cs deleted file mode 100644 index 740cef5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchFindCallbackInfo.cs +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Output parameters for the function. - /// - public class LobbySearchFindCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(LobbySearchFindCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - } - } - - public void Set(object other) - { - Set(other as LobbySearchFindCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbySearchFindCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchFindCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchFindCallbackInfo.cs.meta deleted file mode 100644 index 982d943..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchFindCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c860c61c881c47b4e8d9bb19a2f9576f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchFindOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchFindOptions.cs deleted file mode 100644 index dd7558b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchFindOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class LobbySearchFindOptions - { - /// - /// The Product User ID of the user making the search request - /// - public ProductUserId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbySearchFindOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(LobbySearchFindOptions other) - { - if (other != null) - { - m_ApiVersion = LobbySearch.LobbysearchFindApiLatest; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as LobbySearchFindOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchFindOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchFindOptions.cs.meta deleted file mode 100644 index deee1cc..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchFindOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d6a6ecced4dcf37489eaa7bbb8e17271 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchGetSearchResultCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchGetSearchResultCountOptions.cs deleted file mode 100644 index 88bab8c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchGetSearchResultCountOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class LobbySearchGetSearchResultCountOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbySearchGetSearchResultCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(LobbySearchGetSearchResultCountOptions other) - { - if (other != null) - { - m_ApiVersion = LobbySearch.LobbysearchGetsearchresultcountApiLatest; - } - } - - public void Set(object other) - { - Set(other as LobbySearchGetSearchResultCountOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchGetSearchResultCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchGetSearchResultCountOptions.cs.meta deleted file mode 100644 index 01dd9da..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchGetSearchResultCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a2a1ecc34e1112445ac9bafb779970f5 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchOnFindCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchOnFindCallback.cs deleted file mode 100644 index 21db83d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchOnFindCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A CallbackInfo containing the output information and result - public delegate void LobbySearchOnFindCallback(LobbySearchFindCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void LobbySearchOnFindCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchOnFindCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchOnFindCallback.cs.meta deleted file mode 100644 index ab68955..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchOnFindCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 1c228aedffc1dbc4abad0b9839d5c5e9 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchRemoveParameterOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchRemoveParameterOptions.cs deleted file mode 100644 index ca776f2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchRemoveParameterOptions.cs +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class LobbySearchRemoveParameterOptions - { - /// - /// Search parameter key to remove from the search - /// - public string Key { get; set; } - - /// - /// Search comparison operation associated with the key to remove - /// - public ComparisonOp ComparisonOp { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbySearchRemoveParameterOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Key; - private ComparisonOp m_ComparisonOp; - - public string Key - { - set - { - Helper.TryMarshalSet(ref m_Key, value); - } - } - - public ComparisonOp ComparisonOp - { - set - { - m_ComparisonOp = value; - } - } - - public void Set(LobbySearchRemoveParameterOptions other) - { - if (other != null) - { - m_ApiVersion = LobbySearch.LobbysearchRemoveparameterApiLatest; - Key = other.Key; - ComparisonOp = other.ComparisonOp; - } - } - - public void Set(object other) - { - Set(other as LobbySearchRemoveParameterOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Key); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchRemoveParameterOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchRemoveParameterOptions.cs.meta deleted file mode 100644 index 6a35cb8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchRemoveParameterOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 90a8988b16ea96f47a6169a70f2011a6 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchSetLobbyIdOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchSetLobbyIdOptions.cs deleted file mode 100644 index dc371cf..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchSetLobbyIdOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class LobbySearchSetLobbyIdOptions - { - /// - /// The ID of the lobby to find - /// - public string LobbyId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbySearchSetLobbyIdOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LobbyId; - - public string LobbyId - { - set - { - Helper.TryMarshalSet(ref m_LobbyId, value); - } - } - - public void Set(LobbySearchSetLobbyIdOptions other) - { - if (other != null) - { - m_ApiVersion = LobbySearch.LobbysearchSetlobbyidApiLatest; - LobbyId = other.LobbyId; - } - } - - public void Set(object other) - { - Set(other as LobbySearchSetLobbyIdOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LobbyId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchSetLobbyIdOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchSetLobbyIdOptions.cs.meta deleted file mode 100644 index d90c8f4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchSetLobbyIdOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 2872094d1ce53894bad328ee65885341 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchSetMaxResultsOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchSetMaxResultsOptions.cs deleted file mode 100644 index 427187a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchSetMaxResultsOptions.cs +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class LobbySearchSetMaxResultsOptions - { - /// - /// Maximum number of search results to return from the query - /// - public uint MaxResults { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbySearchSetMaxResultsOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_MaxResults; - - public uint MaxResults - { - set - { - m_MaxResults = value; - } - } - - public void Set(LobbySearchSetMaxResultsOptions other) - { - if (other != null) - { - m_ApiVersion = LobbySearch.LobbysearchSetmaxresultsApiLatest; - MaxResults = other.MaxResults; - } - } - - public void Set(object other) - { - Set(other as LobbySearchSetMaxResultsOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchSetMaxResultsOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchSetMaxResultsOptions.cs.meta deleted file mode 100644 index 19f240e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchSetMaxResultsOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 5c194f8a966ca354a867d7c5dc876730 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchSetParameterOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchSetParameterOptions.cs deleted file mode 100644 index 3ab8159..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchSetParameterOptions.cs +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class LobbySearchSetParameterOptions - { - /// - /// Search parameter describing a key and a value to compare - /// - public AttributeData Parameter { get; set; } - - /// - /// The type of comparison to make against the search parameter - /// - public ComparisonOp ComparisonOp { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbySearchSetParameterOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Parameter; - private ComparisonOp m_ComparisonOp; - - public AttributeData Parameter - { - set - { - Helper.TryMarshalSet(ref m_Parameter, value); - } - } - - public ComparisonOp ComparisonOp - { - set - { - m_ComparisonOp = value; - } - } - - public void Set(LobbySearchSetParameterOptions other) - { - if (other != null) - { - m_ApiVersion = LobbySearch.LobbysearchSetparameterApiLatest; - Parameter = other.Parameter; - ComparisonOp = other.ComparisonOp; - } - } - - public void Set(object other) - { - Set(other as LobbySearchSetParameterOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Parameter); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchSetParameterOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchSetParameterOptions.cs.meta deleted file mode 100644 index 4c2d903..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchSetParameterOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 25c5af97a22d2c04a8c17f01c8e97208 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchSetTargetUserIdOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchSetTargetUserIdOptions.cs deleted file mode 100644 index 728424e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchSetTargetUserIdOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class LobbySearchSetTargetUserIdOptions - { - /// - /// Search lobbies for given user by Product User ID, returning any lobbies where this user is currently registered - /// - public ProductUserId TargetUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbySearchSetTargetUserIdOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_TargetUserId; - - public ProductUserId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public void Set(LobbySearchSetTargetUserIdOptions other) - { - if (other != null) - { - m_ApiVersion = LobbySearch.LobbysearchSettargetuseridApiLatest; - TargetUserId = other.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as LobbySearchSetTargetUserIdOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchSetTargetUserIdOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchSetTargetUserIdOptions.cs.meta deleted file mode 100644 index 3dbb1ca..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbySearchSetTargetUserIdOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 878a1f6bef76a13448225775a1f59a97 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyUpdateReceivedCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyUpdateReceivedCallbackInfo.cs deleted file mode 100644 index bf1e0b2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyUpdateReceivedCallbackInfo.cs +++ /dev/null @@ -1,75 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Output parameters for the Function. - /// - public class LobbyUpdateReceivedCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The ID of the lobby - /// - public string LobbyId { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(LobbyUpdateReceivedCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - LobbyId = other.Value.LobbyId; - } - } - - public void Set(object other) - { - Set(other as LobbyUpdateReceivedCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LobbyUpdateReceivedCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_LobbyId; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public string LobbyId - { - get - { - string value; - Helper.TryMarshalGet(m_LobbyId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyUpdateReceivedCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyUpdateReceivedCallbackInfo.cs.meta deleted file mode 100644 index d005567..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LobbyUpdateReceivedCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4fd815ef60c073a459af56356f0686f6 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LocalRTCOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LocalRTCOptions.cs deleted file mode 100644 index ca1220a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LocalRTCOptions.cs +++ /dev/null @@ -1,141 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters to use with Lobby RTC Rooms. - /// - public class LocalRTCOptions : ISettable - { - /// - /// Flags for the local user in this room. The default is 0 if this struct is not specified. @see ::Flags - /// - public uint Flags { get; set; } - - /// - /// Set to true to enable Manual Audio Input. If manual audio input is enabled, audio recording is not started and the audio buffers - /// must be passed manually using . The default is false if this struct is not specified. - /// - public bool UseManualAudioInput { get; set; } - - /// - /// Set to true to enable Manual Audio Output. If manual audio output is enabled, audio rendering is not started and the audio buffers - /// must be received with and rendered manually. The default is false if this struct is not - /// specified. - /// - public bool UseManualAudioOutput { get; set; } - - /// - /// Set to true to start the outgoing audio stream muted by when first connecting to the RTC room. It must be manually unmuted with a - /// call to . If manual audio output is enabled, this value is ignored. The default is false if this struct - /// is not specified. - /// - public bool AudioOutputStartsMuted { get; set; } - - internal void Set(LocalRTCOptionsInternal? other) - { - if (other != null) - { - Flags = other.Value.Flags; - UseManualAudioInput = other.Value.UseManualAudioInput; - UseManualAudioOutput = other.Value.UseManualAudioOutput; - AudioOutputStartsMuted = other.Value.AudioOutputStartsMuted; - } - } - - public void Set(object other) - { - Set(other as LocalRTCOptionsInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LocalRTCOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_Flags; - private int m_UseManualAudioInput; - private int m_UseManualAudioOutput; - private int m_AudioOutputStartsMuted; - - public uint Flags - { - get - { - return m_Flags; - } - - set - { - m_Flags = value; - } - } - - public bool UseManualAudioInput - { - get - { - bool value; - Helper.TryMarshalGet(m_UseManualAudioInput, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_UseManualAudioInput, value); - } - } - - public bool UseManualAudioOutput - { - get - { - bool value; - Helper.TryMarshalGet(m_UseManualAudioOutput, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_UseManualAudioOutput, value); - } - } - - public bool AudioOutputStartsMuted - { - get - { - bool value; - Helper.TryMarshalGet(m_AudioOutputStartsMuted, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_AudioOutputStartsMuted, value); - } - } - - public void Set(LocalRTCOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyInterface.LocalrtcoptionsApiLatest; - Flags = other.Flags; - UseManualAudioInput = other.UseManualAudioInput; - UseManualAudioOutput = other.UseManualAudioOutput; - AudioOutputStartsMuted = other.AudioOutputStartsMuted; - } - } - - public void Set(object other) - { - Set(other as LocalRTCOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LocalRTCOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LocalRTCOptions.cs.meta deleted file mode 100644 index a421db7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/LocalRTCOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 55d0b455805cd1940bc0bf507d6ed820 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnCreateLobbyCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnCreateLobbyCallback.cs deleted file mode 100644 index 2468553..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnCreateLobbyCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A CallbackInfo containing the output information and result - public delegate void OnCreateLobbyCallback(CreateLobbyCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnCreateLobbyCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnCreateLobbyCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnCreateLobbyCallback.cs.meta deleted file mode 100644 index 2130feb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnCreateLobbyCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9c359628973c2e7469a6900c81447f19 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnDestroyLobbyCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnDestroyLobbyCallback.cs deleted file mode 100644 index cb63fdd..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnDestroyLobbyCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A CallbackInfo containing the output information and result - public delegate void OnDestroyLobbyCallback(DestroyLobbyCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnDestroyLobbyCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnDestroyLobbyCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnDestroyLobbyCallback.cs.meta deleted file mode 100644 index 3ae77da..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnDestroyLobbyCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c1286cdcb440f1a49861af9a86f4fe52 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnJoinLobbyAcceptedCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnJoinLobbyAcceptedCallback.cs deleted file mode 100644 index 3a18ccd..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnJoinLobbyAcceptedCallback.cs +++ /dev/null @@ -1,19 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Function prototype definition for notifications that comes from - /// - /// - /// - /// - /// A containing the output information and result - /// @note The lobby for the join game must be joined. - /// - public delegate void OnJoinLobbyAcceptedCallback(JoinLobbyAcceptedCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnJoinLobbyAcceptedCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnJoinLobbyAcceptedCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnJoinLobbyAcceptedCallback.cs.meta deleted file mode 100644 index 6a27b37..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnJoinLobbyAcceptedCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 97a6996df47f58f48b0aed05388599f3 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnJoinLobbyCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnJoinLobbyCallback.cs deleted file mode 100644 index 0cdc77d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnJoinLobbyCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A CallbackInfo containing the output information and result - public delegate void OnJoinLobbyCallback(JoinLobbyCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnJoinLobbyCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnJoinLobbyCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnJoinLobbyCallback.cs.meta deleted file mode 100644 index 8df0a01..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnJoinLobbyCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 76b5b60bb5faa9d409c6c2152fa23886 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnKickMemberCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnKickMemberCallback.cs deleted file mode 100644 index 9039dd8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnKickMemberCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A CallbackInfo containing the output information and result - public delegate void OnKickMemberCallback(KickMemberCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnKickMemberCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnKickMemberCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnKickMemberCallback.cs.meta deleted file mode 100644 index fefa3a5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnKickMemberCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b4a6391860103414abd36f2d6038a4d3 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLeaveLobbyCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLeaveLobbyCallback.cs deleted file mode 100644 index 018fe98..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLeaveLobbyCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A CallbackInfo containing the output information and result - public delegate void OnLeaveLobbyCallback(LeaveLobbyCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnLeaveLobbyCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLeaveLobbyCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLeaveLobbyCallback.cs.meta deleted file mode 100644 index 7856f5f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLeaveLobbyCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e68c9413ff0c07e4ea73dc1cca14fa21 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLobbyInviteAcceptedCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLobbyInviteAcceptedCallback.cs deleted file mode 100644 index 171199d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLobbyInviteAcceptedCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Function prototype definition for notifications that comes from - /// - /// A containing the output information and result - public delegate void OnLobbyInviteAcceptedCallback(LobbyInviteAcceptedCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnLobbyInviteAcceptedCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLobbyInviteAcceptedCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLobbyInviteAcceptedCallback.cs.meta deleted file mode 100644 index 54824b4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLobbyInviteAcceptedCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e6074ce7d26c76c4aa31bb09a89c4316 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLobbyInviteReceivedCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLobbyInviteReceivedCallback.cs deleted file mode 100644 index 4841eab..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLobbyInviteReceivedCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Function prototype definition for notifications that comes from - /// - /// A containing the output information and result - public delegate void OnLobbyInviteReceivedCallback(LobbyInviteReceivedCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnLobbyInviteReceivedCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLobbyInviteReceivedCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLobbyInviteReceivedCallback.cs.meta deleted file mode 100644 index db52548..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLobbyInviteReceivedCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 65a81a38a0b074d428420ecaaefe645a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLobbyMemberStatusReceivedCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLobbyMemberStatusReceivedCallback.cs deleted file mode 100644 index 0455fbd..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLobbyMemberStatusReceivedCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A CallbackInfo containing the output information and result - public delegate void OnLobbyMemberStatusReceivedCallback(LobbyMemberStatusReceivedCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnLobbyMemberStatusReceivedCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLobbyMemberStatusReceivedCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLobbyMemberStatusReceivedCallback.cs.meta deleted file mode 100644 index 8eefa6b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLobbyMemberStatusReceivedCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 843284e1cecf7c3428b7fc27dc93445a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLobbyMemberUpdateReceivedCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLobbyMemberUpdateReceivedCallback.cs deleted file mode 100644 index 8605ba6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLobbyMemberUpdateReceivedCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Function prototype definition for notifications that comes from - /// - /// A containing the output information and result - public delegate void OnLobbyMemberUpdateReceivedCallback(LobbyMemberUpdateReceivedCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnLobbyMemberUpdateReceivedCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLobbyMemberUpdateReceivedCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLobbyMemberUpdateReceivedCallback.cs.meta deleted file mode 100644 index 37894bf..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLobbyMemberUpdateReceivedCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: beaeb2d92b984e04d92f943a58547aca -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLobbyUpdateReceivedCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLobbyUpdateReceivedCallback.cs deleted file mode 100644 index 389d750..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLobbyUpdateReceivedCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Function prototype definition for notifications that comes from - /// - /// A containing the output information and result - public delegate void OnLobbyUpdateReceivedCallback(LobbyUpdateReceivedCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnLobbyUpdateReceivedCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLobbyUpdateReceivedCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLobbyUpdateReceivedCallback.cs.meta deleted file mode 100644 index b82a105..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnLobbyUpdateReceivedCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 662d0d98e49a24548a2be04a5d5e7797 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnPromoteMemberCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnPromoteMemberCallback.cs deleted file mode 100644 index bdebd6e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnPromoteMemberCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A CallbackInfo containing the output information and result - public delegate void OnPromoteMemberCallback(PromoteMemberCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnPromoteMemberCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnPromoteMemberCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnPromoteMemberCallback.cs.meta deleted file mode 100644 index 34c43a4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnPromoteMemberCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 023f3290f22f97442aa4fed0edbc93aa -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnQueryInvitesCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnQueryInvitesCallback.cs deleted file mode 100644 index a2a2e94..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnQueryInvitesCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A CallbackInfo containing the output information and result - public delegate void OnQueryInvitesCallback(QueryInvitesCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnQueryInvitesCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnQueryInvitesCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnQueryInvitesCallback.cs.meta deleted file mode 100644 index 82af3d2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnQueryInvitesCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 45e75519d8d33e949bddc761b899e73b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnRTCRoomConnectionChangedCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnRTCRoomConnectionChangedCallback.cs deleted file mode 100644 index 5b0ee11..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnRTCRoomConnectionChangedCallback.cs +++ /dev/null @@ -1,15 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Function prototype definition for notifications that comes from - /// - /// - /// containing the connection state of the RTC Room for a lobby - public delegate void OnRTCRoomConnectionChangedCallback(RTCRoomConnectionChangedCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnRTCRoomConnectionChangedCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnRTCRoomConnectionChangedCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnRTCRoomConnectionChangedCallback.cs.meta deleted file mode 100644 index 6a037a7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnRTCRoomConnectionChangedCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f0872d5454894dd41b807d78027450c8 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnRejectInviteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnRejectInviteCallback.cs deleted file mode 100644 index 0e801e5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnRejectInviteCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A CallbackInfo containing the output information and result - public delegate void OnRejectInviteCallback(RejectInviteCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnRejectInviteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnRejectInviteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnRejectInviteCallback.cs.meta deleted file mode 100644 index 27b908e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnRejectInviteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: fb284aeda2271e24397001b2288f6891 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnSendInviteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnSendInviteCallback.cs deleted file mode 100644 index 5f39c11..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnSendInviteCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A CallbackInfo containing the output information and result - public delegate void OnSendInviteCallback(SendInviteCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnSendInviteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnSendInviteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnSendInviteCallback.cs.meta deleted file mode 100644 index 806065c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnSendInviteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 316b7047ae26c154894dd6ff80934326 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnUpdateLobbyCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnUpdateLobbyCallback.cs deleted file mode 100644 index dbc5783..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnUpdateLobbyCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A CallbackInfo containing the output information and result - public delegate void OnUpdateLobbyCallback(UpdateLobbyCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnUpdateLobbyCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnUpdateLobbyCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnUpdateLobbyCallback.cs.meta deleted file mode 100644 index 819513a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/OnUpdateLobbyCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9359a40f14cfe304dba785041d3e45bc -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/PromoteMemberCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/PromoteMemberCallbackInfo.cs deleted file mode 100644 index 51b6a64..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/PromoteMemberCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Output parameters for the function. - /// - public class PromoteMemberCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The ID of the lobby where the user was promoted - /// - public string LobbyId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(PromoteMemberCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LobbyId = other.Value.LobbyId; - } - } - - public void Set(object other) - { - Set(other as PromoteMemberCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct PromoteMemberCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LobbyId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public string LobbyId - { - get - { - string value; - Helper.TryMarshalGet(m_LobbyId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/PromoteMemberCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/PromoteMemberCallbackInfo.cs.meta deleted file mode 100644 index 347d2be..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/PromoteMemberCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 08163053bb6e6574cbbe00c4111636e3 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/PromoteMemberOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/PromoteMemberOptions.cs deleted file mode 100644 index 2792c9c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/PromoteMemberOptions.cs +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class PromoteMemberOptions - { - /// - /// The ID of the lobby - /// - public string LobbyId { get; set; } - - /// - /// The Product User ID of the local user making the request - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The Product User ID of the member to promote to owner of the lobby - /// - public ProductUserId TargetUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct PromoteMemberOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LobbyId; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - - public string LobbyId - { - set - { - Helper.TryMarshalSet(ref m_LobbyId, value); - } - } - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public ProductUserId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public void Set(PromoteMemberOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyInterface.PromotememberApiLatest; - LobbyId = other.LobbyId; - LocalUserId = other.LocalUserId; - TargetUserId = other.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as PromoteMemberOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LobbyId); - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/PromoteMemberOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/PromoteMemberOptions.cs.meta deleted file mode 100644 index 9773bc9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/PromoteMemberOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 87bd4558917e52f4ababc4f1e8e8a6e4 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/QueryInvitesCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/QueryInvitesCallbackInfo.cs deleted file mode 100644 index f960634..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/QueryInvitesCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Output parameters for the function. - /// - public class QueryInvitesCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the local user that made the request - /// - public ProductUserId LocalUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(QueryInvitesCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as QueryInvitesCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryInvitesCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/QueryInvitesCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/QueryInvitesCallbackInfo.cs.meta deleted file mode 100644 index d90817a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/QueryInvitesCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9c5e0e87a716a4c42afe6a5c3ef3ff63 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/QueryInvitesOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/QueryInvitesOptions.cs deleted file mode 100644 index 20ad010..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/QueryInvitesOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class QueryInvitesOptions - { - /// - /// The Product User ID of the local user whose invitations you want to retrieve - /// - public ProductUserId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryInvitesOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(QueryInvitesOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyInterface.QueryinvitesApiLatest; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as QueryInvitesOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/QueryInvitesOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/QueryInvitesOptions.cs.meta deleted file mode 100644 index b05f347..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/QueryInvitesOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d37ba90c3c36bad41ad291e794ec8620 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/RTCRoomConnectionChangedCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/RTCRoomConnectionChangedCallbackInfo.cs deleted file mode 100644 index 504ab73..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/RTCRoomConnectionChangedCallbackInfo.cs +++ /dev/null @@ -1,126 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - public class RTCRoomConnectionChangedCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The ID of the lobby which had a RTC Room connection state change - /// - public string LobbyId { get; private set; } - - /// - /// The Product User ID of the local user who is in the lobby and registered for notifications - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The new connection state of the room - /// - public bool IsConnected { get; private set; } - - /// - /// : The room was left locally. This may be because: the associated lobby was Left or Destroyed, the connection to the lobby was interrupted, or because the SDK is being shutdown. If the lobby connection returns (lobby did not permanently go away), we will reconnect. - /// : There was a network issue connecting to the server. We will attempt to reconnect soon. - /// : The user has been kicked by the server. We will not reconnect. - /// : The user has been banned by the server. We will not reconnect. - /// : A known error occurred during interaction with the server. We will attempt to reconnect soon. - /// : Unexpected error. We will attempt to reconnect soon. - /// - public Result DisconnectReason { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(RTCRoomConnectionChangedCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - LobbyId = other.Value.LobbyId; - LocalUserId = other.Value.LocalUserId; - IsConnected = other.Value.IsConnected; - DisconnectReason = other.Value.DisconnectReason; - } - } - - public void Set(object other) - { - Set(other as RTCRoomConnectionChangedCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct RTCRoomConnectionChangedCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_LobbyId; - private System.IntPtr m_LocalUserId; - private int m_IsConnected; - private Result m_DisconnectReason; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public string LobbyId - { - get - { - string value; - Helper.TryMarshalGet(m_LobbyId, out value); - return value; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public bool IsConnected - { - get - { - bool value; - Helper.TryMarshalGet(m_IsConnected, out value); - return value; - } - } - - public Result DisconnectReason - { - get - { - return m_DisconnectReason; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/RTCRoomConnectionChangedCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/RTCRoomConnectionChangedCallbackInfo.cs.meta deleted file mode 100644 index c1e148c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/RTCRoomConnectionChangedCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 7a206ed24ab8f934288b09fbd314064e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/RejectInviteCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/RejectInviteCallbackInfo.cs deleted file mode 100644 index b42e02c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/RejectInviteCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Output parameters for the function. - /// - public class RejectInviteCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The ID of the invitation being rejected - /// - public string InviteId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(RejectInviteCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - InviteId = other.Value.InviteId; - } - } - - public void Set(object other) - { - Set(other as RejectInviteCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct RejectInviteCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_InviteId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public string InviteId - { - get - { - string value; - Helper.TryMarshalGet(m_InviteId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/RejectInviteCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/RejectInviteCallbackInfo.cs.meta deleted file mode 100644 index 5c0b025..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/RejectInviteCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a08fb08ba8e84a849aabf9d7d1041097 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/RejectInviteOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/RejectInviteOptions.cs deleted file mode 100644 index 911a02b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/RejectInviteOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class RejectInviteOptions - { - /// - /// The ID of the lobby associated with the invitation - /// - public string InviteId { get; set; } - - /// - /// The Product User ID of the local user who is rejecting the invitation - /// - public ProductUserId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct RejectInviteOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_InviteId; - private System.IntPtr m_LocalUserId; - - public string InviteId - { - set - { - Helper.TryMarshalSet(ref m_InviteId, value); - } - } - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(RejectInviteOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyInterface.RejectinviteApiLatest; - InviteId = other.InviteId; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as RejectInviteOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_InviteId); - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/RejectInviteOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/RejectInviteOptions.cs.meta deleted file mode 100644 index fc7e5bf..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/RejectInviteOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 2bd9b6c3339a9df4b9ea58be74c73325 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/SendInviteCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/SendInviteCallbackInfo.cs deleted file mode 100644 index 3980191..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/SendInviteCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Output parameters for the function. - /// - public class SendInviteCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The ID of the lobby - /// - public string LobbyId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(SendInviteCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LobbyId = other.Value.LobbyId; - } - } - - public void Set(object other) - { - Set(other as SendInviteCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SendInviteCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LobbyId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public string LobbyId - { - get - { - string value; - Helper.TryMarshalGet(m_LobbyId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/SendInviteCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/SendInviteCallbackInfo.cs.meta deleted file mode 100644 index 611b01b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/SendInviteCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 54f651334fb177e4b9266eb66a4d5d90 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/SendInviteOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/SendInviteOptions.cs deleted file mode 100644 index d0e7331..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/SendInviteOptions.cs +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class SendInviteOptions - { - /// - /// The ID of the lobby associated with the invitation - /// - public string LobbyId { get; set; } - - /// - /// The Product User ID of the local user sending the invitation - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The Product User ID of the user receiving the invitation - /// - public ProductUserId TargetUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SendInviteOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LobbyId; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - - public string LobbyId - { - set - { - Helper.TryMarshalSet(ref m_LobbyId, value); - } - } - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public ProductUserId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public void Set(SendInviteOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyInterface.SendinviteApiLatest; - LobbyId = other.LobbyId; - LocalUserId = other.LocalUserId; - TargetUserId = other.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as SendInviteOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LobbyId); - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/SendInviteOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/SendInviteOptions.cs.meta deleted file mode 100644 index ba6534b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/SendInviteOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 7a989df3aa04a33449ed5d457f88ed8f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/UpdateLobbyCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/UpdateLobbyCallbackInfo.cs deleted file mode 100644 index 4563c96..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/UpdateLobbyCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Output parameters for the function. - /// - public class UpdateLobbyCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The ID of the lobby - /// - public string LobbyId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(UpdateLobbyCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LobbyId = other.Value.LobbyId; - } - } - - public void Set(object other) - { - Set(other as UpdateLobbyCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct UpdateLobbyCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LobbyId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public string LobbyId - { - get - { - string value; - Helper.TryMarshalGet(m_LobbyId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/UpdateLobbyCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/UpdateLobbyCallbackInfo.cs.meta deleted file mode 100644 index 5b26c99..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/UpdateLobbyCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d94d7ddf0ffd2c64c9e535816439827e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/UpdateLobbyModificationOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/UpdateLobbyModificationOptions.cs deleted file mode 100644 index 65fb3c3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/UpdateLobbyModificationOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class UpdateLobbyModificationOptions - { - /// - /// The ID of the local user making modifications. Must be the owner to modify lobby data, but any lobby member can modify their own attributes. - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The ID of the lobby - /// - public string LobbyId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct UpdateLobbyModificationOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_LobbyId; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string LobbyId - { - set - { - Helper.TryMarshalSet(ref m_LobbyId, value); - } - } - - public void Set(UpdateLobbyModificationOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyInterface.UpdatelobbymodificationApiLatest; - LocalUserId = other.LocalUserId; - LobbyId = other.LobbyId; - } - } - - public void Set(object other) - { - Set(other as UpdateLobbyModificationOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_LobbyId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/UpdateLobbyModificationOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/UpdateLobbyModificationOptions.cs.meta deleted file mode 100644 index 62f7dba..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/UpdateLobbyModificationOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 133b21f97fcc9744d8482b1a363879f1 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/UpdateLobbyOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/UpdateLobbyOptions.cs deleted file mode 100644 index f0030a3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/UpdateLobbyOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Lobby -{ - /// - /// Input parameters for the function. - /// - public class UpdateLobbyOptions - { - /// - /// Builder handle - /// - public LobbyModification LobbyModificationHandle { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct UpdateLobbyOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LobbyModificationHandle; - - public LobbyModification LobbyModificationHandle - { - set - { - Helper.TryMarshalSet(ref m_LobbyModificationHandle, value); - } - } - - public void Set(UpdateLobbyOptions other) - { - if (other != null) - { - m_ApiVersion = LobbyInterface.UpdatelobbyApiLatest; - LobbyModificationHandle = other.LobbyModificationHandle; - } - } - - public void Set(object other) - { - Set(other as UpdateLobbyOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LobbyModificationHandle); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/UpdateLobbyOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/UpdateLobbyOptions.cs.meta deleted file mode 100644 index 31c889b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Lobby/UpdateLobbyOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4616aec53e216c24eb8ec48cc4a6c6f1 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging.meta deleted file mode 100644 index 4efd881..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 492f64a7e81a36847a5457aa51ce9866 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging/LogCategory.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging/LogCategory.cs deleted file mode 100644 index b33d345..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging/LogCategory.cs +++ /dev/null @@ -1,140 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Logging -{ - /// - /// Logging Categories - /// - public enum LogCategory : int - { - /// - /// Low level logs unrelated to specific services - /// - Core = 0, - /// - /// Logs related to the Auth service - /// - Auth = 1, - /// - /// Logs related to the Friends service - /// - Friends = 2, - /// - /// Logs related to the Presence service - /// - Presence = 3, - /// - /// Logs related to the UserInfo service - /// - UserInfo = 4, - /// - /// Logs related to HTTP serialization - /// - HttpSerialization = 5, - /// - /// Logs related to the Ecommerce service - /// - Ecom = 6, - /// - /// Logs related to the P2P service - /// - P2P = 7, - /// - /// Logs related to the Sessions service - /// - Sessions = 8, - /// - /// Logs related to rate limiting - /// - RateLimiter = 9, - /// - /// Logs related to the PlayerDataStorage service - /// - PlayerDataStorage = 10, - /// - /// Logs related to sdk analytics - /// - Analytics = 11, - /// - /// Logs related to the messaging service - /// - Messaging = 12, - /// - /// Logs related to the Connect service - /// - Connect = 13, - /// - /// Logs related to the Overlay - /// - Overlay = 14, - /// - /// Logs related to the Achievements service - /// - Achievements = 15, - /// - /// Logs related to the Stats service - /// - Stats = 16, - /// - /// Logs related to the UI service - /// - Ui = 17, - /// - /// Logs related to the lobby service - /// - Lobby = 18, - /// - /// Logs related to the Leaderboards service - /// - Leaderboards = 19, - /// - /// Logs related to an internal Keychain feature that the authentication interfaces use - /// - Keychain = 20, - /// - /// Logs related to external identity providers - /// - IdentityProvider = 21, - /// - /// Logs related to Title Storage - /// - TitleStorage = 22, - /// - /// Logs related to the Mods service - /// - Mods = 23, - /// - /// Logs related to the Anti-Cheat service - /// - AntiCheat = 24, - /// - /// Logs related to reports client. - /// - Reports = 25, - /// - /// Logs related to the Sanctions service - /// - Sanctions = 26, - /// - /// Logs related to the Progression Snapshot service - /// - ProgressionSnapshots = 27, - /// - /// Logs related to the Kids Web Services integration - /// - Kws = 28, - /// - /// Logs related to the RTC API - /// - Rtc = 29, - /// - /// Logs related to the RTC Admin API - /// - RTCAdmin = 30, - /// - /// Not a real log category. Used by to set the log level for all categories at the same time - /// - AllCategories = 0x7fffffff - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging/LogCategory.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging/LogCategory.cs.meta deleted file mode 100644 index 07917ac..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging/LogCategory.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a3d81cb7faa15c14c9c843df9a2d412f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging/LogLevel.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging/LogLevel.cs deleted file mode 100644 index ce88eb9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging/LogLevel.cs +++ /dev/null @@ -1,22 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Logging -{ - /// - /// Logging levels. When a log message is output, it has an associated log level. - /// Messages will only be sent to the callback function if the message's associated log level is less than or equal to the configured log level for that category. - /// - /// - /// - public enum LogLevel : int - { - Off = 0, - Fatal = 100, - Error = 200, - Warning = 300, - Info = 400, - Verbose = 500, - VeryVerbose = 600 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging/LogLevel.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging/LogLevel.cs.meta deleted file mode 100644 index 8d49ff6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging/LogLevel.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 5b162c752e3ecc949b6f63a4c25f2524 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging/LogMessage.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging/LogMessage.cs deleted file mode 100644 index 87b7680..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging/LogMessage.cs +++ /dev/null @@ -1,77 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Logging -{ - /// - /// A structure representing a log message - /// - public class LogMessage : ISettable - { - /// - /// A string representation of the log message category, encoded in UTF-8. Only valid during the life of the callback, so copy the string if you need it later. - /// - public string Category { get; private set; } - - /// - /// The log message, encoded in UTF-8. Only valid during the life of the callback, so copy the string if you need it later. - /// - public string Message { get; private set; } - - /// - /// The log level associated with the message - /// - public LogLevel Level { get; private set; } - - internal void Set(LogMessageInternal? other) - { - if (other != null) - { - Category = other.Value.Category; - Message = other.Value.Message; - Level = other.Value.Level; - } - } - - public void Set(object other) - { - Set(other as LogMessageInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LogMessageInternal - { - private System.IntPtr m_Category; - private System.IntPtr m_Message; - private LogLevel m_Level; - - public string Category - { - get - { - string value; - Helper.TryMarshalGet(m_Category, out value); - return value; - } - } - - public string Message - { - get - { - string value; - Helper.TryMarshalGet(m_Message, out value); - return value; - } - } - - public LogLevel Level - { - get - { - return m_Level; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging/LogMessage.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging/LogMessage.cs.meta deleted file mode 100644 index 26529b8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging/LogMessage.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f5190ba6ddeb3994cb48c6f8c5fce334 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging/LogMessageFunc.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging/LogMessageFunc.cs deleted file mode 100644 index 8e8341f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging/LogMessageFunc.cs +++ /dev/null @@ -1,15 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Logging -{ - /// - /// Function prototype definition for functions that receive log messages. - /// - /// - /// A containing the log category, log level, and message. - public delegate void LogMessageFunc(LogMessage message); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void LogMessageFuncInternal(System.IntPtr message); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging/LogMessageFunc.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging/LogMessageFunc.cs.meta deleted file mode 100644 index 20a1e2e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging/LogMessageFunc.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: fab1c672c1093bc49a86c0cac233c446 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging/LoggingInterface.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging/LoggingInterface.cs deleted file mode 100644 index 40ec84d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging/LoggingInterface.cs +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Logging -{ - public static class LoggingInterface - { - /// - /// Set the callback function to use for SDK log messages. Any previously set callback will no longer be called. - /// - /// - /// the function to call when the SDK logs messages - /// - /// is returned if the callback will be used for future log messages. - /// is returned if the SDK has not yet been initialized, or if it has been shut down - /// - public static Result SetCallback(LogMessageFunc callback) - { - var callbackInternal = new LogMessageFuncInternal(LogMessageFuncInternalImplementation); - Helper.AddStaticCallback("LogMessageFuncInternalImplementation", callback, callbackInternal); - - var funcResult = Bindings.EOS_Logging_SetCallback(callbackInternal); - - return funcResult; - } - - /// - /// Set the logging level for the specified logging category. By default all log categories will callback for Warnings, Errors, and Fatals. - /// - /// the specific log category to configure. Use to configure all categories simultaneously to the same log level. - /// the log level to use for the log category - /// - /// is returned if the log levels are now in use. - /// is returned if the SDK has not yet been initialized, or if it has been shut down. - /// - public static Result SetLogLevel(LogCategory logCategory, LogLevel logLevel) - { - var funcResult = Bindings.EOS_Logging_SetLogLevel(logCategory, logLevel); - - return funcResult; - } - - [MonoPInvokeCallback(typeof(LogMessageFuncInternal))] - internal static void LogMessageFuncInternalImplementation(System.IntPtr message) - { - LogMessageFunc callback; - if (Helper.TryGetStaticCallback("LogMessageFuncInternalImplementation", out callback)) - { - LogMessage messageObj; - Helper.TryMarshalGet(message, out messageObj); - - callback(messageObj); - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging/LoggingInterface.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging/LoggingInterface.cs.meta deleted file mode 100644 index 37b4361..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Logging/LoggingInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 843c793a44651354f81806535aa32011 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/LoginStatus.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/LoginStatus.cs deleted file mode 100644 index 2f52cd6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/LoginStatus.cs +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices -{ - /// - /// All possible states of a local user - /// - /// - /// - /// - /// - /// - /// - public enum LoginStatus : int - { - /// - /// Player has not logged in or chosen a local profile - /// - NotLoggedIn = 0, - /// - /// Player is using a local profile but is not logged in - /// - UsingLocalProfile = 1, - /// - /// Player has been validated by the platform specific authentication service - /// - LoggedIn = 2 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/LoginStatus.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/LoginStatus.cs.meta deleted file mode 100644 index 46163a5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/LoginStatus.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 64d41e743ddf4f94e833cd408328e1ae -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics.meta deleted file mode 100644 index 534f335..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: cdac1687b7e5d524a89e54a758f7a534 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/BeginPlayerSessionOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/BeginPlayerSessionOptions.cs deleted file mode 100644 index 8528a60..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/BeginPlayerSessionOptions.cs +++ /dev/null @@ -1,118 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Metrics -{ - /// - /// BeginPlayerSession. - /// - public class BeginPlayerSessionOptions - { - public BeginPlayerSessionOptionsAccountId AccountId { get; set; } - - /// - /// The in-game display name for the user as UTF-8 string. - /// - public string DisplayName { get; set; } - - /// - /// The user's game controller type. - /// - public UserControllerType ControllerType { get; set; } - - /// - /// IP address of the game server hosting the game session. For a localhost session, set to NULL. - /// - /// @details Must be in either one of the following IPv4 or IPv6 string formats: - /// "127.0.0.1". - /// "1200:0000:AB00:1234:0000:2552:7777:1313". - /// If both IPv4 and IPv6 addresses are available, use the IPv6 address. - /// - public string ServerIp { get; set; } - - /// - /// Optional, application-defined custom match session identifier. If the identifier is not used, set to NULL. - /// - /// @details The game can tag each game session with a custom session match identifier, - /// which will be shown in the Played Sessions listing at the user profile dashboard. - /// - public string GameSessionId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct BeginPlayerSessionOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private BeginPlayerSessionOptionsAccountIdInternal m_AccountId; - private System.IntPtr m_DisplayName; - private UserControllerType m_ControllerType; - private System.IntPtr m_ServerIp; - private System.IntPtr m_GameSessionId; - - public BeginPlayerSessionOptionsAccountId AccountId - { - set - { - Helper.TryMarshalSet(ref m_AccountId, value); - } - } - - public string DisplayName - { - set - { - Helper.TryMarshalSet(ref m_DisplayName, value); - } - } - - public UserControllerType ControllerType - { - set - { - m_ControllerType = value; - } - } - - public string ServerIp - { - set - { - Helper.TryMarshalSet(ref m_ServerIp, value); - } - } - - public string GameSessionId - { - set - { - Helper.TryMarshalSet(ref m_GameSessionId, value); - } - } - - public void Set(BeginPlayerSessionOptions other) - { - if (other != null) - { - m_ApiVersion = MetricsInterface.BeginplayersessionApiLatest; - AccountId = other.AccountId; - DisplayName = other.DisplayName; - ControllerType = other.ControllerType; - ServerIp = other.ServerIp; - GameSessionId = other.GameSessionId; - } - } - - public void Set(object other) - { - Set(other as BeginPlayerSessionOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_AccountId); - Helper.TryMarshalDispose(ref m_DisplayName); - Helper.TryMarshalDispose(ref m_ServerIp); - Helper.TryMarshalDispose(ref m_GameSessionId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/BeginPlayerSessionOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/BeginPlayerSessionOptions.cs.meta deleted file mode 100644 index ecda498..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/BeginPlayerSessionOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4ef4c7328b3156c48bb1c833cf5c91dd -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/BeginPlayerSessionOptionsAccountId.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/BeginPlayerSessionOptionsAccountId.cs deleted file mode 100644 index db9e537..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/BeginPlayerSessionOptionsAccountId.cs +++ /dev/null @@ -1,149 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Metrics -{ - public class BeginPlayerSessionOptionsAccountId : ISettable - { - private MetricsAccountIdType m_AccountIdType; - private EpicAccountId m_Epic; - private string m_External; - - /// - /// Account ID type that is set in the union. - /// - public MetricsAccountIdType AccountIdType - { - get - { - return m_AccountIdType; - } - - private set - { - m_AccountIdType = value; - } - } - - /// - /// An Epic Online Services Account ID. Set this field when AccountIdType is set to . - /// - public EpicAccountId Epic - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_Epic, out value, m_AccountIdType, MetricsAccountIdType.Epic); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Epic, value, ref m_AccountIdType, MetricsAccountIdType.Epic); - } - } - - /// - /// An Account ID for another service. Set this field when AccountIdType is set to . - /// - public string External - { - get - { - string value; - Helper.TryMarshalGet(m_External, out value, m_AccountIdType, MetricsAccountIdType.External); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_External, value, ref m_AccountIdType, MetricsAccountIdType.External); - } - } - - public static implicit operator BeginPlayerSessionOptionsAccountId(EpicAccountId value) - { - return new BeginPlayerSessionOptionsAccountId() { Epic = value }; - } - - public static implicit operator BeginPlayerSessionOptionsAccountId(string value) - { - return new BeginPlayerSessionOptionsAccountId() { External = value }; - } - - internal void Set(BeginPlayerSessionOptionsAccountIdInternal? other) - { - if (other != null) - { - Epic = other.Value.Epic; - External = other.Value.External; - } - } - - public void Set(object other) - { - Set(other as BeginPlayerSessionOptionsAccountIdInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Explicit, Pack = 4)] - internal struct BeginPlayerSessionOptionsAccountIdInternal : ISettable, System.IDisposable - { - [System.Runtime.InteropServices.FieldOffset(0)] - private MetricsAccountIdType m_AccountIdType; - [System.Runtime.InteropServices.FieldOffset(4)] - private System.IntPtr m_Epic; - [System.Runtime.InteropServices.FieldOffset(4)] - private System.IntPtr m_External; - - public EpicAccountId Epic - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_Epic, out value, m_AccountIdType, MetricsAccountIdType.Epic); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Epic, value, ref m_AccountIdType, MetricsAccountIdType.Epic, this); - } - } - - public string External - { - get - { - string value; - Helper.TryMarshalGet(m_External, out value, m_AccountIdType, MetricsAccountIdType.External); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_External, value, ref m_AccountIdType, MetricsAccountIdType.External, this); - } - } - - public void Set(BeginPlayerSessionOptionsAccountId other) - { - if (other != null) - { - Epic = other.Epic; - External = other.External; - } - } - - public void Set(object other) - { - Set(other as BeginPlayerSessionOptionsAccountId); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Epic); - Helper.TryMarshalDispose(ref m_External, m_AccountIdType, MetricsAccountIdType.External); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/BeginPlayerSessionOptionsAccountId.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/BeginPlayerSessionOptionsAccountId.cs.meta deleted file mode 100644 index 5f99ea5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/BeginPlayerSessionOptionsAccountId.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 92cfeb30f39c9e1489228edeef43c734 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/EndPlayerSessionOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/EndPlayerSessionOptions.cs deleted file mode 100644 index 8bdb746..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/EndPlayerSessionOptions.cs +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Metrics -{ - /// - /// EndPlayerSession. - /// - public class EndPlayerSessionOptions - { - public EndPlayerSessionOptionsAccountId AccountId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct EndPlayerSessionOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private EndPlayerSessionOptionsAccountIdInternal m_AccountId; - - public EndPlayerSessionOptionsAccountId AccountId - { - set - { - Helper.TryMarshalSet(ref m_AccountId, value); - } - } - - public void Set(EndPlayerSessionOptions other) - { - if (other != null) - { - m_ApiVersion = MetricsInterface.EndplayersessionApiLatest; - AccountId = other.AccountId; - } - } - - public void Set(object other) - { - Set(other as EndPlayerSessionOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_AccountId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/EndPlayerSessionOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/EndPlayerSessionOptions.cs.meta deleted file mode 100644 index 99dd4c0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/EndPlayerSessionOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 55017e741e6a45141bb12d492c8e76fb -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/EndPlayerSessionOptionsAccountId.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/EndPlayerSessionOptionsAccountId.cs deleted file mode 100644 index 41f591b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/EndPlayerSessionOptionsAccountId.cs +++ /dev/null @@ -1,149 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Metrics -{ - public class EndPlayerSessionOptionsAccountId : ISettable - { - private MetricsAccountIdType m_AccountIdType; - private EpicAccountId m_Epic; - private string m_External; - - /// - /// The Account ID type that is set in the union. - /// - public MetricsAccountIdType AccountIdType - { - get - { - return m_AccountIdType; - } - - private set - { - m_AccountIdType = value; - } - } - - /// - /// An Epic Online Services Account ID. Set this field when AccountIdType is set to . - /// - public EpicAccountId Epic - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_Epic, out value, m_AccountIdType, MetricsAccountIdType.Epic); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Epic, value, ref m_AccountIdType, MetricsAccountIdType.Epic); - } - } - - /// - /// An Account ID for another service. Set this field when AccountIdType is set to . - /// - public string External - { - get - { - string value; - Helper.TryMarshalGet(m_External, out value, m_AccountIdType, MetricsAccountIdType.External); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_External, value, ref m_AccountIdType, MetricsAccountIdType.External); - } - } - - public static implicit operator EndPlayerSessionOptionsAccountId(EpicAccountId value) - { - return new EndPlayerSessionOptionsAccountId() { Epic = value }; - } - - public static implicit operator EndPlayerSessionOptionsAccountId(string value) - { - return new EndPlayerSessionOptionsAccountId() { External = value }; - } - - internal void Set(EndPlayerSessionOptionsAccountIdInternal? other) - { - if (other != null) - { - Epic = other.Value.Epic; - External = other.Value.External; - } - } - - public void Set(object other) - { - Set(other as EndPlayerSessionOptionsAccountIdInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Explicit, Pack = 4)] - internal struct EndPlayerSessionOptionsAccountIdInternal : ISettable, System.IDisposable - { - [System.Runtime.InteropServices.FieldOffset(0)] - private MetricsAccountIdType m_AccountIdType; - [System.Runtime.InteropServices.FieldOffset(4)] - private System.IntPtr m_Epic; - [System.Runtime.InteropServices.FieldOffset(4)] - private System.IntPtr m_External; - - public EpicAccountId Epic - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_Epic, out value, m_AccountIdType, MetricsAccountIdType.Epic); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Epic, value, ref m_AccountIdType, MetricsAccountIdType.Epic, this); - } - } - - public string External - { - get - { - string value; - Helper.TryMarshalGet(m_External, out value, m_AccountIdType, MetricsAccountIdType.External); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_External, value, ref m_AccountIdType, MetricsAccountIdType.External, this); - } - } - - public void Set(EndPlayerSessionOptionsAccountId other) - { - if (other != null) - { - Epic = other.Epic; - External = other.External; - } - } - - public void Set(object other) - { - Set(other as EndPlayerSessionOptionsAccountId); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Epic); - Helper.TryMarshalDispose(ref m_External, m_AccountIdType, MetricsAccountIdType.External); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/EndPlayerSessionOptionsAccountId.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/EndPlayerSessionOptionsAccountId.cs.meta deleted file mode 100644 index 69c258e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/EndPlayerSessionOptionsAccountId.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 81e446b6a3fa9514791a2a5bdacf521b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/MetricsAccountIdType.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/MetricsAccountIdType.cs deleted file mode 100644 index 832ffdd..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/MetricsAccountIdType.cs +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Metrics -{ - /// - /// Account ID type for and . - /// - public enum MetricsAccountIdType : int - { - /// - /// An Epic Online Services Account ID. - /// - Epic = 0, - /// - /// An external service Account ID. - /// - External = 1 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/MetricsAccountIdType.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/MetricsAccountIdType.cs.meta deleted file mode 100644 index a464a42..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/MetricsAccountIdType.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 8060f32c0e5033d44b8c7aa012b10a23 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/MetricsInterface.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/MetricsInterface.cs deleted file mode 100644 index f7aacfb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/MetricsInterface.cs +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Metrics -{ - public sealed partial class MetricsInterface : Handle - { - public MetricsInterface() - { - } - - public MetricsInterface(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// The most recent version of the struct. - /// - public const int BeginplayersessionApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int EndplayersessionApiLatest = 1; - - /// - /// Logs the start of a new game session for a local player. - /// - /// The game client should call this function whenever it joins into a new multiplayer, peer-to-peer or single player game session. - /// Each call to BeginPlayerSession must be matched with a corresponding call to EndPlayerSession. - /// - /// Structure containing the local player's game account and the game session information. - /// - /// Returns on success, or an error code if the input parameters are invalid or an active session for the player already exists. - /// - public Result BeginPlayerSession(BeginPlayerSessionOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Metrics_BeginPlayerSession(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Logs the end of a game session for a local player. - /// - /// Call once when the game client leaves the active game session. - /// Each call to BeginPlayerSession must be matched with a corresponding call to EndPlayerSession. - /// - /// Structure containing the Epic Online Services Account ID of the player whose session to end. - /// - /// Returns on success, or an error code if the input parameters are invalid or there was no active session for the player. - /// - public Result EndPlayerSession(EndPlayerSessionOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Metrics_EndPlayerSession(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/MetricsInterface.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/MetricsInterface.cs.meta deleted file mode 100644 index 795f0fd..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/MetricsInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d42368226f3ecb74d92a1565e1dad96c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/UserControllerType.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/UserControllerType.cs deleted file mode 100644 index 40b2504..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/UserControllerType.cs +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Metrics -{ - /// - /// User game controller types. - /// - public enum UserControllerType : int - { - /// - /// The game controller type is unknown. - /// - Unknown = 0, - /// - /// Mouse and keyboard controller. - /// - MouseKeyboard = 1, - /// - /// Gamepad controller. - /// - GamepadControl = 2, - /// - /// Touch controller. - /// - TouchControl = 3 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/UserControllerType.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/UserControllerType.cs.meta deleted file mode 100644 index 0f36757..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Metrics/UserControllerType.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b5e61af2c6eaa414e94777f382824094 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods.meta deleted file mode 100644 index b93c3f7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 048cb1c21f8b1914c81ac8ff6f7c608f -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/CopyModInfoOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/CopyModInfoOptions.cs deleted file mode 100644 index 8cdb217..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/CopyModInfoOptions.cs +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Mods -{ - /// - /// Data for the function. - /// - public class CopyModInfoOptions - { - /// - /// The Epic Online Services Account ID of the user for which mods should be copied - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// Type of the enumerated mod to copy - /// - public ModEnumerationType Type { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyModInfoOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private ModEnumerationType m_Type; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public ModEnumerationType Type - { - set - { - m_Type = value; - } - } - - public void Set(CopyModInfoOptions other) - { - if (other != null) - { - m_ApiVersion = ModsInterface.CopymodinfoApiLatest; - LocalUserId = other.LocalUserId; - Type = other.Type; - } - } - - public void Set(object other) - { - Set(other as CopyModInfoOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/CopyModInfoOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/CopyModInfoOptions.cs.meta deleted file mode 100644 index e8cf92d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/CopyModInfoOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 6a5aed7cbbc461049a3b1da519b2d4b8 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/EnumerateModsCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/EnumerateModsCallbackInfo.cs deleted file mode 100644 index dcaf851..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/EnumerateModsCallbackInfo.cs +++ /dev/null @@ -1,105 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Mods -{ - /// - /// Output parameters for the Function. These parameters are received through the callback provided to - /// - public class EnumerateModsCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Result code for the operation. is returned if the enumeration was successfull, otherwise one of the error codes is returned. - /// - public Result ResultCode { get; private set; } - - /// - /// The Epic Online Services Account ID of the user for which mod enumeration was requested - /// - public EpicAccountId LocalUserId { get; private set; } - - /// - /// Context that is passed into - /// - public object ClientData { get; private set; } - - /// - /// Type of the enumerated mods - /// - public ModEnumerationType Type { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(EnumerateModsCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - LocalUserId = other.Value.LocalUserId; - ClientData = other.Value.ClientData; - Type = other.Value.Type; - } - } - - public void Set(object other) - { - Set(other as EnumerateModsCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct EnumerateModsCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_ClientData; - private ModEnumerationType m_Type; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public EpicAccountId LocalUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ModEnumerationType Type - { - get - { - return m_Type; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/EnumerateModsCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/EnumerateModsCallbackInfo.cs.meta deleted file mode 100644 index 6d488fb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/EnumerateModsCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 2522b59d5f9f09c408892bcb2080fde3 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/EnumerateModsOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/EnumerateModsOptions.cs deleted file mode 100644 index dc33848..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/EnumerateModsOptions.cs +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Mods -{ - /// - /// Input parameters for the Function. - /// - public class EnumerateModsOptions - { - /// - /// The Epic Online Services Account ID of the user for which the mod should be enumerated - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// Type of the mods to enumerate - /// - public ModEnumerationType Type { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct EnumerateModsOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private ModEnumerationType m_Type; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public ModEnumerationType Type - { - set - { - m_Type = value; - } - } - - public void Set(EnumerateModsOptions other) - { - if (other != null) - { - m_ApiVersion = ModsInterface.EnumeratemodsApiLatest; - LocalUserId = other.LocalUserId; - Type = other.Type; - } - } - - public void Set(object other) - { - Set(other as EnumerateModsOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/EnumerateModsOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/EnumerateModsOptions.cs.meta deleted file mode 100644 index 1bbe3d3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/EnumerateModsOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 60ca4493369bc30469feeb8e04128e1e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/InstallModCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/InstallModCallbackInfo.cs deleted file mode 100644 index 081871b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/InstallModCallbackInfo.cs +++ /dev/null @@ -1,107 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Mods -{ - /// - /// Output parameters for the Function. These parameters are received through the callback provided to - /// - public class InstallModCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Result code for the operation. is returned if the installation was successfull, otherwise one of the error codes is returned. - /// - public Result ResultCode { get; private set; } - - /// - /// The Epic Online Services Account ID of the user for which mod installation was requested - /// - public EpicAccountId LocalUserId { get; private set; } - - /// - /// Context that is passed into - /// - public object ClientData { get; private set; } - - /// - /// Mod for which installation was requested - /// - public ModIdentifier Mod { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(InstallModCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - LocalUserId = other.Value.LocalUserId; - ClientData = other.Value.ClientData; - Mod = other.Value.Mod; - } - } - - public void Set(object other) - { - Set(other as InstallModCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct InstallModCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_ClientData; - private System.IntPtr m_Mod; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public EpicAccountId LocalUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ModIdentifier Mod - { - get - { - ModIdentifier value; - Helper.TryMarshalGet(m_Mod, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/InstallModCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/InstallModCallbackInfo.cs.meta deleted file mode 100644 index 633974f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/InstallModCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a6e395aa94d5af6429bbd7be6685b5a1 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/InstallModOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/InstallModOptions.cs deleted file mode 100644 index 0c5c0cb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/InstallModOptions.cs +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Mods -{ - /// - /// Input parameters for the Function. - /// - public class InstallModOptions - { - /// - /// The Epic Online Services Account ID of the user for which the mod should be installed - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The mod to install - /// - public ModIdentifier Mod { get; set; } - - /// - /// Indicates whether the mod should be uninstalled after exiting the game or not. - /// - public bool RemoveAfterExit { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct InstallModOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_Mod; - private int m_RemoveAfterExit; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public ModIdentifier Mod - { - set - { - Helper.TryMarshalSet(ref m_Mod, value); - } - } - - public bool RemoveAfterExit - { - set - { - Helper.TryMarshalSet(ref m_RemoveAfterExit, value); - } - } - - public void Set(InstallModOptions other) - { - if (other != null) - { - m_ApiVersion = ModsInterface.InstallmodApiLatest; - LocalUserId = other.LocalUserId; - Mod = other.Mod; - RemoveAfterExit = other.RemoveAfterExit; - } - } - - public void Set(object other) - { - Set(other as InstallModOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_Mod); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/InstallModOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/InstallModOptions.cs.meta deleted file mode 100644 index 416edcc..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/InstallModOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 8ddc3813b00ad134baa8d979e642bdc8 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/ModEnumerationType.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/ModEnumerationType.cs deleted file mode 100644 index 8aad6d3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/ModEnumerationType.cs +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Mods -{ - /// - /// The type of mod enumeration. - /// - public enum ModEnumerationType : int - { - /// - /// Installed mods - /// - Installed = 0, - /// - /// All available mods - /// - AllAvailable - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/ModEnumerationType.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/ModEnumerationType.cs.meta deleted file mode 100644 index 472dece..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/ModEnumerationType.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4a30189647562ae418a8df880770764d -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/ModIdentifier.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/ModIdentifier.cs deleted file mode 100644 index fc9f1f9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/ModIdentifier.cs +++ /dev/null @@ -1,166 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Mods -{ - /// - /// is used to identify a mod. - /// - public class ModIdentifier : ISettable - { - /// - /// Product namespace id in which this mod item exists - /// - public string NamespaceId { get; set; } - - /// - /// Item id of the Mod - /// - public string ItemId { get; set; } - - /// - /// Artifact id of the Mod - /// - public string ArtifactId { get; set; } - - /// - /// Represent mod item title. - /// - public string Title { get; set; } - - /// - /// Represent mod item version. - /// - public string Version { get; set; } - - internal void Set(ModIdentifierInternal? other) - { - if (other != null) - { - NamespaceId = other.Value.NamespaceId; - ItemId = other.Value.ItemId; - ArtifactId = other.Value.ArtifactId; - Title = other.Value.Title; - Version = other.Value.Version; - } - } - - public void Set(object other) - { - Set(other as ModIdentifierInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct ModIdentifierInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_NamespaceId; - private System.IntPtr m_ItemId; - private System.IntPtr m_ArtifactId; - private System.IntPtr m_Title; - private System.IntPtr m_Version; - - public string NamespaceId - { - get - { - string value; - Helper.TryMarshalGet(m_NamespaceId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_NamespaceId, value); - } - } - - public string ItemId - { - get - { - string value; - Helper.TryMarshalGet(m_ItemId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_ItemId, value); - } - } - - public string ArtifactId - { - get - { - string value; - Helper.TryMarshalGet(m_ArtifactId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_ArtifactId, value); - } - } - - public string Title - { - get - { - string value; - Helper.TryMarshalGet(m_Title, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Title, value); - } - } - - public string Version - { - get - { - string value; - Helper.TryMarshalGet(m_Version, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Version, value); - } - } - - public void Set(ModIdentifier other) - { - if (other != null) - { - m_ApiVersion = ModsInterface.ModIdentifierApiLatest; - NamespaceId = other.NamespaceId; - ItemId = other.ItemId; - ArtifactId = other.ArtifactId; - Title = other.Title; - Version = other.Version; - } - } - - public void Set(object other) - { - Set(other as ModIdentifier); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_NamespaceId); - Helper.TryMarshalDispose(ref m_ItemId); - Helper.TryMarshalDispose(ref m_ArtifactId); - Helper.TryMarshalDispose(ref m_Title); - Helper.TryMarshalDispose(ref m_Version); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/ModIdentifier.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/ModIdentifier.cs.meta deleted file mode 100644 index 94944fd..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/ModIdentifier.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a3d5256e6650d5a418ce02488eae3a6c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/ModInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/ModInfo.cs deleted file mode 100644 index 59d3bff..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/ModInfo.cs +++ /dev/null @@ -1,94 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Mods -{ - /// - /// Data for the function. - /// - /// - /// - public class ModInfo : ISettable - { - /// - /// The array of enumerated mods or NULL if no such type of mods were enumerated - /// - public ModIdentifier[] Mods { get; set; } - - /// - /// Type of the mods - /// - public ModEnumerationType Type { get; set; } - - internal void Set(ModInfoInternal? other) - { - if (other != null) - { - Mods = other.Value.Mods; - Type = other.Value.Type; - } - } - - public void Set(object other) - { - Set(other as ModInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct ModInfoInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private int m_ModsCount; - private System.IntPtr m_Mods; - private ModEnumerationType m_Type; - - public ModIdentifier[] Mods - { - get - { - ModIdentifier[] value; - Helper.TryMarshalGet(m_Mods, out value, m_ModsCount); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Mods, value, out m_ModsCount); - } - } - - public ModEnumerationType Type - { - get - { - return m_Type; - } - - set - { - m_Type = value; - } - } - - public void Set(ModInfo other) - { - if (other != null) - { - m_ApiVersion = ModsInterface.CopymodinfoApiLatest; - Mods = other.Mods; - Type = other.Type; - } - } - - public void Set(object other) - { - Set(other as ModInfo); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Mods); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/ModInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/ModInfo.cs.meta deleted file mode 100644 index 14d3dfa..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/ModInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 8b84eca4f56a179468ff4a470625c94a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/ModsInterface.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/ModsInterface.cs deleted file mode 100644 index 27dd232..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/ModsInterface.cs +++ /dev/null @@ -1,214 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Mods -{ - public sealed partial class ModsInterface : Handle - { - public ModsInterface() - { - } - - public ModsInterface(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// The most recent version of the API. - /// - public const int CopymodinfoApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int EnumeratemodsApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int InstallmodApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int ModIdentifierApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int ModinfoApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int UninstallmodApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int UpdatemodApiLatest = 1; - - /// - /// Get cached enumerated mods object. If successful, this data must be released by calling - /// Types of the cached enumerated mods can be specified through - /// - /// This request may fail with an code if an enumeration of a certain type was not performed before this call. - /// - /// structure containing the game identifier for which requesting enumerated mods - /// Enumerated mods Info. If the returned result is success, this will be set to data that must be later released, otherwise this will be set to NULL - /// - /// Success if we have cached data, or an error result if the request was invalid or we do not have cached data. - /// - public Result CopyModInfo(CopyModInfoOptions options, out ModInfo outEnumeratedMods) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outEnumeratedModsAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Mods_CopyModInfo(InnerHandle, optionsAddress, ref outEnumeratedModsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outEnumeratedModsAddress, out outEnumeratedMods)) - { - Bindings.EOS_Mods_ModInfo_Release(outEnumeratedModsAddress); - } - - return funcResult; - } - - /// - /// Starts an asynchronous task that makes a request to enumerate mods for the specified game. - /// Types of the mods to enumerate can be specified through - /// the section related to mods in eos_result.h for more details. - /// - /// structure containing the game identifiers - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the async operation completes, either successfully or in error - public void EnumerateMods(EnumerateModsOptions options, object clientData, OnEnumerateModsCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnEnumerateModsCallbackInternal(OnEnumerateModsCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Mods_EnumerateMods(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Starts an asynchronous task that makes a request to install the specified mod. - /// the section related to mods in eos_result.h for more details. - /// - /// structure containing the game and mod identifiers - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the async operation completes, either successfully or in error - public void InstallMod(InstallModOptions options, object clientData, OnInstallModCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnInstallModCallbackInternal(OnInstallModCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Mods_InstallMod(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Starts an asynchronous task that makes a request to uninstall the specified mod. - /// the section related to mods in eos_result.h for more details. - /// - /// structure containing the game and mod identifiers - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the async operation completes, either successfully or in error - public void UninstallMod(UninstallModOptions options, object clientData, OnUninstallModCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnUninstallModCallbackInternal(OnUninstallModCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Mods_UninstallMod(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Starts an asynchronous task that makes a request to update the specified mod to the latest version. - /// the section related to mods in eos_result.h for more details. - /// - /// structure containing the game and mod identifiers - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the async operation completes, either successfully or in error. If the mod is up to date then the operation will complete with success. - public void UpdateMod(UpdateModOptions options, object clientData, OnUpdateModCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnUpdateModCallbackInternal(OnUpdateModCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Mods_UpdateMod(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - [MonoPInvokeCallback(typeof(OnEnumerateModsCallbackInternal))] - internal static void OnEnumerateModsCallbackInternalImplementation(System.IntPtr data) - { - OnEnumerateModsCallback callback; - EnumerateModsCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnInstallModCallbackInternal))] - internal static void OnInstallModCallbackInternalImplementation(System.IntPtr data) - { - OnInstallModCallback callback; - InstallModCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnUninstallModCallbackInternal))] - internal static void OnUninstallModCallbackInternalImplementation(System.IntPtr data) - { - OnUninstallModCallback callback; - UninstallModCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnUpdateModCallbackInternal))] - internal static void OnUpdateModCallbackInternalImplementation(System.IntPtr data) - { - OnUpdateModCallback callback; - UpdateModCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/ModsInterface.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/ModsInterface.cs.meta deleted file mode 100644 index 6bed060..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/ModsInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 23393e48a9354144196616e9c2d4e216 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/OnEnumerateModsCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/OnEnumerateModsCallback.cs deleted file mode 100644 index 5f838a6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/OnEnumerateModsCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Mods -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnEnumerateModsCallback(EnumerateModsCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnEnumerateModsCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/OnEnumerateModsCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/OnEnumerateModsCallback.cs.meta deleted file mode 100644 index 44f809b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/OnEnumerateModsCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 34398b40d3ddf15459882df330861cc9 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/OnInstallModCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/OnInstallModCallback.cs deleted file mode 100644 index 967b8a3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/OnInstallModCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Mods -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnInstallModCallback(InstallModCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnInstallModCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/OnInstallModCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/OnInstallModCallback.cs.meta deleted file mode 100644 index 7a2d162..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/OnInstallModCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: dea54b1929535664c99f7a7144012aed -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/OnUninstallModCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/OnUninstallModCallback.cs deleted file mode 100644 index 03a582c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/OnUninstallModCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Mods -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnUninstallModCallback(UninstallModCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnUninstallModCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/OnUninstallModCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/OnUninstallModCallback.cs.meta deleted file mode 100644 index 2914b61..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/OnUninstallModCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0408b1d44591c1b4886e6474e308b502 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/OnUpdateModCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/OnUpdateModCallback.cs deleted file mode 100644 index efce589..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/OnUpdateModCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Mods -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnUpdateModCallback(UpdateModCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnUpdateModCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/OnUpdateModCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/OnUpdateModCallback.cs.meta deleted file mode 100644 index c05819b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/OnUpdateModCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 97e3bb2f49636ac498d5441329c36689 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/UninstallModCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/UninstallModCallbackInfo.cs deleted file mode 100644 index 0e978c3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/UninstallModCallbackInfo.cs +++ /dev/null @@ -1,107 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Mods -{ - /// - /// Output parameters for the Function. These parameters are received through the callback provided to - /// - public class UninstallModCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Result code for the operation. is returned if the uninstallation was successfull, otherwise one of the error codes is returned. - /// - public Result ResultCode { get; private set; } - - /// - /// The Epic Online Services Account ID of the user for which mod uninstallation was requested - /// - public EpicAccountId LocalUserId { get; private set; } - - /// - /// Context that is passed into - /// - public object ClientData { get; private set; } - - /// - /// Mod for which uninstallation was requested - /// - public ModIdentifier Mod { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(UninstallModCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - LocalUserId = other.Value.LocalUserId; - ClientData = other.Value.ClientData; - Mod = other.Value.Mod; - } - } - - public void Set(object other) - { - Set(other as UninstallModCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct UninstallModCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_ClientData; - private System.IntPtr m_Mod; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public EpicAccountId LocalUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ModIdentifier Mod - { - get - { - ModIdentifier value; - Helper.TryMarshalGet(m_Mod, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/UninstallModCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/UninstallModCallbackInfo.cs.meta deleted file mode 100644 index 1ed3113..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/UninstallModCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 7fea90361c5ba8a4f975e483f6f956bc -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/UninstallModOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/UninstallModOptions.cs deleted file mode 100644 index 44664d2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/UninstallModOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Mods -{ - /// - /// Input parameters for the Function. - /// - public class UninstallModOptions - { - /// - /// The Epic Online Services Account ID of the user for which the mod should be uninstalled - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The mod to uninstall - /// - public ModIdentifier Mod { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct UninstallModOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_Mod; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public ModIdentifier Mod - { - set - { - Helper.TryMarshalSet(ref m_Mod, value); - } - } - - public void Set(UninstallModOptions other) - { - if (other != null) - { - m_ApiVersion = ModsInterface.UninstallmodApiLatest; - LocalUserId = other.LocalUserId; - Mod = other.Mod; - } - } - - public void Set(object other) - { - Set(other as UninstallModOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_Mod); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/UninstallModOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/UninstallModOptions.cs.meta deleted file mode 100644 index 7d47f70..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/UninstallModOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 55ddb4b63f834444b8fb76ac055c7340 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/UpdateModCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/UpdateModCallbackInfo.cs deleted file mode 100644 index 3c87cb3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/UpdateModCallbackInfo.cs +++ /dev/null @@ -1,107 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Mods -{ - /// - /// Output parameters for the Function. These parameters are received through the callback provided to - /// - public class UpdateModCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Result code for the operation. is returned if the request to update was successfull, otherwise one of the error codes is returned. - /// - public Result ResultCode { get; private set; } - - /// - /// The Epic Online Services Account ID of the user for which mod update was requested - /// - public EpicAccountId LocalUserId { get; private set; } - - /// - /// Context that is passed into - /// - public object ClientData { get; private set; } - - /// - /// Mod for which update was requested - /// - public ModIdentifier Mod { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(UpdateModCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - LocalUserId = other.Value.LocalUserId; - ClientData = other.Value.ClientData; - Mod = other.Value.Mod; - } - } - - public void Set(object other) - { - Set(other as UpdateModCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct UpdateModCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_ClientData; - private System.IntPtr m_Mod; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public EpicAccountId LocalUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ModIdentifier Mod - { - get - { - ModIdentifier value; - Helper.TryMarshalGet(m_Mod, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/UpdateModCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/UpdateModCallbackInfo.cs.meta deleted file mode 100644 index ac284ab..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/UpdateModCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 5a3ec26295150c846a213865966f62e5 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/UpdateModOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/UpdateModOptions.cs deleted file mode 100644 index 3379461..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/UpdateModOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Mods -{ - /// - /// Input parameters for the Function. - /// - public class UpdateModOptions - { - /// - /// The Epic Online Services Account ID of the user for which the mod should be updated - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The mod to update - /// - public ModIdentifier Mod { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct UpdateModOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_Mod; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public ModIdentifier Mod - { - set - { - Helper.TryMarshalSet(ref m_Mod, value); - } - } - - public void Set(UpdateModOptions other) - { - if (other != null) - { - m_ApiVersion = ModsInterface.UpdatemodApiLatest; - LocalUserId = other.LocalUserId; - Mod = other.Mod; - } - } - - public void Set(object other) - { - Set(other as UpdateModOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_Mod); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/UpdateModOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/UpdateModOptions.cs.meta deleted file mode 100644 index cdc368b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Mods/UpdateModOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: de5df38e80acb6043ac3d52f77fb947d -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P.meta deleted file mode 100644 index 626fb1c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 22c2384a7a90ea143b4fea1339635cd6 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/AcceptConnectionOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/AcceptConnectionOptions.cs deleted file mode 100644 index a4e82c8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/AcceptConnectionOptions.cs +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - /// - /// Structure containing information about who would like to accept a connection, and which connection. - /// - public class AcceptConnectionOptions - { - /// - /// The Product User ID of the local user who is accepting any pending or future connections with RemoteUserId - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The Product User ID of the remote user who has either sent a connection request or is expected to in the future - /// - public ProductUserId RemoteUserId { get; set; } - - /// - /// The socket ID of the connection to accept on - /// - public SocketId SocketId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AcceptConnectionOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RemoteUserId; - private System.IntPtr m_SocketId; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public ProductUserId RemoteUserId - { - set - { - Helper.TryMarshalSet(ref m_RemoteUserId, value); - } - } - - public SocketId SocketId - { - set - { - Helper.TryMarshalSet(ref m_SocketId, value); - } - } - - public void Set(AcceptConnectionOptions other) - { - if (other != null) - { - m_ApiVersion = P2PInterface.AcceptconnectionApiLatest; - LocalUserId = other.LocalUserId; - RemoteUserId = other.RemoteUserId; - SocketId = other.SocketId; - } - } - - public void Set(object other) - { - Set(other as AcceptConnectionOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_RemoteUserId); - Helper.TryMarshalDispose(ref m_SocketId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/AcceptConnectionOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/AcceptConnectionOptions.cs.meta deleted file mode 100644 index 0f98c71..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/AcceptConnectionOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 1ca1dba84827ef942839dba938861ff2 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/AddNotifyIncomingPacketQueueFullOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/AddNotifyIncomingPacketQueueFullOptions.cs deleted file mode 100644 index e68f0e3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/AddNotifyIncomingPacketQueueFullOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - /// - /// Structure containing information about what version of the function is supported. - /// - public class AddNotifyIncomingPacketQueueFullOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyIncomingPacketQueueFullOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(AddNotifyIncomingPacketQueueFullOptions other) - { - if (other != null) - { - m_ApiVersion = P2PInterface.AddnotifyincomingpacketqueuefullApiLatest; - } - } - - public void Set(object other) - { - Set(other as AddNotifyIncomingPacketQueueFullOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/AddNotifyIncomingPacketQueueFullOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/AddNotifyIncomingPacketQueueFullOptions.cs.meta deleted file mode 100644 index 4659005..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/AddNotifyIncomingPacketQueueFullOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e0341b37499def74c8cd04867f9b1e28 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/AddNotifyPeerConnectionClosedOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/AddNotifyPeerConnectionClosedOptions.cs deleted file mode 100644 index 9977e8b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/AddNotifyPeerConnectionClosedOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - /// - /// Structure containing information about who would like notifications about closed connections, and for which socket. - /// - public class AddNotifyPeerConnectionClosedOptions - { - /// - /// The Product User ID of the local user who would like notifications - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The optional socket ID to listen for to be closed. If NULL, this handler will be called for all closed connections - /// - public SocketId SocketId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyPeerConnectionClosedOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_SocketId; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public SocketId SocketId - { - set - { - Helper.TryMarshalSet(ref m_SocketId, value); - } - } - - public void Set(AddNotifyPeerConnectionClosedOptions other) - { - if (other != null) - { - m_ApiVersion = P2PInterface.AddnotifypeerconnectionclosedApiLatest; - LocalUserId = other.LocalUserId; - SocketId = other.SocketId; - } - } - - public void Set(object other) - { - Set(other as AddNotifyPeerConnectionClosedOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_SocketId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/AddNotifyPeerConnectionClosedOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/AddNotifyPeerConnectionClosedOptions.cs.meta deleted file mode 100644 index 3354c16..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/AddNotifyPeerConnectionClosedOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9aa79b0db2f211248b04ef0de5b525a2 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/AddNotifyPeerConnectionRequestOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/AddNotifyPeerConnectionRequestOptions.cs deleted file mode 100644 index ca5ce90..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/AddNotifyPeerConnectionRequestOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - /// - /// Structure containing information about who would like connection notifications, and about which socket. - /// - public class AddNotifyPeerConnectionRequestOptions - { - /// - /// The Product User ID of the user who is listening for incoming connection requests - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The optional socket ID to listen for, used as a filter for incoming connection requests; If NULL, incoming connection requests will not be filtered - /// - public SocketId SocketId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyPeerConnectionRequestOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_SocketId; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public SocketId SocketId - { - set - { - Helper.TryMarshalSet(ref m_SocketId, value); - } - } - - public void Set(AddNotifyPeerConnectionRequestOptions other) - { - if (other != null) - { - m_ApiVersion = P2PInterface.AddnotifypeerconnectionrequestApiLatest; - LocalUserId = other.LocalUserId; - SocketId = other.SocketId; - } - } - - public void Set(object other) - { - Set(other as AddNotifyPeerConnectionRequestOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_SocketId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/AddNotifyPeerConnectionRequestOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/AddNotifyPeerConnectionRequestOptions.cs.meta deleted file mode 100644 index 6f25a8c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/AddNotifyPeerConnectionRequestOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ceaade6c8b6a47440bc12042909ef905 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/CloseConnectionOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/CloseConnectionOptions.cs deleted file mode 100644 index 151c0a1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/CloseConnectionOptions.cs +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - /// - /// Structure containing information about who would like to close a connection, and which connection. - /// - public class CloseConnectionOptions - { - /// - /// The Product User ID of the local user who would like to close a previously accepted connection (or decline a pending invite) - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The Product User ID of the remote user to disconnect from (or to reject a pending invite from) - /// - public ProductUserId RemoteUserId { get; set; } - - /// - /// The socket ID of the connection to close (or optionally NULL to not accept any connection requests from the Remote User) - /// - public SocketId SocketId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CloseConnectionOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RemoteUserId; - private System.IntPtr m_SocketId; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public ProductUserId RemoteUserId - { - set - { - Helper.TryMarshalSet(ref m_RemoteUserId, value); - } - } - - public SocketId SocketId - { - set - { - Helper.TryMarshalSet(ref m_SocketId, value); - } - } - - public void Set(CloseConnectionOptions other) - { - if (other != null) - { - m_ApiVersion = P2PInterface.CloseconnectionApiLatest; - LocalUserId = other.LocalUserId; - RemoteUserId = other.RemoteUserId; - SocketId = other.SocketId; - } - } - - public void Set(object other) - { - Set(other as CloseConnectionOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_RemoteUserId); - Helper.TryMarshalDispose(ref m_SocketId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/CloseConnectionOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/CloseConnectionOptions.cs.meta deleted file mode 100644 index f4cb089..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/CloseConnectionOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 40c49c13c903ca24d858c24030bac43f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/CloseConnectionsOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/CloseConnectionsOptions.cs deleted file mode 100644 index 49d1c53..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/CloseConnectionsOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - /// - /// Structure containing information about who would like to close connections, and by what socket ID - /// - public class CloseConnectionsOptions - { - /// - /// The Product User ID of the local user who would like to close all connections that use a particular socket ID - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The socket ID of the connections to close - /// - public SocketId SocketId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CloseConnectionsOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_SocketId; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public SocketId SocketId - { - set - { - Helper.TryMarshalSet(ref m_SocketId, value); - } - } - - public void Set(CloseConnectionsOptions other) - { - if (other != null) - { - m_ApiVersion = P2PInterface.CloseconnectionsApiLatest; - LocalUserId = other.LocalUserId; - SocketId = other.SocketId; - } - } - - public void Set(object other) - { - Set(other as CloseConnectionsOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_SocketId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/CloseConnectionsOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/CloseConnectionsOptions.cs.meta deleted file mode 100644 index 0a7ee07..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/CloseConnectionsOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4e165abbf322e5b4885dc47ed28cfa54 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/ConnectionClosedReason.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/ConnectionClosedReason.cs deleted file mode 100644 index 351ddff..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/ConnectionClosedReason.cs +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - /// - /// Reasons why a P2P connection was closed - /// - public enum ConnectionClosedReason : int - { - /// - /// The connection was closed for unknown reasons - /// - Unknown = 0, - /// - /// The connection was gracefully closed by the local user - /// - ClosedByLocalUser = 1, - /// - /// The connection was gracefully closed by the remote user - /// - ClosedByPeer = 2, - /// - /// The connection timed out - /// - TimedOut = 3, - /// - /// The connection could not be created due to too many other connections - /// - TooManyConnections = 4, - /// - /// The remote user sent an invalid message - /// - InvalidMessage = 5, - /// - /// The remote user sent us invalid data - /// - InvalidData = 6, - /// - /// We failed to establish a connection with the remote user - /// - ConnectionFailed = 7, - /// - /// The connection was unexpectedly closed - /// - ConnectionClosed = 8, - /// - /// We failed to negotiate a connection with the remote user - /// - NegotiationFailed = 9, - /// - /// There was an unexpected error and the connection cannot continue - /// - UnexpectedError = 10 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/ConnectionClosedReason.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/ConnectionClosedReason.cs.meta deleted file mode 100644 index 0cdadd2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/ConnectionClosedReason.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 2645c67ddb449e24a81726eaa524e97b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/GetNATTypeOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/GetNATTypeOptions.cs deleted file mode 100644 index 622587e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/GetNATTypeOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - /// - /// Structure containing information needed to get perviously queried NAT-types - /// - public class GetNATTypeOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetNATTypeOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(GetNATTypeOptions other) - { - if (other != null) - { - m_ApiVersion = P2PInterface.GetnattypeApiLatest; - } - } - - public void Set(object other) - { - Set(other as GetNATTypeOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/GetNATTypeOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/GetNATTypeOptions.cs.meta deleted file mode 100644 index 9c78e0b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/GetNATTypeOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 96f2c1a7f02f579498c1acfeb74646ea -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/GetNextReceivedPacketSizeOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/GetNextReceivedPacketSizeOptions.cs deleted file mode 100644 index 8390569..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/GetNextReceivedPacketSizeOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - /// - /// Structure containing information about who would like to receive a packet. - /// - public class GetNextReceivedPacketSizeOptions - { - /// - /// The Product User ID of the local user who is receiving the packet - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// An optional channel to request the data for. If NULL, we're retrieving the size of the next packet on any channel. - /// - public byte? RequestedChannel { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetNextReceivedPacketSizeOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RequestedChannel; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public byte? RequestedChannel - { - set - { - Helper.TryMarshalSet(ref m_RequestedChannel, value); - } - } - - public void Set(GetNextReceivedPacketSizeOptions other) - { - if (other != null) - { - m_ApiVersion = P2PInterface.GetnextreceivedpacketsizeApiLatest; - LocalUserId = other.LocalUserId; - RequestedChannel = other.RequestedChannel; - } - } - - public void Set(object other) - { - Set(other as GetNextReceivedPacketSizeOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_RequestedChannel); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/GetNextReceivedPacketSizeOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/GetNextReceivedPacketSizeOptions.cs.meta deleted file mode 100644 index 5b796df..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/GetNextReceivedPacketSizeOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 465301b8cdf533344addabc7c4ebef38 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/GetPacketQueueInfoOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/GetPacketQueueInfoOptions.cs deleted file mode 100644 index 0ed14a4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/GetPacketQueueInfoOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - /// - /// Structure containing information needed to get the current packet queue information. - /// - public class GetPacketQueueInfoOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetPacketQueueInfoOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(GetPacketQueueInfoOptions other) - { - if (other != null) - { - m_ApiVersion = P2PInterface.GetpacketqueueinfoApiLatest; - } - } - - public void Set(object other) - { - Set(other as GetPacketQueueInfoOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/GetPacketQueueInfoOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/GetPacketQueueInfoOptions.cs.meta deleted file mode 100644 index 253a70d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/GetPacketQueueInfoOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9bb8b77010f62f64cae3eacb2f1546d3 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/GetPortRangeOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/GetPortRangeOptions.cs deleted file mode 100644 index ed9213a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/GetPortRangeOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - /// - /// Structure containing information about getting the configured port range settings. - /// - public class GetPortRangeOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetPortRangeOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(GetPortRangeOptions other) - { - if (other != null) - { - m_ApiVersion = P2PInterface.GetportrangeApiLatest; - } - } - - public void Set(object other) - { - Set(other as GetPortRangeOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/GetPortRangeOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/GetPortRangeOptions.cs.meta deleted file mode 100644 index 483a7fe..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/GetPortRangeOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d21eb9ade7452ca4bbe3e3150e863098 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/GetRelayControlOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/GetRelayControlOptions.cs deleted file mode 100644 index 6455df4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/GetRelayControlOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - /// - /// Structure containing information about getting the relay control setting. - /// - public class GetRelayControlOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetRelayControlOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(GetRelayControlOptions other) - { - if (other != null) - { - m_ApiVersion = P2PInterface.GetrelaycontrolApiLatest; - } - } - - public void Set(object other) - { - Set(other as GetRelayControlOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/GetRelayControlOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/GetRelayControlOptions.cs.meta deleted file mode 100644 index c6633c8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/GetRelayControlOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d03831b6d5e798b48803a6c62ebfcf3e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/NATType.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/NATType.cs deleted file mode 100644 index fd2554e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/NATType.cs +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - /// - /// Categories of NAT strictness. - /// - public enum NATType : int - { - /// - /// NAT type either unknown (remote) or we are unable to determine it (local) - /// - Unknown = 0, - /// - /// All peers can directly-connect to you - /// - Open = 1, - /// - /// You can directly-connect to other Moderate and Open peers - /// - Moderate = 2, - /// - /// You can only directly-connect to Open peers - /// - Strict = 3 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/NATType.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/NATType.cs.meta deleted file mode 100644 index 8c256ab..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/NATType.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d9eb21155f3724741a9def356e7b1423 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnIncomingConnectionRequestCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnIncomingConnectionRequestCallback.cs deleted file mode 100644 index 9b203cb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnIncomingConnectionRequestCallback.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - /// - /// Callback for information related to incoming connection requests. - /// - public delegate void OnIncomingConnectionRequestCallback(OnIncomingConnectionRequestInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnIncomingConnectionRequestCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnIncomingConnectionRequestCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnIncomingConnectionRequestCallback.cs.meta deleted file mode 100644 index 4a8b559..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnIncomingConnectionRequestCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 62fb94f9ab8a89a49ba894b339f154e4 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnIncomingConnectionRequestInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnIncomingConnectionRequestInfo.cs deleted file mode 100644 index ffe555c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnIncomingConnectionRequestInfo.cs +++ /dev/null @@ -1,109 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - /// - /// Structure containing information about an incoming connection request. - /// - public class OnIncomingConnectionRequestInfo : ICallbackInfo, ISettable - { - /// - /// Client-specified data passed into - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the local user who is being requested to open a P2P session with RemoteUserId - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The Product User ID of the remote user who requested a peer connection with the local user - /// - public ProductUserId RemoteUserId { get; private set; } - - /// - /// The ID of the socket the Remote User wishes to communicate on - /// - public SocketId SocketId { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(OnIncomingConnectionRequestInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - RemoteUserId = other.Value.RemoteUserId; - SocketId = other.Value.SocketId; - } - } - - public void Set(object other) - { - Set(other as OnIncomingConnectionRequestInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct OnIncomingConnectionRequestInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RemoteUserId; - private System.IntPtr m_SocketId; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public ProductUserId RemoteUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_RemoteUserId, out value); - return value; - } - } - - public SocketId SocketId - { - get - { - SocketId value; - Helper.TryMarshalGet(m_SocketId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnIncomingConnectionRequestInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnIncomingConnectionRequestInfo.cs.meta deleted file mode 100644 index 1e2a24c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnIncomingConnectionRequestInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: fb2afc5122935a048b4fdd8c59ee2819 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnIncomingPacketQueueFullCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnIncomingPacketQueueFullCallback.cs deleted file mode 100644 index 7c10fe9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnIncomingPacketQueueFullCallback.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - /// - /// Callback for information related to incoming connection requests. - /// - public delegate void OnIncomingPacketQueueFullCallback(OnIncomingPacketQueueFullInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnIncomingPacketQueueFullCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnIncomingPacketQueueFullCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnIncomingPacketQueueFullCallback.cs.meta deleted file mode 100644 index cfda325..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnIncomingPacketQueueFullCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 98ea17cbf3dc1c44f8fbd3d2f05fab46 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnIncomingPacketQueueFullInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnIncomingPacketQueueFullInfo.cs deleted file mode 100644 index e15fb8c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnIncomingPacketQueueFullInfo.cs +++ /dev/null @@ -1,135 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - /// - /// Structure containing information about the packet queue's state and the incoming packet that would overflow the queue - /// - public class OnIncomingPacketQueueFullInfo : ICallbackInfo, ISettable - { - /// - /// Client-specified data passed into AddNotifyIncomingPacketQueueFull - /// - public object ClientData { get; private set; } - - /// - /// The maximum size in bytes the incoming packet queue is allowed to use - /// - public ulong PacketQueueMaxSizeBytes { get; private set; } - - /// - /// The current size in bytes the incoming packet queue is currently using - /// - public ulong PacketQueueCurrentSizeBytes { get; private set; } - - /// - /// The Product User ID of the local user who is receiving the packet that would overflow the queue - /// - public ProductUserId OverflowPacketLocalUserId { get; private set; } - - /// - /// The channel the incoming packet is for - /// - public byte OverflowPacketChannel { get; private set; } - - /// - /// The size in bytes of the incoming packet (and related metadata) that would overflow the queue - /// - public uint OverflowPacketSizeBytes { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(OnIncomingPacketQueueFullInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - PacketQueueMaxSizeBytes = other.Value.PacketQueueMaxSizeBytes; - PacketQueueCurrentSizeBytes = other.Value.PacketQueueCurrentSizeBytes; - OverflowPacketLocalUserId = other.Value.OverflowPacketLocalUserId; - OverflowPacketChannel = other.Value.OverflowPacketChannel; - OverflowPacketSizeBytes = other.Value.OverflowPacketSizeBytes; - } - } - - public void Set(object other) - { - Set(other as OnIncomingPacketQueueFullInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct OnIncomingPacketQueueFullInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private ulong m_PacketQueueMaxSizeBytes; - private ulong m_PacketQueueCurrentSizeBytes; - private System.IntPtr m_OverflowPacketLocalUserId; - private byte m_OverflowPacketChannel; - private uint m_OverflowPacketSizeBytes; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ulong PacketQueueMaxSizeBytes - { - get - { - return m_PacketQueueMaxSizeBytes; - } - } - - public ulong PacketQueueCurrentSizeBytes - { - get - { - return m_PacketQueueCurrentSizeBytes; - } - } - - public ProductUserId OverflowPacketLocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_OverflowPacketLocalUserId, out value); - return value; - } - } - - public byte OverflowPacketChannel - { - get - { - return m_OverflowPacketChannel; - } - } - - public uint OverflowPacketSizeBytes - { - get - { - return m_OverflowPacketSizeBytes; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnIncomingPacketQueueFullInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnIncomingPacketQueueFullInfo.cs.meta deleted file mode 100644 index 9d4efec..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnIncomingPacketQueueFullInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a5c415ab073c97d49bf9851607da63c5 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnQueryNATTypeCompleteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnQueryNATTypeCompleteCallback.cs deleted file mode 100644 index 46851ae..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnQueryNATTypeCompleteCallback.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - /// - /// Callback for information related to our NAT type query completing. - /// - public delegate void OnQueryNATTypeCompleteCallback(OnQueryNATTypeCompleteInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnQueryNATTypeCompleteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnQueryNATTypeCompleteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnQueryNATTypeCompleteCallback.cs.meta deleted file mode 100644 index 5496eff..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnQueryNATTypeCompleteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 70931d77010c24c4c8c016bbd0dac3d0 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnQueryNATTypeCompleteInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnQueryNATTypeCompleteInfo.cs deleted file mode 100644 index 4050e34..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnQueryNATTypeCompleteInfo.cs +++ /dev/null @@ -1,88 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - /// - /// Structure containing information about the local network NAT type - /// - public class OnQueryNATTypeCompleteInfo : ICallbackInfo, ISettable - { - /// - /// Result code for the operation. is returned for a successful query, other codes indicate an error - /// - public Result ResultCode { get; private set; } - - /// - /// Client-specified data passed into - /// - public object ClientData { get; private set; } - - /// - /// The queried NAT type - /// - public NATType NATType { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(OnQueryNATTypeCompleteInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - NATType = other.Value.NATType; - } - } - - public void Set(object other) - { - Set(other as OnQueryNATTypeCompleteInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct OnQueryNATTypeCompleteInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private NATType m_NATType; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public NATType NATType - { - get - { - return m_NATType; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnQueryNATTypeCompleteInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnQueryNATTypeCompleteInfo.cs.meta deleted file mode 100644 index b68bdb0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnQueryNATTypeCompleteInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0b4b5b0eb5fd3a34590d6656cde28e19 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnRemoteConnectionClosedCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnRemoteConnectionClosedCallback.cs deleted file mode 100644 index 4bd371e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnRemoteConnectionClosedCallback.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - /// - /// Callback for information related to open connections being closed. - /// - public delegate void OnRemoteConnectionClosedCallback(OnRemoteConnectionClosedInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnRemoteConnectionClosedCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnRemoteConnectionClosedCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnRemoteConnectionClosedCallback.cs.meta deleted file mode 100644 index 958cab7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnRemoteConnectionClosedCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ca23518d1c09d9d4eb1b8046b80fdbbb -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnRemoteConnectionClosedInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnRemoteConnectionClosedInfo.cs deleted file mode 100644 index 4df0fdd..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnRemoteConnectionClosedInfo.cs +++ /dev/null @@ -1,124 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - /// - /// Structure containing information about an connection request that is being closed. - /// - public class OnRemoteConnectionClosedInfo : ICallbackInfo, ISettable - { - /// - /// Client-specified data passed into - /// - public object ClientData { get; private set; } - - /// - /// The local user who is being notified of a connection being closed - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The Product User ID of the remote user who this connection was with - /// - public ProductUserId RemoteUserId { get; private set; } - - /// - /// The socket ID of the connection being closed - /// - public SocketId SocketId { get; private set; } - - /// - /// The reason the connection was closed (if known) - /// - public ConnectionClosedReason Reason { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(OnRemoteConnectionClosedInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - RemoteUserId = other.Value.RemoteUserId; - SocketId = other.Value.SocketId; - Reason = other.Value.Reason; - } - } - - public void Set(object other) - { - Set(other as OnRemoteConnectionClosedInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct OnRemoteConnectionClosedInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RemoteUserId; - private System.IntPtr m_SocketId; - private ConnectionClosedReason m_Reason; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public ProductUserId RemoteUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_RemoteUserId, out value); - return value; - } - } - - public SocketId SocketId - { - get - { - SocketId value; - Helper.TryMarshalGet(m_SocketId, out value); - return value; - } - } - - public ConnectionClosedReason Reason - { - get - { - return m_Reason; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnRemoteConnectionClosedInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnRemoteConnectionClosedInfo.cs.meta deleted file mode 100644 index 9c696dd..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/OnRemoteConnectionClosedInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0978d23d7bb799848b25e64e68a41efe -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/P2PInterface.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/P2PInterface.cs deleted file mode 100644 index 6c830ba..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/P2PInterface.cs +++ /dev/null @@ -1,620 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - public sealed partial class P2PInterface : Handle - { - public P2PInterface() - { - } - - public P2PInterface(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// The most recent version of the API. - /// - public const int AcceptconnectionApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int AddnotifyincomingpacketqueuefullApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int AddnotifypeerconnectionclosedApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int AddnotifypeerconnectionrequestApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int CloseconnectionApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int CloseconnectionsApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetnattypeApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetnextreceivedpacketsizeApiLatest = 2; - - /// - /// The most recent version of the API. - /// - public const int GetpacketqueueinfoApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetportrangeApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetrelaycontrolApiLatest = 1; - - /// - /// The maximum amount of unique Socket ID connections that can be opened with each remote user. As this limit is only per remote user, you may have more - /// than this number of Socket IDs across multiple remote users. - /// - public const int MaxConnections = 32; - - /// - /// A packet's maximum size in bytes - /// - public const int MaxPacketSize = 1170; - - /// - /// Helper constant to signify that the packet queue is allowed to grow indefinitely - /// - public const int MaxQueueSizeUnlimited = 0; - - /// - /// The most recent version of the API. - /// - public const int QuerynattypeApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int ReceivepacketApiLatest = 2; - - /// - /// The most recent version of the API. - /// - public const int SendpacketApiLatest = 2; - - /// - /// The most recent version of the API. - /// - public const int SetpacketqueuesizeApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int SetportrangeApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int SetrelaycontrolApiLatest = 1; - - /// - /// The most recent version of the structure. - /// - public const int SocketidApiLatest = 1; - - /// - /// Accept connections from a specific peer. If this peer has not attempted to connect yet, when they do, they will automatically be accepted. - /// - /// Information about who would like to accept a connection, and which connection - /// - /// :: - if the provided data is valid - /// :: - if the provided data is invalid - /// - public Result AcceptConnection(AcceptConnectionOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_P2P_AcceptConnection(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Listen for when our packet queue has become full. This event gives an opportunity to read packets to make - /// room for new incoming packets. If this event fires and no packets are read by calling - /// or the packet queue size is not increased by , any packets that are received after - /// this event are discarded until there is room again in the queue. - /// - /// Information about what version of the API is supported - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// The callback to be fired when the incoming packet queue is full - /// - /// A valid notification ID if successfully bound, or otherwise - /// - public ulong AddNotifyIncomingPacketQueueFull(AddNotifyIncomingPacketQueueFullOptions options, object clientData, OnIncomingPacketQueueFullCallback incomingPacketQueueFullHandler) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var incomingPacketQueueFullHandlerInternal = new OnIncomingPacketQueueFullCallbackInternal(OnIncomingPacketQueueFullCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, incomingPacketQueueFullHandler, incomingPacketQueueFullHandlerInternal); - - var funcResult = Bindings.EOS_P2P_AddNotifyIncomingPacketQueueFull(InnerHandle, optionsAddress, clientDataAddress, incomingPacketQueueFullHandlerInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Listen for when a previously opened connection is closed. - /// - /// Information about who would like notifications about closed connections, and for which socket - /// This value is returned to the caller when ConnectionClosedHandler is invoked - /// The callback to be fired when we an open connection has been closed - /// - /// A valid notification ID if successfully bound, or otherwise - /// - public ulong AddNotifyPeerConnectionClosed(AddNotifyPeerConnectionClosedOptions options, object clientData, OnRemoteConnectionClosedCallback connectionClosedHandler) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var connectionClosedHandlerInternal = new OnRemoteConnectionClosedCallbackInternal(OnRemoteConnectionClosedCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, connectionClosedHandler, connectionClosedHandlerInternal); - - var funcResult = Bindings.EOS_P2P_AddNotifyPeerConnectionClosed(InnerHandle, optionsAddress, clientDataAddress, connectionClosedHandlerInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Listen for incoming connection requests on a particular Socket ID, or optionally all Socket IDs. The bound function - /// will only be called if the connection has not already been accepted. - /// - /// Information about who would like notifications, and (optionally) only for a specific socket - /// This value is returned to the caller when ConnectionRequestHandler is invoked - /// The callback to be fired when we receive a connection request - /// - /// A valid notification ID if successfully bound, or otherwise - /// - public ulong AddNotifyPeerConnectionRequest(AddNotifyPeerConnectionRequestOptions options, object clientData, OnIncomingConnectionRequestCallback connectionRequestHandler) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var connectionRequestHandlerInternal = new OnIncomingConnectionRequestCallbackInternal(OnIncomingConnectionRequestCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, connectionRequestHandler, connectionRequestHandlerInternal); - - var funcResult = Bindings.EOS_P2P_AddNotifyPeerConnectionRequest(InnerHandle, optionsAddress, clientDataAddress, connectionRequestHandlerInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Stop accepting new connections from a specific peer and close any open connections. - /// - /// Information about who would like to close a connection, and which connection. - /// - /// :: - if the provided data is valid - /// :: - if the provided data is invalid - /// - public Result CloseConnection(CloseConnectionOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_P2P_CloseConnection(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Close any open Connections for a specific Peer Connection ID. - /// - /// Information about who would like to close connections, and by what socket ID - /// - /// :: - if the provided data is valid - /// :: - if the provided data is invalid - /// - public Result CloseConnections(CloseConnectionsOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_P2P_CloseConnections(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Get our last-queried NAT-type, if it has been successfully queried. - /// - /// Information about what version of the API is supported - /// The queried NAT Type, or unknown if unknown - /// - /// :: - if we have cached data - /// :: - If we do not have queried data cached - /// - public Result GetNATType(GetNATTypeOptions options, out NATType outNATType) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - outNATType = Helper.GetDefault(); - - var funcResult = Bindings.EOS_P2P_GetNATType(InnerHandle, optionsAddress, ref outNATType); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Gets the size of the packet that will be returned by ReceivePacket for a particular user, if there is any available - /// packets to be retrieved. - /// - /// Information about who is requesting the size of their next packet - /// The amount of bytes required to store the data of the next packet for the requested user - /// - /// :: - If OutPacketSizeBytes was successfully set and there is data to be received - /// :: - If input was invalid - /// :: - If there are no packets available for the requesting user - /// - public Result GetNextReceivedPacketSize(GetNextReceivedPacketSizeOptions options, out uint outPacketSizeBytes) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - outPacketSizeBytes = Helper.GetDefault(); - - var funcResult = Bindings.EOS_P2P_GetNextReceivedPacketSize(InnerHandle, optionsAddress, ref outPacketSizeBytes); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Gets the current cached information related to the incoming and outgoing packet queues. - /// - /// Information about what version of the API is supported - /// The current information of the incoming and outgoing packet queues - /// - /// :: - if the input options were valid - /// :: - if the input was invalid in some way - /// - public Result GetPacketQueueInfo(GetPacketQueueInfoOptions options, out PacketQueueInfo outPacketQueueInfo) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outPacketQueueInfoInternal = Helper.GetDefault(); - - var funcResult = Bindings.EOS_P2P_GetPacketQueueInfo(InnerHandle, optionsAddress, ref outPacketQueueInfoInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryMarshalGet(outPacketQueueInfoInternal, out outPacketQueueInfo); - - return funcResult; - } - - /// - /// Get the current chosen port and the amount of other ports to try above the chosen port if the chosen port is unavailable. - /// - /// Information about what version of the API is supported - /// The port that will be tried first - /// The amount of ports to try above the value in OutPort, if OutPort is unavailable - /// - /// :: - if the input options were valid - /// :: - if the input was invalid in some way - /// - public Result GetPortRange(GetPortRangeOptions options, out ushort outPort, out ushort outNumAdditionalPortsToTry) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - outPort = Helper.GetDefault(); - - outNumAdditionalPortsToTry = Helper.GetDefault(); - - var funcResult = Bindings.EOS_P2P_GetPortRange(InnerHandle, optionsAddress, ref outPort, ref outNumAdditionalPortsToTry); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Get the current relay control setting. - /// - /// Information about what version of the API is supported - /// The relay control setting currently configured - /// - /// :: - if the input was valid - /// :: - if the input was invalid in some way - /// - public Result GetRelayControl(GetRelayControlOptions options, out RelayControl outRelayControl) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - outRelayControl = Helper.GetDefault(); - - var funcResult = Bindings.EOS_P2P_GetRelayControl(InnerHandle, optionsAddress, ref outRelayControl); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Query the current NAT-type of our connection. - /// - /// Information about what version of the API is supported - /// arbitrary data that is passed back to you in the CompletionDelegate - /// The callback to be fired when we finish querying our NAT type - public void QueryNATType(QueryNATTypeOptions options, object clientData, OnQueryNATTypeCompleteCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnQueryNATTypeCompleteCallbackInternal(OnQueryNATTypeCompleteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_P2P_QueryNATType(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Receive the next packet for the local user, and information associated with this packet, if it exists. - /// - /// Information about who is requesting the size of their next packet, and how much data can be stored safely - /// The Remote User who sent data. Only set if there was a packet to receive. - /// The Socket ID of the data that was sent. Only set if there was a packet to receive. - /// The channel the data was sent on. Only set if there was a packet to receive. - /// Buffer to store the data being received. Must be at least in length or data will be truncated - /// The amount of bytes written to OutData. Only set if there was a packet to receive. - /// - /// :: - If the packet was received successfully - /// :: - If input was invalid - /// :: - If there are no packets available for the requesting user - /// - public Result ReceivePacket(ReceivePacketOptions options, out ProductUserId outPeerId, out SocketId outSocketId, out byte outChannel, out byte[] outData) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outPeerIdAddress = System.IntPtr.Zero; - - var outSocketIdInternal = Helper.GetDefault(); - - outChannel = Helper.GetDefault(); - - System.IntPtr outDataAddress = System.IntPtr.Zero; - uint outBytesWritten = MaxPacketSize; - Helper.TryMarshalAllocate(ref outDataAddress, outBytesWritten, out _); - - var funcResult = Bindings.EOS_P2P_ReceivePacket(InnerHandle, optionsAddress, ref outPeerIdAddress, ref outSocketIdInternal, ref outChannel, outDataAddress, ref outBytesWritten); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryMarshalGet(outPeerIdAddress, out outPeerId); - - Helper.TryMarshalGet(outSocketIdInternal, out outSocketId); - - Helper.TryMarshalGet(outDataAddress, out outData, outBytesWritten); - Helper.TryMarshalDispose(ref outDataAddress); - - return funcResult; - } - - /// - /// Stop listening for full incoming packet queue events on a previously bound handler. - /// - /// The previously bound notification ID - public void RemoveNotifyIncomingPacketQueueFull(ulong notificationId) - { - Helper.TryRemoveCallbackByNotificationId(notificationId); - - Bindings.EOS_P2P_RemoveNotifyIncomingPacketQueueFull(InnerHandle, notificationId); - } - - /// - /// Stop notifications for connections being closed on a previously bound handler. - /// - /// The previously bound notification ID - public void RemoveNotifyPeerConnectionClosed(ulong notificationId) - { - Helper.TryRemoveCallbackByNotificationId(notificationId); - - Bindings.EOS_P2P_RemoveNotifyPeerConnectionClosed(InnerHandle, notificationId); - } - - /// - /// Stop listening for connection requests on a previously bound handler. - /// - /// The previously bound notification ID - public void RemoveNotifyPeerConnectionRequest(ulong notificationId) - { - Helper.TryRemoveCallbackByNotificationId(notificationId); - - Bindings.EOS_P2P_RemoveNotifyPeerConnectionRequest(InnerHandle, notificationId); - } - - /// - /// Send a packet to a peer at the specified address. If there is already an open connection to this peer, it will be - /// sent immediately. If there is no open connection, an attempt to connect to the peer will be made. An - /// result only means the data was accepted to be sent, not that it has been successfully delivered to the peer. - /// - /// Information about the data being sent, by who, to who - /// - /// :: - If packet was queued to be sent successfully - /// :: - If input was invalid - /// :: - If amount of data being sent is too large, or the outgoing packet queue was full - /// - public Result SendPacket(SendPacketOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_P2P_SendPacket(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Sets the maximum packet queue sizes that packets waiting to be sent or received can use. If the packet queue - /// size is made smaller than the current queue size while there are packets in the queue that would push this - /// packet size over, existing packets are kept but new packets may not be added to the full queue until enough - /// packets are sent or received. - /// - /// Information about packet queue size - /// - /// :: - if the input options were valid - /// :: - if the input was invalid in some way - /// - public Result SetPacketQueueSize(SetPacketQueueSizeOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_P2P_SetPacketQueueSize(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Set configuration options related to network ports. - /// - /// Information about network ports config options - /// - /// :: - if the options were set successfully - /// :: - if the options are invalid in some way - /// - public Result SetPortRange(SetPortRangeOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_P2P_SetPortRange(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Set how relay servers are to be used. This setting does not immediately apply to existing connections, but may apply to existing - /// connections if the connection requires renegotiation. - /// - /// Information about relay server config options - /// - /// :: - if the options were set successfully - /// :: - if the options are invalid in some way - /// - public Result SetRelayControl(SetRelayControlOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_P2P_SetRelayControl(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - [MonoPInvokeCallback(typeof(OnIncomingConnectionRequestCallbackInternal))] - internal static void OnIncomingConnectionRequestCallbackInternalImplementation(System.IntPtr data) - { - OnIncomingConnectionRequestCallback callback; - OnIncomingConnectionRequestInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnIncomingPacketQueueFullCallbackInternal))] - internal static void OnIncomingPacketQueueFullCallbackInternalImplementation(System.IntPtr data) - { - OnIncomingPacketQueueFullCallback callback; - OnIncomingPacketQueueFullInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnQueryNATTypeCompleteCallbackInternal))] - internal static void OnQueryNATTypeCompleteCallbackInternalImplementation(System.IntPtr data) - { - OnQueryNATTypeCompleteCallback callback; - OnQueryNATTypeCompleteInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnRemoteConnectionClosedCallbackInternal))] - internal static void OnRemoteConnectionClosedCallbackInternalImplementation(System.IntPtr data) - { - OnRemoteConnectionClosedCallback callback; - OnRemoteConnectionClosedInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/P2PInterface.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/P2PInterface.cs.meta deleted file mode 100644 index 0d44034..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/P2PInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d38de2a3b2093e04f94902c5ce27da96 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/PacketQueueInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/PacketQueueInfo.cs deleted file mode 100644 index aa9b67d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/PacketQueueInfo.cs +++ /dev/null @@ -1,172 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - /// - /// Information related to the current state of the packet queues. It is possible for the current size - /// to be larger than the maximum size if the maximum size changes or if the maximum queue size is - /// set to . - /// - public class PacketQueueInfo : ISettable - { - /// - /// The maximum size in bytes of the incoming packet queue - /// - public ulong IncomingPacketQueueMaxSizeBytes { get; set; } - - /// - /// The current size in bytes of the incoming packet queue - /// - public ulong IncomingPacketQueueCurrentSizeBytes { get; set; } - - /// - /// The current number of queued packets in the incoming packet queue - /// - public ulong IncomingPacketQueueCurrentPacketCount { get; set; } - - /// - /// The maximum size in bytes of the outgoing packet queue - /// - public ulong OutgoingPacketQueueMaxSizeBytes { get; set; } - - /// - /// The current size in bytes of the outgoing packet queue - /// - public ulong OutgoingPacketQueueCurrentSizeBytes { get; set; } - - /// - /// The current amount of queued packets in the outgoing packet queue - /// - public ulong OutgoingPacketQueueCurrentPacketCount { get; set; } - - internal void Set(PacketQueueInfoInternal? other) - { - if (other != null) - { - IncomingPacketQueueMaxSizeBytes = other.Value.IncomingPacketQueueMaxSizeBytes; - IncomingPacketQueueCurrentSizeBytes = other.Value.IncomingPacketQueueCurrentSizeBytes; - IncomingPacketQueueCurrentPacketCount = other.Value.IncomingPacketQueueCurrentPacketCount; - OutgoingPacketQueueMaxSizeBytes = other.Value.OutgoingPacketQueueMaxSizeBytes; - OutgoingPacketQueueCurrentSizeBytes = other.Value.OutgoingPacketQueueCurrentSizeBytes; - OutgoingPacketQueueCurrentPacketCount = other.Value.OutgoingPacketQueueCurrentPacketCount; - } - } - - public void Set(object other) - { - Set(other as PacketQueueInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct PacketQueueInfoInternal : ISettable, System.IDisposable - { - private ulong m_IncomingPacketQueueMaxSizeBytes; - private ulong m_IncomingPacketQueueCurrentSizeBytes; - private ulong m_IncomingPacketQueueCurrentPacketCount; - private ulong m_OutgoingPacketQueueMaxSizeBytes; - private ulong m_OutgoingPacketQueueCurrentSizeBytes; - private ulong m_OutgoingPacketQueueCurrentPacketCount; - - public ulong IncomingPacketQueueMaxSizeBytes - { - get - { - return m_IncomingPacketQueueMaxSizeBytes; - } - - set - { - m_IncomingPacketQueueMaxSizeBytes = value; - } - } - - public ulong IncomingPacketQueueCurrentSizeBytes - { - get - { - return m_IncomingPacketQueueCurrentSizeBytes; - } - - set - { - m_IncomingPacketQueueCurrentSizeBytes = value; - } - } - - public ulong IncomingPacketQueueCurrentPacketCount - { - get - { - return m_IncomingPacketQueueCurrentPacketCount; - } - - set - { - m_IncomingPacketQueueCurrentPacketCount = value; - } - } - - public ulong OutgoingPacketQueueMaxSizeBytes - { - get - { - return m_OutgoingPacketQueueMaxSizeBytes; - } - - set - { - m_OutgoingPacketQueueMaxSizeBytes = value; - } - } - - public ulong OutgoingPacketQueueCurrentSizeBytes - { - get - { - return m_OutgoingPacketQueueCurrentSizeBytes; - } - - set - { - m_OutgoingPacketQueueCurrentSizeBytes = value; - } - } - - public ulong OutgoingPacketQueueCurrentPacketCount - { - get - { - return m_OutgoingPacketQueueCurrentPacketCount; - } - - set - { - m_OutgoingPacketQueueCurrentPacketCount = value; - } - } - - public void Set(PacketQueueInfo other) - { - if (other != null) - { - IncomingPacketQueueMaxSizeBytes = other.IncomingPacketQueueMaxSizeBytes; - IncomingPacketQueueCurrentSizeBytes = other.IncomingPacketQueueCurrentSizeBytes; - IncomingPacketQueueCurrentPacketCount = other.IncomingPacketQueueCurrentPacketCount; - OutgoingPacketQueueMaxSizeBytes = other.OutgoingPacketQueueMaxSizeBytes; - OutgoingPacketQueueCurrentSizeBytes = other.OutgoingPacketQueueCurrentSizeBytes; - OutgoingPacketQueueCurrentPacketCount = other.OutgoingPacketQueueCurrentPacketCount; - } - } - - public void Set(object other) - { - Set(other as PacketQueueInfo); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/PacketQueueInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/PacketQueueInfo.cs.meta deleted file mode 100644 index f65b0df..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/PacketQueueInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 579b9017d0238a24a95136c8bdab350b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/PacketReliability.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/PacketReliability.cs deleted file mode 100644 index 0f27c48..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/PacketReliability.cs +++ /dev/null @@ -1,27 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - /// - /// Types of packet reliability. - /// - /// Ordered packets will only be ordered relative to other ordered packets. Reliable/unreliable and ordered/unordered communication - /// can be sent on the same Socket ID and Channel. - /// - public enum PacketReliability : int - { - /// - /// Packets will only be sent once and may be received out of order - /// - UnreliableUnordered = 0, - /// - /// Packets may be sent multiple times and may be received out of order - /// - ReliableUnordered = 1, - /// - /// Packets may be sent multiple times and will be received in order - /// - ReliableOrdered = 2 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/PacketReliability.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/PacketReliability.cs.meta deleted file mode 100644 index 286e161..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/PacketReliability.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0d3cb715f8a23894aab5a62f801efa8c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/QueryNATTypeOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/QueryNATTypeOptions.cs deleted file mode 100644 index 6fd835b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/QueryNATTypeOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - /// - /// Structure containing information needed to query NAT-types - /// - public class QueryNATTypeOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryNATTypeOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(QueryNATTypeOptions other) - { - if (other != null) - { - m_ApiVersion = P2PInterface.QuerynattypeApiLatest; - } - } - - public void Set(object other) - { - Set(other as QueryNATTypeOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/QueryNATTypeOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/QueryNATTypeOptions.cs.meta deleted file mode 100644 index feb982a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/QueryNATTypeOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 589f839287fdffc47afb627236a7466d -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/ReceivePacketOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/ReceivePacketOptions.cs deleted file mode 100644 index 2f0d8ab..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/ReceivePacketOptions.cs +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - /// - /// Structure containing information about who would like to receive a packet, and how much data can be stored safely. - /// - public class ReceivePacketOptions - { - /// - /// The Product User ID of the user who is receiving the packet - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The maximum amount of data in bytes that can be safely copied to OutData in the function call - /// - public uint MaxDataSizeBytes { get; set; } - - /// - /// An optional channel to request the data for. If NULL, we're retrieving the next packet on any channel - /// - public byte? RequestedChannel { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct ReceivePacketOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private uint m_MaxDataSizeBytes; - private System.IntPtr m_RequestedChannel; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public uint MaxDataSizeBytes - { - set - { - m_MaxDataSizeBytes = value; - } - } - - public byte? RequestedChannel - { - set - { - Helper.TryMarshalSet(ref m_RequestedChannel, value); - } - } - - public void Set(ReceivePacketOptions other) - { - if (other != null) - { - m_ApiVersion = P2PInterface.ReceivepacketApiLatest; - LocalUserId = other.LocalUserId; - MaxDataSizeBytes = other.MaxDataSizeBytes; - RequestedChannel = other.RequestedChannel; - } - } - - public void Set(object other) - { - Set(other as ReceivePacketOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_RequestedChannel); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/ReceivePacketOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/ReceivePacketOptions.cs.meta deleted file mode 100644 index f35b977..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/ReceivePacketOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 2518197c1afa898428b60fa5f086970a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/RelayControl.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/RelayControl.cs deleted file mode 100644 index 9cde130..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/RelayControl.cs +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - /// - /// Setting for controlling whether relay servers are used - /// - public enum RelayControl : int - { - /// - /// Peer connections will never attempt to use relay servers. Clients with restrictive NATs may not be able to connect to peers. - /// - NoRelays = 0, - /// - /// Peer connections will attempt to use relay servers, but only after direct connection attempts fail. This is the default value if not changed. - /// - AllowRelays = 1, - /// - /// Peer connections will only ever use relay servers. This will add latency to all connections, but will hide IP Addresses from peers. - /// - ForceRelays = 2 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/RelayControl.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/RelayControl.cs.meta deleted file mode 100644 index c100a6e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/RelayControl.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 088d9dbae7ee4d14bbe5a973f92fb63d -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/SendPacketOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/SendPacketOptions.cs deleted file mode 100644 index 2786a09..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/SendPacketOptions.cs +++ /dev/null @@ -1,144 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - /// - /// Structure containing information about the data being sent and to which player - /// - public class SendPacketOptions - { - /// - /// The Product User ID of the local user who is sending this packet - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The Product User ID of the Peer you would like to send a packet to - /// - public ProductUserId RemoteUserId { get; set; } - - /// - /// The socket ID for data you are sending in this packet - /// - public SocketId SocketId { get; set; } - - /// - /// Channel associated with this data - /// - public byte Channel { get; set; } - - /// - /// The data to be sent to the RemoteUser - /// - public byte[] Data { get; set; } - - /// - /// If false and we do not already have an established connection to the peer, this data will be dropped - /// - public bool AllowDelayedDelivery { get; set; } - - /// - /// Setting to control the delivery reliability of this packet - /// - public PacketReliability Reliability { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SendPacketOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RemoteUserId; - private System.IntPtr m_SocketId; - private byte m_Channel; - private uint m_DataLengthBytes; - private System.IntPtr m_Data; - private int m_AllowDelayedDelivery; - private PacketReliability m_Reliability; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public ProductUserId RemoteUserId - { - set - { - Helper.TryMarshalSet(ref m_RemoteUserId, value); - } - } - - public SocketId SocketId - { - set - { - Helper.TryMarshalSet(ref m_SocketId, value); - } - } - - public byte Channel - { - set - { - m_Channel = value; - } - } - - public byte[] Data - { - set - { - Helper.TryMarshalSet(ref m_Data, value, out m_DataLengthBytes); - } - } - - public bool AllowDelayedDelivery - { - set - { - Helper.TryMarshalSet(ref m_AllowDelayedDelivery, value); - } - } - - public PacketReliability Reliability - { - set - { - m_Reliability = value; - } - } - - public void Set(SendPacketOptions other) - { - if (other != null) - { - m_ApiVersion = P2PInterface.SendpacketApiLatest; - LocalUserId = other.LocalUserId; - RemoteUserId = other.RemoteUserId; - SocketId = other.SocketId; - Channel = other.Channel; - Data = other.Data; - AllowDelayedDelivery = other.AllowDelayedDelivery; - Reliability = other.Reliability; - } - } - - public void Set(object other) - { - Set(other as SendPacketOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_RemoteUserId); - Helper.TryMarshalDispose(ref m_SocketId); - Helper.TryMarshalDispose(ref m_Data); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/SendPacketOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/SendPacketOptions.cs.meta deleted file mode 100644 index 4ae6bb6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/SendPacketOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 78a7589cd184baf4eb4cc50d6e42faf4 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/SetPacketQueueSizeOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/SetPacketQueueSizeOptions.cs deleted file mode 100644 index 324e8ff..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/SetPacketQueueSizeOptions.cs +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - /// - /// Structure containing information about new packet queue size settings. - /// - public class SetPacketQueueSizeOptions - { - /// - /// The ideal maximum amount of bytes the Incoming packet queue can consume - /// - public ulong IncomingPacketQueueMaxSizeBytes { get; set; } - - /// - /// The ideal maximum amount of bytes the Outgoing packet queue can consume - /// - public ulong OutgoingPacketQueueMaxSizeBytes { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SetPacketQueueSizeOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private ulong m_IncomingPacketQueueMaxSizeBytes; - private ulong m_OutgoingPacketQueueMaxSizeBytes; - - public ulong IncomingPacketQueueMaxSizeBytes - { - set - { - m_IncomingPacketQueueMaxSizeBytes = value; - } - } - - public ulong OutgoingPacketQueueMaxSizeBytes - { - set - { - m_OutgoingPacketQueueMaxSizeBytes = value; - } - } - - public void Set(SetPacketQueueSizeOptions other) - { - if (other != null) - { - m_ApiVersion = P2PInterface.SetpacketqueuesizeApiLatest; - IncomingPacketQueueMaxSizeBytes = other.IncomingPacketQueueMaxSizeBytes; - OutgoingPacketQueueMaxSizeBytes = other.OutgoingPacketQueueMaxSizeBytes; - } - } - - public void Set(object other) - { - Set(other as SetPacketQueueSizeOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/SetPacketQueueSizeOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/SetPacketQueueSizeOptions.cs.meta deleted file mode 100644 index 0cbb068..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/SetPacketQueueSizeOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: cf979d0102cfcc94eb52929da2bf2850 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/SetPortRangeOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/SetPortRangeOptions.cs deleted file mode 100644 index b1f5ec2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/SetPortRangeOptions.cs +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - /// - /// Structure containing information about new port range settings. - /// - public class SetPortRangeOptions - { - /// - /// The ideal port to use for P2P traffic. The default value is 7777. If set to 0, the OS will choose a port. If set to 0, MaxAdditionalPortsToTry must be set to 0. - /// - public ushort Port { get; set; } - - /// - /// The maximum amount of additional ports to try if Port is unavailable. Ports will be tried from Port to Port + MaxAdditionalPortsToTry - /// inclusive, until one is available or we run out of ports. If no ports are available, P2P connections will fail. The default value is 99. - /// - public ushort MaxAdditionalPortsToTry { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SetPortRangeOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private ushort m_Port; - private ushort m_MaxAdditionalPortsToTry; - - public ushort Port - { - set - { - m_Port = value; - } - } - - public ushort MaxAdditionalPortsToTry - { - set - { - m_MaxAdditionalPortsToTry = value; - } - } - - public void Set(SetPortRangeOptions other) - { - if (other != null) - { - m_ApiVersion = P2PInterface.SetportrangeApiLatest; - Port = other.Port; - MaxAdditionalPortsToTry = other.MaxAdditionalPortsToTry; - } - } - - public void Set(object other) - { - Set(other as SetPortRangeOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/SetPortRangeOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/SetPortRangeOptions.cs.meta deleted file mode 100644 index 3288597..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/SetPortRangeOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 5932badbc14129645b21abd4d675b70a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/SetRelayControlOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/SetRelayControlOptions.cs deleted file mode 100644 index 5d6e665..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/SetRelayControlOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - /// - /// Structure containing information about new relay configurations. - /// - public class SetRelayControlOptions - { - /// - /// The requested level of relay servers for P2P connections. This setting is only applied to new P2P connections, or when existing P2P connections - /// reconnect during a temporary connectivity outage. Peers with an incompatible setting to the local setting will not be able to connnect. - /// - public RelayControl RelayControl { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SetRelayControlOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private RelayControl m_RelayControl; - - public RelayControl RelayControl - { - set - { - m_RelayControl = value; - } - } - - public void Set(SetRelayControlOptions other) - { - if (other != null) - { - m_ApiVersion = P2PInterface.SetrelaycontrolApiLatest; - RelayControl = other.RelayControl; - } - } - - public void Set(object other) - { - Set(other as SetRelayControlOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/SetRelayControlOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/SetRelayControlOptions.cs.meta deleted file mode 100644 index 4158048..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/SetRelayControlOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: dda5f642e5f79a34b8f9e7e675223a80 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/SocketId.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/SocketId.cs deleted file mode 100644 index 06132a7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/SocketId.cs +++ /dev/null @@ -1,77 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.P2P -{ - /// - /// P2P Socket ID - /// - /// The Socket ID contains an application-defined name for the connection between a local person and another peer. - /// - /// When a remote user receives a connection request from you, they will receive this information. It can be important - /// to only accept connections with a known socket-name and/or from a known user, to prevent leaking of private - /// information, such as a user's IP address. Using the socket name as a secret key can help prevent such leaks. Shared - /// private data, like a private match's Session ID are good candidates for a socket name. - /// - public class SocketId : ISettable - { - /// - /// A name for the connection. Must be a NULL-terminated string of between 1-32 alpha-numeric characters (A-Z, a-z, 0-9) - /// - public string SocketName { get; set; } - - internal void Set(SocketIdInternal? other) - { - if (other != null) - { - SocketName = other.Value.SocketName; - } - } - - public void Set(object other) - { - Set(other as SocketIdInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SocketIdInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - [System.Runtime.InteropServices.MarshalAs(System.Runtime.InteropServices.UnmanagedType.ByValArray, SizeConst = 33)] - private byte[] m_SocketName; - - public string SocketName - { - get - { - string value; - Helper.TryMarshalGet(m_SocketName, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_SocketName, value, 33); - } - } - - public void Set(SocketId other) - { - if (other != null) - { - m_ApiVersion = P2PInterface.SocketidApiLatest; - SocketName = other.SocketName; - } - } - - public void Set(object other) - { - Set(other as SocketId); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/SocketId.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/SocketId.cs.meta deleted file mode 100644 index 86d80dc..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/P2P/SocketId.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4df4a70a0ad2d564088cf638df22b93d -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PageQuery.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PageQuery.cs deleted file mode 100644 index 90e5b91..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PageQuery.cs +++ /dev/null @@ -1,88 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices -{ - /// - /// A page query is part of query options. It is used to allow pagination of query results. - /// - public class PageQuery : ISettable - { - /// - /// The index into the ordered query results to start the page at. - /// - public int StartIndex { get; set; } - - /// - /// The maximum number of results to have in the page. - /// - public int MaxCount { get; set; } - - internal void Set(PageQueryInternal? other) - { - if (other != null) - { - StartIndex = other.Value.StartIndex; - MaxCount = other.Value.MaxCount; - } - } - - public void Set(object other) - { - Set(other as PageQueryInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct PageQueryInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private int m_StartIndex; - private int m_MaxCount; - - public int StartIndex - { - get - { - return m_StartIndex; - } - - set - { - m_StartIndex = value; - } - } - - public int MaxCount - { - get - { - return m_MaxCount; - } - - set - { - m_MaxCount = value; - } - } - - public void Set(PageQuery other) - { - if (other != null) - { - m_ApiVersion = Common.PagequeryApiLatest; - StartIndex = other.StartIndex; - MaxCount = other.MaxCount; - } - } - - public void Set(object other) - { - Set(other as PageQuery); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PageQuery.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PageQuery.cs.meta deleted file mode 100644 index 94cb6a7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PageQuery.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 989b725fdc69dfa4cae238a5e4a0454a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PageResult.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PageResult.cs deleted file mode 100644 index 17c339b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PageResult.cs +++ /dev/null @@ -1,107 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices -{ - /// - /// A page result is part of query callback info. It is used to provide pagination details of query results. - /// - public class PageResult : ISettable - { - /// - /// The index into the ordered query results to start the page at. - /// - public int StartIndex { get; set; } - - /// - /// The number of results in the current page. - /// - public int Count { get; set; } - - /// - /// The number of results associated with they original query options. - /// - public int TotalCount { get; set; } - - internal void Set(PageResultInternal? other) - { - if (other != null) - { - StartIndex = other.Value.StartIndex; - Count = other.Value.Count; - TotalCount = other.Value.TotalCount; - } - } - - public void Set(object other) - { - Set(other as PageResultInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct PageResultInternal : ISettable, System.IDisposable - { - private int m_StartIndex; - private int m_Count; - private int m_TotalCount; - - public int StartIndex - { - get - { - return m_StartIndex; - } - - set - { - m_StartIndex = value; - } - } - - public int Count - { - get - { - return m_Count; - } - - set - { - m_Count = value; - } - } - - public int TotalCount - { - get - { - return m_TotalCount; - } - - set - { - m_TotalCount = value; - } - } - - public void Set(PageResult other) - { - if (other != null) - { - StartIndex = other.StartIndex; - Count = other.Count; - TotalCount = other.TotalCount; - } - } - - public void Set(object other) - { - Set(other as PageResult); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PageResult.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PageResult.cs.meta deleted file mode 100644 index a3bbf03..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PageResult.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c0caca9b8f78ca348a95beb4e158599c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform.meta deleted file mode 100644 index 008b687..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: a160c15a7fa6b5a4cb2ebcc1a4c35d0a -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/AllocateMemoryFunc.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/AllocateMemoryFunc.cs deleted file mode 100644 index 3afe1c0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/AllocateMemoryFunc.cs +++ /dev/null @@ -1,17 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Platform -{ - /// - /// Function prototype type definition for functions that allocate memory. - /// - /// Functions passed to to serve as memory allocators should return a pointer to the allocated memory. - /// - /// The returned pointer should have at least SizeInBytes available capacity and the memory address should be a multiple of Alignment. - /// The SDK will always call the provided function with an Alignment that is a power of 2. - /// Allocation failures should return a null pointer. - /// - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - public delegate System.IntPtr AllocateMemoryFunc(System.UIntPtr sizeInBytes, System.UIntPtr alignment); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/AllocateMemoryFunc.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/AllocateMemoryFunc.cs.meta deleted file mode 100644 index 561b1f8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/AllocateMemoryFunc.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ef794bbe580c5f84c88b295df6098f63 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/ClientCredentials.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/ClientCredentials.cs deleted file mode 100644 index a16a7e0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/ClientCredentials.cs +++ /dev/null @@ -1,92 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Platform -{ - /// - /// Client credentials. - /// - public class ClientCredentials : ISettable - { - /// - /// Client ID of the service permissions entry. Set to NULL if no service permissions are used. - /// - public string ClientId { get; set; } - - /// - /// Client secret for accessing the set of permissions. Set to NULL if no service permissions are used. - /// - public string ClientSecret { get; set; } - - internal void Set(ClientCredentialsInternal? other) - { - if (other != null) - { - ClientId = other.Value.ClientId; - ClientSecret = other.Value.ClientSecret; - } - } - - public void Set(object other) - { - Set(other as ClientCredentialsInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct ClientCredentialsInternal : ISettable, System.IDisposable - { - private System.IntPtr m_ClientId; - private System.IntPtr m_ClientSecret; - - public string ClientId - { - get - { - string value; - Helper.TryMarshalGet(m_ClientId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_ClientId, value); - } - } - - public string ClientSecret - { - get - { - string value; - Helper.TryMarshalGet(m_ClientSecret, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_ClientSecret, value); - } - } - - public void Set(ClientCredentials other) - { - if (other != null) - { - ClientId = other.ClientId; - ClientSecret = other.ClientSecret; - } - } - - public void Set(object other) - { - Set(other as ClientCredentials); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_ClientId); - Helper.TryMarshalDispose(ref m_ClientSecret); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/ClientCredentials.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/ClientCredentials.cs.meta deleted file mode 100644 index 9038b37..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/ClientCredentials.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: fc793e185445d02439d2f9aa483a558b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/InitializeOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/InitializeOptions.cs deleted file mode 100644 index a54b427..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/InitializeOptions.cs +++ /dev/null @@ -1,161 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Platform -{ - /// - /// Options for initializing the Epic Online Services SDK. - /// - public class InitializeOptions - { - /// - /// A custom memory allocator, if desired. - /// - public System.IntPtr AllocateMemoryFunction { get; set; } - - /// - /// A corresponding memory reallocator. If the AllocateMemoryFunction is nulled, then this field must also be nulled. - /// - public System.IntPtr ReallocateMemoryFunction { get; set; } - - /// - /// A corresponding memory releaser. If the AllocateMemoryFunction is nulled, then this field must also be nulled. - /// - public System.IntPtr ReleaseMemoryFunction { get; set; } - - /// - /// The name of the product using the Epic Online Services SDK. - /// - /// The name string is required to be non-empty and at maximum of 64 characters long. - /// The string buffer can consist of the following characters: - /// A-Z, a-z, 0-9, dot, underscore, space, exclamation mark, question mark, and sign, hyphen, parenthesis, plus, minus, colon. - /// - public string ProductName { get; set; } - - /// - /// Product version of the running application. - /// - /// The name string has same requirements as the ProductName string. - /// - public string ProductVersion { get; set; } - - /// - /// This field is for system specific initialization if any. - /// - /// If provided then the structure will be located in /eos_.h. - /// The structure will be named EOS__InitializeOptions. - /// - public System.IntPtr SystemInitializeOptions { get; set; } - - /// - /// The thread affinity override values for each category of thread. - /// - public InitializeThreadAffinity OverrideThreadAffinity { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct InitializeOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_AllocateMemoryFunction; - private System.IntPtr m_ReallocateMemoryFunction; - private System.IntPtr m_ReleaseMemoryFunction; - private System.IntPtr m_ProductName; - private System.IntPtr m_ProductVersion; - private System.IntPtr m_Reserved; - private System.IntPtr m_SystemInitializeOptions; - private System.IntPtr m_OverrideThreadAffinity; - - public System.IntPtr AllocateMemoryFunction - { - set - { - m_AllocateMemoryFunction = value; - } - } - - public System.IntPtr ReallocateMemoryFunction - { - set - { - m_ReallocateMemoryFunction = value; - } - } - - public System.IntPtr ReleaseMemoryFunction - { - set - { - m_ReleaseMemoryFunction = value; - } - } - - public string ProductName - { - set - { - Helper.TryMarshalSet(ref m_ProductName, value); - } - } - - public string ProductVersion - { - set - { - Helper.TryMarshalSet(ref m_ProductVersion, value); - } - } - - public System.IntPtr SystemInitializeOptions - { - set - { - m_SystemInitializeOptions = value; - } - } - - public InitializeThreadAffinity OverrideThreadAffinity - { - set - { - Helper.TryMarshalSet(ref m_OverrideThreadAffinity, value); - } - } - - public void Set(InitializeOptions other) - { - if (other != null) - { - m_ApiVersion = PlatformInterface.InitializeApiLatest; - AllocateMemoryFunction = other.AllocateMemoryFunction; - ReallocateMemoryFunction = other.ReallocateMemoryFunction; - ReleaseMemoryFunction = other.ReleaseMemoryFunction; - ProductName = other.ProductName; - ProductVersion = other.ProductVersion; - int[] reservedData = new int[] { 1, 1 }; - System.IntPtr reservedDataAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref reservedDataAddress, reservedData); - m_Reserved = reservedDataAddress; - SystemInitializeOptions = other.SystemInitializeOptions; - OverrideThreadAffinity = other.OverrideThreadAffinity; - } - } - - public void Set(object other) - { - Set(other as InitializeOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_AllocateMemoryFunction); - Helper.TryMarshalDispose(ref m_ReallocateMemoryFunction); - Helper.TryMarshalDispose(ref m_ReleaseMemoryFunction); - Helper.TryMarshalDispose(ref m_ProductName); - Helper.TryMarshalDispose(ref m_ProductVersion); - Helper.TryMarshalDispose(ref m_Reserved); - Helper.TryMarshalDispose(ref m_SystemInitializeOptions); - Helper.TryMarshalDispose(ref m_OverrideThreadAffinity); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/InitializeOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/InitializeOptions.cs.meta deleted file mode 100644 index b28c2e6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/InitializeOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a3bc80ab01997d7459d11cbfd3894de2 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/InitializeThreadAffinity.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/InitializeThreadAffinity.cs deleted file mode 100644 index 2b4a299..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/InitializeThreadAffinity.cs +++ /dev/null @@ -1,152 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Platform -{ - /// - /// Options for initializing defining thread affinity for use by Epic Online Services SDK. - /// Set the affinity to 0 to allow EOS SDK to use a platform specific default value. - /// - public class InitializeThreadAffinity : ISettable - { - /// - /// Any thread related to network management that is not IO. - /// - public ulong NetworkWork { get; set; } - - /// - /// Any thread that will interact with a storage device. - /// - public ulong StorageIo { get; set; } - - /// - /// Any thread that will generate web socket IO. - /// - public ulong WebSocketIo { get; set; } - - /// - /// Any thread that will generate IO related to P2P traffic and mangement. - /// - public ulong P2PIo { get; set; } - - /// - /// Any thread that will generate http request IO. - /// - public ulong HttpRequestIo { get; set; } - - internal void Set(InitializeThreadAffinityInternal? other) - { - if (other != null) - { - NetworkWork = other.Value.NetworkWork; - StorageIo = other.Value.StorageIo; - WebSocketIo = other.Value.WebSocketIo; - P2PIo = other.Value.P2PIo; - HttpRequestIo = other.Value.HttpRequestIo; - } - } - - public void Set(object other) - { - Set(other as InitializeThreadAffinityInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct InitializeThreadAffinityInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private ulong m_NetworkWork; - private ulong m_StorageIo; - private ulong m_WebSocketIo; - private ulong m_P2PIo; - private ulong m_HttpRequestIo; - - public ulong NetworkWork - { - get - { - return m_NetworkWork; - } - - set - { - m_NetworkWork = value; - } - } - - public ulong StorageIo - { - get - { - return m_StorageIo; - } - - set - { - m_StorageIo = value; - } - } - - public ulong WebSocketIo - { - get - { - return m_WebSocketIo; - } - - set - { - m_WebSocketIo = value; - } - } - - public ulong P2PIo - { - get - { - return m_P2PIo; - } - - set - { - m_P2PIo = value; - } - } - - public ulong HttpRequestIo - { - get - { - return m_HttpRequestIo; - } - - set - { - m_HttpRequestIo = value; - } - } - - public void Set(InitializeThreadAffinity other) - { - if (other != null) - { - m_ApiVersion = PlatformInterface.InitializeThreadaffinityApiLatest; - NetworkWork = other.NetworkWork; - StorageIo = other.StorageIo; - WebSocketIo = other.WebSocketIo; - P2PIo = other.P2PIo; - HttpRequestIo = other.HttpRequestIo; - } - } - - public void Set(object other) - { - Set(other as InitializeThreadAffinity); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/InitializeThreadAffinity.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/InitializeThreadAffinity.cs.meta deleted file mode 100644 index d6b9219..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/InitializeThreadAffinity.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f2d3dedee30f0ed4592e57b7163c0425 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/Options.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/Options.cs deleted file mode 100644 index 0277a2d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/Options.cs +++ /dev/null @@ -1,241 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Platform -{ - /// - /// Platform options for . - /// - public class Options - { - /// - /// A reserved field that should always be nulled. - /// - public System.IntPtr Reserved { get; set; } - - /// - /// The product ID for the running application, found on the dev portal - /// - public string ProductId { get; set; } - - /// - /// The sandbox ID for the running application, found on the dev portal - /// - public string SandboxId { get; set; } - - /// - /// Set of service permissions associated with the running application - /// - public ClientCredentials ClientCredentials { get; set; } - - /// - /// Is this running as a server - /// - public bool IsServer { get; set; } - - /// - /// Used by Player Data Storage and Title Storage. Must be null initialized if unused. 256-bit Encryption Key for file encryption in hexadecimal format (64 hex chars) - /// - public string EncryptionKey { get; set; } - - /// - /// The override country code to use for the logged in user. () - /// - public string OverrideCountryCode { get; set; } - - /// - /// The override locale code to use for the logged in user. This follows ISO 639. () - /// - public string OverrideLocaleCode { get; set; } - - /// - /// The deployment ID for the running application, found on the dev portal - /// - public string DeploymentId { get; set; } - - /// - /// Platform creation flags, e.g. . This is a bitwise-or union of the defined flags. - /// - public PlatformFlags Flags { get; set; } - - /// - /// Used by Player Data Storage and Title Storage. Must be null initialized if unused. Cache directory path. Absolute path to the folder that is going to be used for caching temporary data. The path is created if it's missing. - /// - public string CacheDirectory { get; set; } - - /// - /// A budget, measured in milliseconds, for to do its work. When the budget is met or exceeded (or if no work is available), will return. - /// This allows your game to amortize the cost of SDK work across multiple frames in the event that a lot of work is queued for processing. - /// Zero is interpreted as "perform all available work". - /// - public uint TickBudgetInMilliseconds { get; set; } - - /// - /// RTC options. Setting to NULL will disable RTC features (e.g. voice) - /// - public RTCOptions RTCOptions { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct OptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Reserved; - private System.IntPtr m_ProductId; - private System.IntPtr m_SandboxId; - private ClientCredentialsInternal m_ClientCredentials; - private int m_IsServer; - private System.IntPtr m_EncryptionKey; - private System.IntPtr m_OverrideCountryCode; - private System.IntPtr m_OverrideLocaleCode; - private System.IntPtr m_DeploymentId; - private PlatformFlags m_Flags; - private System.IntPtr m_CacheDirectory; - private uint m_TickBudgetInMilliseconds; - private System.IntPtr m_RTCOptions; - - public System.IntPtr Reserved - { - set - { - m_Reserved = value; - } - } - - public string ProductId - { - set - { - Helper.TryMarshalSet(ref m_ProductId, value); - } - } - - public string SandboxId - { - set - { - Helper.TryMarshalSet(ref m_SandboxId, value); - } - } - - public ClientCredentials ClientCredentials - { - set - { - Helper.TryMarshalSet(ref m_ClientCredentials, value); - } - } - - public bool IsServer - { - set - { - Helper.TryMarshalSet(ref m_IsServer, value); - } - } - - public string EncryptionKey - { - set - { - Helper.TryMarshalSet(ref m_EncryptionKey, value); - } - } - - public string OverrideCountryCode - { - set - { - Helper.TryMarshalSet(ref m_OverrideCountryCode, value); - } - } - - public string OverrideLocaleCode - { - set - { - Helper.TryMarshalSet(ref m_OverrideLocaleCode, value); - } - } - - public string DeploymentId - { - set - { - Helper.TryMarshalSet(ref m_DeploymentId, value); - } - } - - public PlatformFlags Flags - { - set - { - m_Flags = value; - } - } - - public string CacheDirectory - { - set - { - Helper.TryMarshalSet(ref m_CacheDirectory, value); - } - } - - public uint TickBudgetInMilliseconds - { - set - { - m_TickBudgetInMilliseconds = value; - } - } - - public RTCOptions RTCOptions - { - set - { - Helper.TryMarshalSet(ref m_RTCOptions, value); - } - } - - public void Set(Options other) - { - if (other != null) - { - m_ApiVersion = PlatformInterface.OptionsApiLatest; - Reserved = other.Reserved; - ProductId = other.ProductId; - SandboxId = other.SandboxId; - ClientCredentials = other.ClientCredentials; - IsServer = other.IsServer; - EncryptionKey = other.EncryptionKey; - OverrideCountryCode = other.OverrideCountryCode; - OverrideLocaleCode = other.OverrideLocaleCode; - DeploymentId = other.DeploymentId; - Flags = other.Flags; - CacheDirectory = other.CacheDirectory; - TickBudgetInMilliseconds = other.TickBudgetInMilliseconds; - RTCOptions = other.RTCOptions; - } - } - - public void Set(object other) - { - Set(other as Options); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Reserved); - Helper.TryMarshalDispose(ref m_ProductId); - Helper.TryMarshalDispose(ref m_SandboxId); - Helper.TryMarshalDispose(ref m_ClientCredentials); - Helper.TryMarshalDispose(ref m_EncryptionKey); - Helper.TryMarshalDispose(ref m_OverrideCountryCode); - Helper.TryMarshalDispose(ref m_OverrideLocaleCode); - Helper.TryMarshalDispose(ref m_DeploymentId); - Helper.TryMarshalDispose(ref m_CacheDirectory); - Helper.TryMarshalDispose(ref m_RTCOptions); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/Options.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/Options.cs.meta deleted file mode 100644 index 24aecf2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/Options.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: cb8d97d94d561cc448a5427c598061f9 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/PlatformFlags.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/PlatformFlags.cs deleted file mode 100644 index c469288..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/PlatformFlags.cs +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Platform -{ - [System.Flags] - public enum PlatformFlags : ulong - { - None = 0x0, - /// - /// A bit that indicates the SDK is being loaded in a game editor, like Unity or UE4 Play-in-Editor - /// - LoadingInEditor = 0x00001, - /// - /// A bit that indicates the SDK should skip initialization of the overlay, which is used by the in-app purchase flow and social overlay. This bit is implied by - /// - DisableOverlay = 0x00002, - /// - /// A bit that indicates the SDK should skip initialization of the social overlay, which provides an overlay UI for social features. This bit is implied by or - /// - DisableSocialOverlay = 0x00004, - /// - /// A reserved bit - /// - Reserved1 = 0x00008, - /// - /// A bit that indicates your game would like to opt-in to experimental Direct3D 9 support for the overlay. This flag is only relevant on Windows - /// - WindowsEnableOverlayD3D9 = 0x00010, - /// - /// A bit that indicates your game would like to opt-in to experimental Direct3D 10 support for the overlay. This flag is only relevant on Windows - /// - WindowsEnableOverlayD3D10 = 0x00020, - /// - /// A bit that indicates your game would like to opt-in to experimental OpenGL support for the overlay. This flag is only relevant on Windows - /// - WindowsEnableOverlayOpengl = 0x00040 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/PlatformFlags.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/PlatformFlags.cs.meta deleted file mode 100644 index c795d86..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/PlatformFlags.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 47da41ce0968c9249bc61d4d1d8bbb8f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/PlatformInterface.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/PlatformInterface.cs deleted file mode 100644 index fe1c529..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/PlatformInterface.cs +++ /dev/null @@ -1,741 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Platform -{ - public sealed partial class PlatformInterface : Handle - { - public PlatformInterface() - { - } - - public PlatformInterface(System.IntPtr innerHandle) : base(innerHandle) - { - } - - public const int CountrycodeMaxBufferLen = (CountrycodeMaxLength + 1); - - public const int CountrycodeMaxLength = 4; - - /// - /// The most recent version of the API. - /// - public const int InitializeApiLatest = 4; - - /// - /// The most recent version of the API. - /// - public const int InitializeThreadaffinityApiLatest = 1; - - public const int LocalecodeMaxBufferLen = (LocalecodeMaxLength + 1); - - public const int LocalecodeMaxLength = 9; - - public const int OptionsApiLatest = 11; - - /// - /// The most recent version of the API. - /// - public const int RtcoptionsApiLatest = 1; - - /// - /// Checks if the app was launched through the Epic Launcher, and relaunches it through the Epic Launcher if it wasn't. - /// - /// - /// An is returned to indicate success or an error. - /// is returned if the app is being restarted. You should quit your process as soon as possible. - /// is returned if the app was already launched through the Epic Launcher, and no action needs to be taken. - /// is returned if the LauncherCheck module failed to initialize, or the module tried and failed to restart the app. - /// - public Result CheckForLauncherAndRestart() - { - var funcResult = Bindings.EOS_Platform_CheckForLauncherAndRestart(InnerHandle); - - return funcResult; - } - - /// - /// Create a single Epic Online Services Platform Instance. - /// - /// The platform instance is used to gain access to the various Epic Online Services. - /// - /// This function returns an opaque handle to the platform instance, and that handle must be passed to to release the instance. - /// - /// - /// An opaque handle to the platform instance. - /// - public static PlatformInterface Create(Options options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Platform_Create(optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - PlatformInterface funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Get a handle to the Achievements Interface. - /// eos_achievements.h - /// eos_achievements_types.h - /// - /// - /// handle - /// - public Achievements.AchievementsInterface GetAchievementsInterface() - { - var funcResult = Bindings.EOS_Platform_GetAchievementsInterface(InnerHandle); - - Achievements.AchievementsInterface funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// This only will return the value set as the override otherwise is returned. - /// This is not currently used for anything internally. - /// eos_ecom.h - /// - /// - /// The account to use for lookup if no override exists. - /// The buffer into which the character data should be written. The buffer must be long enough to hold a string of . - /// - /// The size of the OutBuffer in characters. - /// The input buffer should include enough space to be null-terminated. - /// When the function returns, this parameter will be filled with the length of the string copied into OutBuffer. - /// - /// - /// An that indicates whether the active country code string was copied into the OutBuffer. - /// if the information is available and passed out in OutBuffer - /// if you pass a null pointer for the out parameter - /// if there is not an override country code for the user. - /// - The OutBuffer is not large enough to receive the country code string. InOutBufferLength contains the required minimum length to perform the operation successfully. - /// - public Result GetActiveCountryCode(EpicAccountId localUserId, out string outBuffer) - { - var localUserIdInnerHandle = System.IntPtr.Zero; - Helper.TryMarshalSet(ref localUserIdInnerHandle, localUserId); - - System.IntPtr outBufferAddress = System.IntPtr.Zero; - int inOutBufferLength = CountrycodeMaxLength + 1; - Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength, out _); - - var funcResult = Bindings.EOS_Platform_GetActiveCountryCode(InnerHandle, localUserIdInnerHandle, outBufferAddress, ref inOutBufferLength); - - Helper.TryMarshalGet(outBufferAddress, out outBuffer); - Helper.TryMarshalDispose(ref outBufferAddress); - - return funcResult; - } - - /// - /// Get the active locale code that the SDK will send to services which require it. - /// This returns the override value otherwise it will use the locale code of the given user. - /// This is used for localization. This follows ISO 639. - /// eos_ecom.h - /// - /// - /// The account to use for lookup if no override exists. - /// The buffer into which the character data should be written. The buffer must be long enough to hold a string of . - /// - /// The size of the OutBuffer in characters. - /// The input buffer should include enough space to be null-terminated. - /// When the function returns, this parameter will be filled with the length of the string copied into OutBuffer. - /// - /// - /// An that indicates whether the active locale code string was copied into the OutBuffer. - /// if the information is available and passed out in OutBuffer - /// if you pass a null pointer for the out parameter - /// if there is neither an override nor an available locale code for the user. - /// - The OutBuffer is not large enough to receive the locale code string. InOutBufferLength contains the required minimum length to perform the operation successfully. - /// - public Result GetActiveLocaleCode(EpicAccountId localUserId, out string outBuffer) - { - var localUserIdInnerHandle = System.IntPtr.Zero; - Helper.TryMarshalSet(ref localUserIdInnerHandle, localUserId); - - System.IntPtr outBufferAddress = System.IntPtr.Zero; - int inOutBufferLength = LocalecodeMaxLength + 1; - Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength, out _); - - var funcResult = Bindings.EOS_Platform_GetActiveLocaleCode(InnerHandle, localUserIdInnerHandle, outBufferAddress, ref inOutBufferLength); - - Helper.TryMarshalGet(outBufferAddress, out outBuffer); - Helper.TryMarshalDispose(ref outBufferAddress); - - return funcResult; - } - - /// - /// Get a handle to the Anti-Cheat Client Interface. - /// eos_anticheatclient.h - /// eos_anticheatclient_types.h - /// - /// - /// handle - /// - public AntiCheatClient.AntiCheatClientInterface GetAntiCheatClientInterface() - { - var funcResult = Bindings.EOS_Platform_GetAntiCheatClientInterface(InnerHandle); - - AntiCheatClient.AntiCheatClientInterface funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Get a handle to the Anti-Cheat Server Interface. - /// eos_anticheatserver.h - /// eos_anticheatserver_types.h - /// - /// - /// handle - /// - public AntiCheatServer.AntiCheatServerInterface GetAntiCheatServerInterface() - { - var funcResult = Bindings.EOS_Platform_GetAntiCheatServerInterface(InnerHandle); - - AntiCheatServer.AntiCheatServerInterface funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Get a handle to the Auth Interface. - /// eos_auth.h - /// eos_auth_types.h - /// - /// - /// handle - /// - public Auth.AuthInterface GetAuthInterface() - { - var funcResult = Bindings.EOS_Platform_GetAuthInterface(InnerHandle); - - Auth.AuthInterface funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Get a handle to the Connect Interface. - /// eos_connect.h - /// eos_connect_types.h - /// - /// - /// handle - /// - public Connect.ConnectInterface GetConnectInterface() - { - var funcResult = Bindings.EOS_Platform_GetConnectInterface(InnerHandle); - - Connect.ConnectInterface funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Get a handle to the Ecom Interface. - /// eos_ecom.h - /// eos_ecom_types.h - /// - /// - /// handle - /// - public Ecom.EcomInterface GetEcomInterface() - { - var funcResult = Bindings.EOS_Platform_GetEcomInterface(InnerHandle); - - Ecom.EcomInterface funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Get a handle to the Friends Interface. - /// eos_friends.h - /// eos_friends_types.h - /// - /// - /// handle - /// - public Friends.FriendsInterface GetFriendsInterface() - { - var funcResult = Bindings.EOS_Platform_GetFriendsInterface(InnerHandle); - - Friends.FriendsInterface funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Get a handle to the Kids Web Service Interface. - /// eos_kws.h - /// eos_kws_types.h - /// - /// - /// handle - /// - public KWS.KWSInterface GetKWSInterface() - { - var funcResult = Bindings.EOS_Platform_GetKWSInterface(InnerHandle); - - KWS.KWSInterface funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Get a handle to the Leaderboards Interface. - /// eos_leaderboards.h - /// eos_leaderboards_types.h - /// - /// - /// handle - /// - public Leaderboards.LeaderboardsInterface GetLeaderboardsInterface() - { - var funcResult = Bindings.EOS_Platform_GetLeaderboardsInterface(InnerHandle); - - Leaderboards.LeaderboardsInterface funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Get a handle to the Lobby Interface. - /// eos_lobby.h - /// eos_lobby_types.h - /// - /// - /// handle - /// - public Lobby.LobbyInterface GetLobbyInterface() - { - var funcResult = Bindings.EOS_Platform_GetLobbyInterface(InnerHandle); - - Lobby.LobbyInterface funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Get a handle to the Metrics Interface. - /// eos_metrics.h - /// eos_metrics_types.h - /// - /// - /// handle - /// - public Metrics.MetricsInterface GetMetricsInterface() - { - var funcResult = Bindings.EOS_Platform_GetMetricsInterface(InnerHandle); - - Metrics.MetricsInterface funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Get a handle to the Mods Interface. - /// eos_mods.h - /// eos_mods_types.h - /// - /// - /// handle - /// - public Mods.ModsInterface GetModsInterface() - { - var funcResult = Bindings.EOS_Platform_GetModsInterface(InnerHandle); - - Mods.ModsInterface funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Get the override country code that the SDK will send to services which require it. - /// This is not currently used for anything internally. - /// eos_ecom.h - /// - /// - /// The buffer into which the character data should be written. The buffer must be long enough to hold a string of . - /// - /// The size of the OutBuffer in characters. - /// The input buffer should include enough space to be null-terminated. - /// When the function returns, this parameter will be filled with the length of the string copied into OutBuffer. - /// - /// - /// An that indicates whether the override country code string was copied into the OutBuffer. - /// if the information is available and passed out in OutBuffer - /// if you pass a null pointer for the out parameter - /// - The OutBuffer is not large enough to receive the country code string. InOutBufferLength contains the required minimum length to perform the operation successfully. - /// - public Result GetOverrideCountryCode(out string outBuffer) - { - System.IntPtr outBufferAddress = System.IntPtr.Zero; - int inOutBufferLength = CountrycodeMaxLength + 1; - Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength, out _); - - var funcResult = Bindings.EOS_Platform_GetOverrideCountryCode(InnerHandle, outBufferAddress, ref inOutBufferLength); - - Helper.TryMarshalGet(outBufferAddress, out outBuffer); - Helper.TryMarshalDispose(ref outBufferAddress); - - return funcResult; - } - - /// - /// Get the override locale code that the SDK will send to services which require it. - /// This is used for localization. This follows ISO 639. - /// eos_ecom.h - /// - /// - /// The buffer into which the character data should be written. The buffer must be long enough to hold a string of . - /// - /// The size of the OutBuffer in characters. - /// The input buffer should include enough space to be null-terminated. - /// When the function returns, this parameter will be filled with the length of the string copied into OutBuffer. - /// - /// - /// An that indicates whether the override locale code string was copied into the OutBuffer. - /// if the information is available and passed out in OutBuffer - /// if you pass a null pointer for the out parameter - /// - The OutBuffer is not large enough to receive the locale code string. InOutBufferLength contains the required minimum length to perform the operation successfully. - /// - public Result GetOverrideLocaleCode(out string outBuffer) - { - System.IntPtr outBufferAddress = System.IntPtr.Zero; - int inOutBufferLength = LocalecodeMaxLength + 1; - Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength, out _); - - var funcResult = Bindings.EOS_Platform_GetOverrideLocaleCode(InnerHandle, outBufferAddress, ref inOutBufferLength); - - Helper.TryMarshalGet(outBufferAddress, out outBuffer); - Helper.TryMarshalDispose(ref outBufferAddress); - - return funcResult; - } - - /// - /// Get a handle to the Peer-to-Peer Networking Interface. - /// eos_p2p.h - /// eos_p2p_types.h - /// - /// - /// handle - /// - public P2P.P2PInterface GetP2PInterface() - { - var funcResult = Bindings.EOS_Platform_GetP2PInterface(InnerHandle); - - P2P.P2PInterface funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Get a handle to the PlayerDataStorage Interface. - /// eos_playerdatastorage.h - /// eos_playerdatastorage_types.h - /// - /// - /// handle - /// - public PlayerDataStorage.PlayerDataStorageInterface GetPlayerDataStorageInterface() - { - var funcResult = Bindings.EOS_Platform_GetPlayerDataStorageInterface(InnerHandle); - - PlayerDataStorage.PlayerDataStorageInterface funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Get a handle to the Presence Interface. - /// eos_presence.h - /// eos_presence_types.h - /// - /// - /// handle - /// - public Presence.PresenceInterface GetPresenceInterface() - { - var funcResult = Bindings.EOS_Platform_GetPresenceInterface(InnerHandle); - - Presence.PresenceInterface funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Get a handle to the RTC Admin interface - /// eos_rtc_admin.h - /// eos_admin_types.h - /// - /// - /// handle - /// - public RTCAdmin.RTCAdminInterface GetRTCAdminInterface() - { - var funcResult = Bindings.EOS_Platform_GetRTCAdminInterface(InnerHandle); - - RTCAdmin.RTCAdminInterface funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Get a handle to the Real Time Communications Interface (RTC). - /// From the RTC interface you can retrieve the handle to the audio interface (RTCAudio), which is a component of RTC. - /// - /// eos_rtc.h - /// eos_rtc_types.h - /// - /// - /// handle - /// - public RTC.RTCInterface GetRTCInterface() - { - var funcResult = Bindings.EOS_Platform_GetRTCInterface(InnerHandle); - - RTC.RTCInterface funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Get a handle to the Reports Interface. - /// eos_reports.h - /// eos_reports_types.h - /// - /// - /// handle - /// - public Reports.ReportsInterface GetReportsInterface() - { - var funcResult = Bindings.EOS_Platform_GetReportsInterface(InnerHandle); - - Reports.ReportsInterface funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Get a handle to the Sanctions Interface. - /// eos_sanctions.h - /// eos_sanctions_types.h - /// - /// - /// handle - /// - public Sanctions.SanctionsInterface GetSanctionsInterface() - { - var funcResult = Bindings.EOS_Platform_GetSanctionsInterface(InnerHandle); - - Sanctions.SanctionsInterface funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Get a handle to the Sessions Interface. - /// eos_sessions.h - /// eos_sessions_types.h - /// - /// - /// handle - /// - public Sessions.SessionsInterface GetSessionsInterface() - { - var funcResult = Bindings.EOS_Platform_GetSessionsInterface(InnerHandle); - - Sessions.SessionsInterface funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Get a handle to the Stats Interface. - /// eos_stats.h - /// eos_stats_types.h - /// - /// - /// handle - /// - public Stats.StatsInterface GetStatsInterface() - { - var funcResult = Bindings.EOS_Platform_GetStatsInterface(InnerHandle); - - Stats.StatsInterface funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Get a handle to the TitleStorage Interface. - /// eos_titlestorage.h - /// eos_titlestorage_types.h - /// - /// - /// handle - /// - public TitleStorage.TitleStorageInterface GetTitleStorageInterface() - { - var funcResult = Bindings.EOS_Platform_GetTitleStorageInterface(InnerHandle); - - TitleStorage.TitleStorageInterface funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Get a handle to the UI Interface. - /// eos_ui.h - /// eos_ui_types.h - /// - /// - /// handle - /// - public UI.UIInterface GetUIInterface() - { - var funcResult = Bindings.EOS_Platform_GetUIInterface(InnerHandle); - - UI.UIInterface funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Get a handle to the UserInfo Interface. - /// eos_userinfo.h - /// eos_userinfo_types.h - /// - /// - /// handle - /// - public UserInfo.UserInfoInterface GetUserInfoInterface() - { - var funcResult = Bindings.EOS_Platform_GetUserInfoInterface(InnerHandle); - - UserInfo.UserInfoInterface funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Initialize the Epic Online Services SDK. - /// - /// Before calling any other function in the SDK, clients must call this function. - /// - /// This function must only be called one time and must have a corresponding call. - /// - /// - The initialization options to use for the SDK. - /// - /// An is returned to indicate success or an error. - /// is returned if the SDK successfully initializes. - /// is returned if the function has already been called. - /// is returned if the provided options are invalid. - /// - public static Result Initialize(InitializeOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Initialize(optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Release an Epic Online Services platform instance previously returned from . - /// - /// This function should only be called once per instance returned by . Undefined behavior will result in calling it with a single instance more than once. - /// Typically only a single platform instance needs to be created during the lifetime of a game. - /// You should release each platform instance before calling the function. - /// - public void Release() - { - Bindings.EOS_Platform_Release(InnerHandle); - } - - /// - /// Set the override country code that the SDK will send to services which require it. - /// This is not currently used for anything internally. - /// eos_ecom.h - /// - /// - /// - /// An that indicates whether the override country code string was saved. - /// if the country code was overridden - /// if you pass an invalid country code - /// - public Result SetOverrideCountryCode(string newCountryCode) - { - var newCountryCodeAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref newCountryCodeAddress, newCountryCode); - - var funcResult = Bindings.EOS_Platform_SetOverrideCountryCode(InnerHandle, newCountryCodeAddress); - - Helper.TryMarshalDispose(ref newCountryCodeAddress); - - return funcResult; - } - - /// - /// Set the override locale code that the SDK will send to services which require it. - /// This is used for localization. This follows ISO 639. - /// eos_ecom.h - /// - /// - /// - /// An that indicates whether the override locale code string was saved. - /// if the locale code was overridden - /// if you pass an invalid locale code - /// - public Result SetOverrideLocaleCode(string newLocaleCode) - { - var newLocaleCodeAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref newLocaleCodeAddress, newLocaleCode); - - var funcResult = Bindings.EOS_Platform_SetOverrideLocaleCode(InnerHandle, newLocaleCodeAddress); - - Helper.TryMarshalDispose(ref newLocaleCodeAddress); - - return funcResult; - } - - /// - /// Tear down the Epic Online Services SDK. - /// - /// Once this function has been called, no more SDK calls are permitted; calling anything after will result in undefined behavior. - /// - /// - /// An is returned to indicate success or an error. - /// is returned if the SDK is successfully torn down. - /// is returned if a successful call to has not been made. - /// is returned if has already been called. - /// - public static Result Shutdown() - { - var funcResult = Bindings.EOS_Shutdown(); - - return funcResult; - } - - /// - /// Notify the platform instance to do work. This function must be called frequently in order for the services provided by the SDK to properly - /// function. For tick-based applications, it is usually desireable to call this once per-tick. - /// - public void Tick() - { - Bindings.EOS_Platform_Tick(InnerHandle); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/PlatformInterface.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/PlatformInterface.cs.meta deleted file mode 100644 index a60f2d5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/PlatformInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 41db98a17f463544199ffedf3f4cab2e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/RTCOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/RTCOptions.cs deleted file mode 100644 index 7e7179d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/RTCOptions.cs +++ /dev/null @@ -1,71 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Platform -{ - /// - /// Platform RTC options. - /// - public class RTCOptions : ISettable - { - /// - /// This field is for platform specific initialization if any. - /// - /// If provided then the structure will be located in /eos_.h. - /// The structure will be named EOS__RTCOptions. - /// - public System.IntPtr PlatformSpecificOptions { get; set; } - - internal void Set(RTCOptionsInternal? other) - { - if (other != null) - { - PlatformSpecificOptions = other.Value.PlatformSpecificOptions; - } - } - - public void Set(object other) - { - Set(other as RTCOptionsInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct RTCOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_PlatformSpecificOptions; - - public System.IntPtr PlatformSpecificOptions - { - get - { - return m_PlatformSpecificOptions; - } - - set - { - m_PlatformSpecificOptions = value; - } - } - - public void Set(RTCOptions other) - { - if (other != null) - { - m_ApiVersion = PlatformInterface.RtcoptionsApiLatest; - PlatformSpecificOptions = other.PlatformSpecificOptions; - } - } - - public void Set(object other) - { - Set(other as RTCOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_PlatformSpecificOptions); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/RTCOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/RTCOptions.cs.meta deleted file mode 100644 index bb87b24..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/RTCOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3da4aa258e9b1fb4ab19f9ec2448a6e9 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/ReallocateMemoryFunc.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/ReallocateMemoryFunc.cs deleted file mode 100644 index 002ab19..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/ReallocateMemoryFunc.cs +++ /dev/null @@ -1,16 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Platform -{ - /// - /// Function prototype type definition for functions that reallocate memory. - /// - /// Functions passed to to serve as memory reallocators should return a pointer to the reallocated memory. - /// The returned pointer should have at least SizeInBytes available capacity and the memory address should be a multiple of alignment. - /// The SDK will always call the provided function with an Alignment that is a power of 2. - /// Reallocation failures should return a null pointer. - /// - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - public delegate System.IntPtr ReallocateMemoryFunc(System.IntPtr pointer, System.UIntPtr sizeInBytes, System.UIntPtr alignment); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/ReallocateMemoryFunc.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/ReallocateMemoryFunc.cs.meta deleted file mode 100644 index b03aa5b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/ReallocateMemoryFunc.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 263c339e92317d04ca52839c05df914d -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/ReleaseMemoryFunc.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/ReleaseMemoryFunc.cs deleted file mode 100644 index 5bbdd36..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/ReleaseMemoryFunc.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Platform -{ - /// - /// Function prototype type definition for functions that release memory. - /// - /// When the SDK is done with memory that has been allocated by a custom allocator passed to , it will call the corresponding memory release function. - /// - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - public delegate void ReleaseMemoryFunc(System.IntPtr pointer); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/ReleaseMemoryFunc.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/ReleaseMemoryFunc.cs.meta deleted file mode 100644 index 6595487..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Platform/ReleaseMemoryFunc.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 5429a5dd77aa8134a9d92cfd0f1de85b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage.meta deleted file mode 100644 index 3993c98..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 168d3a0dd77295f499e4e4a247250241 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/CopyFileMetadataAtIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/CopyFileMetadataAtIndexOptions.cs deleted file mode 100644 index 1c47f06..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/CopyFileMetadataAtIndexOptions.cs +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Input data for the CopyFileMetadataAtIndex function - /// - public class CopyFileMetadataAtIndexOptions - { - /// - /// The Product User ID of the local user who is requesting file metadata - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The index to get data for - /// - public uint Index { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyFileMetadataAtIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private uint m_Index; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public uint Index - { - set - { - m_Index = value; - } - } - - public void Set(CopyFileMetadataAtIndexOptions other) - { - if (other != null) - { - m_ApiVersion = PlayerDataStorageInterface.CopyfilemetadataatindexoptionsApiLatest; - LocalUserId = other.LocalUserId; - Index = other.Index; - } - } - - public void Set(object other) - { - Set(other as CopyFileMetadataAtIndexOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/CopyFileMetadataAtIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/CopyFileMetadataAtIndexOptions.cs.meta deleted file mode 100644 index fae56ee..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/CopyFileMetadataAtIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a10db7eb93427af48b310d8908907250 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/CopyFileMetadataByFilenameOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/CopyFileMetadataByFilenameOptions.cs deleted file mode 100644 index e6ac6ef..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/CopyFileMetadataByFilenameOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Input data for the CopyFileMetadataByFilename function - /// - public class CopyFileMetadataByFilenameOptions - { - /// - /// The Product User ID of the local user who is requesting file metadata - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The file's name to get data for - /// - public string Filename { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyFileMetadataByFilenameOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_Filename; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string Filename - { - set - { - Helper.TryMarshalSet(ref m_Filename, value); - } - } - - public void Set(CopyFileMetadataByFilenameOptions other) - { - if (other != null) - { - m_ApiVersion = PlayerDataStorageInterface.CopyfilemetadatabyfilenameoptionsApiLatest; - LocalUserId = other.LocalUserId; - Filename = other.Filename; - } - } - - public void Set(object other) - { - Set(other as CopyFileMetadataByFilenameOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_Filename); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/CopyFileMetadataByFilenameOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/CopyFileMetadataByFilenameOptions.cs.meta deleted file mode 100644 index 301c0bf..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/CopyFileMetadataByFilenameOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4f395ad47a65fec449d5ab79ae8b428f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DeleteCacheCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DeleteCacheCallbackInfo.cs deleted file mode 100644 index b5a3dd1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DeleteCacheCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Structure containing the result of a delete cache operation - /// - public class DeleteCacheCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Result code for the operation. is returned for a successful request, other codes indicate an error - /// - public Result ResultCode { get; private set; } - - /// - /// Client-specified data passed into the delete cache request - /// - public object ClientData { get; private set; } - - /// - /// Product User ID of the local user who initiated this request - /// - public ProductUserId LocalUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(DeleteCacheCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as DeleteCacheCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct DeleteCacheCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DeleteCacheCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DeleteCacheCallbackInfo.cs.meta deleted file mode 100644 index e548620..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DeleteCacheCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 51ae8c8fc3d5eb34e93ed64bbb056619 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DeleteCacheOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DeleteCacheOptions.cs deleted file mode 100644 index fe6dbb5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DeleteCacheOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Input data for the function - /// - public class DeleteCacheOptions - { - /// - /// Product User ID of the local user who is deleting his cache - /// - public ProductUserId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct DeleteCacheOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(DeleteCacheOptions other) - { - if (other != null) - { - m_ApiVersion = PlayerDataStorageInterface.DeletecacheoptionsApiLatest; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as DeleteCacheOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DeleteCacheOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DeleteCacheOptions.cs.meta deleted file mode 100644 index 6f8e703..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DeleteCacheOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 88d0939c808e1954ca57d66cc7be1633 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DeleteFileCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DeleteFileCallbackInfo.cs deleted file mode 100644 index 023f513..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DeleteFileCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Data containing the result information for a delete file request - /// - public class DeleteFileCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Result code for the operation. is returned for a successful request, other codes indicate an error - /// - public Result ResultCode { get; private set; } - - /// - /// Client-specified data passed into the file deletion request - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the local user who initiated this request - /// - public ProductUserId LocalUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(DeleteFileCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as DeleteFileCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct DeleteFileCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DeleteFileCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DeleteFileCallbackInfo.cs.meta deleted file mode 100644 index a32cfc1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DeleteFileCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c1b08b75ea4f8be45aa864d962809062 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DeleteFileOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DeleteFileOptions.cs deleted file mode 100644 index 29c6748..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DeleteFileOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Input data for the function - /// - public class DeleteFileOptions - { - /// - /// The Product User ID of the local user who authorizes deletion of the file; must be the file's owner - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The name of the file to delete - /// - public string Filename { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct DeleteFileOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_Filename; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string Filename - { - set - { - Helper.TryMarshalSet(ref m_Filename, value); - } - } - - public void Set(DeleteFileOptions other) - { - if (other != null) - { - m_ApiVersion = PlayerDataStorageInterface.DeletefileoptionsApiLatest; - LocalUserId = other.LocalUserId; - Filename = other.Filename; - } - } - - public void Set(object other) - { - Set(other as DeleteFileOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_Filename); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DeleteFileOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DeleteFileOptions.cs.meta deleted file mode 100644 index 745c223..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DeleteFileOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: bac0d76dbbc01644a8f7327151c591dd -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DuplicateFileCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DuplicateFileCallbackInfo.cs deleted file mode 100644 index a1b6f9d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DuplicateFileCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Data containing the result information for a duplicate file request - /// - public class DuplicateFileCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Result code for the operation. is returned for a successful request, other codes indicate an error - /// - public Result ResultCode { get; private set; } - - /// - /// Client-specified data passed into the file duplicate request - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the local user who initiated this request - /// - public ProductUserId LocalUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(DuplicateFileCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as DuplicateFileCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct DuplicateFileCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DuplicateFileCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DuplicateFileCallbackInfo.cs.meta deleted file mode 100644 index c2f61e9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DuplicateFileCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f8d0c10a5e3e93b4facfd00ec338e7f1 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DuplicateFileOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DuplicateFileOptions.cs deleted file mode 100644 index e6d5077..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DuplicateFileOptions.cs +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Input data for the function - /// - public class DuplicateFileOptions - { - /// - /// The Product User ID of the local user who authorized the duplication of the requested file; must be the original file's owner - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The name of the existing file to duplicate - /// - public string SourceFilename { get; set; } - - /// - /// The name of the new file - /// - public string DestinationFilename { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct DuplicateFileOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_SourceFilename; - private System.IntPtr m_DestinationFilename; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string SourceFilename - { - set - { - Helper.TryMarshalSet(ref m_SourceFilename, value); - } - } - - public string DestinationFilename - { - set - { - Helper.TryMarshalSet(ref m_DestinationFilename, value); - } - } - - public void Set(DuplicateFileOptions other) - { - if (other != null) - { - m_ApiVersion = PlayerDataStorageInterface.DuplicatefileoptionsApiLatest; - LocalUserId = other.LocalUserId; - SourceFilename = other.SourceFilename; - DestinationFilename = other.DestinationFilename; - } - } - - public void Set(object other) - { - Set(other as DuplicateFileOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_SourceFilename); - Helper.TryMarshalDispose(ref m_DestinationFilename); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DuplicateFileOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DuplicateFileOptions.cs.meta deleted file mode 100644 index 53b7581..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/DuplicateFileOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 79e267dd2020a224ab1be00840658927 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/FileMetadata.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/FileMetadata.cs deleted file mode 100644 index 51693e9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/FileMetadata.cs +++ /dev/null @@ -1,159 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Metadata information for a specific file - /// - public class FileMetadata : ISettable - { - /// - /// The total size of the file in bytes (Includes file header in addition to file contents) - /// - public uint FileSizeBytes { get; set; } - - /// - /// The MD5 Hash of the entire file (including additional file header), in hex digits - /// - public string MD5Hash { get; set; } - - /// - /// The file's name - /// - public string Filename { get; set; } - - /// - /// The POSIX timestamp when the file was saved last time. - /// - public System.DateTimeOffset? LastModifiedTime { get; set; } - - /// - /// The size of data (payload) in file in unencrypted (original) form. - /// - public uint UnencryptedDataSizeBytes { get; set; } - - internal void Set(FileMetadataInternal? other) - { - if (other != null) - { - FileSizeBytes = other.Value.FileSizeBytes; - MD5Hash = other.Value.MD5Hash; - Filename = other.Value.Filename; - LastModifiedTime = other.Value.LastModifiedTime; - UnencryptedDataSizeBytes = other.Value.UnencryptedDataSizeBytes; - } - } - - public void Set(object other) - { - Set(other as FileMetadataInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct FileMetadataInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_FileSizeBytes; - private System.IntPtr m_MD5Hash; - private System.IntPtr m_Filename; - private long m_LastModifiedTime; - private uint m_UnencryptedDataSizeBytes; - - public uint FileSizeBytes - { - get - { - return m_FileSizeBytes; - } - - set - { - m_FileSizeBytes = value; - } - } - - public string MD5Hash - { - get - { - string value; - Helper.TryMarshalGet(m_MD5Hash, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_MD5Hash, value); - } - } - - public string Filename - { - get - { - string value; - Helper.TryMarshalGet(m_Filename, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Filename, value); - } - } - - public System.DateTimeOffset? LastModifiedTime - { - get - { - System.DateTimeOffset? value; - Helper.TryMarshalGet(m_LastModifiedTime, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_LastModifiedTime, value); - } - } - - public uint UnencryptedDataSizeBytes - { - get - { - return m_UnencryptedDataSizeBytes; - } - - set - { - m_UnencryptedDataSizeBytes = value; - } - } - - public void Set(FileMetadata other) - { - if (other != null) - { - m_ApiVersion = PlayerDataStorageInterface.FilemetadataApiLatest; - FileSizeBytes = other.FileSizeBytes; - MD5Hash = other.MD5Hash; - Filename = other.Filename; - LastModifiedTime = other.LastModifiedTime; - UnencryptedDataSizeBytes = other.UnencryptedDataSizeBytes; - } - } - - public void Set(object other) - { - Set(other as FileMetadata); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_MD5Hash); - Helper.TryMarshalDispose(ref m_Filename); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/FileMetadata.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/FileMetadata.cs.meta deleted file mode 100644 index 76990ff..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/FileMetadata.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e5310a596e36e88478552c28faa5e072 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/FileTransferProgressCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/FileTransferProgressCallbackInfo.cs deleted file mode 100644 index 6395dab..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/FileTransferProgressCallbackInfo.cs +++ /dev/null @@ -1,122 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Data containing the information about a file transfer in progress (or one that has completed) - /// - public class FileTransferProgressCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Client-specified data passed into the file request - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the local user who initiated this request - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The file name of the file being transferred - /// - public string Filename { get; private set; } - - /// - /// Amount of bytes transferred so far in this request, out of TotalFileSizeBytes - /// - public uint BytesTransferred { get; private set; } - - /// - /// The total size of the file being transferred (Includes file header in addition to file contents, can be slightly more than expected) - /// - public uint TotalFileSizeBytes { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(FileTransferProgressCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - Filename = other.Value.Filename; - BytesTransferred = other.Value.BytesTransferred; - TotalFileSizeBytes = other.Value.TotalFileSizeBytes; - } - } - - public void Set(object other) - { - Set(other as FileTransferProgressCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct FileTransferProgressCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_Filename; - private uint m_BytesTransferred; - private uint m_TotalFileSizeBytes; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public string Filename - { - get - { - string value; - Helper.TryMarshalGet(m_Filename, out value); - return value; - } - } - - public uint BytesTransferred - { - get - { - return m_BytesTransferred; - } - } - - public uint TotalFileSizeBytes - { - get - { - return m_TotalFileSizeBytes; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/FileTransferProgressCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/FileTransferProgressCallbackInfo.cs.meta deleted file mode 100644 index 68c51ec..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/FileTransferProgressCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 04a1916df3cb1da468833c4306f9e5b1 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/GetFileMetadataCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/GetFileMetadataCountOptions.cs deleted file mode 100644 index 7b5d7d5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/GetFileMetadataCountOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Input data for the function - /// - public class GetFileMetadataCountOptions - { - /// - /// The Product User ID of the local user who is requesting file metadata - /// - public ProductUserId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetFileMetadataCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(GetFileMetadataCountOptions other) - { - if (other != null) - { - m_ApiVersion = PlayerDataStorageInterface.GetfilemetadatacountoptionsApiLatest; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as GetFileMetadataCountOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/GetFileMetadataCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/GetFileMetadataCountOptions.cs.meta deleted file mode 100644 index 3b5276f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/GetFileMetadataCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 2cf60ed67a1db6748bffacbbed499dde -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnDeleteCacheCompleteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnDeleteCacheCompleteCallback.cs deleted file mode 100644 index f50f663..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnDeleteCacheCompleteCallback.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Callback for when completes - /// - public delegate void OnDeleteCacheCompleteCallback(DeleteCacheCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnDeleteCacheCompleteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnDeleteCacheCompleteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnDeleteCacheCompleteCallback.cs.meta deleted file mode 100644 index 2fee589..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnDeleteCacheCompleteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 74dde1453a1e02b449f68b7e7a267b3e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnDeleteFileCompleteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnDeleteFileCompleteCallback.cs deleted file mode 100644 index 59d5479..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnDeleteFileCompleteCallback.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Callback for when completes - /// - public delegate void OnDeleteFileCompleteCallback(DeleteFileCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnDeleteFileCompleteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnDeleteFileCompleteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnDeleteFileCompleteCallback.cs.meta deleted file mode 100644 index 5397ad6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnDeleteFileCompleteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 590cca403855eed40b9b61b4dc256d4f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnDuplicateFileCompleteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnDuplicateFileCompleteCallback.cs deleted file mode 100644 index c4366d9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnDuplicateFileCompleteCallback.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Callback for when completes - /// - public delegate void OnDuplicateFileCompleteCallback(DuplicateFileCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnDuplicateFileCompleteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnDuplicateFileCompleteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnDuplicateFileCompleteCallback.cs.meta deleted file mode 100644 index 9d34320..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnDuplicateFileCompleteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4d477d26b9147c942a4cda9597a25255 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnFileTransferProgressCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnFileTransferProgressCallback.cs deleted file mode 100644 index e2f0050..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnFileTransferProgressCallback.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Callback for when there is a progress update for a file transfer in progress - /// - public delegate void OnFileTransferProgressCallback(FileTransferProgressCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnFileTransferProgressCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnFileTransferProgressCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnFileTransferProgressCallback.cs.meta deleted file mode 100644 index 68da57c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnFileTransferProgressCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9021f3f0e3dfa9742bf3894c12225ae1 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnQueryFileCompleteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnQueryFileCompleteCallback.cs deleted file mode 100644 index 0821b99..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnQueryFileCompleteCallback.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Callback for when completes - /// - public delegate void OnQueryFileCompleteCallback(QueryFileCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnQueryFileCompleteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnQueryFileCompleteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnQueryFileCompleteCallback.cs.meta deleted file mode 100644 index 200c353..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnQueryFileCompleteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 5b268e3acae66014ea441a80dd4636a1 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnQueryFileListCompleteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnQueryFileListCompleteCallback.cs deleted file mode 100644 index 5b3b658..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnQueryFileListCompleteCallback.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Callback for when completes - /// - public delegate void OnQueryFileListCompleteCallback(QueryFileListCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnQueryFileListCompleteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnQueryFileListCompleteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnQueryFileListCompleteCallback.cs.meta deleted file mode 100644 index 957bbf0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnQueryFileListCompleteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 7c7c933ab47462b4eb532000cb62a743 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnReadFileCompleteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnReadFileCompleteCallback.cs deleted file mode 100644 index 22d2521..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnReadFileCompleteCallback.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Callback for when completes - /// - public delegate void OnReadFileCompleteCallback(ReadFileCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnReadFileCompleteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnReadFileCompleteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnReadFileCompleteCallback.cs.meta deleted file mode 100644 index 2660ddc..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnReadFileCompleteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: edc951a68b64e2246921ae9b286d9afe -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnReadFileDataCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnReadFileDataCallback.cs deleted file mode 100644 index ff59231..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnReadFileDataCallback.cs +++ /dev/null @@ -1,17 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Callback for when we have data ready to be read from the requested file. It is undefined how often this will be called during a single tick. - /// - /// Struct containing a chunk of data to read, as well as some metadata for the file being read - /// - /// The result of the read operation. If this value is not , this callback will not be called again for the same request - /// - public delegate ReadResult OnReadFileDataCallback(ReadFileDataCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ReadResult OnReadFileDataCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnReadFileDataCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnReadFileDataCallback.cs.meta deleted file mode 100644 index e74d809..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnReadFileDataCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 42c8ac242ef79e24d8fad6440539b073 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnWriteFileCompleteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnWriteFileCompleteCallback.cs deleted file mode 100644 index fb10445..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnWriteFileCompleteCallback.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Callback for when completes - /// - public delegate void OnWriteFileCompleteCallback(WriteFileCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnWriteFileCompleteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnWriteFileCompleteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnWriteFileCompleteCallback.cs.meta deleted file mode 100644 index 9c3ec5d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnWriteFileCompleteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 5a576dd5a2a52934a865ab93e74b1aaf -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnWriteFileDataCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnWriteFileDataCallback.cs deleted file mode 100644 index ab87577..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnWriteFileDataCallback.cs +++ /dev/null @@ -1,19 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Callback for when we are ready to get more data to be written into the requested file. It is undefined how often this will be called during a single tick. - /// - /// Struct containing metadata for the file being written to, as well as the max length in bytes that can be safely written to DataBuffer - /// A buffer to write data into, to be appended to the end of the file that is being written to. The maximum length of this value is provided in the Info parameter. The number of bytes written to this buffer should be set in OutDataWritten. - /// The length of the data written to OutDataBuffer. This must be less than or equal than the DataBufferLengthBytes provided in the Info parameter - /// - /// The result of the write operation. If this value is not , this callback will not be called again for the same request. If this is set to or , all data written during the request will not be saved - /// - public delegate WriteResult OnWriteFileDataCallback(WriteFileDataCallbackInfo data, out byte[] outDataBuffer); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate WriteResult OnWriteFileDataCallbackInternal(System.IntPtr data, System.IntPtr outDataBuffer, ref uint outDataWritten); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnWriteFileDataCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnWriteFileDataCallback.cs.meta deleted file mode 100644 index d399d96..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/OnWriteFileDataCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 777deffea1b06664e8258e9598572e29 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/PlayerDataStorageFileTransferRequest.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/PlayerDataStorageFileTransferRequest.cs deleted file mode 100644 index 3018af9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/PlayerDataStorageFileTransferRequest.cs +++ /dev/null @@ -1,74 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - public sealed partial class PlayerDataStorageFileTransferRequest : Handle - { - public PlayerDataStorageFileTransferRequest() - { - } - - public PlayerDataStorageFileTransferRequest(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// Attempt to cancel this file request in progress. This is a best-effort command and is not guaranteed to be successful if the request has completed before this function is called. - /// - /// - /// if cancel is successful, if request had already completed (can't be canceled), if it's already been canceled before (this is a final state for canceled request and won't change over time). - /// - public Result CancelRequest() - { - var funcResult = Bindings.EOS_PlayerDataStorageFileTransferRequest_CancelRequest(InnerHandle); - - return funcResult; - } - - /// - /// Get the current state of a file request. - /// - /// - /// if complete and successful, if the request is still in progress, or another state for failure. - /// - public Result GetFileRequestState() - { - var funcResult = Bindings.EOS_PlayerDataStorageFileTransferRequest_GetFileRequestState(InnerHandle); - - return funcResult; - } - - /// - /// Get the file name of the file this request is for. OutStringLength will always be set to the string length of the file name if it is not NULL. - /// - /// - /// The maximum number of bytes that can be written to OutStringBuffer - /// The buffer to write the NULL-terminated utf8 file name into, if successful - /// How long the file name is (not including null terminator) - /// - /// if the file name was successfully written to OutFilenameBuffer, a failure result otherwise - /// - public Result GetFilename(out string outStringBuffer) - { - System.IntPtr outStringBufferAddress = System.IntPtr.Zero; - int outStringLength = PlayerDataStorageInterface.FilenameMaxLengthBytes; - Helper.TryMarshalAllocate(ref outStringBufferAddress, outStringLength, out _); - - var funcResult = Bindings.EOS_PlayerDataStorageFileTransferRequest_GetFilename(InnerHandle, (uint)outStringLength, outStringBufferAddress, ref outStringLength); - - Helper.TryMarshalGet(outStringBufferAddress, out outStringBuffer); - Helper.TryMarshalDispose(ref outStringBufferAddress); - - return funcResult; - } - - /// - /// Free the memory used by a cloud-storage file request handle. This will not cancel a request in progress. - /// - public void Release() - { - Bindings.EOS_PlayerDataStorageFileTransferRequest_Release(InnerHandle); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/PlayerDataStorageFileTransferRequest.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/PlayerDataStorageFileTransferRequest.cs.meta deleted file mode 100644 index 2e5400a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/PlayerDataStorageFileTransferRequest.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 6025bd72fbc4a82409ecda2e5a6c2e4e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/PlayerDataStorageInterface.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/PlayerDataStorageInterface.cs deleted file mode 100644 index 31ccbeb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/PlayerDataStorageInterface.cs +++ /dev/null @@ -1,446 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - public sealed partial class PlayerDataStorageInterface : Handle - { - public PlayerDataStorageInterface() - { - } - - public PlayerDataStorageInterface(System.IntPtr innerHandle) : base(innerHandle) - { - } - - public const int CopyfilemetadataatindexoptionsApiLatest = 1; - - public const int CopyfilemetadatabyfilenameoptionsApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int DeletecacheoptionsApiLatest = 1; - - public const int DeletefileoptionsApiLatest = 1; - - public const int DuplicatefileoptionsApiLatest = 1; - - /// - /// Maximum File size in bytes - /// - public const int FileMaxSizeBytes = (64 * 1024 * 1024); - - public const int FilemetadataApiLatest = 3; - - /// - /// Maximum File Name Length in bytes - /// - public const int FilenameMaxLengthBytes = 64; - - public const int GetfilemetadatacountoptionsApiLatest = 1; - - public const int QueryfilelistoptionsApiLatest = 1; - - public const int QueryfileoptionsApiLatest = 1; - - public const int ReadfileoptionsApiLatest = 1; - - public const int WritefileoptionsApiLatest = 1; - - /// - /// Get the cached copy of a file's metadata by index. The metadata will be for the last retrieved or successfully saved version, and will not include any local changes that have not been - /// committed by calling SaveFile. The returned pointer must be released by the user when no longer needed. - /// - /// - /// - /// Object containing properties related to which user is requesting metadata, and at what index - /// A copy of the FileMetadata structure will be set if successful. This data must be released by calling . - /// - /// :: if the requested metadata is currently cached, otherwise an error result explaining what went wrong - /// - public Result CopyFileMetadataAtIndex(CopyFileMetadataAtIndexOptions copyFileMetadataOptions, out FileMetadata outMetadata) - { - var copyFileMetadataOptionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref copyFileMetadataOptionsAddress, copyFileMetadataOptions); - - var outMetadataAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_PlayerDataStorage_CopyFileMetadataAtIndex(InnerHandle, copyFileMetadataOptionsAddress, ref outMetadataAddress); - - Helper.TryMarshalDispose(ref copyFileMetadataOptionsAddress); - - if (Helper.TryMarshalGet(outMetadataAddress, out outMetadata)) - { - Bindings.EOS_PlayerDataStorage_FileMetadata_Release(outMetadataAddress); - } - - return funcResult; - } - - /// - /// Create the cached copy of a file's metadata by filename. The metadata will be for the last retrieved or successfully saved version, and will not include any changes that have not - /// completed writing. The returned pointer must be released by the user when no longer needed. - /// - /// Object containing properties related to which user is requesting metadata, and for which filename - /// A copy of the FileMetadata structure will be set if successful. This data must be released by calling . - /// - /// :: if the metadata is currently cached, otherwise an error result explaining what went wrong - /// - public Result CopyFileMetadataByFilename(CopyFileMetadataByFilenameOptions copyFileMetadataOptions, out FileMetadata outMetadata) - { - var copyFileMetadataOptionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref copyFileMetadataOptionsAddress, copyFileMetadataOptions); - - var outMetadataAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_PlayerDataStorage_CopyFileMetadataByFilename(InnerHandle, copyFileMetadataOptionsAddress, ref outMetadataAddress); - - Helper.TryMarshalDispose(ref copyFileMetadataOptionsAddress); - - if (Helper.TryMarshalGet(outMetadataAddress, out outMetadata)) - { - Bindings.EOS_PlayerDataStorage_FileMetadata_Release(outMetadataAddress); - } - - return funcResult; - } - - /// - /// Clear previously cached file data. This operation will be done asynchronously. All cached files except those corresponding to the transfers in progress will be removed. - /// Warning: Use this with care. Cache system generally tries to clear old and unused cached files from time to time. Unnecessarily clearing cache can degrade performance as SDK will have to re-download data. - /// - /// Object containing properties related to which user is deleting cache - /// Optional pointer to help clients track this request, that is returned in associated callbacks - /// This function is called when the delete cache operation completes - /// - /// if the operation was started correctly, otherwise an error result explaining what went wrong - /// - public Result DeleteCache(DeleteCacheOptions options, object clientData, OnDeleteCacheCompleteCallback completionCallback) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionCallbackInternal = new OnDeleteCacheCompleteCallbackInternal(OnDeleteCacheCompleteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionCallback, completionCallbackInternal); - - var funcResult = Bindings.EOS_PlayerDataStorage_DeleteCache(InnerHandle, optionsAddress, clientDataAddress, completionCallbackInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Deletes an existing file in the cloud. If successful, the file's data will be removed from our local cache. - /// - /// Object containing properties related to which user is deleting the file, and what file name is - /// Optional pointer to help clients track this request, that is returned in the completion callback - /// This function is called when the delete operation completes - public void DeleteFile(DeleteFileOptions deleteOptions, object clientData, OnDeleteFileCompleteCallback completionCallback) - { - var deleteOptionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref deleteOptionsAddress, deleteOptions); - - var clientDataAddress = System.IntPtr.Zero; - - var completionCallbackInternal = new OnDeleteFileCompleteCallbackInternal(OnDeleteFileCompleteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionCallback, completionCallbackInternal); - - Bindings.EOS_PlayerDataStorage_DeleteFile(InnerHandle, deleteOptionsAddress, clientDataAddress, completionCallbackInternal); - - Helper.TryMarshalDispose(ref deleteOptionsAddress); - } - - /// - /// Copies the data of an existing file to a new filename. This action happens entirely on the server and will not upload the contents of the source destination file from the host. This - /// function paired with a subsequent can be used to rename a file. If successful, the destination file's metadata will be updated in our local cache. - /// - /// Object containing properties related to which user is duplicating the file, and what the source and destination file names are - /// Optional pointer to help clients track this request, that is returned in the completion callback - /// This function is called when the duplicate operation completes - public void DuplicateFile(DuplicateFileOptions duplicateOptions, object clientData, OnDuplicateFileCompleteCallback completionCallback) - { - var duplicateOptionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref duplicateOptionsAddress, duplicateOptions); - - var clientDataAddress = System.IntPtr.Zero; - - var completionCallbackInternal = new OnDuplicateFileCompleteCallbackInternal(OnDuplicateFileCompleteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionCallback, completionCallbackInternal); - - Bindings.EOS_PlayerDataStorage_DuplicateFile(InnerHandle, duplicateOptionsAddress, clientDataAddress, completionCallbackInternal); - - Helper.TryMarshalDispose(ref duplicateOptionsAddress); - } - - /// - /// Get the count of files we have previously queried information for and files we have previously read from / written to. - /// - /// - /// Object containing properties related to which user is requesting the metadata count - /// If successful, the count of metadata currently cached - /// - /// :: if the input was valid, otherwise an error result explaining what went wrong - /// - public Result GetFileMetadataCount(GetFileMetadataCountOptions getFileMetadataCountOptions, out int outFileMetadataCount) - { - var getFileMetadataCountOptionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref getFileMetadataCountOptionsAddress, getFileMetadataCountOptions); - - outFileMetadataCount = Helper.GetDefault(); - - var funcResult = Bindings.EOS_PlayerDataStorage_GetFileMetadataCount(InnerHandle, getFileMetadataCountOptionsAddress, ref outFileMetadataCount); - - Helper.TryMarshalDispose(ref getFileMetadataCountOptionsAddress); - - return funcResult; - } - - /// - /// Query a specific file's metadata, such as file names, size, and a MD5 hash of the data. This is not required before a file may be opened, saved, copied, or deleted. Once a file has - /// been queried, its metadata will be available by the and functions. - /// - /// - /// - /// - /// Object containing properties related to which user is querying files, and what file is being queried - /// Optional pointer to help clients track this request, that is returned in the completion callback - /// This function is called when the query operation completes - public void QueryFile(QueryFileOptions queryFileOptions, object clientData, OnQueryFileCompleteCallback completionCallback) - { - var queryFileOptionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref queryFileOptionsAddress, queryFileOptions); - - var clientDataAddress = System.IntPtr.Zero; - - var completionCallbackInternal = new OnQueryFileCompleteCallbackInternal(OnQueryFileCompleteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionCallback, completionCallbackInternal); - - Bindings.EOS_PlayerDataStorage_QueryFile(InnerHandle, queryFileOptionsAddress, clientDataAddress, completionCallbackInternal); - - Helper.TryMarshalDispose(ref queryFileOptionsAddress); - } - - /// - /// Query the file metadata, such as file names, size, and a MD5 hash of the data, for all files owned by this user for this application. This is not required before a file may be opened, - /// saved, copied, or deleted. - /// - /// - /// - /// - /// Object containing properties related to which user is querying files - /// Optional pointer to help clients track this request, that is returned in the completion callback - /// This function is called when the query operation completes - public void QueryFileList(QueryFileListOptions queryFileListOptions, object clientData, OnQueryFileListCompleteCallback completionCallback) - { - var queryFileListOptionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref queryFileListOptionsAddress, queryFileListOptions); - - var clientDataAddress = System.IntPtr.Zero; - - var completionCallbackInternal = new OnQueryFileListCompleteCallbackInternal(OnQueryFileListCompleteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionCallback, completionCallbackInternal); - - Bindings.EOS_PlayerDataStorage_QueryFileList(InnerHandle, queryFileListOptionsAddress, clientDataAddress, completionCallbackInternal); - - Helper.TryMarshalDispose(ref queryFileListOptionsAddress); - } - - /// - /// Retrieve the contents of a specific file, potentially downloading the contents if we do not have a local copy, from the cloud. This request will occur asynchronously, potentially over - /// multiple frames. All callbacks for this function will come from the same thread that the SDK is ticked from. If specified, the FileTransferProgressCallback will always be called at - /// least once if the request is started successfully. - /// - /// - /// Object containing properties related to which user is opening the file, what the file's name is, and related mechanisms for copying the data - /// Optional pointer to help clients track this request, that is returned in associated callbacks - /// This function is called when the read operation completes - /// - /// A valid Player Data Storage File Request handle if successful, or NULL otherwise. Data contained in the completion callback will have more detailed information about issues with the request in failure cases. This handle must be released when it is no longer needed - /// - public PlayerDataStorageFileTransferRequest ReadFile(ReadFileOptions readOptions, object clientData, OnReadFileCompleteCallback completionCallback) - { - var readOptionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref readOptionsAddress, readOptions); - - var clientDataAddress = System.IntPtr.Zero; - - var completionCallbackInternal = new OnReadFileCompleteCallbackInternal(OnReadFileCompleteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionCallback, completionCallbackInternal, readOptions.ReadFileDataCallback, ReadFileOptionsInternal.ReadFileDataCallback, readOptions.FileTransferProgressCallback, ReadFileOptionsInternal.FileTransferProgressCallback); - - var funcResult = Bindings.EOS_PlayerDataStorage_ReadFile(InnerHandle, readOptionsAddress, clientDataAddress, completionCallbackInternal); - - Helper.TryMarshalDispose(ref readOptionsAddress); - - PlayerDataStorageFileTransferRequest funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Write new data to a specific file, potentially overwriting any existing file by the same name, to the cloud. This request will occur asynchronously, potentially over multiple frames. - /// All callbacks for this function will come from the same thread that the SDK is ticked from. If specified, the FileTransferProgressCallback will always be called at least once if the - /// request is started successfully. - /// - /// - /// Object containing properties related to which user is writing the file, what the file's name is, and related mechanisms for writing the data - /// Optional pointer to help clients track this request, that is returned in associated callbacks - /// This function is called when the write operation completes - /// - /// A valid Player Data Storage File Request handle if successful, or NULL otherwise. Data contained in the completion callback will have more detailed information about issues with the request in failure cases. This handle must be released when it is no longer needed - /// - public PlayerDataStorageFileTransferRequest WriteFile(WriteFileOptions writeOptions, object clientData, OnWriteFileCompleteCallback completionCallback) - { - var writeOptionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref writeOptionsAddress, writeOptions); - - var clientDataAddress = System.IntPtr.Zero; - - var completionCallbackInternal = new OnWriteFileCompleteCallbackInternal(OnWriteFileCompleteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionCallback, completionCallbackInternal, writeOptions.WriteFileDataCallback, WriteFileOptionsInternal.WriteFileDataCallback, writeOptions.FileTransferProgressCallback, WriteFileOptionsInternal.FileTransferProgressCallback); - - var funcResult = Bindings.EOS_PlayerDataStorage_WriteFile(InnerHandle, writeOptionsAddress, clientDataAddress, completionCallbackInternal); - - Helper.TryMarshalDispose(ref writeOptionsAddress); - - PlayerDataStorageFileTransferRequest funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - [MonoPInvokeCallback(typeof(OnDeleteCacheCompleteCallbackInternal))] - internal static void OnDeleteCacheCompleteCallbackInternalImplementation(System.IntPtr data) - { - OnDeleteCacheCompleteCallback callback; - DeleteCacheCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnDeleteFileCompleteCallbackInternal))] - internal static void OnDeleteFileCompleteCallbackInternalImplementation(System.IntPtr data) - { - OnDeleteFileCompleteCallback callback; - DeleteFileCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnDuplicateFileCompleteCallbackInternal))] - internal static void OnDuplicateFileCompleteCallbackInternalImplementation(System.IntPtr data) - { - OnDuplicateFileCompleteCallback callback; - DuplicateFileCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnFileTransferProgressCallbackInternal))] - internal static void OnFileTransferProgressCallbackInternalImplementation(System.IntPtr data) - { - OnFileTransferProgressCallback callback; - FileTransferProgressCallbackInfo callbackInfo; - if (Helper.TryGetStructCallback(data, out callback, out callbackInfo)) - { - FileTransferProgressCallbackInfo dataObj; - Helper.TryMarshalGet(data, out dataObj); - - callback(dataObj); - } - } - - [MonoPInvokeCallback(typeof(OnQueryFileCompleteCallbackInternal))] - internal static void OnQueryFileCompleteCallbackInternalImplementation(System.IntPtr data) - { - OnQueryFileCompleteCallback callback; - QueryFileCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnQueryFileListCompleteCallbackInternal))] - internal static void OnQueryFileListCompleteCallbackInternalImplementation(System.IntPtr data) - { - OnQueryFileListCompleteCallback callback; - QueryFileListCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnReadFileCompleteCallbackInternal))] - internal static void OnReadFileCompleteCallbackInternalImplementation(System.IntPtr data) - { - OnReadFileCompleteCallback callback; - ReadFileCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnReadFileDataCallbackInternal))] - internal static ReadResult OnReadFileDataCallbackInternalImplementation(System.IntPtr data) - { - OnReadFileDataCallback callback; - ReadFileDataCallbackInfo callbackInfo; - if (Helper.TryGetStructCallback(data, out callback, out callbackInfo)) - { - ReadFileDataCallbackInfo dataObj; - Helper.TryMarshalGet(data, out dataObj); - - var funcResult = callback(dataObj); - - return funcResult; - } - - return Helper.GetDefault(); - } - - [MonoPInvokeCallback(typeof(OnWriteFileCompleteCallbackInternal))] - internal static void OnWriteFileCompleteCallbackInternalImplementation(System.IntPtr data) - { - OnWriteFileCompleteCallback callback; - WriteFileCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnWriteFileDataCallbackInternal))] - internal static WriteResult OnWriteFileDataCallbackInternalImplementation(System.IntPtr data, System.IntPtr outDataBuffer, ref uint outDataWritten) - { - OnWriteFileDataCallback callback; - WriteFileDataCallbackInfo callbackInfo; - if (Helper.TryGetStructCallback(data, out callback, out callbackInfo)) - { - WriteFileDataCallbackInfo dataObj; - Helper.TryMarshalGet(data, out dataObj); - - byte[] outDataBufferArray; - - var funcResult = callback(dataObj, out outDataBufferArray); - - Helper.TryMarshalGet(outDataBufferArray, out outDataWritten); - Helper.TryMarshalCopy(outDataBuffer, outDataBufferArray); - - return funcResult; - } - - return Helper.GetDefault(); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/PlayerDataStorageInterface.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/PlayerDataStorageInterface.cs.meta deleted file mode 100644 index 53a734c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/PlayerDataStorageInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d4e0efc92022b774fb958a78546c245d -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/QueryFileCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/QueryFileCallbackInfo.cs deleted file mode 100644 index 3ddfbca..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/QueryFileCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Data containing information about a query file request - /// - public class QueryFileCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Result code for the operation. is returned for a successful request, other codes indicate an error - /// - public Result ResultCode { get; private set; } - - /// - /// Client-specified data passed into the file query request - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the local user who initiated this request - /// - public ProductUserId LocalUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(QueryFileCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as QueryFileCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryFileCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/QueryFileCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/QueryFileCallbackInfo.cs.meta deleted file mode 100644 index 36201ab..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/QueryFileCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 586fddc0cad19fd42ba87aec0bb75316 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/QueryFileListCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/QueryFileListCallbackInfo.cs deleted file mode 100644 index d17a96b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/QueryFileListCallbackInfo.cs +++ /dev/null @@ -1,105 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Data containing information about a query file list request - /// - public class QueryFileListCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Result code for the operation. is returned for a successful request, other codes indicate an error - /// - public Result ResultCode { get; private set; } - - /// - /// Client-specified data passed into the file query request - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the local user who initiated this request - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// A count of files that were found, if successful - /// - public uint FileCount { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(QueryFileListCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - FileCount = other.Value.FileCount; - } - } - - public void Set(object other) - { - Set(other as QueryFileListCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryFileListCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private uint m_FileCount; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public uint FileCount - { - get - { - return m_FileCount; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/QueryFileListCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/QueryFileListCallbackInfo.cs.meta deleted file mode 100644 index 92f9281..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/QueryFileListCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 2047078f23a0e91469a854afdc8db152 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/QueryFileListOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/QueryFileListOptions.cs deleted file mode 100644 index 7dda7ae..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/QueryFileListOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Input data for the function - /// - public class QueryFileListOptions - { - /// - /// The Product User ID of the local user who requested file metadata - /// - public ProductUserId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryFileListOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(QueryFileListOptions other) - { - if (other != null) - { - m_ApiVersion = PlayerDataStorageInterface.QueryfilelistoptionsApiLatest; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as QueryFileListOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/QueryFileListOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/QueryFileListOptions.cs.meta deleted file mode 100644 index feb8c8e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/QueryFileListOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 48a9896cc3368564f848c343842e6001 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/QueryFileOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/QueryFileOptions.cs deleted file mode 100644 index 8ac6301..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/QueryFileOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Input data for the function - /// - public class QueryFileOptions - { - /// - /// The Product User ID of the local user requesting file metadata - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The name of the file being queried - /// - public string Filename { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryFileOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_Filename; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string Filename - { - set - { - Helper.TryMarshalSet(ref m_Filename, value); - } - } - - public void Set(QueryFileOptions other) - { - if (other != null) - { - m_ApiVersion = PlayerDataStorageInterface.QueryfileoptionsApiLatest; - LocalUserId = other.LocalUserId; - Filename = other.Filename; - } - } - - public void Set(object other) - { - Set(other as QueryFileOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_Filename); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/QueryFileOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/QueryFileOptions.cs.meta deleted file mode 100644 index a74fae9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/QueryFileOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e04f75bfe6b23594a870b16f6a731cea -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/ReadFileCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/ReadFileCallbackInfo.cs deleted file mode 100644 index 88dd56d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/ReadFileCallbackInfo.cs +++ /dev/null @@ -1,107 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Data containing the result of a read file request - /// - public class ReadFileCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Result code for the operation. is returned for a successful request, other codes indicate an error - /// - public Result ResultCode { get; private set; } - - /// - /// Client-specified data passed into the file read request - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the local user who initiated this request - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The filename of the file that has been finished reading - /// - public string Filename { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(ReadFileCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - Filename = other.Value.Filename; - } - } - - public void Set(object other) - { - Set(other as ReadFileCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct ReadFileCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_Filename; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public string Filename - { - get - { - string value; - Helper.TryMarshalGet(m_Filename, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/ReadFileCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/ReadFileCallbackInfo.cs.meta deleted file mode 100644 index ed0aa6c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/ReadFileCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 27aa7388293fb514bba9f3e887fc7c31 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/ReadFileDataCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/ReadFileDataCallbackInfo.cs deleted file mode 100644 index 870b194..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/ReadFileDataCallbackInfo.cs +++ /dev/null @@ -1,142 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Data containing data for a chunk of a file being read - /// - public class ReadFileDataCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Client-specified data passed into the file request - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the local user who initiated this request - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The file name being read - /// - public string Filename { get; private set; } - - /// - /// The total file size of the file being read - /// - public uint TotalFileSizeBytes { get; private set; } - - /// - /// Is this chunk the last chunk of data? - /// - public bool IsLastChunk { get; private set; } - - /// - /// Pointer to the start of data to be read - /// - public byte[] DataChunk { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(ReadFileDataCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - Filename = other.Value.Filename; - TotalFileSizeBytes = other.Value.TotalFileSizeBytes; - IsLastChunk = other.Value.IsLastChunk; - DataChunk = other.Value.DataChunk; - } - } - - public void Set(object other) - { - Set(other as ReadFileDataCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct ReadFileDataCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_Filename; - private uint m_TotalFileSizeBytes; - private int m_IsLastChunk; - private uint m_DataChunkLengthBytes; - private System.IntPtr m_DataChunk; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public string Filename - { - get - { - string value; - Helper.TryMarshalGet(m_Filename, out value); - return value; - } - } - - public uint TotalFileSizeBytes - { - get - { - return m_TotalFileSizeBytes; - } - } - - public bool IsLastChunk - { - get - { - bool value; - Helper.TryMarshalGet(m_IsLastChunk, out value); - return value; - } - } - - public byte[] DataChunk - { - get - { - byte[] value; - Helper.TryMarshalGet(m_DataChunk, out value, m_DataChunkLengthBytes); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/ReadFileDataCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/ReadFileDataCallbackInfo.cs.meta deleted file mode 100644 index 5e24340..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/ReadFileDataCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 7a61940d9073a62499e087f678baffbb -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/ReadFileOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/ReadFileOptions.cs deleted file mode 100644 index 5d2b1c3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/ReadFileOptions.cs +++ /dev/null @@ -1,125 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Input data for the function - /// - public class ReadFileOptions - { - /// - /// The Product User ID of the local user who is reading the requested file - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The file name to read; this file must already exist - /// - public string Filename { get; set; } - - /// - /// The maximum amount of data in bytes should be available to read in a single call - /// - public uint ReadChunkLengthBytes { get; set; } - - /// - /// Callback function that handles data as it comes in, and can stop the transfer early - /// - public OnReadFileDataCallback ReadFileDataCallback { get; set; } - - /// - /// Optional callback function to be informed of download progress, if the file is not already locally cached; if provided, this will be called at least once before completion if the request is successfully started - /// - public OnFileTransferProgressCallback FileTransferProgressCallback { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct ReadFileOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_Filename; - private uint m_ReadChunkLengthBytes; - private System.IntPtr m_ReadFileDataCallback; - private System.IntPtr m_FileTransferProgressCallback; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string Filename - { - set - { - Helper.TryMarshalSet(ref m_Filename, value); - } - } - - public uint ReadChunkLengthBytes - { - set - { - m_ReadChunkLengthBytes = value; - } - } - - private static OnReadFileDataCallbackInternal s_ReadFileDataCallback; - public static OnReadFileDataCallbackInternal ReadFileDataCallback - { - get - { - if (s_ReadFileDataCallback == null) - { - s_ReadFileDataCallback = new OnReadFileDataCallbackInternal(PlayerDataStorageInterface.OnReadFileDataCallbackInternalImplementation); - } - - return s_ReadFileDataCallback; - } - } - - private static OnFileTransferProgressCallbackInternal s_FileTransferProgressCallback; - public static OnFileTransferProgressCallbackInternal FileTransferProgressCallback - { - get - { - if (s_FileTransferProgressCallback == null) - { - s_FileTransferProgressCallback = new OnFileTransferProgressCallbackInternal(PlayerDataStorageInterface.OnFileTransferProgressCallbackInternalImplementation); - } - - return s_FileTransferProgressCallback; - } - } - - public void Set(ReadFileOptions other) - { - if (other != null) - { - m_ApiVersion = PlayerDataStorageInterface.ReadfileoptionsApiLatest; - LocalUserId = other.LocalUserId; - Filename = other.Filename; - ReadChunkLengthBytes = other.ReadChunkLengthBytes; - m_ReadFileDataCallback = other.ReadFileDataCallback != null ? System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(ReadFileDataCallback) : System.IntPtr.Zero; - m_FileTransferProgressCallback = other.FileTransferProgressCallback != null ? System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(FileTransferProgressCallback) : System.IntPtr.Zero; - } - } - - public void Set(object other) - { - Set(other as ReadFileOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_Filename); - Helper.TryMarshalDispose(ref m_ReadFileDataCallback); - Helper.TryMarshalDispose(ref m_FileTransferProgressCallback); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/ReadFileOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/ReadFileOptions.cs.meta deleted file mode 100644 index 7132ccf..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/ReadFileOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: df1cd7910de78e342aa6a5dc8f29734f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/ReadResult.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/ReadResult.cs deleted file mode 100644 index a96c60a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/ReadResult.cs +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Return results for callbacks to return - /// - public enum ReadResult : int - { - /// - /// Signifies the data was read successfully, and we should continue to the next chunk if possible - /// - ContinueReading = 1, - /// - /// Signifies there was a failure reading the data, and the request should end - /// - FailRequest = 2, - /// - /// Signifies the request should be cancelled, but not due to an error - /// - CancelRequest = 3 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/ReadResult.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/ReadResult.cs.meta deleted file mode 100644 index 4bc1765..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/ReadResult.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 670aac9bb1862934581921756d6edaa5 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/WriteFileCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/WriteFileCallbackInfo.cs deleted file mode 100644 index faee26d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/WriteFileCallbackInfo.cs +++ /dev/null @@ -1,107 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// The result information for a request to write data to a file - /// - public class WriteFileCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Result code for the operation. is returned for a successful request, other codes indicate an error - /// - public Result ResultCode { get; private set; } - - /// - /// Client-specified data passed into the file write request - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the local user who initiated this request - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The file name that is being written to - /// - public string Filename { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(WriteFileCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - Filename = other.Value.Filename; - } - } - - public void Set(object other) - { - Set(other as WriteFileCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct WriteFileCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_Filename; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public string Filename - { - get - { - string value; - Helper.TryMarshalGet(m_Filename, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/WriteFileCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/WriteFileCallbackInfo.cs.meta deleted file mode 100644 index 89b9841..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/WriteFileCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3846e9fe8aa95d84abf4fb1a3f0abbf7 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/WriteFileDataCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/WriteFileDataCallbackInfo.cs deleted file mode 100644 index 8d83254..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/WriteFileDataCallbackInfo.cs +++ /dev/null @@ -1,107 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Data containing data for a chunk of a file being written - /// - public class WriteFileDataCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Client-specified data passed into the file write request - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the local user who initiated this request - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The file name that is being written to - /// - public string Filename { get; private set; } - - /// - /// The maximum amount of data in bytes that can be written safely to DataBuffer - /// - public uint DataBufferLengthBytes { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(WriteFileDataCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - Filename = other.Value.Filename; - DataBufferLengthBytes = other.Value.DataBufferLengthBytes; - } - } - - public void Set(object other) - { - Set(other as WriteFileDataCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct WriteFileDataCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_Filename; - private uint m_DataBufferLengthBytes; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public string Filename - { - get - { - string value; - Helper.TryMarshalGet(m_Filename, out value); - return value; - } - } - - public uint DataBufferLengthBytes - { - get - { - return m_DataBufferLengthBytes; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/WriteFileDataCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/WriteFileDataCallbackInfo.cs.meta deleted file mode 100644 index 9c087be..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/WriteFileDataCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 42f5bdd4f93cea04b91c7b065246aa15 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/WriteFileOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/WriteFileOptions.cs deleted file mode 100644 index afb1324..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/WriteFileOptions.cs +++ /dev/null @@ -1,125 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Input data for the function - /// - public class WriteFileOptions - { - /// - /// The Product User ID of the local user who is writing the requested file to the cloud - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The name of the file to write; if this file already exists, the contents will be replaced if the write request completes successfully - /// - public string Filename { get; set; } - - /// - /// Requested maximum amount of data (in bytes) that can be written to the file per tick - /// - public uint ChunkLengthBytes { get; set; } - - /// - /// Callback function that provides chunks of data to be written into the requested file - /// - public OnWriteFileDataCallback WriteFileDataCallback { get; set; } - - /// - /// Optional callback function to inform the application of upload progress; will be called at least once if set - /// - public OnFileTransferProgressCallback FileTransferProgressCallback { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct WriteFileOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_Filename; - private uint m_ChunkLengthBytes; - private System.IntPtr m_WriteFileDataCallback; - private System.IntPtr m_FileTransferProgressCallback; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string Filename - { - set - { - Helper.TryMarshalSet(ref m_Filename, value); - } - } - - public uint ChunkLengthBytes - { - set - { - m_ChunkLengthBytes = value; - } - } - - private static OnWriteFileDataCallbackInternal s_WriteFileDataCallback; - public static OnWriteFileDataCallbackInternal WriteFileDataCallback - { - get - { - if (s_WriteFileDataCallback == null) - { - s_WriteFileDataCallback = new OnWriteFileDataCallbackInternal(PlayerDataStorageInterface.OnWriteFileDataCallbackInternalImplementation); - } - - return s_WriteFileDataCallback; - } - } - - private static OnFileTransferProgressCallbackInternal s_FileTransferProgressCallback; - public static OnFileTransferProgressCallbackInternal FileTransferProgressCallback - { - get - { - if (s_FileTransferProgressCallback == null) - { - s_FileTransferProgressCallback = new OnFileTransferProgressCallbackInternal(PlayerDataStorageInterface.OnFileTransferProgressCallbackInternalImplementation); - } - - return s_FileTransferProgressCallback; - } - } - - public void Set(WriteFileOptions other) - { - if (other != null) - { - m_ApiVersion = PlayerDataStorageInterface.WritefileoptionsApiLatest; - LocalUserId = other.LocalUserId; - Filename = other.Filename; - ChunkLengthBytes = other.ChunkLengthBytes; - m_WriteFileDataCallback = other.WriteFileDataCallback != null ? System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(WriteFileDataCallback) : System.IntPtr.Zero; - m_FileTransferProgressCallback = other.FileTransferProgressCallback != null ? System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(FileTransferProgressCallback) : System.IntPtr.Zero; - } - } - - public void Set(object other) - { - Set(other as WriteFileOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_Filename); - Helper.TryMarshalDispose(ref m_WriteFileDataCallback); - Helper.TryMarshalDispose(ref m_FileTransferProgressCallback); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/WriteFileOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/WriteFileOptions.cs.meta deleted file mode 100644 index 7e0ca95..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/WriteFileOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 5b8635c0557a4824c9023bca2b118f67 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/WriteResult.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/WriteResult.cs deleted file mode 100644 index da40957..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/WriteResult.cs +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.PlayerDataStorage -{ - /// - /// Return results for callbacks to return - /// - public enum WriteResult : int - { - /// - /// Signifies the data was written successfully, and we should write the data the file - /// - ContinueWriting = 1, - /// - /// Signifies all data has now been written successfully, and we should upload the data to the cloud - /// - CompleteRequest = 2, - /// - /// Signifies there was a failure writing the data, and the request should end - /// - FailRequest = 3, - /// - /// Signifies the request should be cancelled, but not due to an error - /// - CancelRequest = 4 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/WriteResult.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/WriteResult.cs.meta deleted file mode 100644 index 404e479..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/PlayerDataStorage/WriteResult.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 8c074f307764d4942a964fbce6d79012 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence.meta deleted file mode 100644 index cc9cb03..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: a64e691803d0a2843904e0bec4dbcee6 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/AddNotifyJoinGameAcceptedOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/AddNotifyJoinGameAcceptedOptions.cs deleted file mode 100644 index 18c0d7d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/AddNotifyJoinGameAcceptedOptions.cs +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Presence -{ - public class AddNotifyJoinGameAcceptedOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyJoinGameAcceptedOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(AddNotifyJoinGameAcceptedOptions other) - { - if (other != null) - { - m_ApiVersion = PresenceInterface.AddnotifyjoingameacceptedApiLatest; - } - } - - public void Set(object other) - { - Set(other as AddNotifyJoinGameAcceptedOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/AddNotifyJoinGameAcceptedOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/AddNotifyJoinGameAcceptedOptions.cs.meta deleted file mode 100644 index 3cdb702..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/AddNotifyJoinGameAcceptedOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ac6bf9015757679449ebb665358c9bf6 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/AddNotifyOnPresenceChangedOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/AddNotifyOnPresenceChangedOptions.cs deleted file mode 100644 index ff658d3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/AddNotifyOnPresenceChangedOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Presence -{ - /// - /// Data for the function. - /// - public class AddNotifyOnPresenceChangedOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyOnPresenceChangedOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(AddNotifyOnPresenceChangedOptions other) - { - if (other != null) - { - m_ApiVersion = PresenceInterface.AddnotifyonpresencechangedApiLatest; - } - } - - public void Set(object other) - { - Set(other as AddNotifyOnPresenceChangedOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/AddNotifyOnPresenceChangedOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/AddNotifyOnPresenceChangedOptions.cs.meta deleted file mode 100644 index ccc3c0f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/AddNotifyOnPresenceChangedOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 236cc0013ca69a147af6f92ac6c57beb -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/CopyPresenceOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/CopyPresenceOptions.cs deleted file mode 100644 index 7904eac..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/CopyPresenceOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Presence -{ - /// - /// Data for the function. - /// - public class CopyPresenceOptions - { - /// - /// The Epic Online Services Account ID of the local, logged-in user making the request - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The Epic Online Services Account ID of the user whose cached presence data you want to copy from the cache - /// - public EpicAccountId TargetUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyPresenceOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public EpicAccountId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public void Set(CopyPresenceOptions other) - { - if (other != null) - { - m_ApiVersion = PresenceInterface.CopypresenceApiLatest; - LocalUserId = other.LocalUserId; - TargetUserId = other.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as CopyPresenceOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/CopyPresenceOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/CopyPresenceOptions.cs.meta deleted file mode 100644 index c4194d4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/CopyPresenceOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: bfdd6527d6bbd7e429c25091c56c3be1 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/CreatePresenceModificationOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/CreatePresenceModificationOptions.cs deleted file mode 100644 index dc3e20a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/CreatePresenceModificationOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Presence -{ - /// - /// Data for the function. - /// - public class CreatePresenceModificationOptions - { - /// - /// The Epic Online Services Account ID of the local user's Epic Online Services Account ID - /// - public EpicAccountId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CreatePresenceModificationOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(CreatePresenceModificationOptions other) - { - if (other != null) - { - m_ApiVersion = PresenceInterface.CreatepresencemodificationApiLatest; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as CreatePresenceModificationOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/CreatePresenceModificationOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/CreatePresenceModificationOptions.cs.meta deleted file mode 100644 index 47ddefc..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/CreatePresenceModificationOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 8a9b3f65c7d04d64ab51d7c87ed8146b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/DataRecord.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/DataRecord.cs deleted file mode 100644 index 1aad9ea..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/DataRecord.cs +++ /dev/null @@ -1,95 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Presence -{ - /// - /// An individual presence data record that belongs to a object. This object is released when its parent object is released. - /// - /// - public class DataRecord : ISettable - { - /// - /// The name of this data - /// - public string Key { get; set; } - - /// - /// The value of this data - /// - public string Value { get; set; } - - internal void Set(DataRecordInternal? other) - { - if (other != null) - { - Key = other.Value.Key; - Value = other.Value.Value; - } - } - - public void Set(object other) - { - Set(other as DataRecordInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct DataRecordInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Key; - private System.IntPtr m_Value; - - public string Key - { - get - { - string value; - Helper.TryMarshalGet(m_Key, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Key, value); - } - } - - public string Value - { - get - { - string value; - Helper.TryMarshalGet(m_Value, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Value, value); - } - } - - public void Set(DataRecord other) - { - if (other != null) - { - m_ApiVersion = PresenceInterface.DatarecordApiLatest; - Key = other.Key; - Value = other.Value; - } - } - - public void Set(object other) - { - Set(other as DataRecord); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Key); - Helper.TryMarshalDispose(ref m_Value); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/DataRecord.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/DataRecord.cs.meta deleted file mode 100644 index e8489fe..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/DataRecord.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f2692cccc354b3947a70d4cd0857d3a1 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/GetJoinInfoOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/GetJoinInfoOptions.cs deleted file mode 100644 index 8749d41..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/GetJoinInfoOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Presence -{ - /// - /// Data for the function. - /// - public class GetJoinInfoOptions - { - /// - /// The local user's Epic Online Services Account ID - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The Epic Online Services Account ID to query for join info; this value must either be a logged-in local user, or a friend of that user - /// - public EpicAccountId TargetUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetJoinInfoOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public EpicAccountId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public void Set(GetJoinInfoOptions other) - { - if (other != null) - { - m_ApiVersion = PresenceInterface.GetjoininfoApiLatest; - LocalUserId = other.LocalUserId; - TargetUserId = other.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as GetJoinInfoOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/GetJoinInfoOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/GetJoinInfoOptions.cs.meta deleted file mode 100644 index 1664452..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/GetJoinInfoOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ebee0c4a9c390554e8802ed70662648f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/HasPresenceOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/HasPresenceOptions.cs deleted file mode 100644 index 2d1a04a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/HasPresenceOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Presence -{ - /// - /// Data for the function. - /// - public class HasPresenceOptions - { - /// - /// The Epic Online Services Account ID of the local, logged-in user making the request - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The Epic Online Services Account ID of the user whose cached presence data you want to locate - /// - public EpicAccountId TargetUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct HasPresenceOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public EpicAccountId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public void Set(HasPresenceOptions other) - { - if (other != null) - { - m_ApiVersion = PresenceInterface.HaspresenceApiLatest; - LocalUserId = other.LocalUserId; - TargetUserId = other.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as HasPresenceOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/HasPresenceOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/HasPresenceOptions.cs.meta deleted file mode 100644 index 5968d7c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/HasPresenceOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a04277eb7274e4d41b302e77abe13a42 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/Info.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/Info.cs deleted file mode 100644 index 04ffb2c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/Info.cs +++ /dev/null @@ -1,238 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Presence -{ - /// - /// All the known presence information for a specific user. This object must be released by calling . - /// - /// - /// - public class Info : ISettable - { - /// - /// The status of the user - /// - public Status Status { get; set; } - - /// - /// The Epic Online Services Account ID of the user - /// - public EpicAccountId UserId { get; set; } - - /// - /// The product ID that the user is logged in from - /// - public string ProductId { get; set; } - - /// - /// The version of the product the user is logged in from - /// - public string ProductVersion { get; set; } - - /// - /// The platform of that the user is logged in from - /// - public string Platform { get; set; } - - /// - /// The rich-text of the user - /// - public string RichText { get; set; } - - /// - /// The first data record, or NULL if RecordsCount is not at least 1 - /// - public DataRecord[] Records { get; set; } - - /// - /// The user-facing name for the product the user is logged in from - /// - public string ProductName { get; set; } - - internal void Set(InfoInternal? other) - { - if (other != null) - { - Status = other.Value.Status; - UserId = other.Value.UserId; - ProductId = other.Value.ProductId; - ProductVersion = other.Value.ProductVersion; - Platform = other.Value.Platform; - RichText = other.Value.RichText; - Records = other.Value.Records; - ProductName = other.Value.ProductName; - } - } - - public void Set(object other) - { - Set(other as InfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct InfoInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private Status m_Status; - private System.IntPtr m_UserId; - private System.IntPtr m_ProductId; - private System.IntPtr m_ProductVersion; - private System.IntPtr m_Platform; - private System.IntPtr m_RichText; - private int m_RecordsCount; - private System.IntPtr m_Records; - private System.IntPtr m_ProductName; - - public Status Status - { - get - { - return m_Status; - } - - set - { - m_Status = value; - } - } - - public EpicAccountId UserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_UserId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_UserId, value); - } - } - - public string ProductId - { - get - { - string value; - Helper.TryMarshalGet(m_ProductId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_ProductId, value); - } - } - - public string ProductVersion - { - get - { - string value; - Helper.TryMarshalGet(m_ProductVersion, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_ProductVersion, value); - } - } - - public string Platform - { - get - { - string value; - Helper.TryMarshalGet(m_Platform, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Platform, value); - } - } - - public string RichText - { - get - { - string value; - Helper.TryMarshalGet(m_RichText, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_RichText, value); - } - } - - public DataRecord[] Records - { - get - { - DataRecord[] value; - Helper.TryMarshalGet(m_Records, out value, m_RecordsCount); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Records, value, out m_RecordsCount); - } - } - - public string ProductName - { - get - { - string value; - Helper.TryMarshalGet(m_ProductName, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_ProductName, value); - } - } - - public void Set(Info other) - { - if (other != null) - { - m_ApiVersion = PresenceInterface.InfoApiLatest; - Status = other.Status; - UserId = other.UserId; - ProductId = other.ProductId; - ProductVersion = other.ProductVersion; - Platform = other.Platform; - RichText = other.RichText; - Records = other.Records; - ProductName = other.ProductName; - } - } - - public void Set(object other) - { - Set(other as Info); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_UserId); - Helper.TryMarshalDispose(ref m_ProductId); - Helper.TryMarshalDispose(ref m_ProductVersion); - Helper.TryMarshalDispose(ref m_Platform); - Helper.TryMarshalDispose(ref m_RichText); - Helper.TryMarshalDispose(ref m_Records); - Helper.TryMarshalDispose(ref m_ProductName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/Info.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/Info.cs.meta deleted file mode 100644 index 38867a2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/Info.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ee1a5dc44f3656946b317d4fc3052e9d -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/JoinGameAcceptedCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/JoinGameAcceptedCallbackInfo.cs deleted file mode 100644 index 837ae81..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/JoinGameAcceptedCallbackInfo.cs +++ /dev/null @@ -1,127 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Presence -{ - /// - /// Output parameters for the Function. - /// - public class JoinGameAcceptedCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The Join Info custom game-data string to use to join the target user. - /// Set to a null pointer to delete the value. - /// - public string JoinInfo { get; private set; } - - /// - /// The Epic Online Services Account ID of the user who accepted the invitation - /// - public EpicAccountId LocalUserId { get; private set; } - - /// - /// The Epic Online Services Account ID of the user who sent the invitation - /// - public EpicAccountId TargetUserId { get; private set; } - - /// - /// If the value is not then it must be passed back to the SDK using . - /// This should be done after attempting to join the game and either succeeding or failing to connect. - /// This is necessary to allow the Social Overlay UI to manage the `Join` button. - /// - public ulong UiEventId { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(JoinGameAcceptedCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - JoinInfo = other.Value.JoinInfo; - LocalUserId = other.Value.LocalUserId; - TargetUserId = other.Value.TargetUserId; - UiEventId = other.Value.UiEventId; - } - } - - public void Set(object other) - { - Set(other as JoinGameAcceptedCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct JoinGameAcceptedCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_JoinInfo; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - private ulong m_UiEventId; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public string JoinInfo - { - get - { - string value; - Helper.TryMarshalGet(m_JoinInfo, out value); - return value; - } - } - - public EpicAccountId LocalUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public EpicAccountId TargetUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_TargetUserId, out value); - return value; - } - } - - public ulong UiEventId - { - get - { - return m_UiEventId; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/JoinGameAcceptedCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/JoinGameAcceptedCallbackInfo.cs.meta deleted file mode 100644 index 4990b0c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/JoinGameAcceptedCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 5967c818dd6e0d34a809414195323fb4 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/OnJoinGameAcceptedCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/OnJoinGameAcceptedCallback.cs deleted file mode 100644 index 6169c0e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/OnJoinGameAcceptedCallback.cs +++ /dev/null @@ -1,17 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Presence -{ - /// - /// Function prototype definition for notifications that come from - /// - /// - /// A containing the output information and result - /// @note must be called with any valid UiEventId passed via the data. - /// - public delegate void OnJoinGameAcceptedCallback(JoinGameAcceptedCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnJoinGameAcceptedCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/OnJoinGameAcceptedCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/OnJoinGameAcceptedCallback.cs.meta deleted file mode 100644 index ec9442d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/OnJoinGameAcceptedCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b416a69446590a44685ef48766e4f2ba -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/OnPresenceChangedCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/OnPresenceChangedCallback.cs deleted file mode 100644 index b6f5255..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/OnPresenceChangedCallback.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Presence -{ - /// - /// Callback for information related to notifications from triggering. - /// - public delegate void OnPresenceChangedCallback(PresenceChangedCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnPresenceChangedCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/OnPresenceChangedCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/OnPresenceChangedCallback.cs.meta deleted file mode 100644 index c08ac59..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/OnPresenceChangedCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 49a584e62ebb688478bd1da28f77320b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/OnQueryPresenceCompleteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/OnQueryPresenceCompleteCallback.cs deleted file mode 100644 index fb1dc7a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/OnQueryPresenceCompleteCallback.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Presence -{ - /// - /// Callback for information related to finishing. - /// - public delegate void OnQueryPresenceCompleteCallback(QueryPresenceCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnQueryPresenceCompleteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/OnQueryPresenceCompleteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/OnQueryPresenceCompleteCallback.cs.meta deleted file mode 100644 index 7dcfb78..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/OnQueryPresenceCompleteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 31e7516920ec81c429d10082a1546333 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceChangedCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceChangedCallbackInfo.cs deleted file mode 100644 index 8102e75..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceChangedCallbackInfo.cs +++ /dev/null @@ -1,92 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Presence -{ - /// - /// Data containing which users presence has changed - /// - public class PresenceChangedCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Client-specified data passed into - /// - public object ClientData { get; private set; } - - /// - /// The Epic Online Services Account ID of the local user who is being informed for PresenceUserId's presence change - /// - public EpicAccountId LocalUserId { get; private set; } - - /// - /// The Epic Online Services Account ID of the user who had their presence changed - /// - public EpicAccountId PresenceUserId { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(PresenceChangedCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - PresenceUserId = other.Value.PresenceUserId; - } - } - - public void Set(object other) - { - Set(other as PresenceChangedCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct PresenceChangedCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_PresenceUserId; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public EpicAccountId LocalUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public EpicAccountId PresenceUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_PresenceUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceChangedCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceChangedCallbackInfo.cs.meta deleted file mode 100644 index 176c5e8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceChangedCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3e5e10a4e1d01e84aa817e2ce4873358 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceInterface.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceInterface.cs deleted file mode 100644 index 7e00aa9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceInterface.cs +++ /dev/null @@ -1,371 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Presence -{ - public sealed partial class PresenceInterface : Handle - { - public PresenceInterface() - { - } - - public PresenceInterface(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// The most recent version of the API. - /// - public const int AddnotifyjoingameacceptedApiLatest = 2; - - public const int AddnotifyonpresencechangedApiLatest = 1; - - public const int CopypresenceApiLatest = 2; - - public const int CreatepresencemodificationApiLatest = 1; - - /// - /// The maximum allowed length a data's key may be. This value is subject to change and data structures should be designed to allow for greater numbers than this. - /// - public const int DataMaxKeyLength = 64; - - /// - /// The maximum of allowed individual pieces of data a user may have. This value is subject to change and data structures should be designed to allow for greater - /// numbers than this. - /// - public const int DataMaxKeys = 32; - - /// - /// The maximum allowed length a data's value may be. This value is subject to change and data structures should be designed to allow for greater numbers than this. - /// - public const int DataMaxValueLength = 255; - - public const int DatarecordApiLatest = 1; - - /// - /// DEPRECATED! Use instead. - /// - public const int DeletedataApiLatest = PresenceModification.PresencemodificationDeletedataApiLatest; - - public const int GetjoininfoApiLatest = 1; - - public const int HaspresenceApiLatest = 1; - - public const int InfoApiLatest = 2; - - public const int QuerypresenceApiLatest = 1; - - /// - /// The maximum allowed length a user's rich text string may be. This value is subject to change and data structures should be designed to allow for greater numbers - /// than this. - /// - public const int RichTextMaxValueLength = 255; - - /// - /// DEPRECATED! Use instead. - /// - public const int SetdataApiLatest = PresenceModification.PresencemodificationSetdataApiLatest; - - public const int SetpresenceApiLatest = 1; - - /// - /// DEPRECATED! Use instead. - /// - public const int SetrawrichtextApiLatest = PresenceModification.PresencemodificationSetrawrichtextApiLatest; - - /// - /// DEPRECATED! Use instead. - /// - public const int SetstatusApiLatest = PresenceModification.PresencemodificationSetstatusApiLatest; - - /// - /// Register to receive notifications when a user accepts a join game option via the social overlay. - /// @note must call RemoveNotifyJoinGameAccepted to remove the notification - /// - /// Structure containing information about the request. - /// Arbitrary data that is passed back to you in the CompletionDelegate. - /// A callback that is fired when a a notification is received. - /// - /// handle representing the registered callback - /// - public ulong AddNotifyJoinGameAccepted(AddNotifyJoinGameAcceptedOptions options, object clientData, OnJoinGameAcceptedCallback notificationFn) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var notificationFnInternal = new OnJoinGameAcceptedCallbackInternal(OnJoinGameAcceptedCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - - var funcResult = Bindings.EOS_Presence_AddNotifyJoinGameAccepted(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Register to receive notifications when presence changes. If the returned NotificationId is valid, you must call RemoveNotifyOnPresenceChanged when you no longer wish to - /// have your NotificationHandler called - /// - /// - /// - /// Data the is returned to when NotificationHandler is invoked - /// The callback to be fired when a presence change occurs - /// - /// Notification ID representing the registered callback if successful, an invalid NotificationId if not - /// - public ulong AddNotifyOnPresenceChanged(AddNotifyOnPresenceChangedOptions options, object clientData, OnPresenceChangedCallback notificationHandler) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var notificationHandlerInternal = new OnPresenceChangedCallbackInternal(OnPresenceChangedCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, notificationHandler, notificationHandlerInternal); - - var funcResult = Bindings.EOS_Presence_AddNotifyOnPresenceChanged(InnerHandle, optionsAddress, clientDataAddress, notificationHandlerInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Get a user's cached presence object. If successful, this data must be released by calling - /// - /// - /// Object containing properties related to who is requesting presence and for what user - /// A pointer to a pointer of Presence Info. If the returned result is success, this will be set to data that must be later released, otherwise this will be set to NULL - /// - /// Success if we have cached data, or an error result if the request was invalid or we do not have cached data. - /// - public Result CopyPresence(CopyPresenceOptions options, out Info outPresence) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outPresenceAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Presence_CopyPresence(InnerHandle, optionsAddress, ref outPresenceAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outPresenceAddress, out outPresence)) - { - Bindings.EOS_Presence_Info_Release(outPresenceAddress); - } - - return funcResult; - } - - /// - /// Creates a presence modification handle. This handle can used to add multiple changes to your presence that can be applied with . - /// The resulting handle must be released by calling once it has been passed to . - /// - /// - /// - /// - /// - /// - /// - /// Object containing properties related to the user modifying their presence - /// Pointer to a Presence Modification Handle to be set if successful - /// - /// Success if we successfully created the Presence Modification Handle pointed at in OutPresenceModificationHandle, or an error result if the input data was invalid - /// - public Result CreatePresenceModification(CreatePresenceModificationOptions options, out PresenceModification outPresenceModificationHandle) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outPresenceModificationHandleAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Presence_CreatePresenceModification(InnerHandle, optionsAddress, ref outPresenceModificationHandleAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryMarshalGet(outPresenceModificationHandleAddress, out outPresenceModificationHandle); - - return funcResult; - } - - /// - /// Gets a join info custom game-data string for a specific user. This is a helper function for reading the presence data related to how a user can be joined. - /// Its meaning is entirely application dependent. - /// - /// This value will be valid only after a QueryPresence call has successfully completed. - /// - /// - /// Object containing an associated user - /// The buffer into which the character data should be written. The buffer must be long enough to hold a string of . - /// - /// Used as an input to define the OutBuffer length. - /// The input buffer should include enough space to be null-terminated. - /// When the function returns, this parameter will be filled with the length of the string copied into OutBuffer. - /// - /// - /// An that indicates whether the location string was copied into the OutBuffer. - /// if the information is available and passed out in OutBuffer - /// if you pass a null pointer for the out parameter - /// if there is user or the location string was not found. - /// - The OutBuffer is not large enough to receive the location string. InOutBufferLength contains the required minimum length to perform the operation successfully. - /// - public Result GetJoinInfo(GetJoinInfoOptions options, out string outBuffer) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - System.IntPtr outBufferAddress = System.IntPtr.Zero; - int inOutBufferLength = PresenceModification.PresencemodificationJoininfoMaxLength + 1; - Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength, out _); - - var funcResult = Bindings.EOS_Presence_GetJoinInfo(InnerHandle, optionsAddress, outBufferAddress, ref inOutBufferLength); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryMarshalGet(outBufferAddress, out outBuffer); - Helper.TryMarshalDispose(ref outBufferAddress); - - return funcResult; - } - - /// - /// Check if we already have presence for a user - /// - /// Object containing properties related to who is requesting presence and for what user - /// - /// true if we have presence for the requested user, or false if the request was invalid or we do not have cached data - /// - public bool HasPresence(HasPresenceOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Presence_HasPresence(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - bool funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Query a user's presence. This must complete successfully before CopyPresence will have valid results. If HasPresence returns true for a remote - /// user, this does not need to be called. - /// - /// Object containing properties related to who is querying presence and for what user - /// Optional pointer to help track this request, that is returned in the completion callback - /// Pointer to a function that handles receiving the completion information - public void QueryPresence(QueryPresenceOptions options, object clientData, OnQueryPresenceCompleteCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnQueryPresenceCompleteCallbackInternal(OnQueryPresenceCompleteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Presence_QueryPresence(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Unregister from receiving notifications when a user accepts a join game option via the social overlay. - /// - /// Handle representing the registered callback - public void RemoveNotifyJoinGameAccepted(ulong inId) - { - Helper.TryRemoveCallbackByNotificationId(inId); - - Bindings.EOS_Presence_RemoveNotifyJoinGameAccepted(InnerHandle, inId); - } - - /// - /// Unregister a previously bound notification handler from receiving presence update notifications - /// - /// The Notification ID representing the registered callback - public void RemoveNotifyOnPresenceChanged(ulong notificationId) - { - Helper.TryRemoveCallbackByNotificationId(notificationId); - - Bindings.EOS_Presence_RemoveNotifyOnPresenceChanged(InnerHandle, notificationId); - } - - /// - /// Sets your new presence with the data applied to a PresenceModificationHandle. The PresenceModificationHandle can be released safely after calling this function. - /// - /// - /// - /// Object containing a PresenceModificationHandle and associated user data - /// Optional pointer to help track this request, that is returned in the completion callback - /// Pointer to a function that handles receiving the completion information - public void SetPresence(SetPresenceOptions options, object clientData, SetPresenceCompleteCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new SetPresenceCompleteCallbackInternal(SetPresenceCompleteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Presence_SetPresence(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - [MonoPInvokeCallback(typeof(OnJoinGameAcceptedCallbackInternal))] - internal static void OnJoinGameAcceptedCallbackInternalImplementation(System.IntPtr data) - { - OnJoinGameAcceptedCallback callback; - JoinGameAcceptedCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnPresenceChangedCallbackInternal))] - internal static void OnPresenceChangedCallbackInternalImplementation(System.IntPtr data) - { - OnPresenceChangedCallback callback; - PresenceChangedCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnQueryPresenceCompleteCallbackInternal))] - internal static void OnQueryPresenceCompleteCallbackInternalImplementation(System.IntPtr data) - { - OnQueryPresenceCompleteCallback callback; - QueryPresenceCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(SetPresenceCompleteCallbackInternal))] - internal static void SetPresenceCompleteCallbackInternalImplementation(System.IntPtr data) - { - SetPresenceCompleteCallback callback; - SetPresenceCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceInterface.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceInterface.cs.meta deleted file mode 100644 index 747b2c3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a9b9f3ac747a9204899c99c7d559a9cb -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModification.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModification.cs deleted file mode 100644 index 86d977e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModification.cs +++ /dev/null @@ -1,160 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Presence -{ - public sealed partial class PresenceModification : Handle - { - public PresenceModification() - { - } - - public PresenceModification(System.IntPtr innerHandle) : base(innerHandle) - { - } - - public const int PresencemodificationDatarecordidApiLatest = 1; - - /// - /// Most recent version of the API. - /// - public const int PresencemodificationDeletedataApiLatest = 1; - - public const int PresencemodificationJoininfoMaxLength = PresenceInterface.DataMaxValueLength; - - /// - /// The most recent version of the API. - /// - public const int PresencemodificationSetdataApiLatest = 1; - - public const int PresencemodificationSetjoininfoApiLatest = 1; - - /// - /// The most recent version of the function. - /// - public const int PresencemodificationSetrawrichtextApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int PresencemodificationSetstatusApiLatest = 1; - - /// - /// Removes one or more rows of user-defined presence data for a local user. At least one DeleteDataInfo object - /// must be specified. - /// - /// - /// - /// - /// Object containing an array of new presence data. - /// - /// Success if modification was added successfully, otherwise an error code related to the problem - /// - public Result DeleteData(PresenceModificationDeleteDataOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_PresenceModification_DeleteData(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Release the memory associated with an handle. This must be called on Handles retrieved from . - /// This can be safely called on a NULL presence modification handle. This also may be safely called while a call to SetPresence is still pending. - /// - /// - /// The presence modification handle to release - public void Release() - { - Bindings.EOS_PresenceModification_Release(InnerHandle); - } - - /// - /// Modifies one or more rows of user-defined presence data for a local user. At least one InfoData object - /// must be specified. - /// - /// - /// - /// - /// Object containing an array of new presence data. - /// - /// Success if modification was added successfully, otherwise an error code related to the problem - /// - public Result SetData(PresenceModificationSetDataOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_PresenceModification_SetData(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Sets your new join info custom game-data string. This is a helper function for reading the presence data related to how a user can be joined. - /// Its meaning is entirely application dependent. - /// - /// - /// Object containing a join info string and associated user data - /// - /// Success if modification was added successfully, otherwise an error code related to the problem - /// - public Result SetJoinInfo(PresenceModificationSetJoinInfoOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_PresenceModification_SetJoinInfo(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Modifies a user's Rich Presence string to a new state. This is the exact value other users will see - /// when they query the local user's presence. - /// - /// - /// Object containing properties related to setting a user's RichText string - /// - /// Success if modification was added successfully, otherwise an error code related to the problem - /// - public Result SetRawRichText(PresenceModificationSetRawRichTextOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_PresenceModification_SetRawRichText(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Modifies a user's online status to be the new state. - /// - /// Object containing properties related to setting a user's Status - /// - /// Success if modification was added successfully, otherwise an error code related to the problem - /// - public Result SetStatus(PresenceModificationSetStatusOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_PresenceModification_SetStatus(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModification.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModification.cs.meta deleted file mode 100644 index 1d68af2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModification.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 7a51a418ff6424d4dacfb470c7d0867a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationDataRecordId.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationDataRecordId.cs deleted file mode 100644 index e3fc110..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationDataRecordId.cs +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Presence -{ - /// - /// Data for identifying which data records should be deleted. - /// - public class PresenceModificationDataRecordId : ISettable - { - /// - /// The key to be deleted from the data record - /// - public string Key { get; set; } - - internal void Set(PresenceModificationDataRecordIdInternal? other) - { - if (other != null) - { - Key = other.Value.Key; - } - } - - public void Set(object other) - { - Set(other as PresenceModificationDataRecordIdInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct PresenceModificationDataRecordIdInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Key; - - public string Key - { - get - { - string value; - Helper.TryMarshalGet(m_Key, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Key, value); - } - } - - public void Set(PresenceModificationDataRecordId other) - { - if (other != null) - { - m_ApiVersion = PresenceModification.PresencemodificationDatarecordidApiLatest; - Key = other.Key; - } - } - - public void Set(object other) - { - Set(other as PresenceModificationDataRecordId); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Key); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationDataRecordId.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationDataRecordId.cs.meta deleted file mode 100644 index db9d8b2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationDataRecordId.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e40880fb9c50deb4bae3e66cf34ef6f7 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationDeleteDataOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationDeleteDataOptions.cs deleted file mode 100644 index 194c2aa..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationDeleteDataOptions.cs +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Presence -{ - /// - /// Data for the function. - /// - public class PresenceModificationDeleteDataOptions - { - /// - /// The pointer to start of a sequential array - /// - public PresenceModificationDataRecordId[] Records { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct PresenceModificationDeleteDataOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private int m_RecordsCount; - private System.IntPtr m_Records; - - public PresenceModificationDataRecordId[] Records - { - set - { - Helper.TryMarshalSet(ref m_Records, value, out m_RecordsCount); - } - } - - public void Set(PresenceModificationDeleteDataOptions other) - { - if (other != null) - { - m_ApiVersion = PresenceModification.PresencemodificationDeletedataApiLatest; - Records = other.Records; - } - } - - public void Set(object other) - { - Set(other as PresenceModificationDeleteDataOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Records); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationDeleteDataOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationDeleteDataOptions.cs.meta deleted file mode 100644 index 56c2a62..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationDeleteDataOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c8bdfb6a79beaf748b362a11d222b43c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationSetDataOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationSetDataOptions.cs deleted file mode 100644 index 1207c87..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationSetDataOptions.cs +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Presence -{ - /// - /// Data for the function. - /// - public class PresenceModificationSetDataOptions - { - /// - /// The pointer to start of a sequential array of Presence DataRecords - /// - public DataRecord[] Records { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct PresenceModificationSetDataOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private int m_RecordsCount; - private System.IntPtr m_Records; - - public DataRecord[] Records - { - set - { - Helper.TryMarshalSet(ref m_Records, value, out m_RecordsCount); - } - } - - public void Set(PresenceModificationSetDataOptions other) - { - if (other != null) - { - m_ApiVersion = PresenceModification.PresencemodificationSetdataApiLatest; - Records = other.Records; - } - } - - public void Set(object other) - { - Set(other as PresenceModificationSetDataOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Records); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationSetDataOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationSetDataOptions.cs.meta deleted file mode 100644 index 4a18d8c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationSetDataOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c9b6aff542569a94a874a8dbe813ebe4 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationSetJoinInfoOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationSetJoinInfoOptions.cs deleted file mode 100644 index 4797f3e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationSetJoinInfoOptions.cs +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Presence -{ - /// - /// Data for the function. - /// - public class PresenceModificationSetJoinInfoOptions - { - /// - /// The string which will be advertised as this player's join info. - /// An application is expected to freely define the meaning of this string to use for connecting to an active game session. - /// The string should not exceed in length. - /// This affects the ability of the Social Overlay to show game related actions to take in the player's social graph. - /// - /// @note The Social Overlay can handle only one of the following three options at a time: - /// using the bPresenceEnabled flags within the Sessions interface - /// using the bPresenceEnabled flags within the Lobby interface - /// using - /// - /// - /// - /// - /// - public string JoinInfo { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct PresenceModificationSetJoinInfoOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_JoinInfo; - - public string JoinInfo - { - set - { - Helper.TryMarshalSet(ref m_JoinInfo, value); - } - } - - public void Set(PresenceModificationSetJoinInfoOptions other) - { - if (other != null) - { - m_ApiVersion = PresenceModification.PresencemodificationSetjoininfoApiLatest; - JoinInfo = other.JoinInfo; - } - } - - public void Set(object other) - { - Set(other as PresenceModificationSetJoinInfoOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_JoinInfo); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationSetJoinInfoOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationSetJoinInfoOptions.cs.meta deleted file mode 100644 index 12dca5f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationSetJoinInfoOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a945badf5403eae46a9f22d9ce5d239c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationSetRawRichTextOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationSetRawRichTextOptions.cs deleted file mode 100644 index ae65e1e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationSetRawRichTextOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Presence -{ - /// - /// Data for the API. - /// - public class PresenceModificationSetRawRichTextOptions - { - /// - /// The status of the user - /// - public string RichText { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct PresenceModificationSetRawRichTextOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_RichText; - - public string RichText - { - set - { - Helper.TryMarshalSet(ref m_RichText, value); - } - } - - public void Set(PresenceModificationSetRawRichTextOptions other) - { - if (other != null) - { - m_ApiVersion = PresenceModification.PresencemodificationSetrawrichtextApiLatest; - RichText = other.RichText; - } - } - - public void Set(object other) - { - Set(other as PresenceModificationSetRawRichTextOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_RichText); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationSetRawRichTextOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationSetRawRichTextOptions.cs.meta deleted file mode 100644 index 3e01400..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationSetRawRichTextOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 992cc007172c4bb4fbd56a12ad40b68a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationSetStatusOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationSetStatusOptions.cs deleted file mode 100644 index c98d2e1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationSetStatusOptions.cs +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Presence -{ - /// - /// Data for the function. - /// - public class PresenceModificationSetStatusOptions - { - /// - /// The status of the user - /// - public Status Status { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct PresenceModificationSetStatusOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private Status m_Status; - - public Status Status - { - set - { - m_Status = value; - } - } - - public void Set(PresenceModificationSetStatusOptions other) - { - if (other != null) - { - m_ApiVersion = PresenceModification.PresencemodificationSetstatusApiLatest; - Status = other.Status; - } - } - - public void Set(object other) - { - Set(other as PresenceModificationSetStatusOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationSetStatusOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationSetStatusOptions.cs.meta deleted file mode 100644 index 965af09..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/PresenceModificationSetStatusOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9a388044cd14d4a4099fe12809fda19d -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/QueryPresenceCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/QueryPresenceCallbackInfo.cs deleted file mode 100644 index 47ce477..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/QueryPresenceCallbackInfo.cs +++ /dev/null @@ -1,107 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Presence -{ - /// - /// The result meta-data for a presence query. - /// - public class QueryPresenceCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Result code for the operation. is returned for a successful query, other codes indicate an error - /// - public Result ResultCode { get; private set; } - - /// - /// Client-specified data passed into - /// - public object ClientData { get; private set; } - - /// - /// The Epic Online Services Account ID of the local user who made this request - /// - public EpicAccountId LocalUserId { get; private set; } - - /// - /// The Epic Online Services Account ID of the user whose presence was potentially queried - /// - public EpicAccountId TargetUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(QueryPresenceCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - TargetUserId = other.Value.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as QueryPresenceCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryPresenceCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public EpicAccountId LocalUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public EpicAccountId TargetUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_TargetUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/QueryPresenceCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/QueryPresenceCallbackInfo.cs.meta deleted file mode 100644 index 8583351..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/QueryPresenceCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 82484530c01cb3d489bf7a526d1f280d -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/QueryPresenceOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/QueryPresenceOptions.cs deleted file mode 100644 index 921020b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/QueryPresenceOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Presence -{ - /// - /// Data for the function - /// - public class QueryPresenceOptions - { - /// - /// The Epic Online Services Account ID of the local, logged-in user making the request - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The Epic Online Services Account ID of the user whose presence data you want to retrieve; this value must be either the user making the request, or a friend of that user - /// - public EpicAccountId TargetUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryPresenceOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public EpicAccountId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public void Set(QueryPresenceOptions other) - { - if (other != null) - { - m_ApiVersion = PresenceInterface.QuerypresenceApiLatest; - LocalUserId = other.LocalUserId; - TargetUserId = other.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as QueryPresenceOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/QueryPresenceOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/QueryPresenceOptions.cs.meta deleted file mode 100644 index 37949a6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/QueryPresenceOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0b5f98f93f833cf4d9a52763e78daa5c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/SetPresenceCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/SetPresenceCallbackInfo.cs deleted file mode 100644 index 43ab514..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/SetPresenceCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Presence -{ - /// - /// The result meta-data from setting a user's presence. - /// - public class SetPresenceCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Result code for the operation. is returned if presence was successfully set, other codes indicate an error - /// - public Result ResultCode { get; private set; } - - /// - /// Client-specified data passed into - /// - public object ClientData { get; private set; } - - /// - /// The Epic Online Services Account ID of the local user that had their presence set - /// - public EpicAccountId LocalUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(SetPresenceCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as SetPresenceCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SetPresenceCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public EpicAccountId LocalUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/SetPresenceCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/SetPresenceCallbackInfo.cs.meta deleted file mode 100644 index 7d1b086..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/SetPresenceCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 627caa8447847d844af11490cad1a4db -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/SetPresenceCompleteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/SetPresenceCompleteCallback.cs deleted file mode 100644 index b99a527..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/SetPresenceCompleteCallback.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Presence -{ - /// - /// Callback for information related to finishing. - /// - public delegate void SetPresenceCompleteCallback(SetPresenceCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void SetPresenceCompleteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/SetPresenceCompleteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/SetPresenceCompleteCallback.cs.meta deleted file mode 100644 index 48079ad..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/SetPresenceCompleteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 619c81887962c5f4b81b553e6301165e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/SetPresenceOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/SetPresenceOptions.cs deleted file mode 100644 index da798da..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/SetPresenceOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Presence -{ - /// - /// Data for the function. - /// - public class SetPresenceOptions - { - /// - /// The Epic Online Services Account ID of the local user's Epic Online Services Account ID - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The handle to the presence update - /// - public PresenceModification PresenceModificationHandle { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SetPresenceOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_PresenceModificationHandle; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public PresenceModification PresenceModificationHandle - { - set - { - Helper.TryMarshalSet(ref m_PresenceModificationHandle, value); - } - } - - public void Set(SetPresenceOptions other) - { - if (other != null) - { - m_ApiVersion = PresenceInterface.SetpresenceApiLatest; - LocalUserId = other.LocalUserId; - PresenceModificationHandle = other.PresenceModificationHandle; - } - } - - public void Set(object other) - { - Set(other as SetPresenceOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_PresenceModificationHandle); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/SetPresenceOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/SetPresenceOptions.cs.meta deleted file mode 100644 index 21eb435..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/SetPresenceOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 7bf18ac02446b2640a72b1c86cc43792 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/Status.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/Status.cs deleted file mode 100644 index dff2a42..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/Status.cs +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Presence -{ - /// - /// Presence Status states of a user - /// - /// - /// - public enum Status : int - { - /// - /// The status of the account is offline or not known - /// - Offline = 0, - /// - /// The status of the account is online - /// - Online = 1, - /// - /// The status of the account is away - /// - Away = 2, - /// - /// The status of the account is away, and has been away for a while - /// - ExtendedAway = 3, - /// - /// The status of the account is do-not-disturb - /// - DoNotDisturb = 4 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/Status.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/Status.cs.meta deleted file mode 100644 index 10d05ce..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Presence/Status.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 8f5eee0491024d24fbc4a48339d67f4d -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/ProductUserId.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/ProductUserId.cs deleted file mode 100644 index 3e76be0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/ProductUserId.cs +++ /dev/null @@ -1,99 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices -{ - public sealed partial class ProductUserId : Handle - { - public ProductUserId() - { - } - - public ProductUserId(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// A character buffer of this size is large enough to fit a successful output of . This length does not include the null-terminator. - /// - public const int ProductuseridMaxLength = 128; - - /// - /// Retrieve an from a raw string representing an Epic Online Services Product User ID. The input string must be null-terminated. - /// NOTE: There is no validation on the string format, this should only be used with values serialized from legitimate sources such as - /// - /// The stringified product user ID for which to retrieve the Epic Online Services Product User ID - /// - /// The that corresponds to the ProductUserIdString - /// - public static ProductUserId FromString(string productUserIdString) - { - var productUserIdStringAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref productUserIdStringAddress, productUserIdString); - - var funcResult = Bindings.EOS_ProductUserId_FromString(productUserIdStringAddress); - - Helper.TryMarshalDispose(ref productUserIdStringAddress); - - ProductUserId funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Check whether or not the given account unique ID is considered valid - /// NOTE: This will return true for any created with as there is no validation - /// - /// The Product User ID to check for validity - /// - /// true if the is valid, otherwise false - /// - public bool IsValid() - { - var funcResult = Bindings.EOS_ProductUserId_IsValid(InnerHandle); - - bool funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Retrieve a null-terminated stringified Product User ID from an . This is useful for replication of Product User IDs in multiplayer games. - /// This string will be no larger than + 1 and will only contain UTF8-encoded printable characters (excluding the null-terminator). - /// - /// The Product User ID for which to retrieve the stringified version. - /// The buffer into which the character data should be written - /// - /// The size of the OutBuffer in characters. - /// The input buffer should include enough space to be null-terminated. - /// When the function returns, this parameter will be filled with the length of the string copied into OutBuffer including the null termination character. - /// - /// - /// An that indicates whether the Product User ID string was copied into the OutBuffer. - /// - The OutBuffer was filled, and InOutBufferLength contains the number of characters copied into OutBuffer including the null terminator. - /// - Either OutBuffer or InOutBufferLength were passed as NULL parameters. - /// - The AccountId is invalid and cannot be stringified. - /// - The OutBuffer is not large enough to receive the Product User ID string. InOutBufferLength contains the required minimum length to perform the operation successfully. - /// - public Result ToString(out string outBuffer) - { - System.IntPtr outBufferAddress = System.IntPtr.Zero; - int inOutBufferLength = ProductuseridMaxLength + 1; - Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength, out _); - - var funcResult = Bindings.EOS_ProductUserId_ToString(InnerHandle, outBufferAddress, ref inOutBufferLength); - - Helper.TryMarshalGet(outBufferAddress, out outBuffer); - Helper.TryMarshalDispose(ref outBufferAddress); - - return funcResult; - } - - public override string ToString() - { - string funcResult; - ToString(out funcResult); - return funcResult; - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/ProductUserId.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/ProductUserId.cs.meta deleted file mode 100644 index 33e3e82..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/ProductUserId.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 47afbf867286d31488852cef0923a85a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC.meta deleted file mode 100644 index 5ef7577..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 4a056fa51a4eeaa458c7efeabb36a484 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/AddNotifyDisconnectedOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/AddNotifyDisconnectedOptions.cs deleted file mode 100644 index 300fdfa..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/AddNotifyDisconnectedOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTC -{ - /// - /// This struct is used to call . - /// - public class AddNotifyDisconnectedOptions - { - /// - /// The Product User ID of the user trying to request this operation. - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The room this event is registered on. - /// - public string RoomName { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyDisconnectedOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RoomName; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string RoomName - { - set - { - Helper.TryMarshalSet(ref m_RoomName, value); - } - } - - public void Set(AddNotifyDisconnectedOptions other) - { - if (other != null) - { - m_ApiVersion = RTCInterface.AddnotifydisconnectedApiLatest; - LocalUserId = other.LocalUserId; - RoomName = other.RoomName; - } - } - - public void Set(object other) - { - Set(other as AddNotifyDisconnectedOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_RoomName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/AddNotifyDisconnectedOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/AddNotifyDisconnectedOptions.cs.meta deleted file mode 100644 index 4ec3df7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/AddNotifyDisconnectedOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f2a54c8ac62785a408cdfe3ed7fe76e4 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/AddNotifyParticipantStatusChangedOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/AddNotifyParticipantStatusChangedOptions.cs deleted file mode 100644 index 6b09455..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/AddNotifyParticipantStatusChangedOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTC -{ - /// - /// This struct is used to call . - /// - public class AddNotifyParticipantStatusChangedOptions - { - /// - /// The Product User ID of the user trying to request this operation. - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The room this event is registered on. - /// - public string RoomName { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyParticipantStatusChangedOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RoomName; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string RoomName - { - set - { - Helper.TryMarshalSet(ref m_RoomName, value); - } - } - - public void Set(AddNotifyParticipantStatusChangedOptions other) - { - if (other != null) - { - m_ApiVersion = RTCInterface.AddnotifyparticipantstatuschangedApiLatest; - LocalUserId = other.LocalUserId; - RoomName = other.RoomName; - } - } - - public void Set(object other) - { - Set(other as AddNotifyParticipantStatusChangedOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_RoomName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/AddNotifyParticipantStatusChangedOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/AddNotifyParticipantStatusChangedOptions.cs.meta deleted file mode 100644 index 7616eb2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/AddNotifyParticipantStatusChangedOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 1ad2047545430f444ab16063e609362a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/BlockParticipantCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/BlockParticipantCallbackInfo.cs deleted file mode 100644 index 9fddc18..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/BlockParticipantCallbackInfo.cs +++ /dev/null @@ -1,143 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTC -{ - /// - /// This struct is passed in with a call to . - /// - public class BlockParticipantCallbackInfo : ICallbackInfo, ISettable - { - /// - /// This returns: - /// if the channel was successfully blocked. - /// otherwise. - /// - public Result ResultCode { get; private set; } - - /// - /// Client-specified data passed into . - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the user who initiated this request. - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The room the users should be blocked on. - /// - public string RoomName { get; private set; } - - /// - /// The Product User ID of the participant being blocked - /// - public ProductUserId ParticipantId { get; private set; } - - /// - /// The block state that should have been set - /// - public bool Blocked { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(BlockParticipantCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - RoomName = other.Value.RoomName; - ParticipantId = other.Value.ParticipantId; - Blocked = other.Value.Blocked; - } - } - - public void Set(object other) - { - Set(other as BlockParticipantCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct BlockParticipantCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RoomName; - private System.IntPtr m_ParticipantId; - private int m_Blocked; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public string RoomName - { - get - { - string value; - Helper.TryMarshalGet(m_RoomName, out value); - return value; - } - } - - public ProductUserId ParticipantId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_ParticipantId, out value); - return value; - } - } - - public bool Blocked - { - get - { - bool value; - Helper.TryMarshalGet(m_Blocked, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/BlockParticipantCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/BlockParticipantCallbackInfo.cs.meta deleted file mode 100644 index 9a564eb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/BlockParticipantCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 739bb360d284a2d45aa6dbadfabaf09b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/BlockParticipantOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/BlockParticipantOptions.cs deleted file mode 100644 index 0afc0f5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/BlockParticipantOptions.cs +++ /dev/null @@ -1,97 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTC -{ - /// - /// This struct is passed in with a call to . - /// - public class BlockParticipantOptions - { - /// - /// Product User ID of the user trying to request this operation. - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The room the users should be blocked on. - /// - public string RoomName { get; set; } - - /// - /// Product User ID of the participant to block - /// - public ProductUserId ParticipantId { get; set; } - - /// - /// Block or unblock the participant - /// - public bool Blocked { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct BlockParticipantOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RoomName; - private System.IntPtr m_ParticipantId; - private int m_Blocked; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string RoomName - { - set - { - Helper.TryMarshalSet(ref m_RoomName, value); - } - } - - public ProductUserId ParticipantId - { - set - { - Helper.TryMarshalSet(ref m_ParticipantId, value); - } - } - - public bool Blocked - { - set - { - Helper.TryMarshalSet(ref m_Blocked, value); - } - } - - public void Set(BlockParticipantOptions other) - { - if (other != null) - { - m_ApiVersion = RTCInterface.BlockparticipantApiLatest; - LocalUserId = other.LocalUserId; - RoomName = other.RoomName; - ParticipantId = other.ParticipantId; - Blocked = other.Blocked; - } - } - - public void Set(object other) - { - Set(other as BlockParticipantOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_RoomName); - Helper.TryMarshalDispose(ref m_ParticipantId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/BlockParticipantOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/BlockParticipantOptions.cs.meta deleted file mode 100644 index fca424d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/BlockParticipantOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 2c585c2c02be9be4aa87d483f872ccde -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/DisconnectedCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/DisconnectedCallbackInfo.cs deleted file mode 100644 index f3c7f6d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/DisconnectedCallbackInfo.cs +++ /dev/null @@ -1,112 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTC -{ - /// - /// This struct is passed in with a call to registered event. - /// - public class DisconnectedCallbackInfo : ICallbackInfo, ISettable - { - /// - /// This returns: - /// The room was left cleanly. - /// : There was a network issue connecting to the server (retryable). - /// : The user has been kicked by the server (retryable). - /// : A known error occurred during interaction with the server (retryable). - /// Unexpected error (retryable). - /// - public Result ResultCode { get; private set; } - - /// - /// Client-specified data passed into . - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the user who initiated this request. - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The room associated with this event. - /// - public string RoomName { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(DisconnectedCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - RoomName = other.Value.RoomName; - } - } - - public void Set(object other) - { - Set(other as DisconnectedCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct DisconnectedCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RoomName; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public string RoomName - { - get - { - string value; - Helper.TryMarshalGet(m_RoomName, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/DisconnectedCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/DisconnectedCallbackInfo.cs.meta deleted file mode 100644 index 42a2e74..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/DisconnectedCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 834ab271cf7d5bf4b9f4bb4e914cb2f5 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/JoinRoomCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/JoinRoomCallbackInfo.cs deleted file mode 100644 index 796784c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/JoinRoomCallbackInfo.cs +++ /dev/null @@ -1,113 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTC -{ - /// - /// This struct is passed in with a call to . - /// - public class JoinRoomCallbackInfo : ICallbackInfo, ISettable - { - /// - /// This returns: - /// if the channel was successfully joined. - /// : unable to connect to RTC servers (retryable). - /// : if the token is invalid (not retryable). - /// : if the room cannot accept more participants (not retryable). - /// : if the room name belongs to the Lobby voice system (not retryable). - /// otherwise (retryable). - /// - public Result ResultCode { get; private set; } - - /// - /// Client-specified data passed into . - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the user who initiated this request. - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The room the user was trying to join. - /// - public string RoomName { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(JoinRoomCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - RoomName = other.Value.RoomName; - } - } - - public void Set(object other) - { - Set(other as JoinRoomCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct JoinRoomCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RoomName; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public string RoomName - { - get - { - string value; - Helper.TryMarshalGet(m_RoomName, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/JoinRoomCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/JoinRoomCallbackInfo.cs.meta deleted file mode 100644 index b9b0af2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/JoinRoomCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: bcdbfd16f9123dc4cb4cad960e768ed6 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/JoinRoomFlags.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/JoinRoomFlags.cs deleted file mode 100644 index 3a6fcb1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/JoinRoomFlags.cs +++ /dev/null @@ -1,18 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTC -{ - [System.Flags] - public enum JoinRoomFlags : uint - { - None = 0x0, - /// - /// Enables echo mode. - /// This can be used during development to have the server send your voice back to you so you don't need 2 clients to test - /// if voice is being sent and received. - /// ::Flags - /// - EnableEcho = 0x01 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/JoinRoomFlags.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/JoinRoomFlags.cs.meta deleted file mode 100644 index 513ae46..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/JoinRoomFlags.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 30ac5acbc95b25546b15c218546e6925 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/JoinRoomOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/JoinRoomOptions.cs deleted file mode 100644 index f62c132..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/JoinRoomOptions.cs +++ /dev/null @@ -1,161 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTC -{ - /// - /// This struct is used to call . - /// - public class JoinRoomOptions - { - /// - /// The product user id of the user trying to request this operation. - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The room the user would like to join. - /// - public string RoomName { get; set; } - - /// - /// The room the user would like to join. - /// - public string ClientBaseUrl { get; set; } - - /// - /// Authorization credential token to join the room. - /// - public string ParticipantToken { get; set; } - - /// - /// The participant id used to join the room. If set to NULL the LocalUserId will be used instead. - /// - public ProductUserId ParticipantId { get; set; } - - /// - /// Join room flags, e.g. . This is a bitwise-or union of the defined flags. - /// - public JoinRoomFlags Flags { get; set; } - - /// - /// Enable or disable Manual Audio Input. If manual audio input is enabled audio recording is not started and the audio - /// buffers must be passed manually using . - /// - public bool ManualAudioInputEnabled { get; set; } - - /// - /// Enable or disable Manual Audio Output. If manual audio output is enabled audio rendering is not started and the audio - /// buffers must be received with and rendered manually. - /// - public bool ManualAudioOutputEnabled { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct JoinRoomOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RoomName; - private System.IntPtr m_ClientBaseUrl; - private System.IntPtr m_ParticipantToken; - private System.IntPtr m_ParticipantId; - private JoinRoomFlags m_Flags; - private int m_ManualAudioInputEnabled; - private int m_ManualAudioOutputEnabled; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string RoomName - { - set - { - Helper.TryMarshalSet(ref m_RoomName, value); - } - } - - public string ClientBaseUrl - { - set - { - Helper.TryMarshalSet(ref m_ClientBaseUrl, value); - } - } - - public string ParticipantToken - { - set - { - Helper.TryMarshalSet(ref m_ParticipantToken, value); - } - } - - public ProductUserId ParticipantId - { - set - { - Helper.TryMarshalSet(ref m_ParticipantId, value); - } - } - - public JoinRoomFlags Flags - { - set - { - m_Flags = value; - } - } - - public bool ManualAudioInputEnabled - { - set - { - Helper.TryMarshalSet(ref m_ManualAudioInputEnabled, value); - } - } - - public bool ManualAudioOutputEnabled - { - set - { - Helper.TryMarshalSet(ref m_ManualAudioOutputEnabled, value); - } - } - - public void Set(JoinRoomOptions other) - { - if (other != null) - { - m_ApiVersion = RTCInterface.JoinroomApiLatest; - LocalUserId = other.LocalUserId; - RoomName = other.RoomName; - ClientBaseUrl = other.ClientBaseUrl; - ParticipantToken = other.ParticipantToken; - ParticipantId = other.ParticipantId; - Flags = other.Flags; - ManualAudioInputEnabled = other.ManualAudioInputEnabled; - ManualAudioOutputEnabled = other.ManualAudioOutputEnabled; - } - } - - public void Set(object other) - { - Set(other as JoinRoomOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_RoomName); - Helper.TryMarshalDispose(ref m_ClientBaseUrl); - Helper.TryMarshalDispose(ref m_ParticipantToken); - Helper.TryMarshalDispose(ref m_ParticipantId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/JoinRoomOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/JoinRoomOptions.cs.meta deleted file mode 100644 index 330922b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/JoinRoomOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d011e8b1453d4ba4187fd8d570333360 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/LeaveRoomCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/LeaveRoomCallbackInfo.cs deleted file mode 100644 index 579f589..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/LeaveRoomCallbackInfo.cs +++ /dev/null @@ -1,110 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTC -{ - /// - /// This struct is passed in with a call to . - /// - public class LeaveRoomCallbackInfo : ICallbackInfo, ISettable - { - /// - /// This returns: - /// if the channel was successfully left. - /// if the room name belongs to the Lobby voice system. - /// otherwise. - /// - public Result ResultCode { get; private set; } - - /// - /// Client-specified data passed into . - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the user who initiated this request. - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The room the user was trying to leave. - /// - public string RoomName { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(LeaveRoomCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - RoomName = other.Value.RoomName; - } - } - - public void Set(object other) - { - Set(other as LeaveRoomCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LeaveRoomCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RoomName; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public string RoomName - { - get - { - string value; - Helper.TryMarshalGet(m_RoomName, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/LeaveRoomCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/LeaveRoomCallbackInfo.cs.meta deleted file mode 100644 index 4acdd1e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/LeaveRoomCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a36a534259d3cfe4d959068a2748623c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/LeaveRoomOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/LeaveRoomOptions.cs deleted file mode 100644 index 9f7ed17..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/LeaveRoomOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTC -{ - /// - /// This struct is used to call . - /// - public class LeaveRoomOptions - { - /// - /// Product User ID of the user requesting to leave the room - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The room to leave. - /// - public string RoomName { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct LeaveRoomOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RoomName; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string RoomName - { - set - { - Helper.TryMarshalSet(ref m_RoomName, value); - } - } - - public void Set(LeaveRoomOptions other) - { - if (other != null) - { - m_ApiVersion = RTCInterface.LeaveroomApiLatest; - LocalUserId = other.LocalUserId; - RoomName = other.RoomName; - } - } - - public void Set(object other) - { - Set(other as LeaveRoomOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_RoomName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/LeaveRoomOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/LeaveRoomOptions.cs.meta deleted file mode 100644 index 5050024..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/LeaveRoomOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: dd8c59e6e1e50be4eac28d2c3a71125b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/OnBlockParticipantCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/OnBlockParticipantCallback.cs deleted file mode 100644 index e429550..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/OnBlockParticipantCallback.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTC -{ - /// - /// Callback for completion of block participants request. - /// - public delegate void OnBlockParticipantCallback(BlockParticipantCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnBlockParticipantCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/OnBlockParticipantCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/OnBlockParticipantCallback.cs.meta deleted file mode 100644 index 846533a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/OnBlockParticipantCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3f5ae8a07b291e34a838fa35ed845be0 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/OnDisconnectedCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/OnDisconnectedCallback.cs deleted file mode 100644 index dd26ff8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/OnDisconnectedCallback.cs +++ /dev/null @@ -1,10 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTC -{ - public delegate void OnDisconnectedCallback(DisconnectedCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnDisconnectedCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/OnDisconnectedCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/OnDisconnectedCallback.cs.meta deleted file mode 100644 index dbcf4e2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/OnDisconnectedCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c42be3daadb7b1143ba3af3f34454b27 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/OnJoinRoomCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/OnJoinRoomCallback.cs deleted file mode 100644 index 6507d32..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/OnJoinRoomCallback.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTC -{ - /// - /// Callback for completion of room join request. - /// - public delegate void OnJoinRoomCallback(JoinRoomCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnJoinRoomCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/OnJoinRoomCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/OnJoinRoomCallback.cs.meta deleted file mode 100644 index 6bc7d84..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/OnJoinRoomCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: cd256147f3f0f92478b23af03922955d -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/OnLeaveRoomCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/OnLeaveRoomCallback.cs deleted file mode 100644 index 79250da..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/OnLeaveRoomCallback.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTC -{ - /// - /// Callback for completion of room leave request. - /// - public delegate void OnLeaveRoomCallback(LeaveRoomCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnLeaveRoomCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/OnLeaveRoomCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/OnLeaveRoomCallback.cs.meta deleted file mode 100644 index c0954ef..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/OnLeaveRoomCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3d77a26c2dfb2bc4295a6b5a2a6eac6a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/OnParticipantStatusChangedCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/OnParticipantStatusChangedCallback.cs deleted file mode 100644 index fa50902..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/OnParticipantStatusChangedCallback.cs +++ /dev/null @@ -1,10 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTC -{ - public delegate void OnParticipantStatusChangedCallback(ParticipantStatusChangedCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnParticipantStatusChangedCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/OnParticipantStatusChangedCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/OnParticipantStatusChangedCallback.cs.meta deleted file mode 100644 index edc55e2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/OnParticipantStatusChangedCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c0b553c9a575b7d4fb84629d0aa515f8 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/ParticipantMetadata.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/ParticipantMetadata.cs deleted file mode 100644 index d273883..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/ParticipantMetadata.cs +++ /dev/null @@ -1,94 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTC -{ - /// - /// This struct is used to get information about a specific participant metadata item. - /// - public class ParticipantMetadata : ISettable - { - /// - /// The unique key of this metadata item. The max size of the string is . - /// - public string Key { get; set; } - - /// - /// The value of this metadata item. The max size of the string is . - /// - public string Value { get; set; } - - internal void Set(ParticipantMetadataInternal? other) - { - if (other != null) - { - Key = other.Value.Key; - Value = other.Value.Value; - } - } - - public void Set(object other) - { - Set(other as ParticipantMetadataInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct ParticipantMetadataInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Key; - private System.IntPtr m_Value; - - public string Key - { - get - { - string value; - Helper.TryMarshalGet(m_Key, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Key, value); - } - } - - public string Value - { - get - { - string value; - Helper.TryMarshalGet(m_Value, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Value, value); - } - } - - public void Set(ParticipantMetadata other) - { - if (other != null) - { - m_ApiVersion = RTCInterface.ParticipantmetadataApiLatest; - Key = other.Key; - Value = other.Value; - } - } - - public void Set(object other) - { - Set(other as ParticipantMetadata); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Key); - Helper.TryMarshalDispose(ref m_Value); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/ParticipantMetadata.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/ParticipantMetadata.cs.meta deleted file mode 100644 index 22b1706..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/ParticipantMetadata.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 534b67119a9a0cb40b43391372345ac2 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/ParticipantStatusChangedCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/ParticipantStatusChangedCallbackInfo.cs deleted file mode 100644 index f2756d8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/ParticipantStatusChangedCallbackInfo.cs +++ /dev/null @@ -1,143 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTC -{ - /// - /// This struct is passed in with a call to registered event. - /// - public class ParticipantStatusChangedCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Client-specified data passed into . - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the user who initiated this request. - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The room associated with this event. - /// - public string RoomName { get; private set; } - - /// - /// The participant whose status changed. - /// - public ProductUserId ParticipantId { get; private set; } - - /// - /// What status change occurred - /// - public RTCParticipantStatus ParticipantStatus { get; private set; } - - /// - /// The participant metadata items. - /// This is only set if ParticipantStatus is - /// - public ParticipantMetadata[] ParticipantMetadata { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(ParticipantStatusChangedCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - RoomName = other.Value.RoomName; - ParticipantId = other.Value.ParticipantId; - ParticipantStatus = other.Value.ParticipantStatus; - ParticipantMetadata = other.Value.ParticipantMetadata; - } - } - - public void Set(object other) - { - Set(other as ParticipantStatusChangedCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct ParticipantStatusChangedCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RoomName; - private System.IntPtr m_ParticipantId; - private RTCParticipantStatus m_ParticipantStatus; - private uint m_ParticipantMetadataCount; - private System.IntPtr m_ParticipantMetadata; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public string RoomName - { - get - { - string value; - Helper.TryMarshalGet(m_RoomName, out value); - return value; - } - } - - public ProductUserId ParticipantId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_ParticipantId, out value); - return value; - } - } - - public RTCParticipantStatus ParticipantStatus - { - get - { - return m_ParticipantStatus; - } - } - - public ParticipantMetadata[] ParticipantMetadata - { - get - { - ParticipantMetadata[] value; - Helper.TryMarshalGet(m_ParticipantMetadata, out value, m_ParticipantMetadataCount); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/ParticipantStatusChangedCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/ParticipantStatusChangedCallbackInfo.cs.meta deleted file mode 100644 index 78701aa..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/ParticipantStatusChangedCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: fd408a794a337c345839c6d3e1f99379 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/RTCInterface.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/RTCInterface.cs deleted file mode 100644 index d15e2e1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/RTCInterface.cs +++ /dev/null @@ -1,296 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTC -{ - public sealed partial class RTCInterface : Handle - { - public RTCInterface() - { - } - - public RTCInterface(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// The most recent version of the API. - /// - public const int AddnotifydisconnectedApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int AddnotifyparticipantstatuschangedApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int BlockparticipantApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int JoinroomApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int LeaveroomApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int ParticipantmetadataApiLatest = 1; - - public const int ParticipantmetadataKeyMaxcharcount = 256; - - public const int ParticipantmetadataValueMaxcharcount = 256; - - /// - /// Register to receive notifications when disconnected from the room. If the returned NotificationId is valid, you must call - /// when you no longer wish to have your CompletionDelegate called. - /// - /// This function will always return when used with lobby RTC room. To be notified of the connection - /// status of a Lobby-managed RTC room, use the function instead. - /// - /// - /// - /// Arbitrary data that is passed back in the CompletionDelegate - /// The callback to be fired when a presence change occurs - /// - /// Notification ID representing the registered callback if successful, an invalid NotificationId if not - /// - public ulong AddNotifyDisconnected(AddNotifyDisconnectedOptions options, object clientData, OnDisconnectedCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnDisconnectedCallbackInternal(OnDisconnectedCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - var funcResult = Bindings.EOS_RTC_AddNotifyDisconnected(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Register to receive notifications when a participant's status changes (e.g: join or leave the room). If the returned NotificationId is valid, you must call - /// when you no longer wish to have your CompletionDelegate called. - /// - /// If you register to this notification before joining a room, you will receive a notification for every member already in the room when you join said room. - /// This allows you to know who is already in the room when you join. - /// - /// To be used effectively with a Lobby-managed RTC room, this should be registered during the or completion - /// callbacks when the ResultCode is . If this notification is registered after that point, it is possible to miss notifications for - /// already-existing room participants. - /// - /// - /// - /// Arbitrary data that is passed back in the CompletionDelegate - /// The callback to be fired when a presence change occurs - /// - /// Notification ID representing the registered callback if successful, an invalid NotificationId if not - /// @note This notification is also raised when the local user joins the room, but NOT when the local user leaves the room. - /// - public ulong AddNotifyParticipantStatusChanged(AddNotifyParticipantStatusChangedOptions options, object clientData, OnParticipantStatusChangedCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnParticipantStatusChangedCallbackInternal(OnParticipantStatusChangedCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - var funcResult = Bindings.EOS_RTC_AddNotifyParticipantStatusChanged(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Use this function to block a participant already connected to the room. After blocking them no media will be sent or received between - /// that user and the local user. This method can be used after receiving the OnParticipantStatusChanged notification. - /// - /// structure containing the parameters for the operation. - /// Arbitrary data that is passed back in the CompletionDelegate - /// a callback that is fired when the async operation completes, either successfully or in error - /// - /// if the operation succeeded - /// if any of the parameters are incorrect - /// if either the local user or specified participant are not in the specified room - /// - public void BlockParticipant(BlockParticipantOptions options, object clientData, OnBlockParticipantCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnBlockParticipantCallbackInternal(OnBlockParticipantCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_RTC_BlockParticipant(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Get a handle to the Audio interface - /// eos_rtc_audio.h - /// eos_rtc_audio_types.h - /// - /// - /// handle - /// - public RTCAudio.RTCAudioInterface GetAudioInterface() - { - var funcResult = Bindings.EOS_RTC_GetAudioInterface(InnerHandle); - - RTCAudio.RTCAudioInterface funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Use this function to join a room. - /// - /// This function does not need to called for the Lobby RTC Room system; doing so will return . The lobby system will - /// automatically join and leave RTC Rooms for all lobbies that have RTC rooms enabled. - /// - /// structure containing the parameters for the operation. - /// Arbitrary data that is passed back in the CompletionDelegate - /// a callback that is fired when the async operation completes, either successfully or in error - public void JoinRoom(JoinRoomOptions options, object clientData, OnJoinRoomCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnJoinRoomCallbackInternal(OnJoinRoomCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_RTC_JoinRoom(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Use this function to leave a room and clean up all the resources associated with it. This function has to always be called when the - /// room is abandoned even if the user is already disconnected for other reasons. - /// - /// This function does not need to called for the Lobby RTC Room system; doing so will return . The lobby system will - /// automatically join and leave RTC Rooms for all lobbies that have RTC rooms enabled. - /// - /// structure containing the parameters for the operation. - /// Arbitrary data that is passed back in the CompletionDelegate - /// a callback that is fired when the async operation completes, either successfully or in error - /// - /// if the operation succeeded - /// if any of the parameters are incorrect - /// if not in the specified room - /// - public void LeaveRoom(LeaveRoomOptions options, object clientData, OnLeaveRoomCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnLeaveRoomCallbackInternal(OnLeaveRoomCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_RTC_LeaveRoom(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Unregister a previously bound notification handler from receiving room disconnection notifications - /// - /// The Notification ID representing the registered callback - public void RemoveNotifyDisconnected(ulong notificationId) - { - Helper.TryRemoveCallbackByNotificationId(notificationId); - - Bindings.EOS_RTC_RemoveNotifyDisconnected(InnerHandle, notificationId); - } - - /// - /// Unregister a previously bound notification handler from receiving participant status change notifications - /// - /// The Notification ID representing the registered callback - public void RemoveNotifyParticipantStatusChanged(ulong notificationId) - { - Helper.TryRemoveCallbackByNotificationId(notificationId); - - Bindings.EOS_RTC_RemoveNotifyParticipantStatusChanged(InnerHandle, notificationId); - } - - [MonoPInvokeCallback(typeof(OnBlockParticipantCallbackInternal))] - internal static void OnBlockParticipantCallbackInternalImplementation(System.IntPtr data) - { - OnBlockParticipantCallback callback; - BlockParticipantCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnDisconnectedCallbackInternal))] - internal static void OnDisconnectedCallbackInternalImplementation(System.IntPtr data) - { - OnDisconnectedCallback callback; - DisconnectedCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnJoinRoomCallbackInternal))] - internal static void OnJoinRoomCallbackInternalImplementation(System.IntPtr data) - { - OnJoinRoomCallback callback; - JoinRoomCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnLeaveRoomCallbackInternal))] - internal static void OnLeaveRoomCallbackInternalImplementation(System.IntPtr data) - { - OnLeaveRoomCallback callback; - LeaveRoomCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnParticipantStatusChangedCallbackInternal))] - internal static void OnParticipantStatusChangedCallbackInternalImplementation(System.IntPtr data) - { - OnParticipantStatusChangedCallback callback; - ParticipantStatusChangedCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/RTCInterface.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/RTCInterface.cs.meta deleted file mode 100644 index a9d54d9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/RTCInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e8433bca5ea086543a6320a201a19bc3 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/RTCParticipantStatus.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/RTCParticipantStatus.cs deleted file mode 100644 index ed6a6bb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/RTCParticipantStatus.cs +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTC -{ - /// - /// Participant RTC's status change - /// - public enum RTCParticipantStatus : int - { - /// - /// Participant joined the room - /// - Joined = 0, - /// - /// Participant left the room - /// - Left = 1 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/RTCParticipantStatus.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/RTCParticipantStatus.cs.meta deleted file mode 100644 index e6372e4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTC/RTCParticipantStatus.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 6f86f06f0dc215947a6f1bf2dde00d7b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin.meta deleted file mode 100644 index f8e164a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 1c78c615257a5784ea6880e356eb2bb4 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/CopyUserTokenByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/CopyUserTokenByIndexOptions.cs deleted file mode 100644 index 85fe609..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/CopyUserTokenByIndexOptions.cs +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAdmin -{ - /// - /// Input parameters for the function. - /// - public class CopyUserTokenByIndexOptions - { - /// - /// Index of the user token to retrieve from the cache. - /// - public uint UserTokenIndex { get; set; } - - /// - /// Query identifier received as part of a previous query. - /// - /// - public uint QueryId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyUserTokenByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_UserTokenIndex; - private uint m_QueryId; - - public uint UserTokenIndex - { - set - { - m_UserTokenIndex = value; - } - } - - public uint QueryId - { - set - { - m_QueryId = value; - } - } - - public void Set(CopyUserTokenByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = RTCAdminInterface.CopyusertokenbyindexApiLatest; - UserTokenIndex = other.UserTokenIndex; - QueryId = other.QueryId; - } - } - - public void Set(object other) - { - Set(other as CopyUserTokenByIndexOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/CopyUserTokenByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/CopyUserTokenByIndexOptions.cs.meta deleted file mode 100644 index d622495..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/CopyUserTokenByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 13b5e94891466794bb0f308e5df9abc7 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/CopyUserTokenByUserIdOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/CopyUserTokenByUserIdOptions.cs deleted file mode 100644 index fed085e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/CopyUserTokenByUserIdOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAdmin -{ - /// - /// Input parameters for the function. - /// - public class CopyUserTokenByUserIdOptions - { - /// - /// The Product User ID for the user whose user token we're copying. - /// - public ProductUserId TargetUserId { get; set; } - - /// - /// Query identifier received as part of a previous query. - /// - /// - public uint QueryId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyUserTokenByUserIdOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_TargetUserId; - private uint m_QueryId; - - public ProductUserId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public uint QueryId - { - set - { - m_QueryId = value; - } - } - - public void Set(CopyUserTokenByUserIdOptions other) - { - if (other != null) - { - m_ApiVersion = RTCAdminInterface.CopyusertokenbyuseridApiLatest; - TargetUserId = other.TargetUserId; - QueryId = other.QueryId; - } - } - - public void Set(object other) - { - Set(other as CopyUserTokenByUserIdOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/CopyUserTokenByUserIdOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/CopyUserTokenByUserIdOptions.cs.meta deleted file mode 100644 index 6d49899..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/CopyUserTokenByUserIdOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e2fb36d869fe7f24b8fd4b802d593583 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/KickCompleteCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/KickCompleteCallbackInfo.cs deleted file mode 100644 index 24dc13d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/KickCompleteCallbackInfo.cs +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAdmin -{ - /// - /// Data containing the result information for a kick participant request. - /// - public class KickCompleteCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Client-specified data passed into the kick request - /// - public object ClientData { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(KickCompleteCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - } - } - - public void Set(object other) - { - Set(other as KickCompleteCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct KickCompleteCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/KickCompleteCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/KickCompleteCallbackInfo.cs.meta deleted file mode 100644 index 2438dea..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/KickCompleteCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 1aa56d837bade634d8efbf6f439a6729 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/KickOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/KickOptions.cs deleted file mode 100644 index 0dcac66..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/KickOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAdmin -{ - /// - /// Input parameters for the function. - /// - public class KickOptions - { - /// - /// Room name to kick the participant from - /// - public string RoomName { get; set; } - - /// - /// Product User ID of the participant to kick from the room - /// - public ProductUserId TargetUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct KickOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_RoomName; - private System.IntPtr m_TargetUserId; - - public string RoomName - { - set - { - Helper.TryMarshalSet(ref m_RoomName, value); - } - } - - public ProductUserId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public void Set(KickOptions other) - { - if (other != null) - { - m_ApiVersion = RTCAdminInterface.KickApiLatest; - RoomName = other.RoomName; - TargetUserId = other.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as KickOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_RoomName); - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/KickOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/KickOptions.cs.meta deleted file mode 100644 index ea00257..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/KickOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: be8e252a74b9c1342899e06fac96b56c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/OnKickCompleteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/OnKickCompleteCallback.cs deleted file mode 100644 index 688c8a8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/OnKickCompleteCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAdmin -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// An containing the output information and result - public delegate void OnKickCompleteCallback(KickCompleteCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnKickCompleteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/OnKickCompleteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/OnKickCompleteCallback.cs.meta deleted file mode 100644 index deacb29..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/OnKickCompleteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 1ec16b7886713bb48be90050ea6f091c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/OnQueryJoinRoomTokenCompleteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/OnQueryJoinRoomTokenCompleteCallback.cs deleted file mode 100644 index 6e1dea9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/OnQueryJoinRoomTokenCompleteCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAdmin -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// An containing the output information and result - public delegate void OnQueryJoinRoomTokenCompleteCallback(QueryJoinRoomTokenCompleteCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnQueryJoinRoomTokenCompleteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/OnQueryJoinRoomTokenCompleteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/OnQueryJoinRoomTokenCompleteCallback.cs.meta deleted file mode 100644 index 6dcfc21..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/OnQueryJoinRoomTokenCompleteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e9cc4e6bb555b1549965e74b7e4a1ffd -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/OnSetParticipantHardMuteCompleteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/OnSetParticipantHardMuteCompleteCallback.cs deleted file mode 100644 index 90699e3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/OnSetParticipantHardMuteCompleteCallback.cs +++ /dev/null @@ -1,10 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAdmin -{ - public delegate void OnSetParticipantHardMuteCompleteCallback(SetParticipantHardMuteCompleteCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnSetParticipantHardMuteCompleteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/OnSetParticipantHardMuteCompleteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/OnSetParticipantHardMuteCompleteCallback.cs.meta deleted file mode 100644 index 1ef0950..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/OnSetParticipantHardMuteCompleteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 74c588dc14fbfad40a1561ba5c4140c2 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/QueryJoinRoomTokenCompleteCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/QueryJoinRoomTokenCompleteCallbackInfo.cs deleted file mode 100644 index 7044cc1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/QueryJoinRoomTokenCompleteCallbackInfo.cs +++ /dev/null @@ -1,140 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAdmin -{ - /// - /// Data containing the result information for a query join room token request. - /// - public class QueryJoinRoomTokenCompleteCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into . - /// - public object ClientData { get; private set; } - - /// - /// Room the request was made for. - /// - public string RoomName { get; private set; } - - /// - /// URL passed to backend to join room. - /// - public string ClientBaseUrl { get; private set; } - - /// - /// If the query completed successfully, this contains an identifier that should be used to retrieve the tokens. - /// This identifier is only valid for the duration of the callback. - /// - /// - /// - public uint QueryId { get; private set; } - - /// - /// How many token received as result of the query - /// - public uint TokenCount { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(QueryJoinRoomTokenCompleteCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - RoomName = other.Value.RoomName; - ClientBaseUrl = other.Value.ClientBaseUrl; - QueryId = other.Value.QueryId; - TokenCount = other.Value.TokenCount; - } - } - - public void Set(object other) - { - Set(other as QueryJoinRoomTokenCompleteCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryJoinRoomTokenCompleteCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_RoomName; - private System.IntPtr m_ClientBaseUrl; - private uint m_QueryId; - private uint m_TokenCount; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public string RoomName - { - get - { - string value; - Helper.TryMarshalGet(m_RoomName, out value); - return value; - } - } - - public string ClientBaseUrl - { - get - { - string value; - Helper.TryMarshalGet(m_ClientBaseUrl, out value); - return value; - } - } - - public uint QueryId - { - get - { - return m_QueryId; - } - } - - public uint TokenCount - { - get - { - return m_TokenCount; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/QueryJoinRoomTokenCompleteCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/QueryJoinRoomTokenCompleteCallbackInfo.cs.meta deleted file mode 100644 index 5a5e40a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/QueryJoinRoomTokenCompleteCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 8559ffc20f620f74996b4ea8d7f7ed4a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/QueryJoinRoomTokenOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/QueryJoinRoomTokenOptions.cs deleted file mode 100644 index f9be760..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/QueryJoinRoomTokenOptions.cs +++ /dev/null @@ -1,103 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAdmin -{ - /// - /// Input parameters for the function. - /// - public class QueryJoinRoomTokenOptions - { - /// - /// Product User ID for local user who is querying join room tokens. - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// Room name to request a token for. - /// - public string RoomName { get; set; } - - /// - /// An array of Product User IDs indicating the users to retrieve a token for. - /// - public ProductUserId[] TargetUserIds { get; set; } - - /// - /// Array of IP Addresses, one for each of the users we're querying tokens for. - /// There should be TargetUserIdsCount Ip Addresses, you can set an entry to NULL if not known. - /// If TargetUserIpAddresses is set to NULL IP Addresses will be ignored. - /// IPv4 format: "0.0.0.0" - /// IPv6 format: "0:0:0:0:0:0:0:0" - /// - public string TargetUserIpAddresses { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryJoinRoomTokenOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RoomName; - private System.IntPtr m_TargetUserIds; - private uint m_TargetUserIdsCount; - private System.IntPtr m_TargetUserIpAddresses; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string RoomName - { - set - { - Helper.TryMarshalSet(ref m_RoomName, value); - } - } - - public ProductUserId[] TargetUserIds - { - set - { - Helper.TryMarshalSet(ref m_TargetUserIds, value, out m_TargetUserIdsCount); - } - } - - public string TargetUserIpAddresses - { - set - { - Helper.TryMarshalSet(ref m_TargetUserIpAddresses, value); - } - } - - public void Set(QueryJoinRoomTokenOptions other) - { - if (other != null) - { - m_ApiVersion = RTCAdminInterface.QueryjoinroomtokenApiLatest; - LocalUserId = other.LocalUserId; - RoomName = other.RoomName; - TargetUserIds = other.TargetUserIds; - TargetUserIpAddresses = other.TargetUserIpAddresses; - } - } - - public void Set(object other) - { - Set(other as QueryJoinRoomTokenOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_RoomName); - Helper.TryMarshalDispose(ref m_TargetUserIds); - Helper.TryMarshalDispose(ref m_TargetUserIpAddresses); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/QueryJoinRoomTokenOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/QueryJoinRoomTokenOptions.cs.meta deleted file mode 100644 index 5681363..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/QueryJoinRoomTokenOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: def0db3f5eea2bc41afa42e1b8caada2 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/RTCAdminInterface.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/RTCAdminInterface.cs deleted file mode 100644 index ec96ded..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/RTCAdminInterface.cs +++ /dev/null @@ -1,215 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAdmin -{ - public sealed partial class RTCAdminInterface : Handle - { - public RTCAdminInterface() - { - } - - public RTCAdminInterface(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// The most recent version of the struct. - /// - public const int CopyusertokenbyindexApiLatest = 2; - - /// - /// The most recent version of the struct. - /// - public const int CopyusertokenbyuseridApiLatest = 2; - - /// - /// The most recent version of the API - /// - public const int KickApiLatest = 1; - - /// - /// The most recent version of the API - /// - public const int QueryjoinroomtokenApiLatest = 2; - - /// - /// The most recent version of the struct. - /// - public const int SetparticipanthardmuteApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int UsertokenApiLatest = 1; - - /// - /// Fetches a user token when called inside of the OnQueryJoinRoomTokenComplete callback. - /// - /// - /// Structure containing the index being accessed - /// - /// The user token for the given index, if it exists and is valid. Use when finished - /// @note The order of the tokens doesn't necessarily match the order of the array specified in the when - /// initiating the query. - /// - /// - /// if the information is available and passed out in OutUserToken - /// if you pass a null pointer for the out parameter - /// if the user token is not found - /// - public Result CopyUserTokenByIndex(CopyUserTokenByIndexOptions options, out UserToken outUserToken) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outUserTokenAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_RTCAdmin_CopyUserTokenByIndex(InnerHandle, optionsAddress, ref outUserTokenAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outUserTokenAddress, out outUserToken)) - { - Bindings.EOS_RTCAdmin_UserToken_Release(outUserTokenAddress); - } - - return funcResult; - } - - /// - /// Fetches a user token for a given user ID when called inside of the OnQueryJoinRoomTokenComplete callback. - /// - /// - /// Structure containing the user ID being accessed - /// The user token for the given user ID, if it exists and is valid. Use when finished - /// - /// if the information is available and passed out in OutUserToken - /// if you pass a null pointer for the out parameter - /// if the user token is not found - /// - public Result CopyUserTokenByUserId(CopyUserTokenByUserIdOptions options, out UserToken outUserToken) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outUserTokenAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_RTCAdmin_CopyUserTokenByUserId(InnerHandle, optionsAddress, ref outUserTokenAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outUserTokenAddress, out outUserToken)) - { - Bindings.EOS_RTCAdmin_UserToken_Release(outUserTokenAddress); - } - - return funcResult; - } - - /// - /// Starts an asynchronous task that removes a participant from a room and revokes their token. - /// - /// structure containing the room and user to revoke the token from. - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the async operation completes, either successfully or in error - public void Kick(KickOptions options, object clientData, OnKickCompleteCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnKickCompleteCallbackInternal(OnKickCompleteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_RTCAdmin_Kick(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Query for a list of user tokens for joining a room. - /// - /// Each query generates a query id ( see ) which should be used - /// to retrieve the tokens from inside the callback. - /// - /// Structure containing information about the application whose user tokens we're retrieving. - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// This function is called when the query join room token operation completes. - /// - /// if the operation completes successfully - /// if any of the options are incorrect - /// - public void QueryJoinRoomToken(QueryJoinRoomTokenOptions options, object clientData, OnQueryJoinRoomTokenCompleteCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnQueryJoinRoomTokenCompleteCallbackInternal(OnQueryJoinRoomTokenCompleteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_RTCAdmin_QueryJoinRoomToken(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Starts an asynchronous task remotely mutes/unmutes a room participant. - /// - /// This remotely mutes the specified participant, so no audio is sent from that participant to any other participant in the room. - /// - /// structure containing the room and user to mute. - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the async operation completes, either successfully or in error - public void SetParticipantHardMute(SetParticipantHardMuteOptions options, object clientData, OnSetParticipantHardMuteCompleteCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnSetParticipantHardMuteCompleteCallbackInternal(OnSetParticipantHardMuteCompleteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_RTCAdmin_SetParticipantHardMute(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - [MonoPInvokeCallback(typeof(OnKickCompleteCallbackInternal))] - internal static void OnKickCompleteCallbackInternalImplementation(System.IntPtr data) - { - OnKickCompleteCallback callback; - KickCompleteCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnQueryJoinRoomTokenCompleteCallbackInternal))] - internal static void OnQueryJoinRoomTokenCompleteCallbackInternalImplementation(System.IntPtr data) - { - OnQueryJoinRoomTokenCompleteCallback callback; - QueryJoinRoomTokenCompleteCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnSetParticipantHardMuteCompleteCallbackInternal))] - internal static void OnSetParticipantHardMuteCompleteCallbackInternalImplementation(System.IntPtr data) - { - OnSetParticipantHardMuteCompleteCallback callback; - SetParticipantHardMuteCompleteCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/RTCAdminInterface.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/RTCAdminInterface.cs.meta deleted file mode 100644 index 6b4fa15..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/RTCAdminInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e66a604d904d80342bea0880c27fe1c9 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/SetParticipantHardMuteCompleteCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/SetParticipantHardMuteCompleteCallbackInfo.cs deleted file mode 100644 index 0184a0b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/SetParticipantHardMuteCompleteCallbackInfo.cs +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAdmin -{ - /// - /// Data containing the result information for a hard mute request. - /// - public class SetParticipantHardMuteCompleteCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Client-specified data passed into the hard mute request - /// - public object ClientData { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(SetParticipantHardMuteCompleteCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - } - } - - public void Set(object other) - { - Set(other as SetParticipantHardMuteCompleteCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SetParticipantHardMuteCompleteCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/SetParticipantHardMuteCompleteCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/SetParticipantHardMuteCompleteCallbackInfo.cs.meta deleted file mode 100644 index c97e219..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/SetParticipantHardMuteCompleteCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 7266fe8b09afc1446b95ff2acd01d8e1 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/SetParticipantHardMuteOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/SetParticipantHardMuteOptions.cs deleted file mode 100644 index d4485cd..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/SetParticipantHardMuteOptions.cs +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAdmin -{ - /// - /// Input parameters for the function. - /// - public class SetParticipantHardMuteOptions - { - /// - /// Room to kick the participant from - /// - public string RoomName { get; set; } - - /// - /// Product User ID of the participant to hard mute for every participant in the room. - /// - public ProductUserId TargetUserId { get; set; } - - /// - /// Hard mute status (Mute on or off) - /// - public bool Mute { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SetParticipantHardMuteOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_RoomName; - private System.IntPtr m_TargetUserId; - private int m_Mute; - - public string RoomName - { - set - { - Helper.TryMarshalSet(ref m_RoomName, value); - } - } - - public ProductUserId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public bool Mute - { - set - { - Helper.TryMarshalSet(ref m_Mute, value); - } - } - - public void Set(SetParticipantHardMuteOptions other) - { - if (other != null) - { - m_ApiVersion = RTCAdminInterface.SetparticipanthardmuteApiLatest; - RoomName = other.RoomName; - TargetUserId = other.TargetUserId; - Mute = other.Mute; - } - } - - public void Set(object other) - { - Set(other as SetParticipantHardMuteOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_RoomName); - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/SetParticipantHardMuteOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/SetParticipantHardMuteOptions.cs.meta deleted file mode 100644 index a3b52eb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/SetParticipantHardMuteOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c5c4b7d3c3497744b8c595c114d0b3b3 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/UserToken.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/UserToken.cs deleted file mode 100644 index 0b1bc21..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/UserToken.cs +++ /dev/null @@ -1,94 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAdmin -{ - /// - /// Contains information about a collection of user tokens for joining a room. - /// - public class UserToken : ISettable - { - /// - /// The Product User ID for the user who owns this user token. - /// - public ProductUserId ProductUserId { get; set; } - - /// - /// Access token to enable a user to join a room - /// - public string Token { get; set; } - - internal void Set(UserTokenInternal? other) - { - if (other != null) - { - ProductUserId = other.Value.ProductUserId; - Token = other.Value.Token; - } - } - - public void Set(object other) - { - Set(other as UserTokenInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct UserTokenInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_ProductUserId; - private System.IntPtr m_Token; - - public ProductUserId ProductUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_ProductUserId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_ProductUserId, value); - } - } - - public string Token - { - get - { - string value; - Helper.TryMarshalGet(m_Token, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Token, value); - } - } - - public void Set(UserToken other) - { - if (other != null) - { - m_ApiVersion = RTCAdminInterface.UsertokenApiLatest; - ProductUserId = other.ProductUserId; - Token = other.Token; - } - } - - public void Set(object other) - { - Set(other as UserToken); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_ProductUserId); - Helper.TryMarshalDispose(ref m_Token); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/UserToken.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/UserToken.cs.meta deleted file mode 100644 index a46ae9a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAdmin/UserToken.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 16617ec7016bc3847b58f3dc4cd1f684 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio.meta deleted file mode 100644 index 7e2d4c3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 8f2c4951052286b4bb7490ba231b2abc -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyAudioBeforeRenderOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyAudioBeforeRenderOptions.cs deleted file mode 100644 index f724db7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyAudioBeforeRenderOptions.cs +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// This struct is used to call . - /// - public class AddNotifyAudioBeforeRenderOptions - { - /// - /// The Product User ID of the user trying to request this operation. - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The room this event is registered on. - /// - public string RoomName { get; set; } - - /// - /// Mixed audio or unmixed audio. - /// For unmixed audio notifications it is not supported to modify the samples in the callback. - /// - public bool UnmixedAudio { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyAudioBeforeRenderOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RoomName; - private int m_UnmixedAudio; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string RoomName - { - set - { - Helper.TryMarshalSet(ref m_RoomName, value); - } - } - - public bool UnmixedAudio - { - set - { - Helper.TryMarshalSet(ref m_UnmixedAudio, value); - } - } - - public void Set(AddNotifyAudioBeforeRenderOptions other) - { - if (other != null) - { - m_ApiVersion = RTCAudioInterface.AddnotifyaudiobeforerenderApiLatest; - LocalUserId = other.LocalUserId; - RoomName = other.RoomName; - UnmixedAudio = other.UnmixedAudio; - } - } - - public void Set(object other) - { - Set(other as AddNotifyAudioBeforeRenderOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_RoomName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyAudioBeforeRenderOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyAudioBeforeRenderOptions.cs.meta deleted file mode 100644 index 50c4f2f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyAudioBeforeRenderOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 82e75caf67a8c784cba1308e05e10585 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyAudioBeforeSendOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyAudioBeforeSendOptions.cs deleted file mode 100644 index 136931c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyAudioBeforeSendOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// This struct is used to call . - /// - public class AddNotifyAudioBeforeSendOptions - { - /// - /// The Product User ID of the user trying to request this operation. - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The room this event is registered on. - /// - public string RoomName { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyAudioBeforeSendOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RoomName; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string RoomName - { - set - { - Helper.TryMarshalSet(ref m_RoomName, value); - } - } - - public void Set(AddNotifyAudioBeforeSendOptions other) - { - if (other != null) - { - m_ApiVersion = RTCAudioInterface.AddnotifyaudiobeforesendApiLatest; - LocalUserId = other.LocalUserId; - RoomName = other.RoomName; - } - } - - public void Set(object other) - { - Set(other as AddNotifyAudioBeforeSendOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_RoomName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyAudioBeforeSendOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyAudioBeforeSendOptions.cs.meta deleted file mode 100644 index 32437e7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyAudioBeforeSendOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 6bd601411bdf6814cb5a072bc9849a1c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyAudioDevicesChangedOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyAudioDevicesChangedOptions.cs deleted file mode 100644 index 1a95a1a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyAudioDevicesChangedOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// This struct is used to call . - /// - public class AddNotifyAudioDevicesChangedOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyAudioDevicesChangedOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(AddNotifyAudioDevicesChangedOptions other) - { - if (other != null) - { - m_ApiVersion = RTCAudioInterface.AddnotifyaudiodeviceschangedApiLatest; - } - } - - public void Set(object other) - { - Set(other as AddNotifyAudioDevicesChangedOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyAudioDevicesChangedOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyAudioDevicesChangedOptions.cs.meta deleted file mode 100644 index 3ec543e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyAudioDevicesChangedOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 367649d5d0d3d034c80bfd7d2fb63d86 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyAudioInputStateOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyAudioInputStateOptions.cs deleted file mode 100644 index dabb9bb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyAudioInputStateOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// This struct is used to call . - /// - public class AddNotifyAudioInputStateOptions - { - /// - /// The Product User ID of the user trying to request this operation. - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The room this event is registered on. - /// - public string RoomName { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyAudioInputStateOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RoomName; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string RoomName - { - set - { - Helper.TryMarshalSet(ref m_RoomName, value); - } - } - - public void Set(AddNotifyAudioInputStateOptions other) - { - if (other != null) - { - m_ApiVersion = RTCAudioInterface.AddnotifyaudioinputstateApiLatest; - LocalUserId = other.LocalUserId; - RoomName = other.RoomName; - } - } - - public void Set(object other) - { - Set(other as AddNotifyAudioInputStateOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_RoomName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyAudioInputStateOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyAudioInputStateOptions.cs.meta deleted file mode 100644 index 7c1f43d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyAudioInputStateOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 71566f6460f48414f92d981f5dbd12ab -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyAudioOutputStateOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyAudioOutputStateOptions.cs deleted file mode 100644 index 0463914..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyAudioOutputStateOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// This struct is used to call . - /// - public class AddNotifyAudioOutputStateOptions - { - /// - /// The Product User ID of the user trying to request this operation. - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The room this event is registered on. - /// - public string RoomName { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyAudioOutputStateOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RoomName; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string RoomName - { - set - { - Helper.TryMarshalSet(ref m_RoomName, value); - } - } - - public void Set(AddNotifyAudioOutputStateOptions other) - { - if (other != null) - { - m_ApiVersion = RTCAudioInterface.AddnotifyaudiooutputstateApiLatest; - LocalUserId = other.LocalUserId; - RoomName = other.RoomName; - } - } - - public void Set(object other) - { - Set(other as AddNotifyAudioOutputStateOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_RoomName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyAudioOutputStateOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyAudioOutputStateOptions.cs.meta deleted file mode 100644 index 0bc4482..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyAudioOutputStateOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 90b840a431631b541ac249c6440d428c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyParticipantUpdatedOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyParticipantUpdatedOptions.cs deleted file mode 100644 index 23e9169..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyParticipantUpdatedOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// This struct is used to call . - /// - public class AddNotifyParticipantUpdatedOptions - { - /// - /// The Product User ID of the user trying to request this operation. - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The room this event is registered on. - /// - public string RoomName { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyParticipantUpdatedOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RoomName; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string RoomName - { - set - { - Helper.TryMarshalSet(ref m_RoomName, value); - } - } - - public void Set(AddNotifyParticipantUpdatedOptions other) - { - if (other != null) - { - m_ApiVersion = RTCAudioInterface.AddnotifyparticipantupdatedApiLatest; - LocalUserId = other.LocalUserId; - RoomName = other.RoomName; - } - } - - public void Set(object other) - { - Set(other as AddNotifyParticipantUpdatedOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_RoomName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyParticipantUpdatedOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyParticipantUpdatedOptions.cs.meta deleted file mode 100644 index 14dbed7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AddNotifyParticipantUpdatedOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: cee9febfca2788440bd4d3e4989abf0e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioBeforeRenderCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioBeforeRenderCallbackInfo.cs deleted file mode 100644 index 19bbee3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioBeforeRenderCallbackInfo.cs +++ /dev/null @@ -1,129 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// This struct is passed in with a call to registered event. - /// - public class AudioBeforeRenderCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Client-specified data passed into . - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the user who initiated this request. - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The room associated with this event. - /// - public string RoomName { get; private set; } - - /// - /// Audio buffer. - /// If bUnmixedAudio was set to true when setting the notifications (aka: you get buffers per participant), then you should - /// not modify this buffer. - /// - public AudioBuffer Buffer { get; private set; } - - /// - /// The Product User ID of the participant if bUnmixedAudio was set to true when setting the notifications, or empty if - /// bUnmixedAudio was set to false and thus the buffer is the mixed audio of all participants - /// - public ProductUserId ParticipantId { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(AudioBeforeRenderCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - RoomName = other.Value.RoomName; - Buffer = other.Value.Buffer; - ParticipantId = other.Value.ParticipantId; - } - } - - public void Set(object other) - { - Set(other as AudioBeforeRenderCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AudioBeforeRenderCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RoomName; - private System.IntPtr m_Buffer; - private System.IntPtr m_ParticipantId; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public string RoomName - { - get - { - string value; - Helper.TryMarshalGet(m_RoomName, out value); - return value; - } - } - - public AudioBuffer Buffer - { - get - { - AudioBuffer value; - Helper.TryMarshalGet(m_Buffer, out value); - return value; - } - } - - public ProductUserId ParticipantId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_ParticipantId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioBeforeRenderCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioBeforeRenderCallbackInfo.cs.meta deleted file mode 100644 index 7c660e2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioBeforeRenderCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 37ec2a30bcf91ef4cbc5849ccf39f8cd -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioBeforeSendCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioBeforeSendCallbackInfo.cs deleted file mode 100644 index ad9ac32..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioBeforeSendCallbackInfo.cs +++ /dev/null @@ -1,109 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// This struct is passed in with a call to registered event. - /// - public class AudioBeforeSendCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Client-specified data passed into . - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the user who initiated this request. - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The room associated with this event. - /// - public string RoomName { get; private set; } - - /// - /// Audio buffer. - /// - public AudioBuffer Buffer { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(AudioBeforeSendCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - RoomName = other.Value.RoomName; - Buffer = other.Value.Buffer; - } - } - - public void Set(object other) - { - Set(other as AudioBeforeSendCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AudioBeforeSendCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RoomName; - private System.IntPtr m_Buffer; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public string RoomName - { - get - { - string value; - Helper.TryMarshalGet(m_RoomName, out value); - return value; - } - } - - public AudioBuffer Buffer - { - get - { - AudioBuffer value; - Helper.TryMarshalGet(m_Buffer, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioBeforeSendCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioBeforeSendCallbackInfo.cs.meta deleted file mode 100644 index 5ba455d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioBeforeSendCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 5746d5df383788e42b935bf941abaaa6 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioBuffer.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioBuffer.cs deleted file mode 100644 index 3911183..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioBuffer.cs +++ /dev/null @@ -1,113 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// This struct is used to represent an audio buffer received in callbacks from and . - /// - public class AudioBuffer : ISettable - { - /// - /// Pointer to the data with the interleaved audio frames in signed 16 bits format. - /// - public short[] Frames { get; set; } - - /// - /// Sample rate for the samples in the Frames buffer. - /// - public uint SampleRate { get; set; } - - /// - /// Number of channels for the samples in the Frames buffer. - /// - public uint Channels { get; set; } - - internal void Set(AudioBufferInternal? other) - { - if (other != null) - { - Frames = other.Value.Frames; - SampleRate = other.Value.SampleRate; - Channels = other.Value.Channels; - } - } - - public void Set(object other) - { - Set(other as AudioBufferInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AudioBufferInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Frames; - private uint m_FramesCount; - private uint m_SampleRate; - private uint m_Channels; - - public short[] Frames - { - get - { - short[] value; - Helper.TryMarshalGet(m_Frames, out value, m_FramesCount); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Frames, value, out m_FramesCount); - } - } - - public uint SampleRate - { - get - { - return m_SampleRate; - } - - set - { - m_SampleRate = value; - } - } - - public uint Channels - { - get - { - return m_Channels; - } - - set - { - m_Channels = value; - } - } - - public void Set(AudioBuffer other) - { - if (other != null) - { - m_ApiVersion = RTCAudioInterface.AudiobufferApiLatest; - Frames = other.Frames; - SampleRate = other.SampleRate; - Channels = other.Channels; - } - } - - public void Set(object other) - { - Set(other as AudioBuffer); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Frames); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioBuffer.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioBuffer.cs.meta deleted file mode 100644 index 617a96d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioBuffer.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: cf59ae7a63a1d6c43a6150b5e8258877 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioDevicesChangedCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioDevicesChangedCallbackInfo.cs deleted file mode 100644 index 350ba5d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioDevicesChangedCallbackInfo.cs +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// This struct is passed in with a call to registered event. - /// - public class AudioDevicesChangedCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Client-specified data passed into . - /// - public object ClientData { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(AudioDevicesChangedCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - } - } - - public void Set(object other) - { - Set(other as AudioDevicesChangedCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AudioDevicesChangedCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioDevicesChangedCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioDevicesChangedCallbackInfo.cs.meta deleted file mode 100644 index d78479a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioDevicesChangedCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9953a3168a35c4747960c10acff89ce0 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioInputDeviceInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioInputDeviceInfo.cs deleted file mode 100644 index 87c38b4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioInputDeviceInfo.cs +++ /dev/null @@ -1,117 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// This struct is used to get information about a specific input device. - /// - public class AudioInputDeviceInfo : ISettable - { - /// - /// True if this is the default audio input device in the system. - /// - public bool DefaultDevice { get; set; } - - /// - /// The persistent unique id of the device. - /// - public string DeviceId { get; set; } - - /// - /// The name of the device - /// - public string DeviceName { get; set; } - - internal void Set(AudioInputDeviceInfoInternal? other) - { - if (other != null) - { - DefaultDevice = other.Value.DefaultDevice; - DeviceId = other.Value.DeviceId; - DeviceName = other.Value.DeviceName; - } - } - - public void Set(object other) - { - Set(other as AudioInputDeviceInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AudioInputDeviceInfoInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private int m_DefaultDevice; - private System.IntPtr m_DeviceId; - private System.IntPtr m_DeviceName; - - public bool DefaultDevice - { - get - { - bool value; - Helper.TryMarshalGet(m_DefaultDevice, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_DefaultDevice, value); - } - } - - public string DeviceId - { - get - { - string value; - Helper.TryMarshalGet(m_DeviceId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_DeviceId, value); - } - } - - public string DeviceName - { - get - { - string value; - Helper.TryMarshalGet(m_DeviceName, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_DeviceName, value); - } - } - - public void Set(AudioInputDeviceInfo other) - { - if (other != null) - { - m_ApiVersion = RTCAudioInterface.AudioinputdeviceinfoApiLatest; - DefaultDevice = other.DefaultDevice; - DeviceId = other.DeviceId; - DeviceName = other.DeviceName; - } - } - - public void Set(object other) - { - Set(other as AudioInputDeviceInfo); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_DeviceId); - Helper.TryMarshalDispose(ref m_DeviceName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioInputDeviceInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioInputDeviceInfo.cs.meta deleted file mode 100644 index 5913e1f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioInputDeviceInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 8081b48c0fb837344848a3fa8e2f53a8 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioInputStateCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioInputStateCallbackInfo.cs deleted file mode 100644 index 570c1f4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioInputStateCallbackInfo.cs +++ /dev/null @@ -1,107 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// This struct is passed in with a call to registered event. - /// - public class AudioInputStateCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Client-specified data passed into . - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the user who initiated this request. - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The room associated with this event. - /// - public string RoomName { get; private set; } - - /// - /// The status of the audio input. - /// - public RTCAudioInputStatus Status { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(AudioInputStateCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - RoomName = other.Value.RoomName; - Status = other.Value.Status; - } - } - - public void Set(object other) - { - Set(other as AudioInputStateCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AudioInputStateCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RoomName; - private RTCAudioInputStatus m_Status; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public string RoomName - { - get - { - string value; - Helper.TryMarshalGet(m_RoomName, out value); - return value; - } - } - - public RTCAudioInputStatus Status - { - get - { - return m_Status; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioInputStateCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioInputStateCallbackInfo.cs.meta deleted file mode 100644 index 7e16812..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioInputStateCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 2cef6f76838d5734f9ff26dbe486c209 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioOutputDeviceInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioOutputDeviceInfo.cs deleted file mode 100644 index 0719de1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioOutputDeviceInfo.cs +++ /dev/null @@ -1,117 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// This struct is used to get information about a specific input device. - /// - public class AudioOutputDeviceInfo : ISettable - { - /// - /// True if this is the default audio input device in the system. - /// - public bool DefaultDevice { get; set; } - - /// - /// The persistent unique id of the device. - /// - public string DeviceId { get; set; } - - /// - /// The name of the device - /// - public string DeviceName { get; set; } - - internal void Set(AudioOutputDeviceInfoInternal? other) - { - if (other != null) - { - DefaultDevice = other.Value.DefaultDevice; - DeviceId = other.Value.DeviceId; - DeviceName = other.Value.DeviceName; - } - } - - public void Set(object other) - { - Set(other as AudioOutputDeviceInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AudioOutputDeviceInfoInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private int m_DefaultDevice; - private System.IntPtr m_DeviceId; - private System.IntPtr m_DeviceName; - - public bool DefaultDevice - { - get - { - bool value; - Helper.TryMarshalGet(m_DefaultDevice, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_DefaultDevice, value); - } - } - - public string DeviceId - { - get - { - string value; - Helper.TryMarshalGet(m_DeviceId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_DeviceId, value); - } - } - - public string DeviceName - { - get - { - string value; - Helper.TryMarshalGet(m_DeviceName, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_DeviceName, value); - } - } - - public void Set(AudioOutputDeviceInfo other) - { - if (other != null) - { - m_ApiVersion = RTCAudioInterface.AudiooutputdeviceinfoApiLatest; - DefaultDevice = other.DefaultDevice; - DeviceId = other.DeviceId; - DeviceName = other.DeviceName; - } - } - - public void Set(object other) - { - Set(other as AudioOutputDeviceInfo); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_DeviceId); - Helper.TryMarshalDispose(ref m_DeviceName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioOutputDeviceInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioOutputDeviceInfo.cs.meta deleted file mode 100644 index da28d15..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioOutputDeviceInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 24ebbd4ae2bb61f468746686a7c9783b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioOutputStateCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioOutputStateCallbackInfo.cs deleted file mode 100644 index 90e30fa..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioOutputStateCallbackInfo.cs +++ /dev/null @@ -1,107 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// This struct is passed in with a call to registered event. - /// - public class AudioOutputStateCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Client-specified data passed into . - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the user who initiated this request. - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The room associated with this event. - /// - public string RoomName { get; private set; } - - /// - /// The status of the audio output. - /// - public RTCAudioOutputStatus Status { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(AudioOutputStateCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - RoomName = other.Value.RoomName; - Status = other.Value.Status; - } - } - - public void Set(object other) - { - Set(other as AudioOutputStateCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AudioOutputStateCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RoomName; - private RTCAudioOutputStatus m_Status; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public string RoomName - { - get - { - string value; - Helper.TryMarshalGet(m_RoomName, out value); - return value; - } - } - - public RTCAudioOutputStatus Status - { - get - { - return m_Status; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioOutputStateCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioOutputStateCallbackInfo.cs.meta deleted file mode 100644 index 2c9b003..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/AudioOutputStateCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a9950522a21f98d4fbf52961ce5f9355 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/GetAudioInputDeviceByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/GetAudioInputDeviceByIndexOptions.cs deleted file mode 100644 index a5fb33c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/GetAudioInputDeviceByIndexOptions.cs +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// Input parameters for the function. - /// - public class GetAudioInputDeviceByIndexOptions - { - /// - /// Index of the device info to retrieve. - /// - public uint DeviceInfoIndex { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetAudioInputDeviceByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_DeviceInfoIndex; - - public uint DeviceInfoIndex - { - set - { - m_DeviceInfoIndex = value; - } - } - - public void Set(GetAudioInputDeviceByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = RTCAudioInterface.GetaudioinputdevicebyindexApiLatest; - DeviceInfoIndex = other.DeviceInfoIndex; - } - } - - public void Set(object other) - { - Set(other as GetAudioInputDeviceByIndexOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/GetAudioInputDeviceByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/GetAudioInputDeviceByIndexOptions.cs.meta deleted file mode 100644 index a678780..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/GetAudioInputDeviceByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 669d7d3cf70358d47ad534d1637a01a3 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/GetAudioInputDevicesCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/GetAudioInputDevicesCountOptions.cs deleted file mode 100644 index c381c18..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/GetAudioInputDevicesCountOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// Input parameters for the function. - /// - public class GetAudioInputDevicesCountOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetAudioInputDevicesCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(GetAudioInputDevicesCountOptions other) - { - if (other != null) - { - m_ApiVersion = RTCAudioInterface.GetaudioinputdevicescountApiLatest; - } - } - - public void Set(object other) - { - Set(other as GetAudioInputDevicesCountOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/GetAudioInputDevicesCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/GetAudioInputDevicesCountOptions.cs.meta deleted file mode 100644 index 4c28d06..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/GetAudioInputDevicesCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 8faf8aacf2de2e44197c8e3aa04657aa -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/GetAudioOutputDeviceByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/GetAudioOutputDeviceByIndexOptions.cs deleted file mode 100644 index 1f2eac9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/GetAudioOutputDeviceByIndexOptions.cs +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// Input parameters for the function. - /// - public class GetAudioOutputDeviceByIndexOptions - { - /// - /// Index of the device info to retrieve. - /// - public uint DeviceInfoIndex { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetAudioOutputDeviceByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_DeviceInfoIndex; - - public uint DeviceInfoIndex - { - set - { - m_DeviceInfoIndex = value; - } - } - - public void Set(GetAudioOutputDeviceByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = RTCAudioInterface.GetaudiooutputdevicebyindexApiLatest; - DeviceInfoIndex = other.DeviceInfoIndex; - } - } - - public void Set(object other) - { - Set(other as GetAudioOutputDeviceByIndexOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/GetAudioOutputDeviceByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/GetAudioOutputDeviceByIndexOptions.cs.meta deleted file mode 100644 index f0d3e92..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/GetAudioOutputDeviceByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d4c7bcc928bb3b748bf018d46928aeb1 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/GetAudioOutputDevicesCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/GetAudioOutputDevicesCountOptions.cs deleted file mode 100644 index 96577fc..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/GetAudioOutputDevicesCountOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// Output parameters for the function. - /// - public class GetAudioOutputDevicesCountOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetAudioOutputDevicesCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(GetAudioOutputDevicesCountOptions other) - { - if (other != null) - { - m_ApiVersion = RTCAudioInterface.GetaudiooutputdevicescountApiLatest; - } - } - - public void Set(object other) - { - Set(other as GetAudioOutputDevicesCountOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/GetAudioOutputDevicesCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/GetAudioOutputDevicesCountOptions.cs.meta deleted file mode 100644 index 7c45c67..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/GetAudioOutputDevicesCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3f43c9181f84f3a44a0288219bc48637 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnAudioBeforeRenderCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnAudioBeforeRenderCallback.cs deleted file mode 100644 index 1a50460..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnAudioBeforeRenderCallback.cs +++ /dev/null @@ -1,10 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - public delegate void OnAudioBeforeRenderCallback(AudioBeforeRenderCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnAudioBeforeRenderCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnAudioBeforeRenderCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnAudioBeforeRenderCallback.cs.meta deleted file mode 100644 index 8d235ac..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnAudioBeforeRenderCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d522e0cf157deae42bd7f83e6462542c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnAudioBeforeSendCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnAudioBeforeSendCallback.cs deleted file mode 100644 index 646bd62..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnAudioBeforeSendCallback.cs +++ /dev/null @@ -1,10 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - public delegate void OnAudioBeforeSendCallback(AudioBeforeSendCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnAudioBeforeSendCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnAudioBeforeSendCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnAudioBeforeSendCallback.cs.meta deleted file mode 100644 index 50c66e7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnAudioBeforeSendCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a15e48dc51b823e4da64020f1d98b2fb -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnAudioDevicesChangedCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnAudioDevicesChangedCallback.cs deleted file mode 100644 index 8957261..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnAudioDevicesChangedCallback.cs +++ /dev/null @@ -1,10 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - public delegate void OnAudioDevicesChangedCallback(AudioDevicesChangedCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnAudioDevicesChangedCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnAudioDevicesChangedCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnAudioDevicesChangedCallback.cs.meta deleted file mode 100644 index c51e3bc..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnAudioDevicesChangedCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d702dec68c86ff942a20cebe01f7e26a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnAudioInputStateCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnAudioInputStateCallback.cs deleted file mode 100644 index 0185c19..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnAudioInputStateCallback.cs +++ /dev/null @@ -1,10 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - public delegate void OnAudioInputStateCallback(AudioInputStateCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnAudioInputStateCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnAudioInputStateCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnAudioInputStateCallback.cs.meta deleted file mode 100644 index 65eae6f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnAudioInputStateCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 241507b626fe38c4dbc99f44201327ec -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnAudioOutputStateCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnAudioOutputStateCallback.cs deleted file mode 100644 index fa087d5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnAudioOutputStateCallback.cs +++ /dev/null @@ -1,10 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - public delegate void OnAudioOutputStateCallback(AudioOutputStateCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnAudioOutputStateCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnAudioOutputStateCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnAudioOutputStateCallback.cs.meta deleted file mode 100644 index 38db20d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnAudioOutputStateCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0354a801b8f3a7145b542798a939703a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnParticipantUpdatedCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnParticipantUpdatedCallback.cs deleted file mode 100644 index 233994c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnParticipantUpdatedCallback.cs +++ /dev/null @@ -1,10 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - public delegate void OnParticipantUpdatedCallback(ParticipantUpdatedCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnParticipantUpdatedCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnParticipantUpdatedCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnParticipantUpdatedCallback.cs.meta deleted file mode 100644 index e17ea69..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnParticipantUpdatedCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 14b1fade8115fc54a8aabc90b87b68a2 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnUpdateReceivingCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnUpdateReceivingCallback.cs deleted file mode 100644 index dee658b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnUpdateReceivingCallback.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// Callback for completion of update receiving request - /// - public delegate void OnUpdateReceivingCallback(UpdateReceivingCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnUpdateReceivingCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnUpdateReceivingCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnUpdateReceivingCallback.cs.meta deleted file mode 100644 index 99d7704..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnUpdateReceivingCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 161a654a89bed2641aac22711c0dafb0 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnUpdateSendingCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnUpdateSendingCallback.cs deleted file mode 100644 index 154aad7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnUpdateSendingCallback.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// Callback for completion of update sending request. - /// - public delegate void OnUpdateSendingCallback(UpdateSendingCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnUpdateSendingCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnUpdateSendingCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnUpdateSendingCallback.cs.meta deleted file mode 100644 index 651f4ab..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/OnUpdateSendingCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0eed99f5299726c43bc6369b6ce36dd7 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/ParticipantUpdatedCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/ParticipantUpdatedCallbackInfo.cs deleted file mode 100644 index 9d44740..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/ParticipantUpdatedCallbackInfo.cs +++ /dev/null @@ -1,141 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// This struct is passed in with a call to registered event. - /// - public class ParticipantUpdatedCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Client-specified data passed into . - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the user who initiated this request. - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The room associated with this event. - /// - public string RoomName { get; private set; } - - /// - /// The participant updated. - /// - public ProductUserId ParticipantId { get; private set; } - - /// - /// The participant speaking / non-speaking status. - /// - public bool Speaking { get; private set; } - - /// - /// The participant audio status (enabled, disabled). - /// - public RTCAudioStatus AudioStatus { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(ParticipantUpdatedCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - RoomName = other.Value.RoomName; - ParticipantId = other.Value.ParticipantId; - Speaking = other.Value.Speaking; - AudioStatus = other.Value.AudioStatus; - } - } - - public void Set(object other) - { - Set(other as ParticipantUpdatedCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct ParticipantUpdatedCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RoomName; - private System.IntPtr m_ParticipantId; - private int m_Speaking; - private RTCAudioStatus m_AudioStatus; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public string RoomName - { - get - { - string value; - Helper.TryMarshalGet(m_RoomName, out value); - return value; - } - } - - public ProductUserId ParticipantId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_ParticipantId, out value); - return value; - } - } - - public bool Speaking - { - get - { - bool value; - Helper.TryMarshalGet(m_Speaking, out value); - return value; - } - } - - public RTCAudioStatus AudioStatus - { - get - { - return m_AudioStatus; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/ParticipantUpdatedCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/ParticipantUpdatedCallbackInfo.cs.meta deleted file mode 100644 index db0cda2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/ParticipantUpdatedCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: bec1c92eba851fa4ab1518a9c3e418c9 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/RTCAudioInputStatus.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/RTCAudioInputStatus.cs deleted file mode 100644 index ae72e6e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/RTCAudioInputStatus.cs +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// An enumeration of the different audio input device statuses. - /// - public enum RTCAudioInputStatus : int - { - /// - /// The device is not in used right now (e.g: you are alone in the room). In such cases, the hardware resources are not allocated. - /// - Idle = 0, - /// - /// The device is being used and capturing audio - /// - Recording = 1, - /// - /// The SDK is in a recording state, but actually capturing silence because the device is exclusively being used by the platform at the moment. - /// This only applies to certain platforms. - /// - RecordingSilent = 2, - /// - /// The SDK is in a recording state, but actually capturing silence because the device is disconnected (e.g: the microphone is not plugged in). - /// This only applies to certain platforms. - /// - RecordingDisconnected = 3, - /// - /// Something failed while trying to use the device - /// - Failed = 4 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/RTCAudioInputStatus.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/RTCAudioInputStatus.cs.meta deleted file mode 100644 index 818a223..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/RTCAudioInputStatus.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a5fe9f60cfad8fb4abbabc0af6eb9ada -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/RTCAudioInterface.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/RTCAudioInterface.cs deleted file mode 100644 index c27fdf9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/RTCAudioInterface.cs +++ /dev/null @@ -1,725 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - public sealed partial class RTCAudioInterface : Handle - { - public RTCAudioInterface() - { - } - - public RTCAudioInterface(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// The most recent version of the API. - /// - public const int AddnotifyaudiobeforerenderApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int AddnotifyaudiobeforesendApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int AddnotifyaudiodeviceschangedApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int AddnotifyaudioinputstateApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int AddnotifyaudiooutputstateApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int AddnotifyparticipantupdatedApiLatest = 1; - - /// - /// The most recent version of the API - /// - public const int AudiobufferApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int AudioinputdeviceinfoApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int AudiooutputdeviceinfoApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetaudioinputdevicebyindexApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetaudioinputdevicescountApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetaudiooutputdevicebyindexApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetaudiooutputdevicescountApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int RegisterplatformaudiouserApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int SendaudioApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int SetaudioinputsettingsApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int SetaudiooutputsettingsApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int UnregisterplatformaudiouserApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int UpdatereceivingApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int UpdatesendingApiLatest = 1; - - /// - /// Register to receive notifications with remote audio buffers before they are rendered. - /// - /// This gives you access to the audio data received, allowing for example the implementation of custom filters/effects. - /// - /// If the returned NotificationId is valid, you must call when you no longer wish to - /// have your CompletionDelegate called. - /// - /// - /// - /// Arbitrary data that is passed back in the CompletionDelegate - /// The callback to be fired when a presence change occurs - /// - /// Notification ID representing the registered callback if successful, an invalid NotificationId if not - /// - public ulong AddNotifyAudioBeforeRender(AddNotifyAudioBeforeRenderOptions options, object clientData, OnAudioBeforeRenderCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnAudioBeforeRenderCallbackInternal(OnAudioBeforeRenderCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - var funcResult = Bindings.EOS_RTCAudio_AddNotifyAudioBeforeRender(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Register to receive notifications when local audio buffers are about to be encoded and sent. - /// - /// This gives you access to the audio data about to be sent, allowing for example the implementation of custom filters/effects. - /// - /// If the returned NotificationId is valid, you must call when you no longer wish to - /// have your CompletionDelegate called. - /// - /// - /// - /// Arbitrary data that is passed back in the CompletionDelegate - /// The callback to be fired when a presence change occurs - /// - /// Notification ID representing the registered callback if successful, an invalid NotificationId if not - /// - public ulong AddNotifyAudioBeforeSend(AddNotifyAudioBeforeSendOptions options, object clientData, OnAudioBeforeSendCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnAudioBeforeSendCallbackInternal(OnAudioBeforeSendCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - var funcResult = Bindings.EOS_RTCAudio_AddNotifyAudioBeforeSend(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Register to receive notifications when an audio device is added or removed to the system. - /// - /// If the returned NotificationId is valid, you must call when you no longer wish - /// to have your CompletionDelegate called. - /// - /// - /// - /// Arbitrary data that is passed back in the CompletionDelegate - /// The callback to be fired when an audio device change occurs - /// - /// Notification ID representing the registered callback if successful, an invalid NotificationId if not - /// - public ulong AddNotifyAudioDevicesChanged(AddNotifyAudioDevicesChangedOptions options, object clientData, OnAudioDevicesChangedCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnAudioDevicesChangedCallbackInternal(OnAudioDevicesChangedCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - var funcResult = Bindings.EOS_RTCAudio_AddNotifyAudioDevicesChanged(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Register to receive notifications when audio input state changed. - /// - /// If the returned NotificationId is valid, you must call when you no longer wish to - /// have your CompletionDelegate called. - /// - /// - /// - /// Arbitrary data that is passed back in the CompletionDelegate - /// The callback to be fired when audio input state changes - /// - /// Notification ID representing the registered callback if successful, an invalid NotificationId if not - /// - public ulong AddNotifyAudioInputState(AddNotifyAudioInputStateOptions options, object clientData, OnAudioInputStateCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnAudioInputStateCallbackInternal(OnAudioInputStateCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - var funcResult = Bindings.EOS_RTCAudio_AddNotifyAudioInputState(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Register to receive notifications when audio output state changed. - /// - /// If the returned NotificationId is valid, you must call when you no longer wish to - /// have your CompletionDelegate called. - /// - /// - /// - /// Arbitrary data that is passed back in the CompletionDelegate - /// The callback to be fired when audio output state changes - /// - /// Notification ID representing the registered callback if successful, an invalid NotificationId if not - /// - public ulong AddNotifyAudioOutputState(AddNotifyAudioOutputStateOptions options, object clientData, OnAudioOutputStateCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnAudioOutputStateCallbackInternal(OnAudioOutputStateCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - var funcResult = Bindings.EOS_RTCAudio_AddNotifyAudioOutputState(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Register to receive notifications when a room participant audio status is updated (f.e when speaking flag changes). - /// - /// If the returned NotificationId is valid, you must call when you no longer wish - /// to have your CompletionDelegate called. - /// - /// - /// - /// Arbitrary data that is passed back in the CompletionDelegate - /// The callback to be fired when a presence change occurs - /// - /// Notification ID representing the registered callback if successful, an invalid NotificationId if not - /// - public ulong AddNotifyParticipantUpdated(AddNotifyParticipantUpdatedOptions options, object clientData, OnParticipantUpdatedCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnParticipantUpdatedCallbackInternal(OnParticipantUpdatedCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - var funcResult = Bindings.EOS_RTCAudio_AddNotifyParticipantUpdated(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Fetches an audio input device's info from then given index. The returned value should not be cached and important - /// information should be copied off of the result object immediately. - /// - /// - /// - /// structure containing the index being accessed - /// - /// A pointer to the device information, or NULL on error. You should NOT keep hold of this pointer. - /// - public AudioInputDeviceInfo GetAudioInputDeviceByIndex(GetAudioInputDeviceByIndexOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_RTCAudio_GetAudioInputDeviceByIndex(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - AudioInputDeviceInfo funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Returns the number of audio input devices available in the system. - /// - /// The returned value should not be cached and should instead be used immediately with the - /// function. - /// - /// - /// - /// structure containing the parameters for the operation - /// - /// The number of audio input devices - /// - public uint GetAudioInputDevicesCount(GetAudioInputDevicesCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_RTCAudio_GetAudioInputDevicesCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Fetches an audio output device's info from then given index. - /// - /// The returned value should not be cached and important information should be copied off of the result object immediately. - /// - /// - /// - /// structure containing the index being accessed - /// - /// A pointer to the device information, or NULL on error. You should NOT keep hold of this pointer. - /// - public AudioOutputDeviceInfo GetAudioOutputDeviceByIndex(GetAudioOutputDeviceByIndexOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_RTCAudio_GetAudioOutputDeviceByIndex(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - AudioOutputDeviceInfo funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Returns the number of audio output devices available in the system. - /// - /// The returned value should not be cached and should instead be used immediately with the - /// function. - /// - /// - /// - /// structure containing the parameters for the operation - /// - /// The number of audio output devices - /// - public uint GetAudioOutputDevicesCount(GetAudioOutputDevicesCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_RTCAudio_GetAudioOutputDevicesCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Use this function to inform the audio system of a user. - /// - /// This function is only necessary for some platforms. - /// - /// structure containing the parameters for the operation. - /// - /// if the user was successfully registered, otherwise. - /// - public Result RegisterPlatformAudioUser(RegisterPlatformAudioUserOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_RTCAudio_RegisterPlatformAudioUser(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Unregister a previously bound notification handler from receiving remote audio buffers before they are rendered. - /// - /// The Notification ID representing the registered callback - public void RemoveNotifyAudioBeforeRender(ulong notificationId) - { - Helper.TryRemoveCallbackByNotificationId(notificationId); - - Bindings.EOS_RTCAudio_RemoveNotifyAudioBeforeRender(InnerHandle, notificationId); - } - - /// - /// Unregister a previously bound notification handler from receiving local audio buffers before they are encoded and sent. - /// - /// The Notification ID representing the registered callback - public void RemoveNotifyAudioBeforeSend(ulong notificationId) - { - Helper.TryRemoveCallbackByNotificationId(notificationId); - - Bindings.EOS_RTCAudio_RemoveNotifyAudioBeforeSend(InnerHandle, notificationId); - } - - /// - /// Unregister a previously bound notification handler from receiving audio devices notifications - /// - /// The Notification ID representing the registered callback - public void RemoveNotifyAudioDevicesChanged(ulong notificationId) - { - Helper.TryRemoveCallbackByNotificationId(notificationId); - - Bindings.EOS_RTCAudio_RemoveNotifyAudioDevicesChanged(InnerHandle, notificationId); - } - - /// - /// Unregister a previously bound notification handler from receiving notifications on audio input state changed. - /// - /// The Notification ID representing the registered callback - public void RemoveNotifyAudioInputState(ulong notificationId) - { - Helper.TryRemoveCallbackByNotificationId(notificationId); - - Bindings.EOS_RTCAudio_RemoveNotifyAudioInputState(InnerHandle, notificationId); - } - - /// - /// Unregister a previously bound notification handler from receiving notifications on audio output state changed. - /// - /// The Notification ID representing the registered callback - public void RemoveNotifyAudioOutputState(ulong notificationId) - { - Helper.TryRemoveCallbackByNotificationId(notificationId); - - Bindings.EOS_RTCAudio_RemoveNotifyAudioOutputState(InnerHandle, notificationId); - } - - /// - /// Unregister a previously bound notification handler from receiving participant updated notifications - /// - /// The Notification ID representing the registered callback - public void RemoveNotifyParticipantUpdated(ulong notificationId) - { - Helper.TryRemoveCallbackByNotificationId(notificationId); - - Bindings.EOS_RTCAudio_RemoveNotifyParticipantUpdated(InnerHandle, notificationId); - } - - /// - /// Use this function to push a new audio buffer to be sent to the participants of a room. - /// - /// This should only be used if Manual Audio Input was enabled locally for the specified room. - /// - /// - /// - /// structure containing the parameters for the operation. - /// - /// if the buffer was successfully queued for sending - /// if any of the parameters are incorrect - /// if the specified room was not found - /// if manual recording was not enabled when joining the room. - /// - public Result SendAudio(SendAudioOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_RTCAudio_SendAudio(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Use this function to set audio input settings, such as the active input device, volume, or platform AEC. - /// - /// structure containing the parameters for the operation. - /// - /// if the setting was successful - /// if any of the parameters are incorrect - /// - public Result SetAudioInputSettings(SetAudioInputSettingsOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_RTCAudio_SetAudioInputSettings(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Use this function to set audio output settings, such as the active output device or volume. - /// - /// structure containing the parameters for the operation. - /// - /// if the setting was successful - /// if any of the parameters are incorrect - /// - public Result SetAudioOutputSettings(SetAudioOutputSettingsOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_RTCAudio_SetAudioOutputSettings(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Use this function to remove a user that was added with . - /// - /// structure containing the parameters for the operation. - /// - /// if the user was successfully unregistered, otherwise. - /// - public Result UnregisterPlatformAudioUser(UnregisterPlatformAudioUserOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_RTCAudio_UnregisterPlatformAudioUser(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Use this function to tweak incoming audio options per room. - /// - /// @note Due to internal implementation details, this function requires that you first register to any notification for room - /// - /// structure containing the parameters for the operation. - /// Arbitrary data that is passed back in the CompletionDelegate - /// The callback to be fired when the operation completes, either successfully or in error - /// - /// if the operation succeeded - /// if any of the parameters are incorrect - /// if either the local user or specified participant are not in the room - /// - public void UpdateReceiving(UpdateReceivingOptions options, object clientData, OnUpdateReceivingCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnUpdateReceivingCallbackInternal(OnUpdateReceivingCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_RTCAudio_UpdateReceiving(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Use this function to tweak outgoing audio options per room. - /// - /// @note Due to internal implementation details, this function requires that you first register to any notification for room - /// - /// structure containing the parameters for the operation. - /// Arbitrary data that is passed back in the CompletionDelegate - /// The callback to be fired when the operation completes, either successfully or in error - /// - /// if the operation succeeded - /// if any of the parameters are incorrect - /// if the local user is not in the room - /// - public void UpdateSending(UpdateSendingOptions options, object clientData, OnUpdateSendingCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnUpdateSendingCallbackInternal(OnUpdateSendingCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_RTCAudio_UpdateSending(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - [MonoPInvokeCallback(typeof(OnAudioBeforeRenderCallbackInternal))] - internal static void OnAudioBeforeRenderCallbackInternalImplementation(System.IntPtr data) - { - OnAudioBeforeRenderCallback callback; - AudioBeforeRenderCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnAudioBeforeSendCallbackInternal))] - internal static void OnAudioBeforeSendCallbackInternalImplementation(System.IntPtr data) - { - OnAudioBeforeSendCallback callback; - AudioBeforeSendCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnAudioDevicesChangedCallbackInternal))] - internal static void OnAudioDevicesChangedCallbackInternalImplementation(System.IntPtr data) - { - OnAudioDevicesChangedCallback callback; - AudioDevicesChangedCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnAudioInputStateCallbackInternal))] - internal static void OnAudioInputStateCallbackInternalImplementation(System.IntPtr data) - { - OnAudioInputStateCallback callback; - AudioInputStateCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnAudioOutputStateCallbackInternal))] - internal static void OnAudioOutputStateCallbackInternalImplementation(System.IntPtr data) - { - OnAudioOutputStateCallback callback; - AudioOutputStateCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnParticipantUpdatedCallbackInternal))] - internal static void OnParticipantUpdatedCallbackInternalImplementation(System.IntPtr data) - { - OnParticipantUpdatedCallback callback; - ParticipantUpdatedCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnUpdateReceivingCallbackInternal))] - internal static void OnUpdateReceivingCallbackInternalImplementation(System.IntPtr data) - { - OnUpdateReceivingCallback callback; - UpdateReceivingCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnUpdateSendingCallbackInternal))] - internal static void OnUpdateSendingCallbackInternalImplementation(System.IntPtr data) - { - OnUpdateSendingCallback callback; - UpdateSendingCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/RTCAudioInterface.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/RTCAudioInterface.cs.meta deleted file mode 100644 index b0fd903..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/RTCAudioInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 5fc6b38d834369d4fb7f61b30980e08a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/RTCAudioOutputStatus.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/RTCAudioOutputStatus.cs deleted file mode 100644 index 9cf4d82..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/RTCAudioOutputStatus.cs +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// An enumeration of the different audio output device statuses. - /// - public enum RTCAudioOutputStatus : int - { - /// - /// The device is not in used right now (e.g: you are alone in the room). In such cases, the hardware resources are not allocated. - /// - Idle = 0, - /// - /// Device is in use - /// - Playing = 1, - /// - /// Something failed while trying to use the device - /// - Failed = 2 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/RTCAudioOutputStatus.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/RTCAudioOutputStatus.cs.meta deleted file mode 100644 index 6f2fe38..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/RTCAudioOutputStatus.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3f03e4ce29b27ce4ea342413eb8e17a9 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/RTCAudioStatus.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/RTCAudioStatus.cs deleted file mode 100644 index 656ab2e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/RTCAudioStatus.cs +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// An enumeration of the different audio channel statuses. - /// - public enum RTCAudioStatus : int - { - /// - /// Audio unsupported by the source (no devices) - /// - Unsupported = 0, - /// - /// Audio enabled - /// - Enabled = 1, - /// - /// Audio disabled - /// - Disabled = 2, - /// - /// Audio disabled by the administrator - /// - AdminDisabled = 3, - /// - /// Audio channel is disabled temporarily for both sending and receiving - /// - NotListeningDisabled = 4 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/RTCAudioStatus.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/RTCAudioStatus.cs.meta deleted file mode 100644 index 41fe5ca..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/RTCAudioStatus.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 1e9df935d70c0d742b18f49398d8b68c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/RegisterPlatformAudioUserOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/RegisterPlatformAudioUserOptions.cs deleted file mode 100644 index 544a183..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/RegisterPlatformAudioUserOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// This struct is used to inform the audio system of a user. - /// - public class RegisterPlatformAudioUserOptions - { - /// - /// Platform dependent user id. - /// - public string UserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct RegisterPlatformAudioUserOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_UserId; - - public string UserId - { - set - { - Helper.TryMarshalSet(ref m_UserId, value); - } - } - - public void Set(RegisterPlatformAudioUserOptions other) - { - if (other != null) - { - m_ApiVersion = RTCAudioInterface.RegisterplatformaudiouserApiLatest; - UserId = other.UserId; - } - } - - public void Set(object other) - { - Set(other as RegisterPlatformAudioUserOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_UserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/RegisterPlatformAudioUserOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/RegisterPlatformAudioUserOptions.cs.meta deleted file mode 100644 index 8ebe741..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/RegisterPlatformAudioUserOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ce0aa68dbd0a6f54ab46e3140a8884f9 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/SendAudioOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/SendAudioOptions.cs deleted file mode 100644 index 62c0b09..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/SendAudioOptions.cs +++ /dev/null @@ -1,83 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// This struct is used to call . - /// - public class SendAudioOptions - { - /// - /// The Product User ID of the user trying to request this operation. - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The room this event is registered on. - /// - public string RoomName { get; set; } - - /// - /// Audio buffer, which must have a duration of 10 ms. - /// @note The SDK makes a copy of buffer. There is no need to keep the buffer around after calling - /// - public AudioBuffer Buffer { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SendAudioOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RoomName; - private System.IntPtr m_Buffer; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string RoomName - { - set - { - Helper.TryMarshalSet(ref m_RoomName, value); - } - } - - public AudioBuffer Buffer - { - set - { - Helper.TryMarshalSet(ref m_Buffer, value); - } - } - - public void Set(SendAudioOptions other) - { - if (other != null) - { - m_ApiVersion = RTCAudioInterface.SendaudioApiLatest; - LocalUserId = other.LocalUserId; - RoomName = other.RoomName; - Buffer = other.Buffer; - } - } - - public void Set(object other) - { - Set(other as SendAudioOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_RoomName); - Helper.TryMarshalDispose(ref m_Buffer); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/SendAudioOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/SendAudioOptions.cs.meta deleted file mode 100644 index ce1115e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/SendAudioOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f0ece4578afbfb4469de3b4385f4c32a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/SetAudioInputSettingsOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/SetAudioInputSettingsOptions.cs deleted file mode 100644 index 1cb18de..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/SetAudioInputSettingsOptions.cs +++ /dev/null @@ -1,97 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// This struct is used to call . - /// - public class SetAudioInputSettingsOptions - { - /// - /// The Product User ID of the user trying to request this operation. - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The device Id to be used for this user. Pass NULL or empty string to use default input device. - /// - public string DeviceId { get; set; } - - /// - /// The volume to be configured for this device (range 0.0 to 100.0). - /// At the moment, the only value that produce any effect is 0.0 (silence). Any other value is ignored and causes no change to the volume. - /// - public float Volume { get; set; } - - /// - /// Enable or disable Platform AEC (Acoustic Echo Cancellation) if available. - /// - public bool PlatformAEC { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SetAudioInputSettingsOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_DeviceId; - private float m_Volume; - private int m_PlatformAEC; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string DeviceId - { - set - { - Helper.TryMarshalSet(ref m_DeviceId, value); - } - } - - public float Volume - { - set - { - m_Volume = value; - } - } - - public bool PlatformAEC - { - set - { - Helper.TryMarshalSet(ref m_PlatformAEC, value); - } - } - - public void Set(SetAudioInputSettingsOptions other) - { - if (other != null) - { - m_ApiVersion = RTCAudioInterface.SetaudioinputsettingsApiLatest; - LocalUserId = other.LocalUserId; - DeviceId = other.DeviceId; - Volume = other.Volume; - PlatformAEC = other.PlatformAEC; - } - } - - public void Set(object other) - { - Set(other as SetAudioInputSettingsOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_DeviceId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/SetAudioInputSettingsOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/SetAudioInputSettingsOptions.cs.meta deleted file mode 100644 index 253d9a7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/SetAudioInputSettingsOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0349b608ac4e19346bb4280e64936720 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/SetAudioOutputSettingsOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/SetAudioOutputSettingsOptions.cs deleted file mode 100644 index 73ecce9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/SetAudioOutputSettingsOptions.cs +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// This struct is used to call . - /// - public class SetAudioOutputSettingsOptions - { - /// - /// The Product User ID of the user who initiated this request. - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The device Id to be used for this user. Pass NULL or empty string to use default output device. - /// - public string DeviceId { get; set; } - - /// - /// The volume to be configured for this device (range 0.0 to 100.0). Volume 50 means that the audio volume is not modified - /// and stays in its source value. - /// - public float Volume { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SetAudioOutputSettingsOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_DeviceId; - private float m_Volume; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string DeviceId - { - set - { - Helper.TryMarshalSet(ref m_DeviceId, value); - } - } - - public float Volume - { - set - { - m_Volume = value; - } - } - - public void Set(SetAudioOutputSettingsOptions other) - { - if (other != null) - { - m_ApiVersion = RTCAudioInterface.SetaudiooutputsettingsApiLatest; - LocalUserId = other.LocalUserId; - DeviceId = other.DeviceId; - Volume = other.Volume; - } - } - - public void Set(object other) - { - Set(other as SetAudioOutputSettingsOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_DeviceId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/SetAudioOutputSettingsOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/SetAudioOutputSettingsOptions.cs.meta deleted file mode 100644 index 8e89325..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/SetAudioOutputSettingsOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a1da8b72e3a37a842bed13ee9f9e322e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/UnregisterPlatformAudioUserOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/UnregisterPlatformAudioUserOptions.cs deleted file mode 100644 index d629cd1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/UnregisterPlatformAudioUserOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// This struct is used to remove a user from the audio system. - /// - public class UnregisterPlatformAudioUserOptions - { - /// - /// The account of a user associated with this event. - /// - public string UserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct UnregisterPlatformAudioUserOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_UserId; - - public string UserId - { - set - { - Helper.TryMarshalSet(ref m_UserId, value); - } - } - - public void Set(UnregisterPlatformAudioUserOptions other) - { - if (other != null) - { - m_ApiVersion = RTCAudioInterface.UnregisterplatformaudiouserApiLatest; - UserId = other.UserId; - } - } - - public void Set(object other) - { - Set(other as UnregisterPlatformAudioUserOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_UserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/UnregisterPlatformAudioUserOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/UnregisterPlatformAudioUserOptions.cs.meta deleted file mode 100644 index dc987d6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/UnregisterPlatformAudioUserOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d110cfb7c0d0b1444bca55b9bdf40aa4 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/UpdateReceivingCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/UpdateReceivingCallbackInfo.cs deleted file mode 100644 index 7dec8ff..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/UpdateReceivingCallbackInfo.cs +++ /dev/null @@ -1,143 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// This struct is passed in with a call to . - /// - public class UpdateReceivingCallbackInfo : ICallbackInfo, ISettable - { - /// - /// This returns: - /// if the users were successfully unblocked. - /// otherwise. - /// - public Result ResultCode { get; private set; } - - /// - /// Client-specified data passed into . - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the user who initiated this request. - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The room this settings should be applied on. - /// - public string RoomName { get; private set; } - - /// - /// The participant to modify or null to update the global configuration - /// - public ProductUserId ParticipantId { get; private set; } - - /// - /// Muted or unmuted audio track - /// - public bool AudioEnabled { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(UpdateReceivingCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - RoomName = other.Value.RoomName; - ParticipantId = other.Value.ParticipantId; - AudioEnabled = other.Value.AudioEnabled; - } - } - - public void Set(object other) - { - Set(other as UpdateReceivingCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct UpdateReceivingCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RoomName; - private System.IntPtr m_ParticipantId; - private int m_AudioEnabled; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public string RoomName - { - get - { - string value; - Helper.TryMarshalGet(m_RoomName, out value); - return value; - } - } - - public ProductUserId ParticipantId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_ParticipantId, out value); - return value; - } - } - - public bool AudioEnabled - { - get - { - bool value; - Helper.TryMarshalGet(m_AudioEnabled, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/UpdateReceivingCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/UpdateReceivingCallbackInfo.cs.meta deleted file mode 100644 index c90f30a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/UpdateReceivingCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 8ce851f17f2e42d41b85a57af8904ae8 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/UpdateReceivingOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/UpdateReceivingOptions.cs deleted file mode 100644 index 646c443..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/UpdateReceivingOptions.cs +++ /dev/null @@ -1,97 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// This struct is passed in with a call to . - /// - public class UpdateReceivingOptions - { - /// - /// The Product User ID of the user trying to request this operation. - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The room this settings should be applied on. - /// - public string RoomName { get; set; } - - /// - /// The participant to modify or null to update the global configuration - /// - public ProductUserId ParticipantId { get; set; } - - /// - /// Mute or unmute audio track - /// - public bool AudioEnabled { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct UpdateReceivingOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RoomName; - private System.IntPtr m_ParticipantId; - private int m_AudioEnabled; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string RoomName - { - set - { - Helper.TryMarshalSet(ref m_RoomName, value); - } - } - - public ProductUserId ParticipantId - { - set - { - Helper.TryMarshalSet(ref m_ParticipantId, value); - } - } - - public bool AudioEnabled - { - set - { - Helper.TryMarshalSet(ref m_AudioEnabled, value); - } - } - - public void Set(UpdateReceivingOptions other) - { - if (other != null) - { - m_ApiVersion = RTCAudioInterface.UpdatereceivingApiLatest; - LocalUserId = other.LocalUserId; - RoomName = other.RoomName; - ParticipantId = other.ParticipantId; - AudioEnabled = other.AudioEnabled; - } - } - - public void Set(object other) - { - Set(other as UpdateReceivingOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_RoomName); - Helper.TryMarshalDispose(ref m_ParticipantId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/UpdateReceivingOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/UpdateReceivingOptions.cs.meta deleted file mode 100644 index 0acaafb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/UpdateReceivingOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 042b43c1d102db74384481ae3b3e1bd4 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/UpdateSendingCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/UpdateSendingCallbackInfo.cs deleted file mode 100644 index 67d0b4c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/UpdateSendingCallbackInfo.cs +++ /dev/null @@ -1,124 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// This struct is passed in with a call to . - /// - public class UpdateSendingCallbackInfo : ICallbackInfo, ISettable - { - /// - /// This returns: - /// if the channel was successfully blocked. - /// otherwise. - /// - public Result ResultCode { get; private set; } - - /// - /// Client-specified data passed into . - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the user who initiated this request. - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The room this settings should be applied on. - /// - public string RoomName { get; private set; } - - /// - /// Muted or unmuted audio track status - /// - public RTCAudioStatus AudioStatus { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(UpdateSendingCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - RoomName = other.Value.RoomName; - AudioStatus = other.Value.AudioStatus; - } - } - - public void Set(object other) - { - Set(other as UpdateSendingCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct UpdateSendingCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RoomName; - private RTCAudioStatus m_AudioStatus; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public string RoomName - { - get - { - string value; - Helper.TryMarshalGet(m_RoomName, out value); - return value; - } - } - - public RTCAudioStatus AudioStatus - { - get - { - return m_AudioStatus; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/UpdateSendingCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/UpdateSendingCallbackInfo.cs.meta deleted file mode 100644 index 6d2da80..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/UpdateSendingCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 33eb252b56b540046931c1178cd098bb -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/UpdateSendingOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/UpdateSendingOptions.cs deleted file mode 100644 index 1f6638f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/UpdateSendingOptions.cs +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.RTCAudio -{ - /// - /// This struct is passed in with a call to - /// - public class UpdateSendingOptions - { - /// - /// The Product User ID of the user trying to request this operation. - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The room this settings should be applied on. - /// - public string RoomName { get; set; } - - /// - /// Muted or unmuted audio track status - /// - public RTCAudioStatus AudioStatus { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct UpdateSendingOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_RoomName; - private RTCAudioStatus m_AudioStatus; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string RoomName - { - set - { - Helper.TryMarshalSet(ref m_RoomName, value); - } - } - - public RTCAudioStatus AudioStatus - { - set - { - m_AudioStatus = value; - } - } - - public void Set(UpdateSendingOptions other) - { - if (other != null) - { - m_ApiVersion = RTCAudioInterface.UpdatesendingApiLatest; - LocalUserId = other.LocalUserId; - RoomName = other.RoomName; - AudioStatus = other.AudioStatus; - } - } - - public void Set(object other) - { - Set(other as UpdateSendingOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_RoomName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/UpdateSendingOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/UpdateSendingOptions.cs.meta deleted file mode 100644 index dcaebd3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/RTCAudio/UpdateSendingOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 85c249c64a339c8469c4c3fbcfa84b6a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports.meta deleted file mode 100644 index ebbe80b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 7f26f9005823d0b44a7df1341792b5ae -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports/OnSendPlayerBehaviorReportCompleteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports/OnSendPlayerBehaviorReportCompleteCallback.cs deleted file mode 100644 index 5791de9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports/OnSendPlayerBehaviorReportCompleteCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Reports -{ - /// - /// Function prototype definition for callbacks passed to . - /// - /// A containing the output information and result. - public delegate void OnSendPlayerBehaviorReportCompleteCallback(SendPlayerBehaviorReportCompleteCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnSendPlayerBehaviorReportCompleteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports/OnSendPlayerBehaviorReportCompleteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports/OnSendPlayerBehaviorReportCompleteCallback.cs.meta deleted file mode 100644 index 47b64e1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports/OnSendPlayerBehaviorReportCompleteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 60651801d9710bb41974093c76ab43ad -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports/PlayerReportsCategory.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports/PlayerReportsCategory.cs deleted file mode 100644 index c11e47b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports/PlayerReportsCategory.cs +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Reports -{ - /// - /// An enumeration of the different player behavior categories that can be reported. - /// - public enum PlayerReportsCategory : int - { - /// - /// Not used - /// - Invalid = 0, - /// - /// The reported player is cheating - /// - Cheating = 1, - /// - /// The reported player is exploiting the game - /// - Exploiting = 2, - /// - /// The reported player has an offensive profile, name, etc - /// - OffensiveProfile = 3, - /// - /// The reported player is being abusive in chat - /// - VerbalAbuse = 4, - /// - /// The reported player is scamming other players - /// - Scamming = 5, - /// - /// The reported player is spamming chat - /// - Spamming = 6, - /// - /// The player is being reported for something else - /// - Other = 7 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports/PlayerReportsCategory.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports/PlayerReportsCategory.cs.meta deleted file mode 100644 index 16c8bb6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports/PlayerReportsCategory.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9f00ddacacd5b7e40915dcf34556a439 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports/ReportsInterface.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports/ReportsInterface.cs deleted file mode 100644 index 6d5b94b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports/ReportsInterface.cs +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Reports -{ - public sealed partial class ReportsInterface : Handle - { - public ReportsInterface() - { - } - - public ReportsInterface(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// Max length of a report context JSON payload, not including the null terminator. - /// - public const int ReportcontextMaxLength = 4096; - - /// - /// Max length of a report message text, not including the null terminator. - /// - public const int ReportmessageMaxLength = 512; - - /// - /// The most recent version of the API. - /// - public const int SendplayerbehaviorreportApiLatest = 2; - - /// - /// Sends the provided report directly to the Epic Online Services back-end. - /// - /// Structure containing the player report information. - /// Optional client data provided by the user of the SDK. - /// This function is called when the send operation completes. - public void SendPlayerBehaviorReport(SendPlayerBehaviorReportOptions options, object clientData, OnSendPlayerBehaviorReportCompleteCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnSendPlayerBehaviorReportCompleteCallbackInternal(OnSendPlayerBehaviorReportCompleteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Reports_SendPlayerBehaviorReport(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - [MonoPInvokeCallback(typeof(OnSendPlayerBehaviorReportCompleteCallbackInternal))] - internal static void OnSendPlayerBehaviorReportCompleteCallbackInternalImplementation(System.IntPtr data) - { - OnSendPlayerBehaviorReportCompleteCallback callback; - SendPlayerBehaviorReportCompleteCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports/ReportsInterface.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports/ReportsInterface.cs.meta deleted file mode 100644 index b02ef24..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports/ReportsInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b5ce7f3683cccb0488c5ee4a8ff9d77a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports/SendPlayerBehaviorReportCompleteCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports/SendPlayerBehaviorReportCompleteCallbackInfo.cs deleted file mode 100644 index fcde539..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports/SendPlayerBehaviorReportCompleteCallbackInfo.cs +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Reports -{ - /// - /// Output parameters for the function. - /// - public class SendPlayerBehaviorReportCompleteCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into . - /// - public object ClientData { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(SendPlayerBehaviorReportCompleteCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - } - } - - public void Set(object other) - { - Set(other as SendPlayerBehaviorReportCompleteCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SendPlayerBehaviorReportCompleteCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports/SendPlayerBehaviorReportCompleteCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports/SendPlayerBehaviorReportCompleteCallbackInfo.cs.meta deleted file mode 100644 index 46ca68b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports/SendPlayerBehaviorReportCompleteCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4923af1ecc797044682083b34786b660 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports/SendPlayerBehaviorReportOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports/SendPlayerBehaviorReportOptions.cs deleted file mode 100644 index 36b0632..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports/SendPlayerBehaviorReportOptions.cs +++ /dev/null @@ -1,120 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Reports -{ - /// - /// Input parameters for the function. - /// - public class SendPlayerBehaviorReportOptions - { - /// - /// Product User ID of the reporting player - /// - public ProductUserId ReporterUserId { get; set; } - - /// - /// Product User ID of the reported player. - /// - public ProductUserId ReportedUserId { get; set; } - - /// - /// Category for the player report. - /// - public PlayerReportsCategory Category { get; set; } - - /// - /// Optional plain text string associated with the report as UTF-8 encoded null-terminated string. - /// - /// The length of the message can be at maximum up to bytes - /// and any excess characters will be truncated upon sending the report. - /// - public string Message { get; set; } - - /// - /// Optional JSON string associated with the report as UTF-8 encoded null-terminated string. - /// This is intended as a way to associate arbitrary structured context information with a report. - /// - /// This string needs to be valid JSON, report will fail otherwise. - /// The length of the context can be at maximum up to bytes, not including the null terminator, report will fail otherwise. - /// - public string Context { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SendPlayerBehaviorReportOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_ReporterUserId; - private System.IntPtr m_ReportedUserId; - private PlayerReportsCategory m_Category; - private System.IntPtr m_Message; - private System.IntPtr m_Context; - - public ProductUserId ReporterUserId - { - set - { - Helper.TryMarshalSet(ref m_ReporterUserId, value); - } - } - - public ProductUserId ReportedUserId - { - set - { - Helper.TryMarshalSet(ref m_ReportedUserId, value); - } - } - - public PlayerReportsCategory Category - { - set - { - m_Category = value; - } - } - - public string Message - { - set - { - Helper.TryMarshalSet(ref m_Message, value); - } - } - - public string Context - { - set - { - Helper.TryMarshalSet(ref m_Context, value); - } - } - - public void Set(SendPlayerBehaviorReportOptions other) - { - if (other != null) - { - m_ApiVersion = ReportsInterface.SendplayerbehaviorreportApiLatest; - ReporterUserId = other.ReporterUserId; - ReportedUserId = other.ReportedUserId; - Category = other.Category; - Message = other.Message; - Context = other.Context; - } - } - - public void Set(object other) - { - Set(other as SendPlayerBehaviorReportOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_ReporterUserId); - Helper.TryMarshalDispose(ref m_ReportedUserId); - Helper.TryMarshalDispose(ref m_Message); - Helper.TryMarshalDispose(ref m_Context); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports/SendPlayerBehaviorReportOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports/SendPlayerBehaviorReportOptions.cs.meta deleted file mode 100644 index 5f3fc3b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Reports/SendPlayerBehaviorReportOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 8525abbeb4439624d829ba97beaa4b72 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Result.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Result.cs deleted file mode 100644 index 4baaef2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Result.cs +++ /dev/null @@ -1,809 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices -{ - public enum Result : int - { - /// - /// Successful result. no further error processing needed - /// - Success = 0, - /// - /// Failed due to no connection - /// - NoConnection = 1, - /// - /// Failed login due to invalid credentials - /// - InvalidCredentials = 2, - /// - /// Failed due to invalid or missing user - /// - InvalidUser = 3, - /// - /// Failed due to invalid or missing authentication token for user (e.g. not logged in) - /// - InvalidAuth = 4, - /// - /// Failed due to invalid access - /// - AccessDenied = 5, - /// - /// If the client does not possess the permission required - /// - MissingPermissions = 6, - /// - /// If the token provided does not represent an account - /// - TokenNotAccount = 7, - /// - /// Throttled due to too many requests - /// - TooManyRequests = 8, - /// - /// Async request was already pending - /// - AlreadyPending = 9, - /// - /// Invalid parameters specified for request - /// - InvalidParameters = 10, - /// - /// Invalid request - /// - InvalidRequest = 11, - /// - /// Failed due to unable to parse or recognize a backend response - /// - UnrecognizedResponse = 12, - /// - /// Incompatible client for backend version - /// - IncompatibleVersion = 13, - /// - /// Not configured correctly for use - /// - NotConfigured = 14, - /// - /// Already configured for use. - /// - AlreadyConfigured = 15, - /// - /// Feature not available on this implementation - /// - NotImplemented = 16, - /// - /// Operation was canceled (likely by user) - /// - Canceled = 17, - /// - /// The requested information was not found - /// - NotFound = 18, - /// - /// An error occurred during an asynchronous operation, and it will be retried. Callbacks receiving this result will be called again in the future. - /// - OperationWillRetry = 19, - /// - /// The request had no effect - /// - NoChange = 20, - /// - /// The request attempted to use multiple or inconsistent API versions - /// - VersionMismatch = 21, - /// - /// A maximum limit was exceeded on the client, different from - /// - LimitExceeded = 22, - /// - /// Feature or client ID performing the operation has been disabled. - /// - Disabled = 23, - /// - /// Duplicate entry not allowed - /// - DuplicateNotAllowed = 24, - /// - /// Required parameters are missing. DEPRECATED: This error is no longer used. - /// - MissingParametersDEPRECATED = 25, - /// - /// Sandbox ID is invalid - /// - InvalidSandboxId = 26, - /// - /// Request timed out - /// - TimedOut = 27, - /// - /// A query returned some but not all of the requested results. - /// - PartialResult = 28, - /// - /// Client is missing the whitelisted role - /// - MissingRole = 29, - /// - /// Client is missing the whitelisted feature - /// - MissingFeature = 30, - /// - /// The sandbox given to the backend is invalid - /// - InvalidSandbox = 31, - /// - /// The deployment given to the backend is invalid - /// - InvalidDeployment = 32, - /// - /// The product ID specified to the backend is invalid - /// - InvalidProduct = 33, - /// - /// The product user ID specified to the backend is invalid - /// - InvalidProductUserID = 34, - /// - /// There was a failure with the backend service - /// - ServiceFailure = 35, - /// - /// Cache directory is not set in platform options. - /// - CacheDirectoryMissing = 36, - /// - /// Cache directory is not accessible. - /// - CacheDirectoryInvalid = 37, - /// - /// The request failed because resource was in an invalid state - /// - InvalidState = 38, - /// - /// Request is in progress - /// - RequestInProgress = 39, - /// - /// Account locked due to login failures - /// - AuthAccountLocked = 1001, - /// - /// Account locked by update operation. - /// - AuthAccountLockedForUpdate = 1002, - /// - /// Refresh token used was invalid - /// - AuthInvalidRefreshToken = 1003, - /// - /// Invalid access token, typically when switching between backend environments - /// - AuthInvalidToken = 1004, - /// - /// Invalid bearer token - /// - AuthAuthenticationFailure = 1005, - /// - /// Invalid platform token - /// - AuthInvalidPlatformToken = 1006, - /// - /// Auth parameters are not associated with this account - /// - AuthWrongAccount = 1007, - /// - /// Auth parameters are not associated with this client - /// - AuthWrongClient = 1008, - /// - /// Full account is required - /// - AuthFullAccountRequired = 1009, - /// - /// Headless account is required - /// - AuthHeadlessAccountRequired = 1010, - /// - /// Password reset is required - /// - AuthPasswordResetRequired = 1011, - /// - /// Password was previously used and cannot be reused - /// - AuthPasswordCannotBeReused = 1012, - /// - /// Authorization code/exchange code has expired - /// - AuthExpired = 1013, - /// - /// Consent has not been given by the user - /// - AuthScopeConsentRequired = 1014, - /// - /// The application has no profile on the backend - /// - AuthApplicationNotFound = 1015, - /// - /// The requested consent wasn't found on the backend - /// - AuthScopeNotFound = 1016, - /// - /// This account has been denied access to login - /// - AuthAccountFeatureRestricted = 1017, - /// - /// Pin grant code initiated - /// - AuthPinGrantCode = 1020, - /// - /// Pin grant code attempt expired - /// - AuthPinGrantExpired = 1021, - /// - /// Pin grant code attempt pending - /// - AuthPinGrantPending = 1022, - /// - /// External auth source did not yield an account - /// - AuthExternalAuthNotLinked = 1030, - /// - /// External auth access revoked - /// - AuthExternalAuthRevoked = 1032, - /// - /// External auth token cannot be interpreted - /// - AuthExternalAuthInvalid = 1033, - /// - /// External auth cannot be linked to his account due to restrictions - /// - AuthExternalAuthRestricted = 1034, - /// - /// External auth cannot be used for login - /// - AuthExternalAuthCannotLogin = 1035, - /// - /// External auth is expired - /// - AuthExternalAuthExpired = 1036, - /// - /// External auth cannot be removed since it's the last possible way to login - /// - AuthExternalAuthIsLastLoginType = 1037, - /// - /// Exchange code not found - /// - AuthExchangeCodeNotFound = 1040, - /// - /// Originating exchange code session has expired - /// - AuthOriginatingExchangeCodeSessionExpired = 1041, - /// - /// The account has been disabled and cannot be used for authentication - /// - AuthPersistentAuthAccountNotActive = 1050, - /// - /// MFA challenge required - /// - AuthMFARequired = 1060, - /// - /// Parental locks are in place - /// - AuthParentalControls = 1070, - /// - /// Korea real ID association required but missing - /// - AuthNoRealId = 1080, - /// - /// An outgoing friend invitation is awaiting acceptance; sending another invite to the same user is erroneous - /// - FriendsInviteAwaitingAcceptance = 2000, - /// - /// There is no friend invitation to accept/reject - /// - FriendsNoInvitation = 2001, - /// - /// Users are already friends, so sending another invite is erroneous - /// - FriendsAlreadyFriends = 2003, - /// - /// Users are not friends, so deleting the friend is erroneous - /// - FriendsNotFriends = 2004, - /// - /// Remote user has too many invites to receive new invites - /// - FriendsTargetUserTooManyInvites = 2005, - /// - /// Local user has too many invites to send new invites - /// - FriendsLocalUserTooManyInvites = 2006, - /// - /// Remote user has too many friends to make a new friendship - /// - FriendsTargetUserFriendLimitExceeded = 2007, - /// - /// Local user has too many friends to make a new friendship - /// - FriendsLocalUserFriendLimitExceeded = 2008, - /// - /// Request data was null or invalid - /// - PresenceDataInvalid = 3000, - /// - /// Request contained too many or too few unique data items, or the request would overflow the maximum amount of data allowed - /// - PresenceDataLengthInvalid = 3001, - /// - /// Request contained data with an invalid key - /// - PresenceDataKeyInvalid = 3002, - /// - /// Request contained data with a key too long or too short - /// - PresenceDataKeyLengthInvalid = 3003, - /// - /// Request contained data with an invalid value - /// - PresenceDataValueInvalid = 3004, - /// - /// Request contained data with a value too long - /// - PresenceDataValueLengthInvalid = 3005, - /// - /// Request contained an invalid rich text string - /// - PresenceRichTextInvalid = 3006, - /// - /// Request contained a rich text string that was too long - /// - PresenceRichTextLengthInvalid = 3007, - /// - /// Request contained an invalid status state - /// - PresenceStatusInvalid = 3008, - /// - /// The entitlement retrieved is stale, requery for updated information - /// - EcomEntitlementStale = 4000, - /// - /// The offer retrieved is stale, requery for updated information - /// - EcomCatalogOfferStale = 4001, - /// - /// The item or associated structure retrieved is stale, requery for updated information - /// - EcomCatalogItemStale = 4002, - /// - /// The one or more offers has an invalid price. This may be caused by the price setup. - /// - EcomCatalogOfferPriceInvalid = 4003, - /// - /// The checkout page failed to load - /// - EcomCheckoutLoadError = 4004, - /// - /// Session is already in progress - /// - SessionsSessionInProgress = 5000, - /// - /// Too many players to register with this session - /// - SessionsTooManyPlayers = 5001, - /// - /// Client has no permissions to access this session - /// - SessionsNoPermission = 5002, - /// - /// Session already exists in the system - /// - SessionsSessionAlreadyExists = 5003, - /// - /// Session lock required for operation - /// - SessionsInvalidLock = 5004, - /// - /// Invalid session reference - /// - SessionsInvalidSession = 5005, - /// - /// Sandbox ID associated with auth didn't match - /// - SessionsSandboxNotAllowed = 5006, - /// - /// Invite failed to send - /// - SessionsInviteFailed = 5007, - /// - /// Invite was not found with the service - /// - SessionsInviteNotFound = 5008, - /// - /// This client may not modify the session - /// - SessionsUpsertNotAllowed = 5009, - /// - /// Backend nodes unavailable to process request - /// - SessionsAggregationFailed = 5010, - /// - /// Individual backend node is as capacity - /// - SessionsHostAtCapacity = 5011, - /// - /// Sandbox on node is at capacity - /// - SessionsSandboxAtCapacity = 5012, - /// - /// An anonymous operation was attempted on a non anonymous session - /// - SessionsSessionNotAnonymous = 5013, - /// - /// Session is currently out of sync with the backend, data is saved locally but needs to sync with backend - /// - SessionsOutOfSync = 5014, - /// - /// User has received too many invites - /// - SessionsTooManyInvites = 5015, - /// - /// Presence session already exists for the client - /// - SessionsPresenceSessionExists = 5016, - /// - /// Deployment on node is at capacity - /// - SessionsDeploymentAtCapacity = 5017, - /// - /// Session operation not allowed - /// - SessionsNotAllowed = 5018, - /// - /// Request filename was invalid - /// - PlayerDataStorageFilenameInvalid = 6000, - /// - /// Request filename was too long - /// - PlayerDataStorageFilenameLengthInvalid = 6001, - /// - /// Request filename contained invalid characters - /// - PlayerDataStorageFilenameInvalidChars = 6002, - /// - /// Request operation would grow file too large - /// - PlayerDataStorageFileSizeTooLarge = 6003, - /// - /// Request file length is not valid - /// - PlayerDataStorageFileSizeInvalid = 6004, - /// - /// Request file handle is not valid - /// - PlayerDataStorageFileHandleInvalid = 6005, - /// - /// Request data is invalid - /// - PlayerDataStorageDataInvalid = 6006, - /// - /// Request data length was invalid - /// - PlayerDataStorageDataLengthInvalid = 6007, - /// - /// Request start index was invalid - /// - PlayerDataStorageStartIndexInvalid = 6008, - /// - /// Request is in progress - /// - PlayerDataStorageRequestInProgress = 6009, - /// - /// User is marked as throttled which means he can't perform some operations because limits are exceeded. - /// - PlayerDataStorageUserThrottled = 6010, - /// - /// Encryption key is not set during SDK init. - /// - PlayerDataStorageEncryptionKeyNotSet = 6011, - /// - /// User data callback returned error (:: or ::) - /// - PlayerDataStorageUserErrorFromDataCallback = 6012, - /// - /// User is trying to read file that has header from newer version of SDK. Game/SDK needs to be updated. - /// - PlayerDataStorageFileHeaderHasNewerVersion = 6013, - /// - /// The file is corrupted. In some cases retry can fix the issue. - /// - PlayerDataStorageFileCorrupted = 6014, - /// - /// EOS Auth service deemed the external token invalid - /// - ConnectExternalTokenValidationFailed = 7000, - /// - /// EOS Auth user already exists - /// - ConnectUserAlreadyExists = 7001, - /// - /// EOS Auth expired - /// - ConnectAuthExpired = 7002, - /// - /// EOS Auth invalid token - /// - ConnectInvalidToken = 7003, - /// - /// EOS Auth doesn't support this token type - /// - ConnectUnsupportedTokenType = 7004, - /// - /// EOS Auth Account link failure - /// - ConnectLinkAccountFailed = 7005, - /// - /// EOS Auth External service for validation was unavailable - /// - ConnectExternalServiceUnavailable = 7006, - /// - /// EOS Auth External Service configuration failure with Dev Portal - /// - ConnectExternalServiceConfigurationFailure = 7007, - /// - /// EOS Auth Account link failure. Tried to link Nintendo Network Service Account without first linking Nintendo Account. DEPRECATED: The requirement has been removed and this error is no longer used. - /// - ConnectLinkAccountFailedMissingNintendoIdAccountDEPRECATED = 7008, - /// - /// The social overlay page failed to load - /// - SocialOverlayLoadError = 8000, - /// - /// Client has no permissions to modify this lobby - /// - LobbyNotOwner = 9000, - /// - /// Lobby lock required for operation - /// - LobbyInvalidLock = 9001, - /// - /// Lobby already exists in the system - /// - LobbyLobbyAlreadyExists = 9002, - /// - /// Lobby is already in progress - /// - LobbySessionInProgress = 9003, - /// - /// Too many players to register with this lobby - /// - LobbyTooManyPlayers = 9004, - /// - /// Client has no permissions to access this lobby - /// - LobbyNoPermission = 9005, - /// - /// Invalid lobby session reference - /// - LobbyInvalidSession = 9006, - /// - /// Sandbox ID associated with auth didn't match - /// - LobbySandboxNotAllowed = 9007, - /// - /// Invite failed to send - /// - LobbyInviteFailed = 9008, - /// - /// Invite was not found with the service - /// - LobbyInviteNotFound = 9009, - /// - /// This client may not modify the lobby - /// - LobbyUpsertNotAllowed = 9010, - /// - /// Backend nodes unavailable to process request - /// - LobbyAggregationFailed = 9011, - /// - /// Individual backend node is as capacity - /// - LobbyHostAtCapacity = 9012, - /// - /// Sandbox on node is at capacity - /// - LobbySandboxAtCapacity = 9013, - /// - /// User has received too many invites - /// - LobbyTooManyInvites = 9014, - /// - /// Deployment on node is at capacity - /// - LobbyDeploymentAtCapacity = 9015, - /// - /// Lobby operation not allowed - /// - LobbyNotAllowed = 9016, - /// - /// While restoring a lost connection lobby ownership changed and only local member data was updated - /// - LobbyMemberUpdateOnly = 9017, - /// - /// Presence lobby already exists for the client - /// - LobbyPresenceLobbyExists = 9018, - /// - /// User callback that receives data from storage returned error. - /// - TitleStorageUserErrorFromDataCallback = 10000, - /// - /// User forgot to set Encryption key during platform init. Title Storage can't work without it. - /// - TitleStorageEncryptionKeyNotSet = 10001, - /// - /// Downloaded file is corrupted. - /// - TitleStorageFileCorrupted = 10002, - /// - /// Downloaded file's format is newer than client SDK version. - /// - TitleStorageFileHeaderHasNewerVersion = 10003, - /// - /// ModSdk process is already running. This error comes from the EOSSDK. - /// - ModsModSdkProcessIsAlreadyRunning = 11000, - /// - /// ModSdk command is empty. Either the ModSdk configuration file is missing or the manifest location is empty. - /// - ModsModSdkCommandIsEmpty = 11001, - /// - /// Creation of the ModSdk process failed. This error comes from the SDK. - /// - ModsModSdkProcessCreationFailed = 11002, - /// - /// A critical error occurred in the external ModSdk process that we were unable to resolve. - /// - ModsCriticalError = 11003, - /// - /// A internal error occurred in the external ModSdk process that we were unable to resolve. - /// - ModsToolInternalError = 11004, - /// - /// A IPC failure occurred in the external ModSdk process. - /// - ModsIPCFailure = 11005, - /// - /// A invalid IPC response received in the external ModSdk process. - /// - ModsInvalidIPCResponse = 11006, - /// - /// A URI Launch failure occurred in the external ModSdk process. - /// - ModsURILaunchFailure = 11007, - /// - /// Attempting to perform an action with a mod that is not installed. This error comes from the external ModSdk process. - /// - ModsModIsNotInstalled = 11008, - /// - /// Attempting to perform an action on a game that the user doesn't own. This error comes from the external ModSdk process. - /// - ModsUserDoesNotOwnTheGame = 11009, - /// - /// Invalid result of the request to get the offer for the mod. This error comes from the external ModSdk process. - /// - ModsOfferRequestByIdInvalidResult = 11010, - /// - /// Could not find the offer for the mod. This error comes from the external ModSdk process. - /// - ModsCouldNotFindOffer = 11011, - /// - /// Request to get the offer for the mod failed. This error comes from the external ModSdk process. - /// - ModsOfferRequestByIdFailure = 11012, - /// - /// Request to purchase the mod failed. This error comes from the external ModSdk process. - /// - ModsPurchaseFailure = 11013, - /// - /// Attempting to perform an action on a game that is not installed or is partially installed. This error comes from the external ModSdk process. - /// - ModsInvalidGameInstallInfo = 11014, - /// - /// Failed to get manifest location. Either the ModSdk configuration file is missing or the manifest location is empty - /// - ModsCannotGetManifestLocation = 11015, - /// - /// Attempting to perform an action with a mod that does not support the current operating system. - /// - ModsUnsupportedOS = 11016, - /// - /// The anti-cheat client protection is not available. Check that the game was started using the correct launcher. - /// - AntiCheatClientProtectionNotAvailable = 12000, - /// - /// The current anti-cheat mode is incorrect for using this API - /// - AntiCheatInvalidMode = 12001, - /// - /// The ProductId provided to the anti-cheat client helper executable does not match what was used to initialize the EOS SDK - /// - AntiCheatClientProductIdMismatch = 12002, - /// - /// The SandboxId provided to the anti-cheat client helper executable does not match what was used to initialize the EOS SDK - /// - AntiCheatClientSandboxIdMismatch = 12003, - /// - /// (ProtectMessage/UnprotectMessage) No session key is available, but it is required to complete this operation - /// - AntiCheatProtectMessageSessionKeyRequired = 12004, - /// - /// (ProtectMessage/UnprotectMessage) Message integrity is invalid - /// - AntiCheatProtectMessageValidationFailed = 12005, - /// - /// (ProtectMessage/UnprotectMessage) Initialization failed - /// - AntiCheatProtectMessageInitializationFailed = 12006, - /// - /// (RegisterPeer) Peer is already registered - /// - AntiCheatPeerAlreadyRegistered = 12007, - /// - /// (UnregisterPeer) Peer does not exist - /// - AntiCheatPeerNotFound = 12008, - /// - /// (ReceiveMessageFromPeer) Invalid call: Peer is not protected - /// - AntiCheatPeerNotProtected = 12009, - /// - /// EOS RTC room cannot accept more participants - /// - TooManyParticipants = 13000, - /// - /// EOS RTC room already exists - /// - RoomAlreadyExists = 13001, - /// - /// The user kicked out from the room - /// - UserKicked = 13002, - /// - /// The user is banned - /// - UserBanned = 13003, - /// - /// EOS RTC room was left successfully - /// - RoomWasLeft = 13004, - /// - /// Connection dropped due to long timeout - /// - ReconnectionTimegateExpired = 13005, - /// - /// The number of available Snapshot IDs have all been exhausted. - /// - ProgressionSnapshotSnapshotIdUnavailable = 14000, - /// - /// The KWS user does not have a parental email associated with the account. The parent account was unlinked or deleted - /// - ParentEmailMissing = 15000, - /// - /// The KWS user is no longer a minor and trying to update the parent email - /// - UserGraduated = 15001, - /// - /// EOS Android VM not stored - /// - AndroidJavaVMNotStored = 17000, - /// - /// An unexpected error that we cannot identify has occurred. - /// - UnexpectedError = 0x7FFFFFFF - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Result.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Result.cs.meta deleted file mode 100644 index 6e4b7c1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Result.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 6d93d0f0c9350374c8e0083651aea3ad -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions.meta deleted file mode 100644 index ff3f9f5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 60959b091d85165428ea7a0a67c53cf6 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/CopyPlayerSanctionByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/CopyPlayerSanctionByIndexOptions.cs deleted file mode 100644 index cd726c0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/CopyPlayerSanctionByIndexOptions.cs +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sanctions -{ - /// - /// Input parameters for the function - /// - public class CopyPlayerSanctionByIndexOptions - { - /// - /// Product User ID of the user whose active sanctions are to be copied - /// - public ProductUserId TargetUserId { get; set; } - - /// - /// Index of the sanction to retrieve from the cache - /// - public uint SanctionIndex { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyPlayerSanctionByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_TargetUserId; - private uint m_SanctionIndex; - - public ProductUserId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public uint SanctionIndex - { - set - { - m_SanctionIndex = value; - } - } - - public void Set(CopyPlayerSanctionByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = SanctionsInterface.CopyplayersanctionbyindexApiLatest; - TargetUserId = other.TargetUserId; - SanctionIndex = other.SanctionIndex; - } - } - - public void Set(object other) - { - Set(other as CopyPlayerSanctionByIndexOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/CopyPlayerSanctionByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/CopyPlayerSanctionByIndexOptions.cs.meta deleted file mode 100644 index 73d23ce..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/CopyPlayerSanctionByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 72f68e4c3ffcd724aab25b4dc310bdbf -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/GetPlayerSanctionCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/GetPlayerSanctionCountOptions.cs deleted file mode 100644 index 1c0583c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/GetPlayerSanctionCountOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sanctions -{ - /// - /// Input parameters for the function. - /// - public class GetPlayerSanctionCountOptions - { - /// - /// Product User ID of the user whose sanction count should be returned - /// - public ProductUserId TargetUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetPlayerSanctionCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_TargetUserId; - - public ProductUserId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public void Set(GetPlayerSanctionCountOptions other) - { - if (other != null) - { - m_ApiVersion = SanctionsInterface.GetplayersanctioncountApiLatest; - TargetUserId = other.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as GetPlayerSanctionCountOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/GetPlayerSanctionCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/GetPlayerSanctionCountOptions.cs.meta deleted file mode 100644 index fe766eb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/GetPlayerSanctionCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9cdb4a917113b64449b825bb76105994 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/OnQueryActivePlayerSanctionsCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/OnQueryActivePlayerSanctionsCallback.cs deleted file mode 100644 index debd990..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/OnQueryActivePlayerSanctionsCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sanctions -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnQueryActivePlayerSanctionsCallback(QueryActivePlayerSanctionsCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnQueryActivePlayerSanctionsCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/OnQueryActivePlayerSanctionsCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/OnQueryActivePlayerSanctionsCallback.cs.meta deleted file mode 100644 index 5625867..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/OnQueryActivePlayerSanctionsCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 974e4b4c4754862419167981ebe6df98 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/PlayerSanction.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/PlayerSanction.cs deleted file mode 100644 index 1145ce7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/PlayerSanction.cs +++ /dev/null @@ -1,91 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sanctions -{ - /// - /// Contains information about a single player sanction. - /// - public class PlayerSanction : ISettable - { - /// - /// The POSIX timestamp when the sanction was placed - /// - public long TimePlaced { get; set; } - - /// - /// The action associated with this sanction - /// - public string Action { get; set; } - - internal void Set(PlayerSanctionInternal? other) - { - if (other != null) - { - TimePlaced = other.Value.TimePlaced; - Action = other.Value.Action; - } - } - - public void Set(object other) - { - Set(other as PlayerSanctionInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct PlayerSanctionInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private long m_TimePlaced; - private System.IntPtr m_Action; - - public long TimePlaced - { - get - { - return m_TimePlaced; - } - - set - { - m_TimePlaced = value; - } - } - - public string Action - { - get - { - string value; - Helper.TryMarshalGet(m_Action, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Action, value); - } - } - - public void Set(PlayerSanction other) - { - if (other != null) - { - m_ApiVersion = SanctionsInterface.PlayersanctionApiLatest; - TimePlaced = other.TimePlaced; - Action = other.Action; - } - } - - public void Set(object other) - { - Set(other as PlayerSanction); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Action); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/PlayerSanction.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/PlayerSanction.cs.meta deleted file mode 100644 index e38fe08..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/PlayerSanction.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 14086e779e1e51e4fbadd258064f3be8 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/QueryActivePlayerSanctionsCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/QueryActivePlayerSanctionsCallbackInfo.cs deleted file mode 100644 index 1372b12..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/QueryActivePlayerSanctionsCallbackInfo.cs +++ /dev/null @@ -1,107 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sanctions -{ - /// - /// Output parameters for the function. - /// - public class QueryActivePlayerSanctionsCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into . - /// - public object ClientData { get; private set; } - - /// - /// Target Product User ID that was passed to . - /// - public ProductUserId TargetUserId { get; private set; } - - /// - /// The Product User ID of the local user who initiated this request, if applicable. - /// - public ProductUserId LocalUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(QueryActivePlayerSanctionsCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - TargetUserId = other.Value.TargetUserId; - LocalUserId = other.Value.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as QueryActivePlayerSanctionsCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryActivePlayerSanctionsCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_TargetUserId; - private System.IntPtr m_LocalUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId TargetUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_TargetUserId, out value); - return value; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/QueryActivePlayerSanctionsCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/QueryActivePlayerSanctionsCallbackInfo.cs.meta deleted file mode 100644 index a889a78..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/QueryActivePlayerSanctionsCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ae2ec33046be37745bc0cb9eb4850c73 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/QueryActivePlayerSanctionsOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/QueryActivePlayerSanctionsOptions.cs deleted file mode 100644 index b16f858..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/QueryActivePlayerSanctionsOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sanctions -{ - /// - /// Input parameters for the API. - /// - public class QueryActivePlayerSanctionsOptions - { - /// - /// Product User ID of the user whose active sanctions are to be retrieved. - /// - public ProductUserId TargetUserId { get; set; } - - /// - /// The Product User ID of the local user who initiated this request. Dedicated servers should set this to null. - /// - public ProductUserId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryActivePlayerSanctionsOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_TargetUserId; - private System.IntPtr m_LocalUserId; - - public ProductUserId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(QueryActivePlayerSanctionsOptions other) - { - if (other != null) - { - m_ApiVersion = SanctionsInterface.QueryactiveplayersanctionsApiLatest; - TargetUserId = other.TargetUserId; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as QueryActivePlayerSanctionsOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_TargetUserId); - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/QueryActivePlayerSanctionsOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/QueryActivePlayerSanctionsOptions.cs.meta deleted file mode 100644 index 012a4c1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/QueryActivePlayerSanctionsOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a832c081183678942ad2bf758c1bbbac -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/SanctionsInterface.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/SanctionsInterface.cs deleted file mode 100644 index 66274ee..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/SanctionsInterface.cs +++ /dev/null @@ -1,126 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sanctions -{ - public sealed partial class SanctionsInterface : Handle - { - public SanctionsInterface() - { - } - - public SanctionsInterface(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// The most recent version of the API. - /// - public const int CopyplayersanctionbyindexApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetplayersanctioncountApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int PlayersanctionApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int QueryactiveplayersanctionsApiLatest = 2; - - /// - /// Copies an active player sanction. - /// You must call QueryActivePlayerSanctions first to retrieve the data from the service backend. - /// On success, must be called on OutSanction to free memory. - /// - /// - /// - /// Structure containing the input parameters - /// The player sanction data for the given index, if it exists and is valid - /// - /// if the information is available and passed out in OutSanction - /// if you pass a null pointer for the out parameter - /// if the player achievement is not found - /// - public Result CopyPlayerSanctionByIndex(CopyPlayerSanctionByIndexOptions options, out PlayerSanction outSanction) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outSanctionAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Sanctions_CopyPlayerSanctionByIndex(InnerHandle, optionsAddress, ref outSanctionAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outSanctionAddress, out outSanction)) - { - Bindings.EOS_Sanctions_PlayerSanction_Release(outSanctionAddress); - } - - return funcResult; - } - - /// - /// Fetch the number of player sanctions that have been retrieved for a given player. - /// You must call QueryActivePlayerSanctions first to retrieve the data from the service backend. - /// - /// - /// - /// Structure containing the input parameters - /// - /// Number of available sanctions for this player. - /// - public uint GetPlayerSanctionCount(GetPlayerSanctionCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Sanctions_GetPlayerSanctionCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Start an asynchronous query to retrieve any active sanctions for a specified user. - /// Call and to retrieve the data. - /// - /// - /// - /// Structure containing the input parameters - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// A callback that is fired when the async operation completes, either successfully or in error - public void QueryActivePlayerSanctions(QueryActivePlayerSanctionsOptions options, object clientData, OnQueryActivePlayerSanctionsCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnQueryActivePlayerSanctionsCallbackInternal(OnQueryActivePlayerSanctionsCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Sanctions_QueryActivePlayerSanctions(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - [MonoPInvokeCallback(typeof(OnQueryActivePlayerSanctionsCallbackInternal))] - internal static void OnQueryActivePlayerSanctionsCallbackInternalImplementation(System.IntPtr data) - { - OnQueryActivePlayerSanctionsCallback callback; - QueryActivePlayerSanctionsCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/SanctionsInterface.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/SanctionsInterface.cs.meta deleted file mode 100644 index 70d4f54..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sanctions/SanctionsInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4f7bb11692e48554aa7ebb4b55fe884d -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions.meta deleted file mode 100644 index 117d688..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: bda5de6c600196240a0351664c53e121 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/ActiveSession.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/ActiveSession.cs deleted file mode 100644 index f872a73..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/ActiveSession.cs +++ /dev/null @@ -1,122 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - public sealed partial class ActiveSession : Handle - { - public ActiveSession() - { - } - - public ActiveSession(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// The most recent version of the function. - /// - public const int ActivesessionCopyinfoApiLatest = 1; - - /// - /// The most recent version of the function. - /// - public const int ActivesessionGetregisteredplayerbyindexApiLatest = 1; - - /// - /// The most recent version of the function. - /// - public const int ActivesessionGetregisteredplayercountApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int ActivesessionInfoApiLatest = 1; - - /// - /// is used to immediately retrieve a copy of active session information - /// If the call returns an result, the out parameter, OutActiveSessionInfo, must be passed to to release the memory associated with it. - /// - /// - /// - /// - /// Structure containing the input parameters - /// Out parameter used to receive the structure. - /// - /// if the information is available and passed out in OutActiveSessionInfo - /// if you pass a null pointer for the out parameter - /// if the API version passed in is incorrect - /// - public Result CopyInfo(ActiveSessionCopyInfoOptions options, out ActiveSessionInfo outActiveSessionInfo) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outActiveSessionInfoAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_ActiveSession_CopyInfo(InnerHandle, optionsAddress, ref outActiveSessionInfoAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outActiveSessionInfoAddress, out outActiveSessionInfo)) - { - Bindings.EOS_ActiveSession_Info_Release(outActiveSessionInfoAddress); - } - - return funcResult; - } - - /// - /// is used to immediately retrieve individual players registered with the active session. - /// - /// - /// - /// Structure containing the input parameters - /// - /// the product user ID for the registered player at a given index or null if that index is invalid - /// - public ProductUserId GetRegisteredPlayerByIndex(ActiveSessionGetRegisteredPlayerByIndexOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_ActiveSession_GetRegisteredPlayerByIndex(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - ProductUserId funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Get the number of registered players associated with this active session - /// - /// the Options associated with retrieving the registered player count - /// - /// number of registered players in the active session or 0 if there is an error - /// - public uint GetRegisteredPlayerCount(ActiveSessionGetRegisteredPlayerCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_ActiveSession_GetRegisteredPlayerCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Release the memory associated with an active session. - /// This must be called on data retrieved from - /// - /// - /// - The active session handle to release - public void Release() - { - Bindings.EOS_ActiveSession_Release(InnerHandle); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/ActiveSession.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/ActiveSession.cs.meta deleted file mode 100644 index 171753d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/ActiveSession.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 091cd43c82704d54aba0236e35e00c0f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/ActiveSessionCopyInfoOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/ActiveSessionCopyInfoOptions.cs deleted file mode 100644 index 70528e8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/ActiveSessionCopyInfoOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class ActiveSessionCopyInfoOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct ActiveSessionCopyInfoOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(ActiveSessionCopyInfoOptions other) - { - if (other != null) - { - m_ApiVersion = ActiveSession.ActivesessionCopyinfoApiLatest; - } - } - - public void Set(object other) - { - Set(other as ActiveSessionCopyInfoOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/ActiveSessionCopyInfoOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/ActiveSessionCopyInfoOptions.cs.meta deleted file mode 100644 index 745f781..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/ActiveSessionCopyInfoOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 38cda95f00f2d2a49aa89c3b618cf501 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/ActiveSessionGetRegisteredPlayerByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/ActiveSessionGetRegisteredPlayerByIndexOptions.cs deleted file mode 100644 index 9ec6525..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/ActiveSessionGetRegisteredPlayerByIndexOptions.cs +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class ActiveSessionGetRegisteredPlayerByIndexOptions - { - /// - /// Index of the registered player to retrieve - /// - public uint PlayerIndex { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct ActiveSessionGetRegisteredPlayerByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_PlayerIndex; - - public uint PlayerIndex - { - set - { - m_PlayerIndex = value; - } - } - - public void Set(ActiveSessionGetRegisteredPlayerByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = ActiveSession.ActivesessionGetregisteredplayerbyindexApiLatest; - PlayerIndex = other.PlayerIndex; - } - } - - public void Set(object other) - { - Set(other as ActiveSessionGetRegisteredPlayerByIndexOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/ActiveSessionGetRegisteredPlayerByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/ActiveSessionGetRegisteredPlayerByIndexOptions.cs.meta deleted file mode 100644 index 8d77e65..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/ActiveSessionGetRegisteredPlayerByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e6478b4070409ef42a109c5c3ea05aca -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/ActiveSessionGetRegisteredPlayerCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/ActiveSessionGetRegisteredPlayerCountOptions.cs deleted file mode 100644 index 98468a8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/ActiveSessionGetRegisteredPlayerCountOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class ActiveSessionGetRegisteredPlayerCountOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct ActiveSessionGetRegisteredPlayerCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(ActiveSessionGetRegisteredPlayerCountOptions other) - { - if (other != null) - { - m_ApiVersion = ActiveSession.ActivesessionGetregisteredplayercountApiLatest; - } - } - - public void Set(object other) - { - Set(other as ActiveSessionGetRegisteredPlayerCountOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/ActiveSessionGetRegisteredPlayerCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/ActiveSessionGetRegisteredPlayerCountOptions.cs.meta deleted file mode 100644 index 20c8e68..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/ActiveSessionGetRegisteredPlayerCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b12295e89bd618748ab58c4b2fa21882 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/ActiveSessionInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/ActiveSessionInfo.cs deleted file mode 100644 index 56a9ed5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/ActiveSessionInfo.cs +++ /dev/null @@ -1,139 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Top level details about an active session - /// - public class ActiveSessionInfo : ISettable - { - /// - /// Name of the session - /// - public string SessionName { get; set; } - - /// - /// The Product User ID of the local user who created or joined the session - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// Current state of the session - /// - public OnlineSessionState State { get; set; } - - /// - /// Session details - /// - public SessionDetailsInfo SessionDetails { get; set; } - - internal void Set(ActiveSessionInfoInternal? other) - { - if (other != null) - { - SessionName = other.Value.SessionName; - LocalUserId = other.Value.LocalUserId; - State = other.Value.State; - SessionDetails = other.Value.SessionDetails; - } - } - - public void Set(object other) - { - Set(other as ActiveSessionInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct ActiveSessionInfoInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_SessionName; - private System.IntPtr m_LocalUserId; - private OnlineSessionState m_State; - private System.IntPtr m_SessionDetails; - - public string SessionName - { - get - { - string value; - Helper.TryMarshalGet(m_SessionName, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_SessionName, value); - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public OnlineSessionState State - { - get - { - return m_State; - } - - set - { - m_State = value; - } - } - - public SessionDetailsInfo SessionDetails - { - get - { - SessionDetailsInfo value; - Helper.TryMarshalGet(m_SessionDetails, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_SessionDetails, value); - } - } - - public void Set(ActiveSessionInfo other) - { - if (other != null) - { - m_ApiVersion = ActiveSession.ActivesessionCopyinfoApiLatest; - SessionName = other.SessionName; - LocalUserId = other.LocalUserId; - State = other.State; - SessionDetails = other.SessionDetails; - } - } - - public void Set(object other) - { - Set(other as ActiveSessionInfo); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_SessionName); - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_SessionDetails); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/ActiveSessionInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/ActiveSessionInfo.cs.meta deleted file mode 100644 index 1cf8eaf..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/ActiveSessionInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 63a001777cbf25b4e94dc307d399b1c8 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/AddNotifyJoinSessionAcceptedOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/AddNotifyJoinSessionAcceptedOptions.cs deleted file mode 100644 index a2dcc0d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/AddNotifyJoinSessionAcceptedOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class AddNotifyJoinSessionAcceptedOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyJoinSessionAcceptedOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(AddNotifyJoinSessionAcceptedOptions other) - { - if (other != null) - { - m_ApiVersion = SessionsInterface.AddnotifyjoinsessionacceptedApiLatest; - } - } - - public void Set(object other) - { - Set(other as AddNotifyJoinSessionAcceptedOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/AddNotifyJoinSessionAcceptedOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/AddNotifyJoinSessionAcceptedOptions.cs.meta deleted file mode 100644 index f4a9740..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/AddNotifyJoinSessionAcceptedOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 732db3b390c82784e9faf982a88c4095 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/AddNotifySessionInviteAcceptedOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/AddNotifySessionInviteAcceptedOptions.cs deleted file mode 100644 index 86f3235..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/AddNotifySessionInviteAcceptedOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class AddNotifySessionInviteAcceptedOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifySessionInviteAcceptedOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(AddNotifySessionInviteAcceptedOptions other) - { - if (other != null) - { - m_ApiVersion = SessionsInterface.AddnotifysessioninviteacceptedApiLatest; - } - } - - public void Set(object other) - { - Set(other as AddNotifySessionInviteAcceptedOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/AddNotifySessionInviteAcceptedOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/AddNotifySessionInviteAcceptedOptions.cs.meta deleted file mode 100644 index 858550d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/AddNotifySessionInviteAcceptedOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 99ec12c329a16cc4980204a2ee0940f5 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/AddNotifySessionInviteReceivedOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/AddNotifySessionInviteReceivedOptions.cs deleted file mode 100644 index dda7592..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/AddNotifySessionInviteReceivedOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class AddNotifySessionInviteReceivedOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifySessionInviteReceivedOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(AddNotifySessionInviteReceivedOptions other) - { - if (other != null) - { - m_ApiVersion = SessionsInterface.AddnotifysessioninvitereceivedApiLatest; - } - } - - public void Set(object other) - { - Set(other as AddNotifySessionInviteReceivedOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/AddNotifySessionInviteReceivedOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/AddNotifySessionInviteReceivedOptions.cs.meta deleted file mode 100644 index ad3dbdd..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/AddNotifySessionInviteReceivedOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4543e030395e1fc4fb8f42d286e66780 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/AttributeData.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/AttributeData.cs deleted file mode 100644 index eecafe6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/AttributeData.cs +++ /dev/null @@ -1,91 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Contains information about both session and search parameter attribution - /// - public class AttributeData : ISettable - { - /// - /// Name of the session attribute - /// - public string Key { get; set; } - - public AttributeDataValue Value { get; set; } - - internal void Set(AttributeDataInternal? other) - { - if (other != null) - { - Key = other.Value.Key; - Value = other.Value.Value; - } - } - - public void Set(object other) - { - Set(other as AttributeDataInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AttributeDataInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Key; - private AttributeDataValueInternal m_Value; - - public string Key - { - get - { - string value; - Helper.TryMarshalGet(m_Key, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Key, value); - } - } - - public AttributeDataValue Value - { - get - { - AttributeDataValue value; - Helper.TryMarshalGet(m_Value, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Value, value); - } - } - - public void Set(AttributeData other) - { - if (other != null) - { - m_ApiVersion = SessionsInterface.AttributedataApiLatest; - Key = other.Key; - Value = other.Value; - } - } - - public void Set(object other) - { - Set(other as AttributeData); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Key); - Helper.TryMarshalDispose(ref m_Value); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/AttributeData.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/AttributeData.cs.meta deleted file mode 100644 index edf6e24..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/AttributeData.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f4d5a0ef4e655cd4ca87bb15a3317878 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/AttributeDataValue.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/AttributeDataValue.cs deleted file mode 100644 index 0ced7ce..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/AttributeDataValue.cs +++ /dev/null @@ -1,234 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - public class AttributeDataValue : ISettable - { - private long? m_AsInt64; - private double? m_AsDouble; - private bool? m_AsBool; - private string m_AsUtf8; - private AttributeType m_ValueType; - - /// - /// Stored as an 8 byte integer - /// - public long? AsInt64 - { - get - { - long? value; - Helper.TryMarshalGet(m_AsInt64, out value, m_ValueType, AttributeType.Int64); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_AsInt64, value, ref m_ValueType, AttributeType.Int64); - } - } - - /// - /// Stored as a double precision floating point - /// - public double? AsDouble - { - get - { - double? value; - Helper.TryMarshalGet(m_AsDouble, out value, m_ValueType, AttributeType.Double); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_AsDouble, value, ref m_ValueType, AttributeType.Double); - } - } - - /// - /// Stored as a boolean - /// - public bool? AsBool - { - get - { - bool? value; - Helper.TryMarshalGet(m_AsBool, out value, m_ValueType, AttributeType.Boolean); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_AsBool, value, ref m_ValueType, AttributeType.Boolean); - } - } - - /// - /// Stored as a null terminated UTF8 string - /// - public string AsUtf8 - { - get - { - string value; - Helper.TryMarshalGet(m_AsUtf8, out value, m_ValueType, AttributeType.String); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_AsUtf8, value, ref m_ValueType, AttributeType.String); - } - } - - /// - /// Type of value stored in the union - /// - public AttributeType ValueType - { - get - { - return m_ValueType; - } - - private set - { - m_ValueType = value; - } - } - - public static implicit operator AttributeDataValue(long value) - { - return new AttributeDataValue() { AsInt64 = value }; - } - - public static implicit operator AttributeDataValue(double value) - { - return new AttributeDataValue() { AsDouble = value }; - } - - public static implicit operator AttributeDataValue(bool value) - { - return new AttributeDataValue() { AsBool = value }; - } - - public static implicit operator AttributeDataValue(string value) - { - return new AttributeDataValue() { AsUtf8 = value }; - } - - internal void Set(AttributeDataValueInternal? other) - { - if (other != null) - { - AsInt64 = other.Value.AsInt64; - AsDouble = other.Value.AsDouble; - AsBool = other.Value.AsBool; - AsUtf8 = other.Value.AsUtf8; - } - } - - public void Set(object other) - { - Set(other as AttributeDataValueInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Explicit, Pack = 8)] - internal struct AttributeDataValueInternal : ISettable, System.IDisposable - { - [System.Runtime.InteropServices.FieldOffset(0)] - private long m_AsInt64; - [System.Runtime.InteropServices.FieldOffset(0)] - private double m_AsDouble; - [System.Runtime.InteropServices.FieldOffset(0)] - private int m_AsBool; - [System.Runtime.InteropServices.FieldOffset(0)] - private System.IntPtr m_AsUtf8; - [System.Runtime.InteropServices.FieldOffset(8)] - private AttributeType m_ValueType; - - public long? AsInt64 - { - get - { - long? value; - Helper.TryMarshalGet(m_AsInt64, out value, m_ValueType, AttributeType.Int64); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_AsInt64, value, ref m_ValueType, AttributeType.Int64, this); - } - } - - public double? AsDouble - { - get - { - double? value; - Helper.TryMarshalGet(m_AsDouble, out value, m_ValueType, AttributeType.Double); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_AsDouble, value, ref m_ValueType, AttributeType.Double, this); - } - } - - public bool? AsBool - { - get - { - bool? value; - Helper.TryMarshalGet(m_AsBool, out value, m_ValueType, AttributeType.Boolean); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_AsBool, value, ref m_ValueType, AttributeType.Boolean, this); - } - } - - public string AsUtf8 - { - get - { - string value; - Helper.TryMarshalGet(m_AsUtf8, out value, m_ValueType, AttributeType.String); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_AsUtf8, value, ref m_ValueType, AttributeType.String, this); - } - } - - public void Set(AttributeDataValue other) - { - if (other != null) - { - AsInt64 = other.AsInt64; - AsDouble = other.AsDouble; - AsBool = other.AsBool; - AsUtf8 = other.AsUtf8; - } - } - - public void Set(object other) - { - Set(other as AttributeDataValue); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_AsUtf8, m_ValueType, AttributeType.String); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/AttributeDataValue.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/AttributeDataValue.cs.meta deleted file mode 100644 index e53ff63..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/AttributeDataValue.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 8754777e17b78a94faf3dbd0f94ef387 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CopyActiveSessionHandleOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CopyActiveSessionHandleOptions.cs deleted file mode 100644 index 7e38451..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CopyActiveSessionHandleOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class CopyActiveSessionHandleOptions - { - /// - /// Name of the session for which to retrieve a session handle - /// - public string SessionName { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyActiveSessionHandleOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_SessionName; - - public string SessionName - { - set - { - Helper.TryMarshalSet(ref m_SessionName, value); - } - } - - public void Set(CopyActiveSessionHandleOptions other) - { - if (other != null) - { - m_ApiVersion = SessionsInterface.CopyactivesessionhandleApiLatest; - SessionName = other.SessionName; - } - } - - public void Set(object other) - { - Set(other as CopyActiveSessionHandleOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_SessionName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CopyActiveSessionHandleOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CopyActiveSessionHandleOptions.cs.meta deleted file mode 100644 index 489bda5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CopyActiveSessionHandleOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9339e328b61f8a0418c58c9eb97c3cb1 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CopySessionHandleByInviteIdOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CopySessionHandleByInviteIdOptions.cs deleted file mode 100644 index db350e0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CopySessionHandleByInviteIdOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class CopySessionHandleByInviteIdOptions - { - /// - /// Invite ID for which to retrieve a session handle - /// - public string InviteId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopySessionHandleByInviteIdOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_InviteId; - - public string InviteId - { - set - { - Helper.TryMarshalSet(ref m_InviteId, value); - } - } - - public void Set(CopySessionHandleByInviteIdOptions other) - { - if (other != null) - { - m_ApiVersion = SessionsInterface.CopysessionhandlebyinviteidApiLatest; - InviteId = other.InviteId; - } - } - - public void Set(object other) - { - Set(other as CopySessionHandleByInviteIdOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_InviteId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CopySessionHandleByInviteIdOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CopySessionHandleByInviteIdOptions.cs.meta deleted file mode 100644 index 3ca97e3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CopySessionHandleByInviteIdOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 1e48b72c950d2ce4b9db05dfd27d6236 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CopySessionHandleByUiEventIdOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CopySessionHandleByUiEventIdOptions.cs deleted file mode 100644 index eb16925..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CopySessionHandleByUiEventIdOptions.cs +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class CopySessionHandleByUiEventIdOptions - { - /// - /// UI Event associated with the session - /// - public ulong UiEventId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopySessionHandleByUiEventIdOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private ulong m_UiEventId; - - public ulong UiEventId - { - set - { - m_UiEventId = value; - } - } - - public void Set(CopySessionHandleByUiEventIdOptions other) - { - if (other != null) - { - m_ApiVersion = SessionsInterface.CopysessionhandlebyuieventidApiLatest; - UiEventId = other.UiEventId; - } - } - - public void Set(object other) - { - Set(other as CopySessionHandleByUiEventIdOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CopySessionHandleByUiEventIdOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CopySessionHandleByUiEventIdOptions.cs.meta deleted file mode 100644 index d1903ec..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CopySessionHandleByUiEventIdOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c9d356b2b03aff644b5caba12f7dd7a3 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CopySessionHandleForPresenceOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CopySessionHandleForPresenceOptions.cs deleted file mode 100644 index c53bf85..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CopySessionHandleForPresenceOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class CopySessionHandleForPresenceOptions - { - /// - /// The Product User ID of the local user associated with the session - /// - public ProductUserId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopySessionHandleForPresenceOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(CopySessionHandleForPresenceOptions other) - { - if (other != null) - { - m_ApiVersion = SessionsInterface.CopysessionhandleforpresenceApiLatest; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as CopySessionHandleForPresenceOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CopySessionHandleForPresenceOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CopySessionHandleForPresenceOptions.cs.meta deleted file mode 100644 index 18dcc66..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CopySessionHandleForPresenceOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: db082a05cd75ecc4ea02eecb0f983662 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CreateSessionModificationOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CreateSessionModificationOptions.cs deleted file mode 100644 index b984013..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CreateSessionModificationOptions.cs +++ /dev/null @@ -1,140 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class CreateSessionModificationOptions - { - /// - /// Name of the session to create - /// - public string SessionName { get; set; } - - /// - /// Bucket ID associated with the session - /// - public string BucketId { get; set; } - - /// - /// Maximum number of players allowed in the session - /// - public uint MaxPlayers { get; set; } - - /// - /// The Product User ID of the local user associated with the session - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// If true, this session will be associated with presence. Only one session at a time can have this flag true. - /// This affects the ability of the Social Overlay to show game related actions to take in the user's social graph. - /// - /// @note The Social Overlay can handle only one of the following three options at a time: - /// using the bPresenceEnabled flags within the Sessions interface - /// using the bPresenceEnabled flags within the Lobby interface - /// using - /// - /// - /// - /// - /// - public bool PresenceEnabled { get; set; } - - /// - /// Optional session id - set to a globally unique value to override the backend assignment - /// If not specified the backend service will assign one to the session. Do not mix and match. - /// This value can be of size [, ] - /// - public string SessionId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CreateSessionModificationOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_SessionName; - private System.IntPtr m_BucketId; - private uint m_MaxPlayers; - private System.IntPtr m_LocalUserId; - private int m_PresenceEnabled; - private System.IntPtr m_SessionId; - - public string SessionName - { - set - { - Helper.TryMarshalSet(ref m_SessionName, value); - } - } - - public string BucketId - { - set - { - Helper.TryMarshalSet(ref m_BucketId, value); - } - } - - public uint MaxPlayers - { - set - { - m_MaxPlayers = value; - } - } - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public bool PresenceEnabled - { - set - { - Helper.TryMarshalSet(ref m_PresenceEnabled, value); - } - } - - public string SessionId - { - set - { - Helper.TryMarshalSet(ref m_SessionId, value); - } - } - - public void Set(CreateSessionModificationOptions other) - { - if (other != null) - { - m_ApiVersion = SessionsInterface.CreatesessionmodificationApiLatest; - SessionName = other.SessionName; - BucketId = other.BucketId; - MaxPlayers = other.MaxPlayers; - LocalUserId = other.LocalUserId; - PresenceEnabled = other.PresenceEnabled; - SessionId = other.SessionId; - } - } - - public void Set(object other) - { - Set(other as CreateSessionModificationOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_SessionName); - Helper.TryMarshalDispose(ref m_BucketId); - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_SessionId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CreateSessionModificationOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CreateSessionModificationOptions.cs.meta deleted file mode 100644 index 2f773d0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CreateSessionModificationOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 5b9a74e91d0bfe649b1360f21bc9f3e1 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CreateSessionSearchOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CreateSessionSearchOptions.cs deleted file mode 100644 index dca69f8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CreateSessionSearchOptions.cs +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class CreateSessionSearchOptions - { - /// - /// Max number of results to return - /// - public uint MaxSearchResults { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CreateSessionSearchOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_MaxSearchResults; - - public uint MaxSearchResults - { - set - { - m_MaxSearchResults = value; - } - } - - public void Set(CreateSessionSearchOptions other) - { - if (other != null) - { - m_ApiVersion = SessionsInterface.CreatesessionsearchApiLatest; - MaxSearchResults = other.MaxSearchResults; - } - } - - public void Set(object other) - { - Set(other as CreateSessionSearchOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CreateSessionSearchOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CreateSessionSearchOptions.cs.meta deleted file mode 100644 index c732da4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/CreateSessionSearchOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 30f3d0d82989b5642bfdd73066462e9b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/DestroySessionCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/DestroySessionCallbackInfo.cs deleted file mode 100644 index 4daa86c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/DestroySessionCallbackInfo.cs +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Output parameters for the function. - /// - public class DestroySessionCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(DestroySessionCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - } - } - - public void Set(object other) - { - Set(other as DestroySessionCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct DestroySessionCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/DestroySessionCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/DestroySessionCallbackInfo.cs.meta deleted file mode 100644 index 1d5b0fb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/DestroySessionCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 07db681c1cbf7de42b8c1ce2793d19a5 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/DestroySessionOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/DestroySessionOptions.cs deleted file mode 100644 index 186165c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/DestroySessionOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class DestroySessionOptions - { - /// - /// Name of the session to destroy - /// - public string SessionName { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct DestroySessionOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_SessionName; - - public string SessionName - { - set - { - Helper.TryMarshalSet(ref m_SessionName, value); - } - } - - public void Set(DestroySessionOptions other) - { - if (other != null) - { - m_ApiVersion = SessionsInterface.DestroysessionApiLatest; - SessionName = other.SessionName; - } - } - - public void Set(object other) - { - Set(other as DestroySessionOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_SessionName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/DestroySessionOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/DestroySessionOptions.cs.meta deleted file mode 100644 index 8012eb0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/DestroySessionOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 2b126db6f7286954da9a1ba13214ed48 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/DumpSessionStateOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/DumpSessionStateOptions.cs deleted file mode 100644 index 33b1787..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/DumpSessionStateOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class DumpSessionStateOptions - { - /// - /// Name of the session - /// - public string SessionName { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct DumpSessionStateOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_SessionName; - - public string SessionName - { - set - { - Helper.TryMarshalSet(ref m_SessionName, value); - } - } - - public void Set(DumpSessionStateOptions other) - { - if (other != null) - { - m_ApiVersion = SessionsInterface.DumpsessionstateApiLatest; - SessionName = other.SessionName; - } - } - - public void Set(object other) - { - Set(other as DumpSessionStateOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_SessionName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/DumpSessionStateOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/DumpSessionStateOptions.cs.meta deleted file mode 100644 index 5d0bae6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/DumpSessionStateOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ad9db62bee6ffbc4eb59750f61a15038 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/EndSessionCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/EndSessionCallbackInfo.cs deleted file mode 100644 index c32181a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/EndSessionCallbackInfo.cs +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - public class EndSessionCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(EndSessionCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - } - } - - public void Set(object other) - { - Set(other as EndSessionCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct EndSessionCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/EndSessionCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/EndSessionCallbackInfo.cs.meta deleted file mode 100644 index dd37c32..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/EndSessionCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 7f08a3819bddbec468ad3450a8e63d6a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/EndSessionOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/EndSessionOptions.cs deleted file mode 100644 index ce7919c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/EndSessionOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class EndSessionOptions - { - /// - /// Name of the session to set as no long in progress - /// - public string SessionName { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct EndSessionOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_SessionName; - - public string SessionName - { - set - { - Helper.TryMarshalSet(ref m_SessionName, value); - } - } - - public void Set(EndSessionOptions other) - { - if (other != null) - { - m_ApiVersion = SessionsInterface.EndsessionApiLatest; - SessionName = other.SessionName; - } - } - - public void Set(object other) - { - Set(other as EndSessionOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_SessionName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/EndSessionOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/EndSessionOptions.cs.meta deleted file mode 100644 index 3a638a7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/EndSessionOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: db652f0accf267c4ebbb12c93e40249b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/GetInviteCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/GetInviteCountOptions.cs deleted file mode 100644 index 8d686b3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/GetInviteCountOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class GetInviteCountOptions - { - /// - /// The Product User ID of the local user who has one or more invitations in the cache - /// - public ProductUserId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetInviteCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(GetInviteCountOptions other) - { - if (other != null) - { - m_ApiVersion = SessionsInterface.GetinvitecountApiLatest; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as GetInviteCountOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/GetInviteCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/GetInviteCountOptions.cs.meta deleted file mode 100644 index 3aaa6bb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/GetInviteCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 6f4019891e59c1a4cb3c3cab388c866a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/GetInviteIdByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/GetInviteIdByIndexOptions.cs deleted file mode 100644 index df4b0a3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/GetInviteIdByIndexOptions.cs +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class GetInviteIdByIndexOptions - { - /// - /// The Product User ID of the local user who has an invitation in the cache - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// Index of the invite ID to retrieve - /// - public uint Index { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetInviteIdByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private uint m_Index; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public uint Index - { - set - { - m_Index = value; - } - } - - public void Set(GetInviteIdByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = SessionsInterface.GetinviteidbyindexApiLatest; - LocalUserId = other.LocalUserId; - Index = other.Index; - } - } - - public void Set(object other) - { - Set(other as GetInviteIdByIndexOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/GetInviteIdByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/GetInviteIdByIndexOptions.cs.meta deleted file mode 100644 index af9fbf9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/GetInviteIdByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c0b893a52dae75d47bcfa0f0c3dc3ae0 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/IsUserInSessionOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/IsUserInSessionOptions.cs deleted file mode 100644 index ebf035d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/IsUserInSessionOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class IsUserInSessionOptions - { - /// - /// Active session name to search within - /// - public string SessionName { get; set; } - - /// - /// Product User ID to search for in the session - /// - public ProductUserId TargetUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct IsUserInSessionOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_SessionName; - private System.IntPtr m_TargetUserId; - - public string SessionName - { - set - { - Helper.TryMarshalSet(ref m_SessionName, value); - } - } - - public ProductUserId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public void Set(IsUserInSessionOptions other) - { - if (other != null) - { - m_ApiVersion = SessionsInterface.IsuserinsessionApiLatest; - SessionName = other.SessionName; - TargetUserId = other.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as IsUserInSessionOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_SessionName); - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/IsUserInSessionOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/IsUserInSessionOptions.cs.meta deleted file mode 100644 index 71ec20d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/IsUserInSessionOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 65a3c28ab5fcd8847a49aafaf2e507bc -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/JoinSessionAcceptedCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/JoinSessionAcceptedCallbackInfo.cs deleted file mode 100644 index 6ca5375..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/JoinSessionAcceptedCallbackInfo.cs +++ /dev/null @@ -1,92 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Output parameters for the function. - /// - public class JoinSessionAcceptedCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID for the user who initialized the game - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The UI Event associated with this Join Game event. - /// This should be used with to get a handle to be used - /// when calling . - /// - public ulong UiEventId { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(JoinSessionAcceptedCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - UiEventId = other.Value.UiEventId; - } - } - - public void Set(object other) - { - Set(other as JoinSessionAcceptedCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct JoinSessionAcceptedCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private ulong m_UiEventId; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public ulong UiEventId - { - get - { - return m_UiEventId; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/JoinSessionAcceptedCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/JoinSessionAcceptedCallbackInfo.cs.meta deleted file mode 100644 index 678b380..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/JoinSessionAcceptedCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: bac0f5b814459b844a03f996238ff462 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/JoinSessionCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/JoinSessionCallbackInfo.cs deleted file mode 100644 index e3577ba..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/JoinSessionCallbackInfo.cs +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Output parameters for the function. - /// - public class JoinSessionCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(JoinSessionCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - } - } - - public void Set(object other) - { - Set(other as JoinSessionCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct JoinSessionCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/JoinSessionCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/JoinSessionCallbackInfo.cs.meta deleted file mode 100644 index 5103dbb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/JoinSessionCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0066bd579d6b4be4c9efae3075ea896c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/JoinSessionOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/JoinSessionOptions.cs deleted file mode 100644 index e863b4c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/JoinSessionOptions.cs +++ /dev/null @@ -1,107 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class JoinSessionOptions - { - /// - /// Name of the session to create after joining session - /// - public string SessionName { get; set; } - - /// - /// Session handle to join - /// - public SessionDetails SessionHandle { get; set; } - - /// - /// The Product User ID of the local user who is joining the session - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// If true, this session will be associated with presence. Only one session at a time can have this flag true. - /// This affects the ability of the Social Overlay to show game related actions to take in the user's social graph. - /// - /// @note The Social Overlay can handle only one of the following three options at a time: - /// using the bPresenceEnabled flags within the Sessions interface - /// using the bPresenceEnabled flags within the Lobby interface - /// using - /// - /// - /// - /// - /// - public bool PresenceEnabled { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct JoinSessionOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_SessionName; - private System.IntPtr m_SessionHandle; - private System.IntPtr m_LocalUserId; - private int m_PresenceEnabled; - - public string SessionName - { - set - { - Helper.TryMarshalSet(ref m_SessionName, value); - } - } - - public SessionDetails SessionHandle - { - set - { - Helper.TryMarshalSet(ref m_SessionHandle, value); - } - } - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public bool PresenceEnabled - { - set - { - Helper.TryMarshalSet(ref m_PresenceEnabled, value); - } - } - - public void Set(JoinSessionOptions other) - { - if (other != null) - { - m_ApiVersion = SessionsInterface.JoinsessionApiLatest; - SessionName = other.SessionName; - SessionHandle = other.SessionHandle; - LocalUserId = other.LocalUserId; - PresenceEnabled = other.PresenceEnabled; - } - } - - public void Set(object other) - { - Set(other as JoinSessionOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_SessionName); - Helper.TryMarshalDispose(ref m_SessionHandle); - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/JoinSessionOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/JoinSessionOptions.cs.meta deleted file mode 100644 index 09f8a8f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/JoinSessionOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c9c183ec75529b14696afc47d2339958 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnDestroySessionCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnDestroySessionCallback.cs deleted file mode 100644 index fc741ef..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnDestroySessionCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnDestroySessionCallback(DestroySessionCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnDestroySessionCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnDestroySessionCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnDestroySessionCallback.cs.meta deleted file mode 100644 index 7433bb3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnDestroySessionCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 49561c64d938a0e4aab4a543747f2e0e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnEndSessionCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnEndSessionCallback.cs deleted file mode 100644 index d6b7475..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnEndSessionCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnEndSessionCallback(EndSessionCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnEndSessionCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnEndSessionCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnEndSessionCallback.cs.meta deleted file mode 100644 index 2efe52c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnEndSessionCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 36602468e68eb5a478e6007cca95cde5 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnJoinSessionAcceptedCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnJoinSessionAcceptedCallback.cs deleted file mode 100644 index 19490dc..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnJoinSessionAcceptedCallback.cs +++ /dev/null @@ -1,19 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Function prototype definition for notifications that come from - /// - /// - /// - /// - /// A containing the output information and result - /// @note The session for the join game must be joined. - /// - public delegate void OnJoinSessionAcceptedCallback(JoinSessionAcceptedCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnJoinSessionAcceptedCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnJoinSessionAcceptedCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnJoinSessionAcceptedCallback.cs.meta deleted file mode 100644 index 2bd4065..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnJoinSessionAcceptedCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 320fb65b814e4f54385b208e117331e3 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnJoinSessionCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnJoinSessionCallback.cs deleted file mode 100644 index 9b30239..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnJoinSessionCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnJoinSessionCallback(JoinSessionCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnJoinSessionCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnJoinSessionCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnJoinSessionCallback.cs.meta deleted file mode 100644 index e93494e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnJoinSessionCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 2b389f45408282a43ad2af5a5e962efc -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnQueryInvitesCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnQueryInvitesCallback.cs deleted file mode 100644 index 7318594..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnQueryInvitesCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A CallbackInfo containing the output information and result - public delegate void OnQueryInvitesCallback(QueryInvitesCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnQueryInvitesCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnQueryInvitesCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnQueryInvitesCallback.cs.meta deleted file mode 100644 index bccc794..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnQueryInvitesCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 85114b3ce9f449544aa5ae0adc6521c1 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnRegisterPlayersCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnRegisterPlayersCallback.cs deleted file mode 100644 index 0d6600b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnRegisterPlayersCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnRegisterPlayersCallback(RegisterPlayersCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnRegisterPlayersCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnRegisterPlayersCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnRegisterPlayersCallback.cs.meta deleted file mode 100644 index 24dba60..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnRegisterPlayersCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: aa89163bd4556ae4d95f84c75af3e89f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnRejectInviteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnRejectInviteCallback.cs deleted file mode 100644 index af5f5d8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnRejectInviteCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnRejectInviteCallback(RejectInviteCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnRejectInviteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnRejectInviteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnRejectInviteCallback.cs.meta deleted file mode 100644 index d98fd92..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnRejectInviteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 1b180eaa9b63b1545a0839ddcf375b0f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnSendInviteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnSendInviteCallback.cs deleted file mode 100644 index 0b0bbf6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnSendInviteCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnSendInviteCallback(SendInviteCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnSendInviteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnSendInviteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnSendInviteCallback.cs.meta deleted file mode 100644 index 8034471..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnSendInviteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: dbbbffeb5e2844c4bbc21744b59503a4 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnSessionInviteAcceptedCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnSessionInviteAcceptedCallback.cs deleted file mode 100644 index 4e8e89b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnSessionInviteAcceptedCallback.cs +++ /dev/null @@ -1,19 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Function prototype definition for notifications that come from - /// - /// - /// - /// - /// A containing the output information and result - /// @note The session for the invite must be joined. - /// - public delegate void OnSessionInviteAcceptedCallback(SessionInviteAcceptedCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnSessionInviteAcceptedCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnSessionInviteAcceptedCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnSessionInviteAcceptedCallback.cs.meta deleted file mode 100644 index 12e59a9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnSessionInviteAcceptedCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9cacd9e828d06f640981bdd84417ce9b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnSessionInviteReceivedCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnSessionInviteReceivedCallback.cs deleted file mode 100644 index 0f5596c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnSessionInviteReceivedCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Function prototype definition for notifications that come from - /// - /// A containing the output information and result - public delegate void OnSessionInviteReceivedCallback(SessionInviteReceivedCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnSessionInviteReceivedCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnSessionInviteReceivedCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnSessionInviteReceivedCallback.cs.meta deleted file mode 100644 index ba9375d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnSessionInviteReceivedCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 885a0ebb2b01c4b46989c539563f5994 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnStartSessionCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnStartSessionCallback.cs deleted file mode 100644 index 809557b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnStartSessionCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnStartSessionCallback(StartSessionCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnStartSessionCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnStartSessionCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnStartSessionCallback.cs.meta deleted file mode 100644 index 09b4b3a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnStartSessionCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f0be20d3f70a9f24bbedc2d59b16e809 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnUnregisterPlayersCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnUnregisterPlayersCallback.cs deleted file mode 100644 index 5241a8d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnUnregisterPlayersCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnUnregisterPlayersCallback(UnregisterPlayersCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnUnregisterPlayersCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnUnregisterPlayersCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnUnregisterPlayersCallback.cs.meta deleted file mode 100644 index fc4a136..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnUnregisterPlayersCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: df12fdd0a9cf5874ba38564187e90ce3 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnUpdateSessionCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnUpdateSessionCallback.cs deleted file mode 100644 index 0daca1d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnUpdateSessionCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnUpdateSessionCallback(UpdateSessionCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnUpdateSessionCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnUpdateSessionCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnUpdateSessionCallback.cs.meta deleted file mode 100644 index 41d57d3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnUpdateSessionCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 2f14b0e1141b09447a6a647f642387f8 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnlineSessionPermissionLevel.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnlineSessionPermissionLevel.cs deleted file mode 100644 index afaa68c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnlineSessionPermissionLevel.cs +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Permission level gets more restrictive further down - /// - public enum OnlineSessionPermissionLevel : int - { - /// - /// Anyone can find this session as long as it isn't full - /// - PublicAdvertised = 0, - /// - /// Players who have access to presence can see this session - /// - JoinViaPresence = 1, - /// - /// Only players with invites registered can see this session - /// - InviteOnly = 2 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnlineSessionPermissionLevel.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnlineSessionPermissionLevel.cs.meta deleted file mode 100644 index dcb99d0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnlineSessionPermissionLevel.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9e88f9ee427598d4dab819b7a8656782 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnlineSessionState.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnlineSessionState.cs deleted file mode 100644 index b36cc21..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnlineSessionState.cs +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// All possible states of an existing named session - /// - public enum OnlineSessionState : int - { - /// - /// An online session has not been created yet - /// - NoSession = 0, - /// - /// An online session is in the process of being created - /// - Creating = 1, - /// - /// Session has been created but the session hasn't started (pre match lobby) - /// - Pending = 2, - /// - /// Session has been asked to start (may take time due to communication with backend) - /// - Starting = 3, - /// - /// The current session has started. Sessions with join in progress disabled are no longer joinable - /// - InProgress = 4, - /// - /// The session is still valid, but the session is no longer being played (post match lobby) - /// - Ending = 5, - /// - /// The session is closed and any stats committed - /// - Ended = 6, - /// - /// The session is being destroyed - /// - Destroying = 7 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnlineSessionState.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnlineSessionState.cs.meta deleted file mode 100644 index 84028af..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/OnlineSessionState.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 26d3d2187b31c1c419c11e7cdd07e33d -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/QueryInvitesCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/QueryInvitesCallbackInfo.cs deleted file mode 100644 index 953d74d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/QueryInvitesCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Output parameters for the function. - /// - public class QueryInvitesCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The Product User of the local user who made the request - /// - public ProductUserId LocalUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(QueryInvitesCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as QueryInvitesCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryInvitesCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/QueryInvitesCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/QueryInvitesCallbackInfo.cs.meta deleted file mode 100644 index 67ff8b4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/QueryInvitesCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 8ce50c92072916f4c9ae9d299732ee89 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/QueryInvitesOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/QueryInvitesOptions.cs deleted file mode 100644 index f263c5d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/QueryInvitesOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class QueryInvitesOptions - { - /// - /// The Product User ID to query for invitations - /// - public ProductUserId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryInvitesOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(QueryInvitesOptions other) - { - if (other != null) - { - m_ApiVersion = SessionsInterface.QueryinvitesApiLatest; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as QueryInvitesOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/QueryInvitesOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/QueryInvitesOptions.cs.meta deleted file mode 100644 index 856bc05..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/QueryInvitesOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3aa5a3f5bc54104419d0ff981a3058eb -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/RegisterPlayersCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/RegisterPlayersCallbackInfo.cs deleted file mode 100644 index c9074b4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/RegisterPlayersCallbackInfo.cs +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - public class RegisterPlayersCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(RegisterPlayersCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - } - } - - public void Set(object other) - { - Set(other as RegisterPlayersCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct RegisterPlayersCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/RegisterPlayersCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/RegisterPlayersCallbackInfo.cs.meta deleted file mode 100644 index 789897e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/RegisterPlayersCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f6e86fd743d6a564aa9ef06984c081ed -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/RegisterPlayersOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/RegisterPlayersOptions.cs deleted file mode 100644 index d3df493..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/RegisterPlayersOptions.cs +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class RegisterPlayersOptions - { - /// - /// Name of the session for which to register players - /// - public string SessionName { get; set; } - - /// - /// Array of players to register with the session - /// - public ProductUserId[] PlayersToRegister { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct RegisterPlayersOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_SessionName; - private System.IntPtr m_PlayersToRegister; - private uint m_PlayersToRegisterCount; - - public string SessionName - { - set - { - Helper.TryMarshalSet(ref m_SessionName, value); - } - } - - public ProductUserId[] PlayersToRegister - { - set - { - Helper.TryMarshalSet(ref m_PlayersToRegister, value, out m_PlayersToRegisterCount); - } - } - - public void Set(RegisterPlayersOptions other) - { - if (other != null) - { - m_ApiVersion = SessionsInterface.RegisterplayersApiLatest; - SessionName = other.SessionName; - PlayersToRegister = other.PlayersToRegister; - } - } - - public void Set(object other) - { - Set(other as RegisterPlayersOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_SessionName); - Helper.TryMarshalDispose(ref m_PlayersToRegister); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/RegisterPlayersOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/RegisterPlayersOptions.cs.meta deleted file mode 100644 index 804c87e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/RegisterPlayersOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9559204b3c895a24ebbc1a650e2e6eea -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/RejectInviteCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/RejectInviteCallbackInfo.cs deleted file mode 100644 index ef346f2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/RejectInviteCallbackInfo.cs +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Output parameters for the function. - /// - public class RejectInviteCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(RejectInviteCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - } - } - - public void Set(object other) - { - Set(other as RejectInviteCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct RejectInviteCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/RejectInviteCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/RejectInviteCallbackInfo.cs.meta deleted file mode 100644 index a6bb619..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/RejectInviteCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a7291dbfe3bb10f40a0a2ab3f29eb8cf -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/RejectInviteOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/RejectInviteOptions.cs deleted file mode 100644 index 21d580f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/RejectInviteOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class RejectInviteOptions - { - /// - /// The Product User ID of the local user rejecting the invitation - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The invite ID to reject - /// - public string InviteId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct RejectInviteOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_InviteId; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string InviteId - { - set - { - Helper.TryMarshalSet(ref m_InviteId, value); - } - } - - public void Set(RejectInviteOptions other) - { - if (other != null) - { - m_ApiVersion = SessionsInterface.RejectinviteApiLatest; - LocalUserId = other.LocalUserId; - InviteId = other.InviteId; - } - } - - public void Set(object other) - { - Set(other as RejectInviteOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_InviteId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/RejectInviteOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/RejectInviteOptions.cs.meta deleted file mode 100644 index 5cae7d4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/RejectInviteOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 193b8f8341a7c344c8cfe64cbd307dea -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SendInviteCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SendInviteCallbackInfo.cs deleted file mode 100644 index 2f9f37a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SendInviteCallbackInfo.cs +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Output parameters for the function. - /// - public class SendInviteCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(SendInviteCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - } - } - - public void Set(object other) - { - Set(other as SendInviteCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SendInviteCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SendInviteCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SendInviteCallbackInfo.cs.meta deleted file mode 100644 index dfacfd3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SendInviteCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f99e0135e62e2304baa8a38309bc5120 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SendInviteOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SendInviteOptions.cs deleted file mode 100644 index 165f7cc..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SendInviteOptions.cs +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class SendInviteOptions - { - /// - /// Name of the session associated with the invite - /// - public string SessionName { get; set; } - - /// - /// The Product User ID of the local user sending the invitation - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The Product User of the remote user receiving the invitation - /// - public ProductUserId TargetUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SendInviteOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_SessionName; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - - public string SessionName - { - set - { - Helper.TryMarshalSet(ref m_SessionName, value); - } - } - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public ProductUserId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public void Set(SendInviteOptions other) - { - if (other != null) - { - m_ApiVersion = SessionsInterface.SendinviteApiLatest; - SessionName = other.SessionName; - LocalUserId = other.LocalUserId; - TargetUserId = other.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as SendInviteOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_SessionName); - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SendInviteOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SendInviteOptions.cs.meta deleted file mode 100644 index 49a41c2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SendInviteOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 22dce348d3164224eb7a1e9747e4fe69 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionAttributeAdvertisementType.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionAttributeAdvertisementType.cs deleted file mode 100644 index 810aca7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionAttributeAdvertisementType.cs +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Advertisement properties for a single attribute associated with a session - /// - public enum SessionAttributeAdvertisementType : int - { - /// - /// Don't advertise via the online service - /// - DontAdvertise = 0, - /// - /// Advertise via the online service only - /// - Advertise = 1 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionAttributeAdvertisementType.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionAttributeAdvertisementType.cs.meta deleted file mode 100644 index d4f4ac9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionAttributeAdvertisementType.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4de7e747847d2ee40932588619d8fe25 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetails.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetails.cs deleted file mode 100644 index ec7d1e9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetails.cs +++ /dev/null @@ -1,179 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - public sealed partial class SessionDetails : Handle - { - public SessionDetails() - { - } - - public SessionDetails(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// The most recent version of the struct. - /// - public const int SessiondetailsAttributeApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int SessiondetailsCopyinfoApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int SessiondetailsCopysessionattributebyindexApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int SessiondetailsCopysessionattributebykeyApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int SessiondetailsGetsessionattributecountApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int SessiondetailsInfoApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int SessiondetailsSettingsApiLatest = 2; - - /// - /// is used to immediately retrieve a copy of session information from a given source such as a active session or a search result. - /// If the call returns an result, the out parameter, OutSessionInfo, must be passed to to release the memory associated with it. - /// - /// - /// - /// - /// Structure containing the input parameters - /// Out parameter used to receive the structure. - /// - /// if the information is available and passed out in OutSessionInfo - /// if you pass a null pointer for the out parameter - /// if the API version passed in is incorrect - /// - public Result CopyInfo(SessionDetailsCopyInfoOptions options, out SessionDetailsInfo outSessionInfo) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outSessionInfoAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_SessionDetails_CopyInfo(InnerHandle, optionsAddress, ref outSessionInfoAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outSessionInfoAddress, out outSessionInfo)) - { - Bindings.EOS_SessionDetails_Info_Release(outSessionInfoAddress); - } - - return funcResult; - } - - /// - /// is used to immediately retrieve a copy of session attribution from a given source such as a active session or a search result. - /// If the call returns an result, the out parameter, OutSessionAttribute, must be passed to to release the memory associated with it. - /// - /// - /// - /// - /// Structure containing the input parameters - /// Out parameter used to receive the structure. - /// - /// if the information is available and passed out in OutSessionAttribute - /// if you pass a null pointer for the out parameter - /// if the API version passed in is incorrect - /// - public Result CopySessionAttributeByIndex(SessionDetailsCopySessionAttributeByIndexOptions options, out SessionDetailsAttribute outSessionAttribute) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outSessionAttributeAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_SessionDetails_CopySessionAttributeByIndex(InnerHandle, optionsAddress, ref outSessionAttributeAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outSessionAttributeAddress, out outSessionAttribute)) - { - Bindings.EOS_SessionDetails_Attribute_Release(outSessionAttributeAddress); - } - - return funcResult; - } - - /// - /// is used to immediately retrieve a copy of session attribution from a given source such as a active session or a search result. - /// If the call returns an result, the out parameter, OutSessionAttribute, must be passed to to release the memory associated with it. - /// - /// - /// - /// - /// Structure containing the input parameters - /// Out parameter used to receive the structure. - /// - /// if the information is available and passed out in OutSessionAttribute - /// if you pass a null pointer for the out parameter - /// if the API version passed in is incorrect - /// - public Result CopySessionAttributeByKey(SessionDetailsCopySessionAttributeByKeyOptions options, out SessionDetailsAttribute outSessionAttribute) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outSessionAttributeAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_SessionDetails_CopySessionAttributeByKey(InnerHandle, optionsAddress, ref outSessionAttributeAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outSessionAttributeAddress, out outSessionAttribute)) - { - Bindings.EOS_SessionDetails_Attribute_Release(outSessionAttributeAddress); - } - - return funcResult; - } - - /// - /// Get the number of attributes associated with this session - /// - /// the Options associated with retrieving the attribute count - /// - /// number of attributes on the session or 0 if there is an error - /// - public uint GetSessionAttributeCount(SessionDetailsGetSessionAttributeCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_SessionDetails_GetSessionAttributeCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Release the memory associated with a single session. This must be called on data retrieved from . - /// - /// - /// - The session handle to release - public void Release() - { - Bindings.EOS_SessionDetails_Release(InnerHandle); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetails.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetails.cs.meta deleted file mode 100644 index 197c961..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetails.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e5fec18eedf72ef49a87d03ebaaa37d0 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsAttribute.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsAttribute.cs deleted file mode 100644 index 9093854..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsAttribute.cs +++ /dev/null @@ -1,91 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// An attribution value and its advertisement setting stored with a session. - /// - public class SessionDetailsAttribute : ISettable - { - /// - /// Key/Value pair describing the attribute - /// - public AttributeData Data { get; set; } - - /// - /// Is this attribution advertised with the backend or simply stored locally - /// - public SessionAttributeAdvertisementType AdvertisementType { get; set; } - - internal void Set(SessionDetailsAttributeInternal? other) - { - if (other != null) - { - Data = other.Value.Data; - AdvertisementType = other.Value.AdvertisementType; - } - } - - public void Set(object other) - { - Set(other as SessionDetailsAttributeInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SessionDetailsAttributeInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Data; - private SessionAttributeAdvertisementType m_AdvertisementType; - - public AttributeData Data - { - get - { - AttributeData value; - Helper.TryMarshalGet(m_Data, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Data, value); - } - } - - public SessionAttributeAdvertisementType AdvertisementType - { - get - { - return m_AdvertisementType; - } - - set - { - m_AdvertisementType = value; - } - } - - public void Set(SessionDetailsAttribute other) - { - if (other != null) - { - m_ApiVersion = SessionDetails.SessiondetailsAttributeApiLatest; - Data = other.Data; - AdvertisementType = other.AdvertisementType; - } - } - - public void Set(object other) - { - Set(other as SessionDetailsAttribute); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Data); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsAttribute.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsAttribute.cs.meta deleted file mode 100644 index 995e63f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsAttribute.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4afeb5234708d124db669335da67ee25 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsCopyInfoOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsCopyInfoOptions.cs deleted file mode 100644 index 36bf44c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsCopyInfoOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class SessionDetailsCopyInfoOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SessionDetailsCopyInfoOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(SessionDetailsCopyInfoOptions other) - { - if (other != null) - { - m_ApiVersion = SessionDetails.SessiondetailsCopyinfoApiLatest; - } - } - - public void Set(object other) - { - Set(other as SessionDetailsCopyInfoOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsCopyInfoOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsCopyInfoOptions.cs.meta deleted file mode 100644 index f02e137..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsCopyInfoOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 2b612c4bbc0a6e34f81995158c9a79eb -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsCopySessionAttributeByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsCopySessionAttributeByIndexOptions.cs deleted file mode 100644 index 48ab502..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsCopySessionAttributeByIndexOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class SessionDetailsCopySessionAttributeByIndexOptions - { - /// - /// The index of the attribute to retrieve - /// - /// - public uint AttrIndex { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SessionDetailsCopySessionAttributeByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_AttrIndex; - - public uint AttrIndex - { - set - { - m_AttrIndex = value; - } - } - - public void Set(SessionDetailsCopySessionAttributeByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = SessionDetails.SessiondetailsCopysessionattributebyindexApiLatest; - AttrIndex = other.AttrIndex; - } - } - - public void Set(object other) - { - Set(other as SessionDetailsCopySessionAttributeByIndexOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsCopySessionAttributeByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsCopySessionAttributeByIndexOptions.cs.meta deleted file mode 100644 index c8136ab..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsCopySessionAttributeByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0713377542639484fa7e4fb937cef102 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsCopySessionAttributeByKeyOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsCopySessionAttributeByKeyOptions.cs deleted file mode 100644 index e65cc99..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsCopySessionAttributeByKeyOptions.cs +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class SessionDetailsCopySessionAttributeByKeyOptions - { - /// - /// The name of the key to get the session attribution for - /// - /// - public string AttrKey { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SessionDetailsCopySessionAttributeByKeyOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_AttrKey; - - public string AttrKey - { - set - { - Helper.TryMarshalSet(ref m_AttrKey, value); - } - } - - public void Set(SessionDetailsCopySessionAttributeByKeyOptions other) - { - if (other != null) - { - m_ApiVersion = SessionDetails.SessiondetailsCopysessionattributebykeyApiLatest; - AttrKey = other.AttrKey; - } - } - - public void Set(object other) - { - Set(other as SessionDetailsCopySessionAttributeByKeyOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_AttrKey); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsCopySessionAttributeByKeyOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsCopySessionAttributeByKeyOptions.cs.meta deleted file mode 100644 index 8e23850..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsCopySessionAttributeByKeyOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b1d5da4ea19e1064281fc28679bdee04 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsGetSessionAttributeCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsGetSessionAttributeCountOptions.cs deleted file mode 100644 index 2a9f684..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsGetSessionAttributeCountOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class SessionDetailsGetSessionAttributeCountOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SessionDetailsGetSessionAttributeCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(SessionDetailsGetSessionAttributeCountOptions other) - { - if (other != null) - { - m_ApiVersion = SessionDetails.SessiondetailsGetsessionattributecountApiLatest; - } - } - - public void Set(object other) - { - Set(other as SessionDetailsGetSessionAttributeCountOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsGetSessionAttributeCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsGetSessionAttributeCountOptions.cs.meta deleted file mode 100644 index ea09a90..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsGetSessionAttributeCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 783ae008ca5b52642a66907edf07f52f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsInfo.cs deleted file mode 100644 index 9bc688f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsInfo.cs +++ /dev/null @@ -1,139 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Internal details about a session, found on both active sessions and within search results - /// - public class SessionDetailsInfo : ISettable - { - /// - /// Session ID assigned by the backend service - /// - public string SessionId { get; set; } - - /// - /// IP address of this session as visible by the backend service - /// - public string HostAddress { get; set; } - - /// - /// Number of remaining open spaces on the session (NumPublicConnections - RegisteredPlayers - /// - public uint NumOpenPublicConnections { get; set; } - - /// - /// Reference to the additional settings associated with this session - /// - public SessionDetailsSettings Settings { get; set; } - - internal void Set(SessionDetailsInfoInternal? other) - { - if (other != null) - { - SessionId = other.Value.SessionId; - HostAddress = other.Value.HostAddress; - NumOpenPublicConnections = other.Value.NumOpenPublicConnections; - Settings = other.Value.Settings; - } - } - - public void Set(object other) - { - Set(other as SessionDetailsInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SessionDetailsInfoInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_SessionId; - private System.IntPtr m_HostAddress; - private uint m_NumOpenPublicConnections; - private System.IntPtr m_Settings; - - public string SessionId - { - get - { - string value; - Helper.TryMarshalGet(m_SessionId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_SessionId, value); - } - } - - public string HostAddress - { - get - { - string value; - Helper.TryMarshalGet(m_HostAddress, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_HostAddress, value); - } - } - - public uint NumOpenPublicConnections - { - get - { - return m_NumOpenPublicConnections; - } - - set - { - m_NumOpenPublicConnections = value; - } - } - - public SessionDetailsSettings Settings - { - get - { - SessionDetailsSettings value; - Helper.TryMarshalGet(m_Settings, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Settings, value); - } - } - - public void Set(SessionDetailsInfo other) - { - if (other != null) - { - m_ApiVersion = SessionDetails.SessiondetailsInfoApiLatest; - SessionId = other.SessionId; - HostAddress = other.HostAddress; - NumOpenPublicConnections = other.NumOpenPublicConnections; - Settings = other.Settings; - } - } - - public void Set(object other) - { - Set(other as SessionDetailsInfo); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_SessionId); - Helper.TryMarshalDispose(ref m_HostAddress); - Helper.TryMarshalDispose(ref m_Settings); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsInfo.cs.meta deleted file mode 100644 index daab0ad..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c967f44b9c709614e86fdb26ffdbbdd4 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsSettings.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsSettings.cs deleted file mode 100644 index e0b9652..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsSettings.cs +++ /dev/null @@ -1,158 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Common settings associated with a single session - /// - public class SessionDetailsSettings : ISettable - { - /// - /// The main indexed parameter for this session, can be any string (ie "Region:GameMode") - /// - public string BucketId { get; set; } - - /// - /// Number of total players allowed in the session - /// - public uint NumPublicConnections { get; set; } - - /// - /// Are players allowed to join the session while it is in the "in progress" state - /// - public bool AllowJoinInProgress { get; set; } - - /// - /// Permission level describing allowed access to the session when joining or searching for the session - /// - public OnlineSessionPermissionLevel PermissionLevel { get; set; } - - /// - /// Are players allowed to send invites for the session - /// - public bool InvitesAllowed { get; set; } - - internal void Set(SessionDetailsSettingsInternal? other) - { - if (other != null) - { - BucketId = other.Value.BucketId; - NumPublicConnections = other.Value.NumPublicConnections; - AllowJoinInProgress = other.Value.AllowJoinInProgress; - PermissionLevel = other.Value.PermissionLevel; - InvitesAllowed = other.Value.InvitesAllowed; - } - } - - public void Set(object other) - { - Set(other as SessionDetailsSettingsInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SessionDetailsSettingsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_BucketId; - private uint m_NumPublicConnections; - private int m_AllowJoinInProgress; - private OnlineSessionPermissionLevel m_PermissionLevel; - private int m_InvitesAllowed; - - public string BucketId - { - get - { - string value; - Helper.TryMarshalGet(m_BucketId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_BucketId, value); - } - } - - public uint NumPublicConnections - { - get - { - return m_NumPublicConnections; - } - - set - { - m_NumPublicConnections = value; - } - } - - public bool AllowJoinInProgress - { - get - { - bool value; - Helper.TryMarshalGet(m_AllowJoinInProgress, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_AllowJoinInProgress, value); - } - } - - public OnlineSessionPermissionLevel PermissionLevel - { - get - { - return m_PermissionLevel; - } - - set - { - m_PermissionLevel = value; - } - } - - public bool InvitesAllowed - { - get - { - bool value; - Helper.TryMarshalGet(m_InvitesAllowed, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_InvitesAllowed, value); - } - } - - public void Set(SessionDetailsSettings other) - { - if (other != null) - { - m_ApiVersion = SessionDetails.SessiondetailsSettingsApiLatest; - BucketId = other.BucketId; - NumPublicConnections = other.NumPublicConnections; - AllowJoinInProgress = other.AllowJoinInProgress; - PermissionLevel = other.PermissionLevel; - InvitesAllowed = other.InvitesAllowed; - } - } - - public void Set(object other) - { - Set(other as SessionDetailsSettings); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_BucketId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsSettings.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsSettings.cs.meta deleted file mode 100644 index 4650c98..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionDetailsSettings.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4fbd968e1f136df4dbf11363243aac03 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionInviteAcceptedCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionInviteAcceptedCallbackInfo.cs deleted file mode 100644 index 83f9463..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionInviteAcceptedCallbackInfo.cs +++ /dev/null @@ -1,126 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Output parameters for the function. - /// - public class SessionInviteAcceptedCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// Session ID that should be used for joining - /// - public string SessionId { get; private set; } - - /// - /// The Product User ID of the user who accepted the invitation - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The Product User ID of the user who sent the invitation - /// - public ProductUserId TargetUserId { get; private set; } - - /// - /// Invite ID that was accepted - /// - public string InviteId { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(SessionInviteAcceptedCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - SessionId = other.Value.SessionId; - LocalUserId = other.Value.LocalUserId; - TargetUserId = other.Value.TargetUserId; - InviteId = other.Value.InviteId; - } - } - - public void Set(object other) - { - Set(other as SessionInviteAcceptedCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SessionInviteAcceptedCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_SessionId; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - private System.IntPtr m_InviteId; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public string SessionId - { - get - { - string value; - Helper.TryMarshalGet(m_SessionId, out value); - return value; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public ProductUserId TargetUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_TargetUserId, out value); - return value; - } - } - - public string InviteId - { - get - { - string value; - Helper.TryMarshalGet(m_InviteId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionInviteAcceptedCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionInviteAcceptedCallbackInfo.cs.meta deleted file mode 100644 index 3d593ed..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionInviteAcceptedCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 12cea2246d870ed43aa952ff4a592d88 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionInviteReceivedCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionInviteReceivedCallbackInfo.cs deleted file mode 100644 index 7e5b26e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionInviteReceivedCallbackInfo.cs +++ /dev/null @@ -1,109 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Output parameters for the function. - /// - public class SessionInviteReceivedCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the user who received the invite - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The Product User ID of the user who sent the invitation - /// - public ProductUserId TargetUserId { get; private set; } - - /// - /// Invite ID used to retrieve the actual session details - /// - public string InviteId { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(SessionInviteReceivedCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - TargetUserId = other.Value.TargetUserId; - InviteId = other.Value.InviteId; - } - } - - public void Set(object other) - { - Set(other as SessionInviteReceivedCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SessionInviteReceivedCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - private System.IntPtr m_InviteId; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public ProductUserId TargetUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_TargetUserId, out value); - return value; - } - } - - public string InviteId - { - get - { - string value; - Helper.TryMarshalGet(m_InviteId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionInviteReceivedCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionInviteReceivedCallbackInfo.cs.meta deleted file mode 100644 index 797af42..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionInviteReceivedCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 452682f57a6137a4d84e26955577128e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModification.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModification.cs deleted file mode 100644 index 3c6fb6e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModification.cs +++ /dev/null @@ -1,264 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - public sealed partial class SessionModification : Handle - { - public SessionModification() - { - } - - public SessionModification(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// The most recent version of the API. - /// - public const int SessionmodificationAddattributeApiLatest = 1; - - /// - /// Maximum length of the name of the attribute associated with the session - /// - public const int SessionmodificationMaxSessionAttributeLength = 64; - - /// - /// Maximum number of attributes allowed on the session - /// - public const int SessionmodificationMaxSessionAttributes = 64; - - /// - /// Maximum number of characters allowed in the session id override - /// - public const int SessionmodificationMaxSessionidoverrideLength = 64; - - /// - /// Minimum number of characters allowed in the session id override - /// - public const int SessionmodificationMinSessionidoverrideLength = 16; - - /// - /// The most recent version of the API. - /// - public const int SessionmodificationRemoveattributeApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int SessionmodificationSetbucketidApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int SessionmodificationSethostaddressApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int SessionmodificationSetinvitesallowedApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int SessionmodificationSetjoininprogressallowedApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int SessionmodificationSetmaxplayersApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int SessionmodificationSetpermissionlevelApiLatest = 1; - - /// - /// Associate an attribute with this session - /// An attribute is something that may or may not be advertised with the session. - /// If advertised, it can be queried for in a search, otherwise the data remains local to the client - /// - /// Options to set the attribute and its advertised state - /// - /// if setting this parameter was successful - /// if the attribution is missing information or otherwise invalid - /// if the API version passed in is incorrect - /// - public Result AddAttribute(SessionModificationAddAttributeOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_SessionModification_AddAttribute(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Release the memory associated with session modification. - /// This must be called on data retrieved from or - /// - /// - /// - /// - The session modification handle to release - public void Release() - { - Bindings.EOS_SessionModification_Release(InnerHandle); - } - - /// - /// Remove an attribute from this session - /// - /// Specify the key of the attribute to remove - /// - /// if removing this parameter was successful - /// if the key is null or empty - /// if the API version passed in is incorrect - /// - public Result RemoveAttribute(SessionModificationRemoveAttributeOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_SessionModification_RemoveAttribute(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Set the bucket ID associated with this session. - /// Values such as region, game mode, etc can be combined here depending on game need. - /// Setting this is strongly recommended to improve search performance. - /// - /// Options associated with the bucket ID of the session - /// - /// if setting this parameter was successful - /// if the bucket ID is invalid or null - /// if the API version passed in is incorrect - /// - public Result SetBucketId(SessionModificationSetBucketIdOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_SessionModification_SetBucketId(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Set the host address associated with this session - /// Setting this is optional, if the value is not set the SDK will fill the value in from the service. - /// It is useful to set if other addressing mechanisms are desired or if LAN addresses are preferred during development - /// - /// @note No validation of this value occurs to allow for flexibility in addressing methods - /// - /// Options associated with the host address of the session - /// - /// if setting this parameter was successful - /// if the host ID is an empty string - /// if the API version passed in is incorrect - /// - public Result SetHostAddress(SessionModificationSetHostAddressOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_SessionModification_SetHostAddress(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Allows enabling or disabling invites for this session. - /// The session will also need to have `bPresenceEnabled` true. - /// - /// Options associated with invites allowed flag for this session. - /// - /// if setting this parameter was successful - /// if the API version passed in is incorrect - /// - public Result SetInvitesAllowed(SessionModificationSetInvitesAllowedOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_SessionModification_SetInvitesAllowed(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Set whether or not join in progress is allowed - /// Once a session is started, it will no longer be visible to search queries unless this flag is set or the session returns to the pending or ended state - /// - /// Options associated with setting the join in progress state the session - /// - /// if setting this parameter was successful - /// if the API version passed in is incorrect - /// - public Result SetJoinInProgressAllowed(SessionModificationSetJoinInProgressAllowedOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_SessionModification_SetJoinInProgressAllowed(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Set the maximum number of players allowed in this session. - /// When updating the session, it is not possible to reduce this number below the current number of existing players - /// - /// Options associated with max number of players in this session - /// - /// if setting this parameter was successful - /// if the API version passed in is incorrect - /// - public Result SetMaxPlayers(SessionModificationSetMaxPlayersOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_SessionModification_SetMaxPlayers(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Set the session permissions associated with this session. - /// The permissions range from "public" to "invite only" and are described by - /// - /// Options associated with the permission level of the session - /// - /// if setting this parameter was successful - /// if the API version passed in is incorrect - /// - public Result SetPermissionLevel(SessionModificationSetPermissionLevelOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_SessionModification_SetPermissionLevel(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModification.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModification.cs.meta deleted file mode 100644 index c7356ea..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModification.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ce500c9bd739ce34cb1b6875fd90ffe0 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationAddAttributeOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationAddAttributeOptions.cs deleted file mode 100644 index dd7478b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationAddAttributeOptions.cs +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class SessionModificationAddAttributeOptions - { - /// - /// Key/Value pair describing the attribute to add to the session - /// - public AttributeData SessionAttribute { get; set; } - - /// - /// Is this attribution advertised with the backend or simply stored locally - /// - public SessionAttributeAdvertisementType AdvertisementType { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SessionModificationAddAttributeOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_SessionAttribute; - private SessionAttributeAdvertisementType m_AdvertisementType; - - public AttributeData SessionAttribute - { - set - { - Helper.TryMarshalSet(ref m_SessionAttribute, value); - } - } - - public SessionAttributeAdvertisementType AdvertisementType - { - set - { - m_AdvertisementType = value; - } - } - - public void Set(SessionModificationAddAttributeOptions other) - { - if (other != null) - { - m_ApiVersion = SessionModification.SessionmodificationAddattributeApiLatest; - SessionAttribute = other.SessionAttribute; - AdvertisementType = other.AdvertisementType; - } - } - - public void Set(object other) - { - Set(other as SessionModificationAddAttributeOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_SessionAttribute); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationAddAttributeOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationAddAttributeOptions.cs.meta deleted file mode 100644 index 15a470e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationAddAttributeOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 5a05fa6275bd61b45bf7776d7d68e652 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationRemoveAttributeOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationRemoveAttributeOptions.cs deleted file mode 100644 index aae7a43..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationRemoveAttributeOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class SessionModificationRemoveAttributeOptions - { - /// - /// Session attribute to remove from the session - /// - public string Key { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SessionModificationRemoveAttributeOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Key; - - public string Key - { - set - { - Helper.TryMarshalSet(ref m_Key, value); - } - } - - public void Set(SessionModificationRemoveAttributeOptions other) - { - if (other != null) - { - m_ApiVersion = SessionModification.SessionmodificationRemoveattributeApiLatest; - Key = other.Key; - } - } - - public void Set(object other) - { - Set(other as SessionModificationRemoveAttributeOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Key); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationRemoveAttributeOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationRemoveAttributeOptions.cs.meta deleted file mode 100644 index 9ace119..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationRemoveAttributeOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 6979adcff3ebcfa4fb2dcaf2d5334511 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetBucketIdOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetBucketIdOptions.cs deleted file mode 100644 index 4beb5bb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetBucketIdOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class SessionModificationSetBucketIdOptions - { - /// - /// The new bucket id associated with the session - /// - public string BucketId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SessionModificationSetBucketIdOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_BucketId; - - public string BucketId - { - set - { - Helper.TryMarshalSet(ref m_BucketId, value); - } - } - - public void Set(SessionModificationSetBucketIdOptions other) - { - if (other != null) - { - m_ApiVersion = SessionModification.SessionmodificationSetbucketidApiLatest; - BucketId = other.BucketId; - } - } - - public void Set(object other) - { - Set(other as SessionModificationSetBucketIdOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_BucketId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetBucketIdOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetBucketIdOptions.cs.meta deleted file mode 100644 index 9ece234..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetBucketIdOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3910a4b70cb33d44ab31c4a67768a070 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetHostAddressOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetHostAddressOptions.cs deleted file mode 100644 index 62a839e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetHostAddressOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class SessionModificationSetHostAddressOptions - { - /// - /// A string representing the host address for the session, its meaning is up to the application - /// - public string HostAddress { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SessionModificationSetHostAddressOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_HostAddress; - - public string HostAddress - { - set - { - Helper.TryMarshalSet(ref m_HostAddress, value); - } - } - - public void Set(SessionModificationSetHostAddressOptions other) - { - if (other != null) - { - m_ApiVersion = SessionModification.SessionmodificationSethostaddressApiLatest; - HostAddress = other.HostAddress; - } - } - - public void Set(object other) - { - Set(other as SessionModificationSetHostAddressOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_HostAddress); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetHostAddressOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetHostAddressOptions.cs.meta deleted file mode 100644 index 269298a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetHostAddressOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d889d7b57cc19114c81467b1ffd02b42 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetInvitesAllowedOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetInvitesAllowedOptions.cs deleted file mode 100644 index 30e628b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetInvitesAllowedOptions.cs +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class SessionModificationSetInvitesAllowedOptions - { - /// - /// If true then invites can currently be sent for the associated session - /// - public bool InvitesAllowed { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SessionModificationSetInvitesAllowedOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private int m_InvitesAllowed; - - public bool InvitesAllowed - { - set - { - Helper.TryMarshalSet(ref m_InvitesAllowed, value); - } - } - - public void Set(SessionModificationSetInvitesAllowedOptions other) - { - if (other != null) - { - m_ApiVersion = SessionModification.SessionmodificationSetinvitesallowedApiLatest; - InvitesAllowed = other.InvitesAllowed; - } - } - - public void Set(object other) - { - Set(other as SessionModificationSetInvitesAllowedOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetInvitesAllowedOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetInvitesAllowedOptions.cs.meta deleted file mode 100644 index 554542c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetInvitesAllowedOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f8819bd65528cf443899f27aeec3f127 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetJoinInProgressAllowedOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetJoinInProgressAllowedOptions.cs deleted file mode 100644 index 5201671..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetJoinInProgressAllowedOptions.cs +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class SessionModificationSetJoinInProgressAllowedOptions - { - /// - /// Does the session allow join in progress - /// - public bool AllowJoinInProgress { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SessionModificationSetJoinInProgressAllowedOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private int m_AllowJoinInProgress; - - public bool AllowJoinInProgress - { - set - { - Helper.TryMarshalSet(ref m_AllowJoinInProgress, value); - } - } - - public void Set(SessionModificationSetJoinInProgressAllowedOptions other) - { - if (other != null) - { - m_ApiVersion = SessionModification.SessionmodificationSetjoininprogressallowedApiLatest; - AllowJoinInProgress = other.AllowJoinInProgress; - } - } - - public void Set(object other) - { - Set(other as SessionModificationSetJoinInProgressAllowedOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetJoinInProgressAllowedOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetJoinInProgressAllowedOptions.cs.meta deleted file mode 100644 index 2fd6ca5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetJoinInProgressAllowedOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 879c7194fc05d2e4d9a4f788e9839eaf -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetMaxPlayersOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetMaxPlayersOptions.cs deleted file mode 100644 index 099a0e7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetMaxPlayersOptions.cs +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class SessionModificationSetMaxPlayersOptions - { - /// - /// Max number of players to allow in the session - /// - public uint MaxPlayers { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SessionModificationSetMaxPlayersOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_MaxPlayers; - - public uint MaxPlayers - { - set - { - m_MaxPlayers = value; - } - } - - public void Set(SessionModificationSetMaxPlayersOptions other) - { - if (other != null) - { - m_ApiVersion = SessionModification.SessionmodificationSetmaxplayersApiLatest; - MaxPlayers = other.MaxPlayers; - } - } - - public void Set(object other) - { - Set(other as SessionModificationSetMaxPlayersOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetMaxPlayersOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetMaxPlayersOptions.cs.meta deleted file mode 100644 index ec664cc..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetMaxPlayersOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b72a2891e33fba341b5cdf6d008d1e14 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetPermissionLevelOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetPermissionLevelOptions.cs deleted file mode 100644 index 365b1f0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetPermissionLevelOptions.cs +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class SessionModificationSetPermissionLevelOptions - { - /// - /// Permission level to set on the sesion - /// - public OnlineSessionPermissionLevel PermissionLevel { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SessionModificationSetPermissionLevelOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private OnlineSessionPermissionLevel m_PermissionLevel; - - public OnlineSessionPermissionLevel PermissionLevel - { - set - { - m_PermissionLevel = value; - } - } - - public void Set(SessionModificationSetPermissionLevelOptions other) - { - if (other != null) - { - m_ApiVersion = SessionModification.SessionmodificationSetpermissionlevelApiLatest; - PermissionLevel = other.PermissionLevel; - } - } - - public void Set(object other) - { - Set(other as SessionModificationSetPermissionLevelOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetPermissionLevelOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetPermissionLevelOptions.cs.meta deleted file mode 100644 index f4074e7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionModificationSetPermissionLevelOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 649c75ba1e2611e448d3b34ec33624c1 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearch.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearch.cs deleted file mode 100644 index 6f4ca2c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearch.cs +++ /dev/null @@ -1,262 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - public sealed partial class SessionSearch : Handle - { - public SessionSearch() - { - } - - public SessionSearch(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// The most recent version of the API. - /// - public const int SessionsearchCopysearchresultbyindexApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int SessionsearchFindApiLatest = 2; - - /// - /// The most recent version of the API. - /// - public const int SessionsearchGetsearchresultcountApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int SessionsearchRemoveparameterApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int SessionsearchSetmaxsearchresultsApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int SessionsearchSetparameterApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int SessionsearchSetsessionidApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int SessionsearchSettargetuseridApiLatest = 1; - - /// - /// is used to immediately retrieve a handle to the session information from a given search result. - /// If the call returns an result, the out parameter, OutSessionHandle, must be passed to to release the memory associated with it. - /// - /// - /// - /// Structure containing the input parameters - /// out parameter used to receive the session handle - /// - /// if the information is available and passed out in OutSessionHandle - /// if you pass an invalid index or a null pointer for the out parameter - /// if the API version passed in is incorrect - /// - public Result CopySearchResultByIndex(SessionSearchCopySearchResultByIndexOptions options, out SessionDetails outSessionHandle) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outSessionHandleAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_SessionSearch_CopySearchResultByIndex(InnerHandle, optionsAddress, ref outSessionHandleAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryMarshalGet(outSessionHandleAddress, out outSessionHandle); - - return funcResult; - } - - /// - /// Find sessions matching the search criteria setup via this session search handle. - /// When the operation completes, this handle will have the search results that can be parsed - /// - /// Structure containing information about the search criteria to use - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// A callback that is fired when the search operation completes, either successfully or in error - /// - /// if the find operation completes successfully - /// if searching for an individual session by sessionid or targetuserid returns no results - /// if any of the options are incorrect - /// - public void Find(SessionSearchFindOptions options, object clientData, SessionSearchOnFindCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new SessionSearchOnFindCallbackInternal(OnFindCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_SessionSearch_Find(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Get the number of search results found by the search parameters in this search - /// - /// Options associated with the search count - /// - /// return the number of search results found by the query or 0 if search is not complete - /// - public uint GetSearchResultCount(SessionSearchGetSearchResultCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_SessionSearch_GetSearchResultCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Release the memory associated with a session search. This must be called on data retrieved from . - /// - /// - /// - The session search handle to release - public void Release() - { - Bindings.EOS_SessionSearch_Release(InnerHandle); - } - - /// - /// Remove a parameter from the array of search criteria. - /// - /// @params Options a search parameter key name to remove - /// - /// - /// if removing this search parameter was successful - /// if the search key is invalid or null - /// if the parameter was not a part of the search criteria - /// if the API version passed in is incorrect - /// - public Result RemoveParameter(SessionSearchRemoveParameterOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_SessionSearch_RemoveParameter(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Set the maximum number of search results to return in the query, can't be more than - /// - /// maximum number of search results to return in the query - /// - /// if setting the max results was successful - /// if the number of results requested is invalid - /// if the API version passed in is incorrect - /// - public Result SetMaxResults(SessionSearchSetMaxResultsOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_SessionSearch_SetMaxResults(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Add a parameter to an array of search criteria combined via an implicit AND operator. Setting SessionId or TargetUserId will result in failing - /// - /// - /// - /// a search parameter and its comparison op - /// - /// if setting this search parameter was successful - /// if the search criteria is invalid or null - /// if the API version passed in is incorrect - /// - public Result SetParameter(SessionSearchSetParameterOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_SessionSearch_SetParameter(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Set a session ID to find and will return at most one search result. Setting TargetUserId or SearchParameters will result in failing - /// - /// A specific session ID for which to search - /// - /// if setting this session ID was successful - /// if the session ID is invalid or null - /// if the API version passed in is incorrect - /// - public Result SetSessionId(SessionSearchSetSessionIdOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_SessionSearch_SetSessionId(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Set a target user ID to find and will return at most one search result. Setting SessionId or SearchParameters will result in failing - /// @note a search result will only be found if this user is in a public session - /// - /// a specific target user ID to find - /// - /// if setting this target user ID was successful - /// if the target user ID is invalid or null - /// if the API version passed in is incorrect - /// - public Result SetTargetUserId(SessionSearchSetTargetUserIdOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_SessionSearch_SetTargetUserId(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - [MonoPInvokeCallback(typeof(SessionSearchOnFindCallbackInternal))] - internal static void OnFindCallbackInternalImplementation(System.IntPtr data) - { - SessionSearchOnFindCallback callback; - SessionSearchFindCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearch.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearch.cs.meta deleted file mode 100644 index cbcebb6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearch.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: bded3d0795c75f24d8f21cc637539a50 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchCopySearchResultByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchCopySearchResultByIndexOptions.cs deleted file mode 100644 index 530a51d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchCopySearchResultByIndexOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class SessionSearchCopySearchResultByIndexOptions - { - /// - /// The index of the session to retrieve within the completed search query - /// - /// - public uint SessionIndex { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SessionSearchCopySearchResultByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_SessionIndex; - - public uint SessionIndex - { - set - { - m_SessionIndex = value; - } - } - - public void Set(SessionSearchCopySearchResultByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = SessionSearch.SessionsearchCopysearchresultbyindexApiLatest; - SessionIndex = other.SessionIndex; - } - } - - public void Set(object other) - { - Set(other as SessionSearchCopySearchResultByIndexOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchCopySearchResultByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchCopySearchResultByIndexOptions.cs.meta deleted file mode 100644 index a7ad6f3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchCopySearchResultByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0f91a771d6e13d94ba9c897a0b12f0e2 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchFindCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchFindCallbackInfo.cs deleted file mode 100644 index 0a08854..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchFindCallbackInfo.cs +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - public class SessionSearchFindCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(SessionSearchFindCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - } - } - - public void Set(object other) - { - Set(other as SessionSearchFindCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SessionSearchFindCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchFindCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchFindCallbackInfo.cs.meta deleted file mode 100644 index 2c0bda7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchFindCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ff5dacfe11085f54eb439103cac00826 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchFindOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchFindOptions.cs deleted file mode 100644 index f3988dc..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchFindOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class SessionSearchFindOptions - { - /// - /// The Product User ID of the local user who is searching - /// - public ProductUserId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SessionSearchFindOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(SessionSearchFindOptions other) - { - if (other != null) - { - m_ApiVersion = SessionSearch.SessionsearchFindApiLatest; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as SessionSearchFindOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchFindOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchFindOptions.cs.meta deleted file mode 100644 index b7dcfdc..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchFindOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a62020add18f73f4095ec9e8f9fed860 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchGetSearchResultCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchGetSearchResultCountOptions.cs deleted file mode 100644 index d68c011..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchGetSearchResultCountOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class SessionSearchGetSearchResultCountOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SessionSearchGetSearchResultCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(SessionSearchGetSearchResultCountOptions other) - { - if (other != null) - { - m_ApiVersion = SessionSearch.SessionsearchGetsearchresultcountApiLatest; - } - } - - public void Set(object other) - { - Set(other as SessionSearchGetSearchResultCountOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchGetSearchResultCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchGetSearchResultCountOptions.cs.meta deleted file mode 100644 index 26c27d5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchGetSearchResultCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 5a4771d5bb9a80d4eac3dba63db4c02b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchOnFindCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchOnFindCallback.cs deleted file mode 100644 index 39f2541..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchOnFindCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void SessionSearchOnFindCallback(SessionSearchFindCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void SessionSearchOnFindCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchOnFindCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchOnFindCallback.cs.meta deleted file mode 100644 index 3af3a9f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchOnFindCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4cb85e8d3feed734f8ace4daccaa7de3 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchRemoveParameterOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchRemoveParameterOptions.cs deleted file mode 100644 index e0d956a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchRemoveParameterOptions.cs +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - /// Removal requires both the key and its comparator in order to remove as the same key can be used in more than one operation - /// - public class SessionSearchRemoveParameterOptions - { - /// - /// Search parameter key to remove from the search - /// - public string Key { get; set; } - - /// - /// Search comparison operation associated with the key to remove - /// - public ComparisonOp ComparisonOp { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SessionSearchRemoveParameterOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Key; - private ComparisonOp m_ComparisonOp; - - public string Key - { - set - { - Helper.TryMarshalSet(ref m_Key, value); - } - } - - public ComparisonOp ComparisonOp - { - set - { - m_ComparisonOp = value; - } - } - - public void Set(SessionSearchRemoveParameterOptions other) - { - if (other != null) - { - m_ApiVersion = SessionSearch.SessionsearchRemoveparameterApiLatest; - Key = other.Key; - ComparisonOp = other.ComparisonOp; - } - } - - public void Set(object other) - { - Set(other as SessionSearchRemoveParameterOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Key); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchRemoveParameterOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchRemoveParameterOptions.cs.meta deleted file mode 100644 index 2ad3f47..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchRemoveParameterOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ca8acd6340430b14298797fc1342d988 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchSetMaxResultsOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchSetMaxResultsOptions.cs deleted file mode 100644 index fa0a6e4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchSetMaxResultsOptions.cs +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class SessionSearchSetMaxResultsOptions - { - /// - /// Maximum number of search results returned with this query, may not exceed - /// - public uint MaxSearchResults { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SessionSearchSetMaxResultsOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_MaxSearchResults; - - public uint MaxSearchResults - { - set - { - m_MaxSearchResults = value; - } - } - - public void Set(SessionSearchSetMaxResultsOptions other) - { - if (other != null) - { - m_ApiVersion = SessionSearch.SessionsearchSetmaxsearchresultsApiLatest; - MaxSearchResults = other.MaxSearchResults; - } - } - - public void Set(object other) - { - Set(other as SessionSearchSetMaxResultsOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchSetMaxResultsOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchSetMaxResultsOptions.cs.meta deleted file mode 100644 index 1b842c8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchSetMaxResultsOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 604b5f13a42b9ff4f9e3f7b61da45bb2 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchSetParameterOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchSetParameterOptions.cs deleted file mode 100644 index a46db86..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchSetParameterOptions.cs +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - /// A search key may be set more than once to make multiple comparisons - /// The two comparisons are AND'd together - /// (ie, Key GREATER_THAN 5, Key NOT_EQUALS 10) - /// - public class SessionSearchSetParameterOptions - { - /// - /// Search parameter describing a key and a value to compare - /// - public AttributeData Parameter { get; set; } - - /// - /// The type of comparison to make against the search parameter - /// - public ComparisonOp ComparisonOp { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SessionSearchSetParameterOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Parameter; - private ComparisonOp m_ComparisonOp; - - public AttributeData Parameter - { - set - { - Helper.TryMarshalSet(ref m_Parameter, value); - } - } - - public ComparisonOp ComparisonOp - { - set - { - m_ComparisonOp = value; - } - } - - public void Set(SessionSearchSetParameterOptions other) - { - if (other != null) - { - m_ApiVersion = SessionSearch.SessionsearchSetparameterApiLatest; - Parameter = other.Parameter; - ComparisonOp = other.ComparisonOp; - } - } - - public void Set(object other) - { - Set(other as SessionSearchSetParameterOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Parameter); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchSetParameterOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchSetParameterOptions.cs.meta deleted file mode 100644 index a775f96..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchSetParameterOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 560dcb8daf273e94bafe047e0f364325 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchSetSessionIdOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchSetSessionIdOptions.cs deleted file mode 100644 index 1b06f12..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchSetSessionIdOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class SessionSearchSetSessionIdOptions - { - /// - /// Search sessions for a specific session ID, returning at most one session - /// - public string SessionId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SessionSearchSetSessionIdOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_SessionId; - - public string SessionId - { - set - { - Helper.TryMarshalSet(ref m_SessionId, value); - } - } - - public void Set(SessionSearchSetSessionIdOptions other) - { - if (other != null) - { - m_ApiVersion = SessionSearch.SessionsearchSetsessionidApiLatest; - SessionId = other.SessionId; - } - } - - public void Set(object other) - { - Set(other as SessionSearchSetSessionIdOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_SessionId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchSetSessionIdOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchSetSessionIdOptions.cs.meta deleted file mode 100644 index da9181b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchSetSessionIdOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 5952fd7ec367e3a4baf6e5150464db69 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchSetTargetUserIdOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchSetTargetUserIdOptions.cs deleted file mode 100644 index 9b648a0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchSetTargetUserIdOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class SessionSearchSetTargetUserIdOptions - { - /// - /// The Product User ID to find; return any sessions where the user matching this ID is currently registered - /// - public ProductUserId TargetUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SessionSearchSetTargetUserIdOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_TargetUserId; - - public ProductUserId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public void Set(SessionSearchSetTargetUserIdOptions other) - { - if (other != null) - { - m_ApiVersion = SessionSearch.SessionsearchSettargetuseridApiLatest; - TargetUserId = other.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as SessionSearchSetTargetUserIdOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchSetTargetUserIdOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchSetTargetUserIdOptions.cs.meta deleted file mode 100644 index cc5ccab..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionSearchSetTargetUserIdOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 2b6ff4c92395e1140a4fca78a3439084 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionsInterface.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionsInterface.cs deleted file mode 100644 index e8fcdb4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionsInterface.cs +++ /dev/null @@ -1,1008 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - public sealed partial class SessionsInterface : Handle - { - public SessionsInterface() - { - } - - public SessionsInterface(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// The most recent version of the API. - /// - public const int AddnotifyjoinsessionacceptedApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int AddnotifysessioninviteacceptedApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int AddnotifysessioninvitereceivedApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int AttributedataApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int CopyactivesessionhandleApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int CopysessionhandlebyinviteidApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int CopysessionhandlebyuieventidApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int CopysessionhandleforpresenceApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int CreatesessionmodificationApiLatest = 3; - - /// - /// The most recent version of the API. - /// - public const int CreatesessionsearchApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int DestroysessionApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int DumpsessionstateApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int EndsessionApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetinvitecountApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetinviteidbyindexApiLatest = 1; - - /// - /// Max length of an invite ID - /// - public const int InviteidMaxLength = 64; - - /// - /// The most recent version of the API. - /// - public const int IsuserinsessionApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int JoinsessionApiLatest = 2; - - /// - /// Maximum number of search results allowed with a given query - /// - public const int MaxSearchResults = 200; - - /// - /// Maximum number of players allowed in a single session - /// - public const int Maxregisteredplayers = 1000; - - /// - /// The most recent version of the API. - /// - public const int QueryinvitesApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int RegisterplayersApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int RejectinviteApiLatest = 1; - - /// - /// Search for a matching bucket ID (value is string) - /// - public const string SearchBucketId = "bucket"; - - /// - /// Search for empty servers only (value is true/false) - /// - public const string SearchEmptyServersOnly = "emptyonly"; - - /// - /// Search for a match with min free space (value is int) - /// - public const string SearchMinslotsavailable = "minslotsavailable"; - - /// - /// Search for non empty servers only (value is true/false) - /// - public const string SearchNonemptyServersOnly = "nonemptyonly"; - - /// - /// The most recent version of the API. - /// - public const int SendinviteApiLatest = 1; - - /// - /// DEPRECATED! Use instead. - /// - public const int SessionattributeApiLatest = SessionDetails.SessiondetailsAttributeApiLatest; - - /// - /// DEPRECATED! Use instead. - /// - public const int SessionattributedataApiLatest = AttributedataApiLatest; - - /// - /// The most recent version of the API. - /// - public const int StartsessionApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int UnregisterplayersApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int UpdatesessionApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int UpdatesessionmodificationApiLatest = 1; - - /// - /// Register to receive notifications when a user accepts a session join game via the social overlay. - /// @note must call RemoveNotifyJoinSessionAccepted to remove the notification - /// - /// Structure containing information about the request. - /// Arbitrary data that is passed back to you in the CompletionDelegate. - /// A callback that is fired when a a notification is received. - /// - /// handle representing the registered callback - /// - public ulong AddNotifyJoinSessionAccepted(AddNotifyJoinSessionAcceptedOptions options, object clientData, OnJoinSessionAcceptedCallback notificationFn) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var notificationFnInternal = new OnJoinSessionAcceptedCallbackInternal(OnJoinSessionAcceptedCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - - var funcResult = Bindings.EOS_Sessions_AddNotifyJoinSessionAccepted(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Register to receive notifications when a user accepts a session invite via the social overlay. - /// @note must call RemoveNotifySessionInviteAccepted to remove the notification - /// - /// Structure containing information about the request. - /// Arbitrary data that is passed back to you in the CompletionDelegate. - /// A callback that is fired when a a notification is received. - /// - /// handle representing the registered callback - /// - public ulong AddNotifySessionInviteAccepted(AddNotifySessionInviteAcceptedOptions options, object clientData, OnSessionInviteAcceptedCallback notificationFn) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var notificationFnInternal = new OnSessionInviteAcceptedCallbackInternal(OnSessionInviteAcceptedCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - - var funcResult = Bindings.EOS_Sessions_AddNotifySessionInviteAccepted(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Register to receive session invites. - /// @note must call RemoveNotifySessionInviteReceived to remove the notification - /// - /// Structure containing information about the session invite notification - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// A callback that is fired when a session invite for a user has been received - /// - /// handle representing the registered callback - /// - public ulong AddNotifySessionInviteReceived(AddNotifySessionInviteReceivedOptions options, object clientData, OnSessionInviteReceivedCallback notificationFn) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var notificationFnInternal = new OnSessionInviteReceivedCallbackInternal(OnSessionInviteReceivedCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - - var funcResult = Bindings.EOS_Sessions_AddNotifySessionInviteReceived(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Create a handle to an existing active session. - /// - /// Structure containing information about the active session to retrieve - /// The new active session handle or null if there was an error - /// - /// if the session handle was created successfully - /// if any of the options are incorrect - /// if the API version passed in is incorrect - /// if the active session doesn't exist - /// - public Result CopyActiveSessionHandle(CopyActiveSessionHandleOptions options, out ActiveSession outSessionHandle) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outSessionHandleAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Sessions_CopyActiveSessionHandle(InnerHandle, optionsAddress, ref outSessionHandleAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryMarshalGet(outSessionHandleAddress, out outSessionHandle); - - return funcResult; - } - - /// - /// is used to immediately retrieve a handle to the session information from after notification of an invite - /// If the call returns an result, the out parameter, OutSessionHandle, must be passed to to release the memory associated with it. - /// - /// - /// - /// Structure containing the input parameters - /// out parameter used to receive the session handle - /// - /// if the information is available and passed out in OutSessionHandle - /// if you pass an invalid invite ID or a null pointer for the out parameter - /// if the API version passed in is incorrect - /// if the invite ID cannot be found - /// - public Result CopySessionHandleByInviteId(CopySessionHandleByInviteIdOptions options, out SessionDetails outSessionHandle) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outSessionHandleAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Sessions_CopySessionHandleByInviteId(InnerHandle, optionsAddress, ref outSessionHandleAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryMarshalGet(outSessionHandleAddress, out outSessionHandle); - - return funcResult; - } - - /// - /// is used to immediately retrieve a handle to the session information from after notification of a join game event. - /// If the call returns an result, the out parameter, OutSessionHandle, must be passed to to release the memory associated with it. - /// - /// - /// - /// Structure containing the input parameters - /// out parameter used to receive the session handle - /// - /// if the information is available and passed out in OutSessionHandle - /// if you pass an invalid invite ID or a null pointer for the out parameter - /// if the API version passed in is incorrect - /// if the invite ID cannot be found - /// - public Result CopySessionHandleByUiEventId(CopySessionHandleByUiEventIdOptions options, out SessionDetails outSessionHandle) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outSessionHandleAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Sessions_CopySessionHandleByUiEventId(InnerHandle, optionsAddress, ref outSessionHandleAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryMarshalGet(outSessionHandleAddress, out outSessionHandle); - - return funcResult; - } - - /// - /// is used to immediately retrieve a handle to the session information which was marked with bPresenceEnabled on create or join. - /// If the call returns an result, the out parameter, OutSessionHandle, must be passed to to release the memory associated with it. - /// - /// - /// - /// Structure containing the input parameters - /// out parameter used to receive the session handle - /// - /// if the information is available and passed out in OutSessionHandle - /// if you pass an invalid invite ID or a null pointer for the out parameter - /// if the API version passed in is incorrect - /// if there is no session with bPresenceEnabled - /// - public Result CopySessionHandleForPresence(CopySessionHandleForPresenceOptions options, out SessionDetails outSessionHandle) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outSessionHandleAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Sessions_CopySessionHandleForPresence(InnerHandle, optionsAddress, ref outSessionHandleAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryMarshalGet(outSessionHandleAddress, out outSessionHandle); - - return funcResult; - } - - /// - /// Creates a session modification handle (). The session modification handle is used to build a new session and can be applied with - /// The must be released by calling once it no longer needed. - /// - /// - /// - /// - /// Required fields for the creation of a session such as a name, bucketid, and max players - /// Pointer to a Session Modification Handle only set if successful - /// - /// if we successfully created the Session Modification Handle pointed at in OutSessionModificationHandle, or an error result if the input data was invalid - /// - public Result CreateSessionModification(CreateSessionModificationOptions options, out SessionModification outSessionModificationHandle) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outSessionModificationHandleAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Sessions_CreateSessionModification(InnerHandle, optionsAddress, ref outSessionModificationHandleAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryMarshalGet(outSessionModificationHandleAddress, out outSessionModificationHandle); - - return funcResult; - } - - /// - /// Create a session search handle. This handle may be modified to include various search parameters. - /// Searching is possible in three methods, all mutually exclusive - /// - set the session ID to find a specific session - /// - set the target user ID to find a specific user - /// - set session parameters to find an array of sessions that match the search criteria - /// - /// Structure containing required parameters such as the maximum number of search results - /// The new search handle or null if there was an error creating the search handle - /// - /// if the search creation completes successfully - /// if any of the options are incorrect - /// - public Result CreateSessionSearch(CreateSessionSearchOptions options, out SessionSearch outSessionSearchHandle) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outSessionSearchHandleAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Sessions_CreateSessionSearch(InnerHandle, optionsAddress, ref outSessionSearchHandleAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryMarshalGet(outSessionSearchHandleAddress, out outSessionSearchHandle); - - return funcResult; - } - - /// - /// Destroy a session given a session name - /// - /// Structure containing information about the session to be destroyed - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// A callback that is fired when the destroy operation completes, either successfully or in error - /// - /// if the destroy completes successfully - /// if any of the options are incorrect - /// if the session is already marked for destroy - /// if a session to be destroyed does not exist - /// - public void DestroySession(DestroySessionOptions options, object clientData, OnDestroySessionCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnDestroySessionCallbackInternal(OnDestroySessionCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Sessions_DestroySession(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Dump the contents of active sessions that exist locally to the log output, purely for debug purposes - /// - /// Options related to dumping session state such as the session name - /// - /// if the output operation completes successfully - /// if the session specified does not exist - /// if any of the options are incorrect - /// - public Result DumpSessionState(DumpSessionStateOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Sessions_DumpSessionState(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Mark a session as ended, making it available to find if "join in progress" was disabled. The session may be started again if desired - /// - /// Structure containing information about the session to be ended - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// A callback that is fired when the end operation completes, either successfully or in error - /// - /// if the end completes successfully - /// if any of the options are incorrect - /// if the session is out of sync and will be updated on the next connection with the backend - /// if a session to be ended does not exist - /// - public void EndSession(EndSessionOptions options, object clientData, OnEndSessionCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnEndSessionCallbackInternal(OnEndSessionCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Sessions_EndSession(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Get the number of known invites for a given user - /// - /// the Options associated with retrieving the current invite count - /// - /// number of known invites for a given user or 0 if there is an error - /// - public uint GetInviteCount(GetInviteCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Sessions_GetInviteCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Retrieve an invite ID from a list of active invites for a given user - /// - /// - /// - /// Structure containing the input parameters - /// - /// if the input is valid and an invite ID was returned - /// if any of the options are incorrect - /// if the invite doesn't exist - /// - public Result GetInviteIdByIndex(GetInviteIdByIndexOptions options, out string outBuffer) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - System.IntPtr outBufferAddress = System.IntPtr.Zero; - int inOutBufferLength = InviteidMaxLength + 1; - Helper.TryMarshalAllocate(ref outBufferAddress, inOutBufferLength, out _); - - var funcResult = Bindings.EOS_Sessions_GetInviteIdByIndex(InnerHandle, optionsAddress, outBufferAddress, ref inOutBufferLength); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryMarshalGet(outBufferAddress, out outBuffer); - Helper.TryMarshalDispose(ref outBufferAddress); - - return funcResult; - } - - /// - /// returns whether or not a given user can be found in a specified session - /// - /// Structure containing the input parameters - /// - /// if the user is found in the specified session - /// if the user is not found in the specified session - /// if you pass an invalid invite ID or a null pointer for the out parameter - /// if the API version passed in is incorrect - /// if an invalid target user is specified - /// if the session specified is invalid - /// - public Result IsUserInSession(IsUserInSessionOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Sessions_IsUserInSession(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Join a session, creating a local session under a given session name. Backend will validate various conditions to make sure it is possible to join the session. - /// - /// Structure containing information about the session to be joined - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// A callback that is fired when the join operation completes, either successfully or in error - /// - /// if the join completes successfully - /// if any of the options are incorrect - /// if the session is already exists or is in the process of being joined - /// - public void JoinSession(JoinSessionOptions options, object clientData, OnJoinSessionCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnJoinSessionCallbackInternal(OnJoinSessionCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Sessions_JoinSession(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Retrieve all existing invites for a single user - /// - /// Structure containing information about the invites to query - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// A callback that is fired when the query invites operation completes, either successfully or in error - public void QueryInvites(QueryInvitesOptions options, object clientData, OnQueryInvitesCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnQueryInvitesCallbackInternal(OnQueryInvitesCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Sessions_QueryInvites(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Register a group of players with the session, allowing them to invite others or otherwise indicate they are part of the session for determining a full session - /// - /// Structure containing information about the session and players to be registered - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// A callback that is fired when the registration operation completes, either successfully or in error - /// - /// if the register completes successfully - /// if the players to register registered previously - /// if any of the options are incorrect - /// if the session is out of sync and will be updated on the next connection with the backend - /// if a session to register players does not exist - /// - public void RegisterPlayers(RegisterPlayersOptions options, object clientData, OnRegisterPlayersCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnRegisterPlayersCallbackInternal(OnRegisterPlayersCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Sessions_RegisterPlayers(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Reject an invite from another player. - /// - /// Structure containing information about the invite to reject - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// A callback that is fired when the reject invite operation completes, either successfully or in error - /// - /// if the invite rejection completes successfully - /// if any of the options are incorrect - /// if the invite does not exist - /// - public void RejectInvite(RejectInviteOptions options, object clientData, OnRejectInviteCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnRejectInviteCallbackInternal(OnRejectInviteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Sessions_RejectInvite(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Unregister from receiving notifications when a user accepts a session join game via the social overlay. - /// - /// Handle representing the registered callback - public void RemoveNotifyJoinSessionAccepted(ulong inId) - { - Helper.TryRemoveCallbackByNotificationId(inId); - - Bindings.EOS_Sessions_RemoveNotifyJoinSessionAccepted(InnerHandle, inId); - } - - /// - /// Unregister from receiving notifications when a user accepts a session invite via the social overlay. - /// - /// Handle representing the registered callback - public void RemoveNotifySessionInviteAccepted(ulong inId) - { - Helper.TryRemoveCallbackByNotificationId(inId); - - Bindings.EOS_Sessions_RemoveNotifySessionInviteAccepted(InnerHandle, inId); - } - - /// - /// Unregister from receiving session invites. - /// - /// Handle representing the registered callback - public void RemoveNotifySessionInviteReceived(ulong inId) - { - Helper.TryRemoveCallbackByNotificationId(inId); - - Bindings.EOS_Sessions_RemoveNotifySessionInviteReceived(InnerHandle, inId); - } - - /// - /// Send an invite to another player. User must have created the session or be registered in the session or else the call will fail - /// - /// Structure containing information about the session and player to invite - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// A callback that is fired when the send invite operation completes, either successfully or in error - /// - /// if the send invite completes successfully - /// if any of the options are incorrect - /// if the session to send the invite from does not exist - /// - public void SendInvite(SendInviteOptions options, object clientData, OnSendInviteCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnSendInviteCallbackInternal(OnSendInviteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Sessions_SendInvite(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Mark a session as started, making it unable to find if session properties indicate "join in progress" is not available - /// - /// Structure containing information about the session to be started - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// A callback that is fired when the start operation completes, either successfully or in error - /// - /// if the start completes successfully - /// if any of the options are incorrect - /// if the session is out of sync and will be updated on the next connection with the backend - /// if a session to be started does not exist - /// - public void StartSession(StartSessionOptions options, object clientData, OnStartSessionCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnStartSessionCallbackInternal(OnStartSessionCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Sessions_StartSession(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Unregister a group of players with the session, freeing up space for others to join - /// - /// Structure containing information about the session and players to be unregistered - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// A callback that is fired when the unregistration operation completes, either successfully or in error - /// - /// if the unregister completes successfully - /// if the players to unregister were not found - /// if any of the options are incorrect - /// if the session is out of sync and will be updated on the next connection with the backend - /// if a session to be unregister players does not exist - /// - public void UnregisterPlayers(UnregisterPlayersOptions options, object clientData, OnUnregisterPlayersCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnUnregisterPlayersCallbackInternal(OnUnregisterPlayersCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Sessions_UnregisterPlayers(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Update a session given a session modification handle created by or - /// - /// Structure containing information about the session to be updated - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// A callback that is fired when the update operation completes, either successfully or in error - /// - /// if the update completes successfully - /// if any of the options are incorrect - /// if the session is out of sync and will be updated on the next connection with the backend - /// if a session to be updated does not exist - /// - public void UpdateSession(UpdateSessionOptions options, object clientData, OnUpdateSessionCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnUpdateSessionCallbackInternal(OnUpdateSessionCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Sessions_UpdateSession(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Creates a session modification handle (). The session modification handle is used to modify an existing session and can be applied with . - /// The must be released by calling once it is no longer needed. - /// - /// - /// - /// - /// Required fields such as session name - /// Pointer to a Session Modification Handle only set if successful - /// - /// if we successfully created the Session Modification Handle pointed at in OutSessionModificationHandle, or an error result if the input data was invalid - /// - public Result UpdateSessionModification(UpdateSessionModificationOptions options, out SessionModification outSessionModificationHandle) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outSessionModificationHandleAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Sessions_UpdateSessionModification(InnerHandle, optionsAddress, ref outSessionModificationHandleAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryMarshalGet(outSessionModificationHandleAddress, out outSessionModificationHandle); - - return funcResult; - } - - [MonoPInvokeCallback(typeof(OnDestroySessionCallbackInternal))] - internal static void OnDestroySessionCallbackInternalImplementation(System.IntPtr data) - { - OnDestroySessionCallback callback; - DestroySessionCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnEndSessionCallbackInternal))] - internal static void OnEndSessionCallbackInternalImplementation(System.IntPtr data) - { - OnEndSessionCallback callback; - EndSessionCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnJoinSessionAcceptedCallbackInternal))] - internal static void OnJoinSessionAcceptedCallbackInternalImplementation(System.IntPtr data) - { - OnJoinSessionAcceptedCallback callback; - JoinSessionAcceptedCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnJoinSessionCallbackInternal))] - internal static void OnJoinSessionCallbackInternalImplementation(System.IntPtr data) - { - OnJoinSessionCallback callback; - JoinSessionCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnQueryInvitesCallbackInternal))] - internal static void OnQueryInvitesCallbackInternalImplementation(System.IntPtr data) - { - OnQueryInvitesCallback callback; - QueryInvitesCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnRegisterPlayersCallbackInternal))] - internal static void OnRegisterPlayersCallbackInternalImplementation(System.IntPtr data) - { - OnRegisterPlayersCallback callback; - RegisterPlayersCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnRejectInviteCallbackInternal))] - internal static void OnRejectInviteCallbackInternalImplementation(System.IntPtr data) - { - OnRejectInviteCallback callback; - RejectInviteCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnSendInviteCallbackInternal))] - internal static void OnSendInviteCallbackInternalImplementation(System.IntPtr data) - { - OnSendInviteCallback callback; - SendInviteCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnSessionInviteAcceptedCallbackInternal))] - internal static void OnSessionInviteAcceptedCallbackInternalImplementation(System.IntPtr data) - { - OnSessionInviteAcceptedCallback callback; - SessionInviteAcceptedCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnSessionInviteReceivedCallbackInternal))] - internal static void OnSessionInviteReceivedCallbackInternalImplementation(System.IntPtr data) - { - OnSessionInviteReceivedCallback callback; - SessionInviteReceivedCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnStartSessionCallbackInternal))] - internal static void OnStartSessionCallbackInternalImplementation(System.IntPtr data) - { - OnStartSessionCallback callback; - StartSessionCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnUnregisterPlayersCallbackInternal))] - internal static void OnUnregisterPlayersCallbackInternalImplementation(System.IntPtr data) - { - OnUnregisterPlayersCallback callback; - UnregisterPlayersCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnUpdateSessionCallbackInternal))] - internal static void OnUpdateSessionCallbackInternalImplementation(System.IntPtr data) - { - OnUpdateSessionCallback callback; - UpdateSessionCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionsInterface.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionsInterface.cs.meta deleted file mode 100644 index 0bde474..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/SessionsInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 66c9b0f707dddd34dbe000d69628afe6 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/StartSessionCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/StartSessionCallbackInfo.cs deleted file mode 100644 index e149e5b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/StartSessionCallbackInfo.cs +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - public class StartSessionCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(StartSessionCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - } - } - - public void Set(object other) - { - Set(other as StartSessionCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct StartSessionCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/StartSessionCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/StartSessionCallbackInfo.cs.meta deleted file mode 100644 index 1805b40..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/StartSessionCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: af48efc831b518147933a229cc2d4b12 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/StartSessionOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/StartSessionOptions.cs deleted file mode 100644 index b306130..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/StartSessionOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class StartSessionOptions - { - /// - /// Name of the session to set in progress - /// - public string SessionName { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct StartSessionOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_SessionName; - - public string SessionName - { - set - { - Helper.TryMarshalSet(ref m_SessionName, value); - } - } - - public void Set(StartSessionOptions other) - { - if (other != null) - { - m_ApiVersion = SessionsInterface.StartsessionApiLatest; - SessionName = other.SessionName; - } - } - - public void Set(object other) - { - Set(other as StartSessionOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_SessionName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/StartSessionOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/StartSessionOptions.cs.meta deleted file mode 100644 index 3fc646d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/StartSessionOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c690f3b63cbc26345a8c15df7c9fb45e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/UnregisterPlayersCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/UnregisterPlayersCallbackInfo.cs deleted file mode 100644 index d7a9884..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/UnregisterPlayersCallbackInfo.cs +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - public class UnregisterPlayersCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(UnregisterPlayersCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - } - } - - public void Set(object other) - { - Set(other as UnregisterPlayersCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct UnregisterPlayersCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/UnregisterPlayersCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/UnregisterPlayersCallbackInfo.cs.meta deleted file mode 100644 index 715f462..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/UnregisterPlayersCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 322f1ee121f403c4a86e143897278c61 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/UnregisterPlayersOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/UnregisterPlayersOptions.cs deleted file mode 100644 index 533f138..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/UnregisterPlayersOptions.cs +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class UnregisterPlayersOptions - { - /// - /// Name of the session for which to unregister players - /// - public string SessionName { get; set; } - - /// - /// Array of players to unregister from the session - /// - public ProductUserId[] PlayersToUnregister { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct UnregisterPlayersOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_SessionName; - private System.IntPtr m_PlayersToUnregister; - private uint m_PlayersToUnregisterCount; - - public string SessionName - { - set - { - Helper.TryMarshalSet(ref m_SessionName, value); - } - } - - public ProductUserId[] PlayersToUnregister - { - set - { - Helper.TryMarshalSet(ref m_PlayersToUnregister, value, out m_PlayersToUnregisterCount); - } - } - - public void Set(UnregisterPlayersOptions other) - { - if (other != null) - { - m_ApiVersion = SessionsInterface.UnregisterplayersApiLatest; - SessionName = other.SessionName; - PlayersToUnregister = other.PlayersToUnregister; - } - } - - public void Set(object other) - { - Set(other as UnregisterPlayersOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_SessionName); - Helper.TryMarshalDispose(ref m_PlayersToUnregister); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/UnregisterPlayersOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/UnregisterPlayersOptions.cs.meta deleted file mode 100644 index 78009b9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/UnregisterPlayersOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 5bb0031cc3d0db847be82d40da4204f5 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/UpdateSessionCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/UpdateSessionCallbackInfo.cs deleted file mode 100644 index 6e52ab3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/UpdateSessionCallbackInfo.cs +++ /dev/null @@ -1,107 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Output parameters for the function. - /// - public class UpdateSessionCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// Name of the session that was created/modified - /// - public string SessionName { get; private set; } - - /// - /// ID of the session that was created/modified - /// - public string SessionId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(UpdateSessionCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - SessionName = other.Value.SessionName; - SessionId = other.Value.SessionId; - } - } - - public void Set(object other) - { - Set(other as UpdateSessionCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct UpdateSessionCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_SessionName; - private System.IntPtr m_SessionId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public string SessionName - { - get - { - string value; - Helper.TryMarshalGet(m_SessionName, out value); - return value; - } - } - - public string SessionId - { - get - { - string value; - Helper.TryMarshalGet(m_SessionId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/UpdateSessionCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/UpdateSessionCallbackInfo.cs.meta deleted file mode 100644 index 466ea4b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/UpdateSessionCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f12d93ced4245ce48b2e2267a3215c33 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/UpdateSessionModificationOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/UpdateSessionModificationOptions.cs deleted file mode 100644 index e4ecb9c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/UpdateSessionModificationOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - /// - /// Input parameters for the function. - /// - public class UpdateSessionModificationOptions - { - /// - /// Name of the session to update - /// - public string SessionName { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct UpdateSessionModificationOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_SessionName; - - public string SessionName - { - set - { - Helper.TryMarshalSet(ref m_SessionName, value); - } - } - - public void Set(UpdateSessionModificationOptions other) - { - if (other != null) - { - m_ApiVersion = SessionsInterface.UpdatesessionmodificationApiLatest; - SessionName = other.SessionName; - } - } - - public void Set(object other) - { - Set(other as UpdateSessionModificationOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_SessionName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/UpdateSessionModificationOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/UpdateSessionModificationOptions.cs.meta deleted file mode 100644 index eb919bb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/UpdateSessionModificationOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d39b4dec6160e824bad600c574eaa7f7 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/UpdateSessionOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/UpdateSessionOptions.cs deleted file mode 100644 index 2317aaf..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/UpdateSessionOptions.cs +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Sessions -{ - public class UpdateSessionOptions - { - /// - /// Builder handle - /// - public SessionModification SessionModificationHandle { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct UpdateSessionOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_SessionModificationHandle; - - public SessionModification SessionModificationHandle - { - set - { - Helper.TryMarshalSet(ref m_SessionModificationHandle, value); - } - } - - public void Set(UpdateSessionOptions other) - { - if (other != null) - { - m_ApiVersion = SessionsInterface.UpdatesessionApiLatest; - SessionModificationHandle = other.SessionModificationHandle; - } - } - - public void Set(object other) - { - Set(other as UpdateSessionOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_SessionModificationHandle); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/UpdateSessionOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/UpdateSessionOptions.cs.meta deleted file mode 100644 index 5235671..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Sessions/UpdateSessionOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3bffca3eca0dc2c46977e24795905423 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats.meta deleted file mode 100644 index 6cedeec..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: aec309d5b6941014cb5641260679e5e0 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/CopyStatByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/CopyStatByIndexOptions.cs deleted file mode 100644 index 6aa0c12..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/CopyStatByIndexOptions.cs +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Stats -{ - /// - /// Input parameters for the function. - /// - public class CopyStatByIndexOptions - { - /// - /// The Product User ID of the user who owns the stat - /// - public ProductUserId TargetUserId { get; set; } - - /// - /// Index of the stat to retrieve from the cache - /// - public uint StatIndex { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyStatByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_TargetUserId; - private uint m_StatIndex; - - public ProductUserId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public uint StatIndex - { - set - { - m_StatIndex = value; - } - } - - public void Set(CopyStatByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = StatsInterface.CopystatbyindexApiLatest; - TargetUserId = other.TargetUserId; - StatIndex = other.StatIndex; - } - } - - public void Set(object other) - { - Set(other as CopyStatByIndexOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/CopyStatByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/CopyStatByIndexOptions.cs.meta deleted file mode 100644 index d5c8db0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/CopyStatByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 721856fe80acbf041acc3a9da2aaef0e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/CopyStatByNameOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/CopyStatByNameOptions.cs deleted file mode 100644 index 1c2359c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/CopyStatByNameOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Stats -{ - /// - /// Input parameters for the function. - /// - public class CopyStatByNameOptions - { - /// - /// The Product User ID of the user who owns the stat - /// - public ProductUserId TargetUserId { get; set; } - - /// - /// Name of the stat to retrieve from the cache - /// - public string Name { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyStatByNameOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_TargetUserId; - private System.IntPtr m_Name; - - public ProductUserId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public string Name - { - set - { - Helper.TryMarshalSet(ref m_Name, value); - } - } - - public void Set(CopyStatByNameOptions other) - { - if (other != null) - { - m_ApiVersion = StatsInterface.CopystatbynameApiLatest; - TargetUserId = other.TargetUserId; - Name = other.Name; - } - } - - public void Set(object other) - { - Set(other as CopyStatByNameOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_TargetUserId); - Helper.TryMarshalDispose(ref m_Name); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/CopyStatByNameOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/CopyStatByNameOptions.cs.meta deleted file mode 100644 index 9c1ac0e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/CopyStatByNameOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ab2bb23049142c748b50fee29c6f4f71 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/GetStatCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/GetStatCountOptions.cs deleted file mode 100644 index 3153cca..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/GetStatCountOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Stats -{ - /// - /// Input parameters for the function. - /// - public class GetStatCountOptions - { - /// - /// The Product User ID for the user whose stats are being counted - /// - public ProductUserId TargetUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetStatCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_TargetUserId; - - public ProductUserId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public void Set(GetStatCountOptions other) - { - if (other != null) - { - m_ApiVersion = StatsInterface.GetstatscountApiLatest; - TargetUserId = other.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as GetStatCountOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/GetStatCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/GetStatCountOptions.cs.meta deleted file mode 100644 index 6375a91..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/GetStatCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 5ef52415eb0c06c4f88ad9232f0cbc22 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/IngestData.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/IngestData.cs deleted file mode 100644 index acf0fa6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/IngestData.cs +++ /dev/null @@ -1,91 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Stats -{ - /// - /// Contains information about a single stat to ingest. - /// - public class IngestData : ISettable - { - /// - /// The name of the stat to ingest. - /// - public string StatName { get; set; } - - /// - /// The amount to ingest the stat. - /// - public int IngestAmount { get; set; } - - internal void Set(IngestDataInternal? other) - { - if (other != null) - { - StatName = other.Value.StatName; - IngestAmount = other.Value.IngestAmount; - } - } - - public void Set(object other) - { - Set(other as IngestDataInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct IngestDataInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_StatName; - private int m_IngestAmount; - - public string StatName - { - get - { - string value; - Helper.TryMarshalGet(m_StatName, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_StatName, value); - } - } - - public int IngestAmount - { - get - { - return m_IngestAmount; - } - - set - { - m_IngestAmount = value; - } - } - - public void Set(IngestData other) - { - if (other != null) - { - m_ApiVersion = StatsInterface.IngestdataApiLatest; - StatName = other.StatName; - IngestAmount = other.IngestAmount; - } - } - - public void Set(object other) - { - Set(other as IngestData); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_StatName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/IngestData.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/IngestData.cs.meta deleted file mode 100644 index 373b43b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/IngestData.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a6d6fd2a5b000234ab06cb9730a9fb02 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/IngestStatCompleteCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/IngestStatCompleteCallbackInfo.cs deleted file mode 100644 index fbf32e5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/IngestStatCompleteCallbackInfo.cs +++ /dev/null @@ -1,107 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Stats -{ - /// - /// Data containing the result information for an ingest stat request. - /// - public class IngestStatCompleteCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Result code for the operation. is returned for a successful request, other codes indicate an error. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into . - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID for the user requesting the ingest - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The Product User ID for the user whose stat is being ingested - /// - public ProductUserId TargetUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(IngestStatCompleteCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - TargetUserId = other.Value.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as IngestStatCompleteCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct IngestStatCompleteCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public ProductUserId TargetUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_TargetUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/IngestStatCompleteCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/IngestStatCompleteCallbackInfo.cs.meta deleted file mode 100644 index f40480a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/IngestStatCompleteCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: db880cfdf6063fe41be8249f8ddbacd5 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/IngestStatOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/IngestStatOptions.cs deleted file mode 100644 index 008c56b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/IngestStatOptions.cs +++ /dev/null @@ -1,83 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Stats -{ - /// - /// Input parameters for the function. - /// - public class IngestStatOptions - { - /// - /// The Product User ID of the local user requesting the ingest. Set to null for dedicated server. - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// Stats to ingest. - /// - public IngestData[] Stats { get; set; } - - /// - /// The Product User ID for the user whose stat is being ingested. - /// - public ProductUserId TargetUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct IngestStatOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_Stats; - private uint m_StatsCount; - private System.IntPtr m_TargetUserId; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public IngestData[] Stats - { - set - { - Helper.TryMarshalSet(ref m_Stats, value, out m_StatsCount); - } - } - - public ProductUserId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public void Set(IngestStatOptions other) - { - if (other != null) - { - m_ApiVersion = StatsInterface.IngeststatApiLatest; - LocalUserId = other.LocalUserId; - Stats = other.Stats; - TargetUserId = other.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as IngestStatOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_Stats); - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/IngestStatOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/IngestStatOptions.cs.meta deleted file mode 100644 index 7214329..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/IngestStatOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d6d1f21c6741b5b4fa472632c070301c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/OnIngestStatCompleteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/OnIngestStatCompleteCallback.cs deleted file mode 100644 index 3caf4ad..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/OnIngestStatCompleteCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Stats -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnIngestStatCompleteCallback(IngestStatCompleteCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnIngestStatCompleteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/OnIngestStatCompleteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/OnIngestStatCompleteCallback.cs.meta deleted file mode 100644 index f4211ae..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/OnIngestStatCompleteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c238babc0dc42a440b2d363ff144b119 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/OnQueryStatsCompleteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/OnQueryStatsCompleteCallback.cs deleted file mode 100644 index 7512624..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/OnQueryStatsCompleteCallback.cs +++ /dev/null @@ -1,15 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Stats -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// - /// A containing the output information and result - public delegate void OnQueryStatsCompleteCallback(OnQueryStatsCompleteCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnQueryStatsCompleteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/OnQueryStatsCompleteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/OnQueryStatsCompleteCallback.cs.meta deleted file mode 100644 index 38708d2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/OnQueryStatsCompleteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 226a0157f42c5994d92682a62e8fea75 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/OnQueryStatsCompleteCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/OnQueryStatsCompleteCallbackInfo.cs deleted file mode 100644 index 367606a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/OnQueryStatsCompleteCallbackInfo.cs +++ /dev/null @@ -1,107 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Stats -{ - /// - /// Data containing the result information for querying a player's stats request. - /// - public class OnQueryStatsCompleteCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The Product User ID of the user who initiated this request - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The Product User ID whose stats which were retrieved - /// - public ProductUserId TargetUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(OnQueryStatsCompleteCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - TargetUserId = other.Value.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as OnQueryStatsCompleteCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct OnQueryStatsCompleteCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public ProductUserId TargetUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_TargetUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/OnQueryStatsCompleteCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/OnQueryStatsCompleteCallbackInfo.cs.meta deleted file mode 100644 index 09aa3ef..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/OnQueryStatsCompleteCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 5844fb70912d3034796791649bc190fc -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/QueryStatsOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/QueryStatsOptions.cs deleted file mode 100644 index 90d40d0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/QueryStatsOptions.cs +++ /dev/null @@ -1,113 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Stats -{ - /// - /// Input parameters for the function. - /// - public class QueryStatsOptions - { - /// - /// The Product User ID of the local user requesting the stats. Set to null for dedicated server. - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// If not then this is the POSIX timestamp for start time (Optional). - /// - public System.DateTimeOffset? StartTime { get; set; } - - /// - /// If not then this is the POSIX timestamp for end time (Optional). - /// - public System.DateTimeOffset? EndTime { get; set; } - - /// - /// An array of stat names to query for (Optional). - /// - public string[] StatNames { get; set; } - - /// - /// The Product User ID for the user whose stats are being retrieved - /// - public ProductUserId TargetUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryStatsOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private long m_StartTime; - private long m_EndTime; - private System.IntPtr m_StatNames; - private uint m_StatNamesCount; - private System.IntPtr m_TargetUserId; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public System.DateTimeOffset? StartTime - { - set - { - Helper.TryMarshalSet(ref m_StartTime, value); - } - } - - public System.DateTimeOffset? EndTime - { - set - { - Helper.TryMarshalSet(ref m_EndTime, value); - } - } - - public string[] StatNames - { - set - { - Helper.TryMarshalSet(ref m_StatNames, value, out m_StatNamesCount, true); - } - } - - public ProductUserId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public void Set(QueryStatsOptions other) - { - if (other != null) - { - m_ApiVersion = StatsInterface.QuerystatsApiLatest; - LocalUserId = other.LocalUserId; - StartTime = other.StartTime; - EndTime = other.EndTime; - StatNames = other.StatNames; - TargetUserId = other.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as QueryStatsOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_StatNames); - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/QueryStatsOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/QueryStatsOptions.cs.meta deleted file mode 100644 index 8f343d5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/QueryStatsOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 266e4a048a1040d4f87c925e7eb1795b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/Stat.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/Stat.cs deleted file mode 100644 index 6f8e3c1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/Stat.cs +++ /dev/null @@ -1,137 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Stats -{ - /// - /// Contains information about a single player stat. - /// - public class Stat : ISettable - { - /// - /// Name of the stat. - /// - public string Name { get; set; } - - /// - /// If not then this is the POSIX timestamp for start time. - /// - public System.DateTimeOffset? StartTime { get; set; } - - /// - /// If not then this is the POSIX timestamp for end time. - /// - public System.DateTimeOffset? EndTime { get; set; } - - /// - /// Current value for the stat. - /// - public int Value { get; set; } - - internal void Set(StatInternal? other) - { - if (other != null) - { - Name = other.Value.Name; - StartTime = other.Value.StartTime; - EndTime = other.Value.EndTime; - Value = other.Value.Value; - } - } - - public void Set(object other) - { - Set(other as StatInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct StatInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Name; - private long m_StartTime; - private long m_EndTime; - private int m_Value; - - public string Name - { - get - { - string value; - Helper.TryMarshalGet(m_Name, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Name, value); - } - } - - public System.DateTimeOffset? StartTime - { - get - { - System.DateTimeOffset? value; - Helper.TryMarshalGet(m_StartTime, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_StartTime, value); - } - } - - public System.DateTimeOffset? EndTime - { - get - { - System.DateTimeOffset? value; - Helper.TryMarshalGet(m_EndTime, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_EndTime, value); - } - } - - public int Value - { - get - { - return m_Value; - } - - set - { - m_Value = value; - } - } - - public void Set(Stat other) - { - if (other != null) - { - m_ApiVersion = StatsInterface.StatApiLatest; - Name = other.Name; - StartTime = other.StartTime; - EndTime = other.EndTime; - Value = other.Value; - } - } - - public void Set(object other) - { - Set(other as Stat); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Name); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/Stat.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/Stat.cs.meta deleted file mode 100644 index 35cdebd..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/Stat.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 11ee1921aba8ed1499f18f643f95faef -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/StatsInterface.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/StatsInterface.cs deleted file mode 100644 index a9f871d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/StatsInterface.cs +++ /dev/null @@ -1,227 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Stats -{ - public sealed partial class StatsInterface : Handle - { - public StatsInterface() - { - } - - public StatsInterface(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// The most recent version of the struct. - /// - public const int CopystatbyindexApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int CopystatbynameApiLatest = 1; - - /// - /// DEPRECATED! Use instead. - /// - public const int GetstatcountApiLatest = GetstatscountApiLatest; - - /// - /// The most recent version of the API. - /// - public const int GetstatscountApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int IngestdataApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int IngeststatApiLatest = 3; - - /// - /// Maximum number of stats that can be ingested in a single operation. - /// - public const int MaxIngestStats = 3000; - - /// - /// Maximum number of stats that can be queried in a single operation. - /// - public const int MaxQueryStats = 1000; - - /// - /// The most recent version of the struct. - /// - public const int QuerystatsApiLatest = 3; - - /// - /// The most recent version of the struct. - /// - public const int StatApiLatest = 1; - - /// - /// Timestamp value representing an undefined StartTime or EndTime for - /// - public const int TimeUndefined = -1; - - /// - /// Fetches a stat from a given index. Use when finished with the data. - /// - /// - /// Structure containing the Epic Online Services Account ID and index being accessed - /// The stat data for the given index, if it exists and is valid - /// - /// if the information is available and passed out in OutStat - /// if you pass a null pointer for the out parameter - /// if the stat is not found - /// - public Result CopyStatByIndex(CopyStatByIndexOptions options, out Stat outStat) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outStatAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Stats_CopyStatByIndex(InnerHandle, optionsAddress, ref outStatAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outStatAddress, out outStat)) - { - Bindings.EOS_Stats_Stat_Release(outStatAddress); - } - - return funcResult; - } - - /// - /// Fetches a stat from cached stats by name. Use when finished with the data. - /// - /// - /// Structure containing the Epic Online Services Account ID and name being accessed - /// The stat data for the given name, if it exists and is valid - /// - /// if the information is available and passed out in OutStat - /// if you pass a null pointer for the out parameter - /// if the stat is not found - /// - public Result CopyStatByName(CopyStatByNameOptions options, out Stat outStat) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outStatAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_Stats_CopyStatByName(InnerHandle, optionsAddress, ref outStatAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outStatAddress, out outStat)) - { - Bindings.EOS_Stats_Stat_Release(outStatAddress); - } - - return funcResult; - } - - /// - /// Fetch the number of stats that are cached locally. - /// - /// - /// The Options associated with retrieving the stat count - /// - /// Number of stats or 0 if there is an error - /// - public uint GetStatsCount(GetStatCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Stats_GetStatsCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Ingest a stat by the amount specified in Options. - /// When the operation is complete and the delegate is triggered the stat will be uploaded to the backend to be processed. - /// The stat may not be updated immediately and an achievement using the stat may take a while to be unlocked once the stat has been uploaded. - /// - /// Structure containing information about the stat we're ingesting. - /// Arbitrary data that is passed back to you in the CompletionDelegate. - /// This function is called when the ingest stat operation completes. - /// - /// if the operation completes successfully - /// if any of the options are incorrect - /// if target user ID is missing or incorrect - /// - public void IngestStat(IngestStatOptions options, object clientData, OnIngestStatCompleteCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnIngestStatCompleteCallbackInternal(OnIngestStatCompleteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Stats_IngestStat(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Query for a list of stats for a specific player. - /// - /// Structure containing information about the player whose stats we're retrieving. - /// Arbitrary data that is passed back to you in the CompletionDelegate - /// This function is called when the query player stats operation completes. - /// - /// if the operation completes successfully - /// if any of the options are incorrect - /// if target user ID is missing or incorrect - /// - public void QueryStats(QueryStatsOptions options, object clientData, OnQueryStatsCompleteCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnQueryStatsCompleteCallbackInternal(OnQueryStatsCompleteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_Stats_QueryStats(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - [MonoPInvokeCallback(typeof(OnIngestStatCompleteCallbackInternal))] - internal static void OnIngestStatCompleteCallbackInternalImplementation(System.IntPtr data) - { - OnIngestStatCompleteCallback callback; - IngestStatCompleteCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnQueryStatsCompleteCallbackInternal))] - internal static void OnQueryStatsCompleteCallbackInternalImplementation(System.IntPtr data) - { - OnQueryStatsCompleteCallback callback; - OnQueryStatsCompleteCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/StatsInterface.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/StatsInterface.cs.meta deleted file mode 100644 index 2ce3b3b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Stats/StatsInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 2ab2e28a1a9760849af1bc826c310729 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage.meta deleted file mode 100644 index 4ba8c6f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 7ab5a5261639bcb45ab6f3245725e0a5 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/CopyFileMetadataAtIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/CopyFileMetadataAtIndexOptions.cs deleted file mode 100644 index 14ac485..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/CopyFileMetadataAtIndexOptions.cs +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.TitleStorage -{ - /// - /// Input data for the CopyFileMetadataAtIndex function - /// - public class CopyFileMetadataAtIndexOptions - { - /// - /// Product User ID of the local user who is requesting file metadata (optional) - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The index to get data for - /// - public uint Index { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyFileMetadataAtIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private uint m_Index; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public uint Index - { - set - { - m_Index = value; - } - } - - public void Set(CopyFileMetadataAtIndexOptions other) - { - if (other != null) - { - m_ApiVersion = TitleStorageInterface.CopyfilemetadataatindexoptionsApiLatest; - LocalUserId = other.LocalUserId; - Index = other.Index; - } - } - - public void Set(object other) - { - Set(other as CopyFileMetadataAtIndexOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/CopyFileMetadataAtIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/CopyFileMetadataAtIndexOptions.cs.meta deleted file mode 100644 index 31339c3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/CopyFileMetadataAtIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 61d7b9bc4245dfd4cb1e2b19ab55bacb -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/CopyFileMetadataByFilenameOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/CopyFileMetadataByFilenameOptions.cs deleted file mode 100644 index 632826f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/CopyFileMetadataByFilenameOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.TitleStorage -{ - /// - /// Input data for the CopyFileMetadataByFilename function - /// - public class CopyFileMetadataByFilenameOptions - { - /// - /// Product User ID of the local user who is requesting file metadata (optional) - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The file's name to get data for - /// - public string Filename { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyFileMetadataByFilenameOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_Filename; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string Filename - { - set - { - Helper.TryMarshalSet(ref m_Filename, value); - } - } - - public void Set(CopyFileMetadataByFilenameOptions other) - { - if (other != null) - { - m_ApiVersion = TitleStorageInterface.CopyfilemetadatabyfilenameoptionsApiLatest; - LocalUserId = other.LocalUserId; - Filename = other.Filename; - } - } - - public void Set(object other) - { - Set(other as CopyFileMetadataByFilenameOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_Filename); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/CopyFileMetadataByFilenameOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/CopyFileMetadataByFilenameOptions.cs.meta deleted file mode 100644 index 88df780..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/CopyFileMetadataByFilenameOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4e4ebc05fb60fe64f8ada28dd5394daa -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/DeleteCacheCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/DeleteCacheCallbackInfo.cs deleted file mode 100644 index fc0e3c6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/DeleteCacheCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.TitleStorage -{ - /// - /// Structure containing the result of a delete cache operation - /// - public class DeleteCacheCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Result code for the operation. is returned for a successful request, other codes indicate an error - /// - public Result ResultCode { get; private set; } - - /// - /// Client-specified data passed into the delete cache request - /// - public object ClientData { get; private set; } - - /// - /// Product User ID of the local user who initiated this request (optional, will only be present in case it was provided during operation start) - /// - public ProductUserId LocalUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(DeleteCacheCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as DeleteCacheCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct DeleteCacheCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/DeleteCacheCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/DeleteCacheCallbackInfo.cs.meta deleted file mode 100644 index 826d056..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/DeleteCacheCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 058906f01eedc7746a95f7c302b8ce08 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/DeleteCacheOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/DeleteCacheOptions.cs deleted file mode 100644 index 9c48d67..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/DeleteCacheOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.TitleStorage -{ - /// - /// Input data for the function - /// - public class DeleteCacheOptions - { - /// - /// Product User ID of the local user who is deleting his cache (optional) - /// - public ProductUserId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct DeleteCacheOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(DeleteCacheOptions other) - { - if (other != null) - { - m_ApiVersion = TitleStorageInterface.DeletecacheoptionsApiLatest; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as DeleteCacheOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/DeleteCacheOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/DeleteCacheOptions.cs.meta deleted file mode 100644 index bb966ef..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/DeleteCacheOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f320bfe7268f4d144b1ac7adbb692bc5 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/FileMetadata.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/FileMetadata.cs deleted file mode 100644 index 53159fb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/FileMetadata.cs +++ /dev/null @@ -1,136 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.TitleStorage -{ - /// - /// Metadata information for a specific file - /// - public class FileMetadata : ISettable - { - /// - /// The total size of the file in bytes (Includes file header in addition to file contents). - /// - public uint FileSizeBytes { get; set; } - - /// - /// The MD5 Hash of the entire file (including additional file header), in hex digits - /// - public string MD5Hash { get; set; } - - /// - /// The file's name - /// - public string Filename { get; set; } - - /// - /// The size of data (payload) in file in unencrypted (original) form. - /// - public uint UnencryptedDataSizeBytes { get; set; } - - internal void Set(FileMetadataInternal? other) - { - if (other != null) - { - FileSizeBytes = other.Value.FileSizeBytes; - MD5Hash = other.Value.MD5Hash; - Filename = other.Value.Filename; - UnencryptedDataSizeBytes = other.Value.UnencryptedDataSizeBytes; - } - } - - public void Set(object other) - { - Set(other as FileMetadataInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct FileMetadataInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private uint m_FileSizeBytes; - private System.IntPtr m_MD5Hash; - private System.IntPtr m_Filename; - private uint m_UnencryptedDataSizeBytes; - - public uint FileSizeBytes - { - get - { - return m_FileSizeBytes; - } - - set - { - m_FileSizeBytes = value; - } - } - - public string MD5Hash - { - get - { - string value; - Helper.TryMarshalGet(m_MD5Hash, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_MD5Hash, value); - } - } - - public string Filename - { - get - { - string value; - Helper.TryMarshalGet(m_Filename, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Filename, value); - } - } - - public uint UnencryptedDataSizeBytes - { - get - { - return m_UnencryptedDataSizeBytes; - } - - set - { - m_UnencryptedDataSizeBytes = value; - } - } - - public void Set(FileMetadata other) - { - if (other != null) - { - m_ApiVersion = TitleStorageInterface.FilemetadataApiLatest; - FileSizeBytes = other.FileSizeBytes; - MD5Hash = other.MD5Hash; - Filename = other.Filename; - UnencryptedDataSizeBytes = other.UnencryptedDataSizeBytes; - } - } - - public void Set(object other) - { - Set(other as FileMetadata); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_MD5Hash); - Helper.TryMarshalDispose(ref m_Filename); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/FileMetadata.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/FileMetadata.cs.meta deleted file mode 100644 index 8fc817d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/FileMetadata.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9828cfccae94a81469fa8fbf486028eb -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/FileTransferProgressCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/FileTransferProgressCallbackInfo.cs deleted file mode 100644 index 0451ff7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/FileTransferProgressCallbackInfo.cs +++ /dev/null @@ -1,122 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.TitleStorage -{ - /// - /// Structure containing the information about a file transfer in progress (or one that has completed) - /// - public class FileTransferProgressCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Client-specified data passed into the file request - /// - public object ClientData { get; private set; } - - /// - /// Product User ID of the local user who initiated this request (optional, will only be present in case it was provided during operation start) - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The file name of the file being transferred - /// - public string Filename { get; private set; } - - /// - /// Amount of bytes transferred so far in this request, out of TotalFileSizeBytes - /// - public uint BytesTransferred { get; private set; } - - /// - /// The total size of the file being transferred (Includes file header in addition to file contents, can be slightly more than expected) - /// - public uint TotalFileSizeBytes { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(FileTransferProgressCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - Filename = other.Value.Filename; - BytesTransferred = other.Value.BytesTransferred; - TotalFileSizeBytes = other.Value.TotalFileSizeBytes; - } - } - - public void Set(object other) - { - Set(other as FileTransferProgressCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct FileTransferProgressCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_Filename; - private uint m_BytesTransferred; - private uint m_TotalFileSizeBytes; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public string Filename - { - get - { - string value; - Helper.TryMarshalGet(m_Filename, out value); - return value; - } - } - - public uint BytesTransferred - { - get - { - return m_BytesTransferred; - } - } - - public uint TotalFileSizeBytes - { - get - { - return m_TotalFileSizeBytes; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/FileTransferProgressCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/FileTransferProgressCallbackInfo.cs.meta deleted file mode 100644 index ad61fca..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/FileTransferProgressCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d935e779a21c8fc4895c6b30f49c4b93 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/GetFileMetadataCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/GetFileMetadataCountOptions.cs deleted file mode 100644 index fcb9450..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/GetFileMetadataCountOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.TitleStorage -{ - /// - /// Input data for the function - /// - public class GetFileMetadataCountOptions - { - /// - /// Product User ID of the local user who is requesting file metadata (optional) - /// - public ProductUserId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetFileMetadataCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(GetFileMetadataCountOptions other) - { - if (other != null) - { - m_ApiVersion = TitleStorageInterface.GetfilemetadatacountoptionsApiLatest; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as GetFileMetadataCountOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/GetFileMetadataCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/GetFileMetadataCountOptions.cs.meta deleted file mode 100644 index ede5414..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/GetFileMetadataCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 8478a9aba55215e4b82a6b4caa32b7af -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnDeleteCacheCompleteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnDeleteCacheCompleteCallback.cs deleted file mode 100644 index ab02f06..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnDeleteCacheCompleteCallback.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.TitleStorage -{ - /// - /// Callback for when completes - /// - public delegate void OnDeleteCacheCompleteCallback(DeleteCacheCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnDeleteCacheCompleteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnDeleteCacheCompleteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnDeleteCacheCompleteCallback.cs.meta deleted file mode 100644 index 397ae13..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnDeleteCacheCompleteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a78820ef8c651d141928dd6aaa87e808 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnFileTransferProgressCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnFileTransferProgressCallback.cs deleted file mode 100644 index ca0e84d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnFileTransferProgressCallback.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.TitleStorage -{ - /// - /// Callback for when there is a progress update for a file transfer in progress - /// - public delegate void OnFileTransferProgressCallback(FileTransferProgressCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnFileTransferProgressCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnFileTransferProgressCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnFileTransferProgressCallback.cs.meta deleted file mode 100644 index d4ca2a7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnFileTransferProgressCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 17451e272113cc247a4ee704718685c3 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnQueryFileCompleteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnQueryFileCompleteCallback.cs deleted file mode 100644 index ece261b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnQueryFileCompleteCallback.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.TitleStorage -{ - /// - /// Callback for when completes - /// - public delegate void OnQueryFileCompleteCallback(QueryFileCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnQueryFileCompleteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnQueryFileCompleteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnQueryFileCompleteCallback.cs.meta deleted file mode 100644 index 654c23c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnQueryFileCompleteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 7296d25048f6d5a4eb32c88e49e883e0 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnQueryFileListCompleteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnQueryFileListCompleteCallback.cs deleted file mode 100644 index e2a033b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnQueryFileListCompleteCallback.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.TitleStorage -{ - /// - /// Callback for when completes - /// - public delegate void OnQueryFileListCompleteCallback(QueryFileListCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnQueryFileListCompleteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnQueryFileListCompleteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnQueryFileListCompleteCallback.cs.meta deleted file mode 100644 index a21f9f6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnQueryFileListCompleteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 7488ce7ed7339ca4a9f4f51365e50129 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnReadFileCompleteCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnReadFileCompleteCallback.cs deleted file mode 100644 index 5554c75..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnReadFileCompleteCallback.cs +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.TitleStorage -{ - /// - /// Callback for when completes - /// - public delegate void OnReadFileCompleteCallback(ReadFileCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnReadFileCompleteCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnReadFileCompleteCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnReadFileCompleteCallback.cs.meta deleted file mode 100644 index baeaf4e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnReadFileCompleteCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9652014c41f49224e90c5aa5fc18bbde -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnReadFileDataCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnReadFileDataCallback.cs deleted file mode 100644 index 15736b8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnReadFileDataCallback.cs +++ /dev/null @@ -1,17 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.TitleStorage -{ - /// - /// Callback for when we have data ready to be read from the requested file. It is undefined how often this will be called during a single tick. - /// - /// Struct containing a chunk of data to read, as well as some metadata for the file being read - /// - /// The result of the read operation. If this value is not , this callback will not be called again for the same request - /// - public delegate ReadResult OnReadFileDataCallback(ReadFileDataCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate ReadResult OnReadFileDataCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnReadFileDataCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnReadFileDataCallback.cs.meta deleted file mode 100644 index 9fa63b0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/OnReadFileDataCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 6c3dd83e8dda4c142b276677b3478cac -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/QueryFileCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/QueryFileCallbackInfo.cs deleted file mode 100644 index 2c55d52..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/QueryFileCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.TitleStorage -{ - /// - /// Structure containing information about a query file request - /// - public class QueryFileCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Result code for the operation. is returned for a successful request, other codes indicate an error - /// - public Result ResultCode { get; private set; } - - /// - /// Client-specified data passed into the file query request - /// - public object ClientData { get; private set; } - - /// - /// Product User ID of the local user who initiated this request (optional, will only be present in case it was provided during operation start) - /// - public ProductUserId LocalUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(QueryFileCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as QueryFileCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryFileCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/QueryFileCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/QueryFileCallbackInfo.cs.meta deleted file mode 100644 index dd098ac..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/QueryFileCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 187d1ccb725fac54986058c2cc7f29b1 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/QueryFileListCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/QueryFileListCallbackInfo.cs deleted file mode 100644 index 4851e0a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/QueryFileListCallbackInfo.cs +++ /dev/null @@ -1,105 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.TitleStorage -{ - /// - /// Structure containing information about a query file list request - /// - public class QueryFileListCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Result code for the operation. is returned for a successful request, other codes indicate an error - /// - public Result ResultCode { get; private set; } - - /// - /// Client-specified data passed into the file query request - /// - public object ClientData { get; private set; } - - /// - /// Product User ID of the local user who initiated this request (optional, will only be present in case it was provided during operation start) - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// A count of files that were found, if successful - /// - public uint FileCount { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(QueryFileListCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - FileCount = other.Value.FileCount; - } - } - - public void Set(object other) - { - Set(other as QueryFileListCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryFileListCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private uint m_FileCount; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public uint FileCount - { - get - { - return m_FileCount; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/QueryFileListCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/QueryFileListCallbackInfo.cs.meta deleted file mode 100644 index d9f7edd..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/QueryFileListCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: de3d9134b9a7c024b986accf8c8e0b5e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/QueryFileListOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/QueryFileListOptions.cs deleted file mode 100644 index 1f9ddef..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/QueryFileListOptions.cs +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.TitleStorage -{ - /// - /// Input data for the function - /// - public class QueryFileListOptions - { - /// - /// Product User ID of the local user who requested file metadata (optional) - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// List of tags to use for lookup. - /// - public string[] ListOfTags { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryFileListOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_ListOfTags; - private uint m_ListOfTagsCount; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string[] ListOfTags - { - set - { - Helper.TryMarshalSet(ref m_ListOfTags, value, out m_ListOfTagsCount); - } - } - - public void Set(QueryFileListOptions other) - { - if (other != null) - { - m_ApiVersion = TitleStorageInterface.QueryfilelistoptionsApiLatest; - LocalUserId = other.LocalUserId; - ListOfTags = other.ListOfTags; - } - } - - public void Set(object other) - { - Set(other as QueryFileListOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_ListOfTags); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/QueryFileListOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/QueryFileListOptions.cs.meta deleted file mode 100644 index 69fc0d9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/QueryFileListOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e00ef06cfe5be3246997050af58f5b7b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/QueryFileOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/QueryFileOptions.cs deleted file mode 100644 index 20b02c8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/QueryFileOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.TitleStorage -{ - /// - /// Input data for the function - /// - public class QueryFileOptions - { - /// - /// Product User ID of the local user requesting file metadata (optional) - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The requested file's name - /// - public string Filename { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryFileOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_Filename; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string Filename - { - set - { - Helper.TryMarshalSet(ref m_Filename, value); - } - } - - public void Set(QueryFileOptions other) - { - if (other != null) - { - m_ApiVersion = TitleStorageInterface.QueryfileoptionsApiLatest; - LocalUserId = other.LocalUserId; - Filename = other.Filename; - } - } - - public void Set(object other) - { - Set(other as QueryFileOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_Filename); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/QueryFileOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/QueryFileOptions.cs.meta deleted file mode 100644 index 1493546..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/QueryFileOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 37cbd1c8a5d7f434fb5a27f17b121189 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/ReadFileCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/ReadFileCallbackInfo.cs deleted file mode 100644 index ad5d26a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/ReadFileCallbackInfo.cs +++ /dev/null @@ -1,107 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.TitleStorage -{ - /// - /// Structure containing the result of a read file request - /// - public class ReadFileCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Result code for the operation. is returned for a successful request, other codes indicate an error - /// - public Result ResultCode { get; private set; } - - /// - /// Client-specified data passed into the file read request - /// - public object ClientData { get; private set; } - - /// - /// Product User ID of the local user who initiated this request (optional, will only be present in case it was provided during operation start) - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The filename of the file that has been finished reading - /// - public string Filename { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(ReadFileCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - Filename = other.Value.Filename; - } - } - - public void Set(object other) - { - Set(other as ReadFileCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct ReadFileCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_Filename; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public string Filename - { - get - { - string value; - Helper.TryMarshalGet(m_Filename, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/ReadFileCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/ReadFileCallbackInfo.cs.meta deleted file mode 100644 index ba13ba4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/ReadFileCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ac888ebf3d4546a40a07eb3fa6705878 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/ReadFileDataCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/ReadFileDataCallbackInfo.cs deleted file mode 100644 index 8de59aa..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/ReadFileDataCallbackInfo.cs +++ /dev/null @@ -1,142 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.TitleStorage -{ - /// - /// Structure containing data for a chunk of a file being read - /// - public class ReadFileDataCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Client-specified data passed into the file request - /// - public object ClientData { get; private set; } - - /// - /// Product User ID of the local user who initiated this request (optional, will only be present in case it was provided during operation start) - /// - public ProductUserId LocalUserId { get; private set; } - - /// - /// The file name being read - /// - public string Filename { get; private set; } - - /// - /// The total file size of the file being read - /// - public uint TotalFileSizeBytes { get; private set; } - - /// - /// Is this chunk the last chunk of data? - /// - public bool IsLastChunk { get; private set; } - - /// - /// Pointer to the start of data to be read - /// - public byte[] DataChunk { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(ReadFileDataCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - Filename = other.Value.Filename; - TotalFileSizeBytes = other.Value.TotalFileSizeBytes; - IsLastChunk = other.Value.IsLastChunk; - DataChunk = other.Value.DataChunk; - } - } - - public void Set(object other) - { - Set(other as ReadFileDataCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct ReadFileDataCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_Filename; - private uint m_TotalFileSizeBytes; - private int m_IsLastChunk; - private uint m_DataChunkLengthBytes; - private System.IntPtr m_DataChunk; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public ProductUserId LocalUserId - { - get - { - ProductUserId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public string Filename - { - get - { - string value; - Helper.TryMarshalGet(m_Filename, out value); - return value; - } - } - - public uint TotalFileSizeBytes - { - get - { - return m_TotalFileSizeBytes; - } - } - - public bool IsLastChunk - { - get - { - bool value; - Helper.TryMarshalGet(m_IsLastChunk, out value); - return value; - } - } - - public byte[] DataChunk - { - get - { - byte[] value; - Helper.TryMarshalGet(m_DataChunk, out value, m_DataChunkLengthBytes); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/ReadFileDataCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/ReadFileDataCallbackInfo.cs.meta deleted file mode 100644 index 28ff2ea..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/ReadFileDataCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f05e4003be2ccb849adcd79c5562a4d9 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/ReadFileOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/ReadFileOptions.cs deleted file mode 100644 index 4782e79..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/ReadFileOptions.cs +++ /dev/null @@ -1,125 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.TitleStorage -{ - /// - /// Input data for the function - /// - public class ReadFileOptions - { - /// - /// Product User ID of the local user who is reading the requested file (optional) - /// - public ProductUserId LocalUserId { get; set; } - - /// - /// The file name to read; this file must already exist - /// - public string Filename { get; set; } - - /// - /// The maximum amount of data in bytes should be available to read in a single call - /// - public uint ReadChunkLengthBytes { get; set; } - - /// - /// Callback function to handle copying read data - /// - public OnReadFileDataCallback ReadFileDataCallback { get; set; } - - /// - /// Optional callback function to be informed of download progress, if the file is not already locally cached. If set, this will be called at least once before completion if the request is successfully started - /// - public OnFileTransferProgressCallback FileTransferProgressCallback { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct ReadFileOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_Filename; - private uint m_ReadChunkLengthBytes; - private System.IntPtr m_ReadFileDataCallback; - private System.IntPtr m_FileTransferProgressCallback; - - public ProductUserId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string Filename - { - set - { - Helper.TryMarshalSet(ref m_Filename, value); - } - } - - public uint ReadChunkLengthBytes - { - set - { - m_ReadChunkLengthBytes = value; - } - } - - private static OnReadFileDataCallbackInternal s_ReadFileDataCallback; - public static OnReadFileDataCallbackInternal ReadFileDataCallback - { - get - { - if (s_ReadFileDataCallback == null) - { - s_ReadFileDataCallback = new OnReadFileDataCallbackInternal(TitleStorageInterface.OnReadFileDataCallbackInternalImplementation); - } - - return s_ReadFileDataCallback; - } - } - - private static OnFileTransferProgressCallbackInternal s_FileTransferProgressCallback; - public static OnFileTransferProgressCallbackInternal FileTransferProgressCallback - { - get - { - if (s_FileTransferProgressCallback == null) - { - s_FileTransferProgressCallback = new OnFileTransferProgressCallbackInternal(TitleStorageInterface.OnFileTransferProgressCallbackInternalImplementation); - } - - return s_FileTransferProgressCallback; - } - } - - public void Set(ReadFileOptions other) - { - if (other != null) - { - m_ApiVersion = TitleStorageInterface.ReadfileoptionsApiLatest; - LocalUserId = other.LocalUserId; - Filename = other.Filename; - ReadChunkLengthBytes = other.ReadChunkLengthBytes; - m_ReadFileDataCallback = other.ReadFileDataCallback != null ? System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(ReadFileDataCallback) : System.IntPtr.Zero; - m_FileTransferProgressCallback = other.FileTransferProgressCallback != null ? System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(FileTransferProgressCallback) : System.IntPtr.Zero; - } - } - - public void Set(object other) - { - Set(other as ReadFileOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_Filename); - Helper.TryMarshalDispose(ref m_ReadFileDataCallback); - Helper.TryMarshalDispose(ref m_FileTransferProgressCallback); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/ReadFileOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/ReadFileOptions.cs.meta deleted file mode 100644 index 255abbb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/ReadFileOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 2b718bc68a749184aae40e9a1cb17f67 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/ReadResult.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/ReadResult.cs deleted file mode 100644 index 8db445a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/ReadResult.cs +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.TitleStorage -{ - /// - /// Return results for callbacks - /// - public enum ReadResult : int - { - /// - /// Signifies the data was read successfully, and we should continue to the next chunk if possible - /// - RrContinuereading = 1, - /// - /// Signifies there was a failure reading the data, and the request should end - /// - RrFailrequest = 2, - /// - /// Signifies the request should be cancelled, but not due to an error - /// - RrCancelrequest = 3 - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/ReadResult.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/ReadResult.cs.meta deleted file mode 100644 index c30a58d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/ReadResult.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 7691ab63e5de4f54a9295cabf75e66de -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/TitleStorageFileTransferRequest.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/TitleStorageFileTransferRequest.cs deleted file mode 100644 index 2cc40c6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/TitleStorageFileTransferRequest.cs +++ /dev/null @@ -1,74 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.TitleStorage -{ - public sealed partial class TitleStorageFileTransferRequest : Handle - { - public TitleStorageFileTransferRequest() - { - } - - public TitleStorageFileTransferRequest(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// Attempt to cancel this file request in progress. This is a best-effort command and is not guaranteed to be successful if the request has completed before this function is called. - /// - /// - /// if cancel is successful, if request had already completed (can't be canceled), if it's already been canceled before (this is a final state for canceled request and won't change over time). - /// - public Result CancelRequest() - { - var funcResult = Bindings.EOS_TitleStorageFileTransferRequest_CancelRequest(InnerHandle); - - return funcResult; - } - - /// - /// Get the current state of a file request. - /// - /// - /// if complete and successful, if the request is still in progress, or another state for failure. - /// - public Result GetFileRequestState() - { - var funcResult = Bindings.EOS_TitleStorageFileTransferRequest_GetFileRequestState(InnerHandle); - - return funcResult; - } - - /// - /// Get the file name of the file this request is for. OutStringLength will always be set to the string length of the file name if it is not NULL. - /// - /// - /// The maximum number of bytes that can be written to OutStringBuffer - /// The buffer to write the NULL-terminated utf8 file name into, if successful - /// How long the file name is (not including null terminator) - /// - /// if the file name was successfully written to OutFilenameBuffer, a failure result otherwise - /// - public Result GetFilename(out string outStringBuffer) - { - System.IntPtr outStringBufferAddress = System.IntPtr.Zero; - int outStringLength = TitleStorageInterface.FilenameMaxLengthBytes; - Helper.TryMarshalAllocate(ref outStringBufferAddress, outStringLength, out _); - - var funcResult = Bindings.EOS_TitleStorageFileTransferRequest_GetFilename(InnerHandle, (uint)outStringLength, outStringBufferAddress, ref outStringLength); - - Helper.TryMarshalGet(outStringBufferAddress, out outStringBuffer); - Helper.TryMarshalDispose(ref outStringBufferAddress); - - return funcResult; - } - - /// - /// Free the memory used by a cloud-storage file request handle. This will not cancel a request in progress. - /// - public void Release() - { - Bindings.EOS_TitleStorageFileTransferRequest_Release(InnerHandle); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/TitleStorageFileTransferRequest.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/TitleStorageFileTransferRequest.cs.meta deleted file mode 100644 index 9c4bca8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/TitleStorageFileTransferRequest.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0a9ae907228d2d443b4db0f84e50537a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/TitleStorageInterface.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/TitleStorageInterface.cs deleted file mode 100644 index 63e80b4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/TitleStorageInterface.cs +++ /dev/null @@ -1,319 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.TitleStorage -{ - public sealed partial class TitleStorageInterface : Handle - { - public TitleStorageInterface() - { - } - - public TitleStorageInterface(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// The most recent version of the API. - /// - public const int CopyfilemetadataatindexoptionsApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int CopyfilemetadatabyfilenameoptionsApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int DeletecacheoptionsApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int FilemetadataApiLatest = 2; - - /// - /// Maximum File Name Length in bytes - /// - public const int FilenameMaxLengthBytes = 64; - - /// - /// The most recent version of the API. - /// - public const int GetfilemetadatacountoptionsApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int QueryfilelistoptionsApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int QueryfileoptionsApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int ReadfileoptionsApiLatest = 1; - - /// - /// Get the cached copy of a file's metadata by index. The metadata will be for the last retrieved version. The returned pointer must be released by the user when no longer needed. - /// - /// - /// - /// Object containing properties related to which user is requesting metadata, and at what index - /// A copy of the FileMetadata structure will be set if successful. This data must be released by calling . - /// - /// if the requested metadata is currently cached, otherwise an error result explaining what went wrong. - /// - public Result CopyFileMetadataAtIndex(CopyFileMetadataAtIndexOptions options, out FileMetadata outMetadata) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outMetadataAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_TitleStorage_CopyFileMetadataAtIndex(InnerHandle, optionsAddress, ref outMetadataAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outMetadataAddress, out outMetadata)) - { - Bindings.EOS_TitleStorage_FileMetadata_Release(outMetadataAddress); - } - - return funcResult; - } - - /// - /// Create a cached copy of a file's metadata by filename. The metadata will be for the last retrieved or successfully saved version, and will not include any changes that have not - /// completed writing. The returned pointer must be released by the user when no longer needed. - /// - /// Object containing properties related to which user is requesting metadata, and for which filename - /// A copy of the FileMetadata structure will be set if successful. This data must be released by calling . - /// - /// if the metadata is currently cached, otherwise an error result explaining what went wrong - /// - public Result CopyFileMetadataByFilename(CopyFileMetadataByFilenameOptions options, out FileMetadata outMetadata) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outMetadataAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_TitleStorage_CopyFileMetadataByFilename(InnerHandle, optionsAddress, ref outMetadataAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outMetadataAddress, out outMetadata)) - { - Bindings.EOS_TitleStorage_FileMetadata_Release(outMetadataAddress); - } - - return funcResult; - } - - /// - /// Clear previously cached file data. This operation will be done asynchronously. All cached files except those corresponding to the transfers in progress will be removed. - /// Warning: Use this with care. Cache system generally tries to clear old and unused cached files from time to time. Unnecessarily clearing cache can degrade performance as SDK will have to re-download data. - /// - /// Object containing properties related to which user is deleting cache - /// Optional pointer to help clients track this request, that is returned in associated callbacks - /// This function is called when the delete cache operation completes - /// - /// if the operation was started correctly, otherwise an error result explaining what went wrong - /// - public Result DeleteCache(DeleteCacheOptions options, object clientData, OnDeleteCacheCompleteCallback completionCallback) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionCallbackInternal = new OnDeleteCacheCompleteCallbackInternal(OnDeleteCacheCompleteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionCallback, completionCallbackInternal); - - var funcResult = Bindings.EOS_TitleStorage_DeleteCache(InnerHandle, optionsAddress, clientDataAddress, completionCallbackInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Get the count of files we have previously queried information for and files we have previously read from / written to. - /// - /// - /// Object containing properties related to which user is requesting the metadata count - /// - /// If successful, the count of metadata currently cached. Returns 0 on failure. - /// - public uint GetFileMetadataCount(GetFileMetadataCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_TitleStorage_GetFileMetadataCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Query a specific file's metadata, such as file names, size, and a MD5 hash of the data. This is not required before a file may be opened. Once a file has - /// been queried, its metadata will be available by the and functions. - /// - /// - /// - /// - /// Object containing properties related to which user is querying files, and what file is being queried - /// Optional pointer to help clients track this request, that is returned in the completion callback - /// This function is called when the query operation completes - public void QueryFile(QueryFileOptions options, object clientData, OnQueryFileCompleteCallback completionCallback) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionCallbackInternal = new OnQueryFileCompleteCallbackInternal(OnQueryFileCompleteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionCallback, completionCallbackInternal); - - Bindings.EOS_TitleStorage_QueryFile(InnerHandle, optionsAddress, clientDataAddress, completionCallbackInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Query the file metadata, such as file names, size, and a MD5 hash of the data, for all files available for current user based on their settings (such as game role) and tags provided. - /// This is not required before a file can be downloaded by name. - /// - /// Object containing properties related to which user is querying files and the list of tags - /// Optional pointer to help clients track this request, that is returned in the completion callback - /// This function is called when the query operation completes - public void QueryFileList(QueryFileListOptions options, object clientData, OnQueryFileListCompleteCallback completionCallback) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionCallbackInternal = new OnQueryFileListCompleteCallbackInternal(OnQueryFileListCompleteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionCallback, completionCallbackInternal); - - Bindings.EOS_TitleStorage_QueryFileList(InnerHandle, optionsAddress, clientDataAddress, completionCallbackInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Retrieve the contents of a specific file, potentially downloading the contents if we do not have a local copy, from the cloud. This request will occur asynchronously, potentially over - /// multiple frames. All callbacks for this function will come from the same thread that the SDK is ticked from. If specified, the FileTransferProgressCallback will always be called at - /// least once if the request is started successfully. - /// - /// - /// Object containing properties related to which user is opening the file, what the file's name is, and related mechanisms for copying the data - /// Optional pointer to help clients track this request, that is returned in associated callbacks - /// This function is called when the read operation completes - /// - /// A valid Title Storage File Request handle if successful, or NULL otherwise. Data contained in the completion callback will have more detailed information about issues with the request in failure cases. This handle must be released when it is no longer needed - /// - public TitleStorageFileTransferRequest ReadFile(ReadFileOptions options, object clientData, OnReadFileCompleteCallback completionCallback) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionCallbackInternal = new OnReadFileCompleteCallbackInternal(OnReadFileCompleteCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionCallback, completionCallbackInternal, options.ReadFileDataCallback, ReadFileOptionsInternal.ReadFileDataCallback, options.FileTransferProgressCallback, ReadFileOptionsInternal.FileTransferProgressCallback); - - var funcResult = Bindings.EOS_TitleStorage_ReadFile(InnerHandle, optionsAddress, clientDataAddress, completionCallbackInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - TitleStorageFileTransferRequest funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - [MonoPInvokeCallback(typeof(OnDeleteCacheCompleteCallbackInternal))] - internal static void OnDeleteCacheCompleteCallbackInternalImplementation(System.IntPtr data) - { - OnDeleteCacheCompleteCallback callback; - DeleteCacheCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnFileTransferProgressCallbackInternal))] - internal static void OnFileTransferProgressCallbackInternalImplementation(System.IntPtr data) - { - OnFileTransferProgressCallback callback; - FileTransferProgressCallbackInfo callbackInfo; - if (Helper.TryGetStructCallback(data, out callback, out callbackInfo)) - { - FileTransferProgressCallbackInfo dataObj; - Helper.TryMarshalGet(data, out dataObj); - - callback(dataObj); - } - } - - [MonoPInvokeCallback(typeof(OnQueryFileCompleteCallbackInternal))] - internal static void OnQueryFileCompleteCallbackInternalImplementation(System.IntPtr data) - { - OnQueryFileCompleteCallback callback; - QueryFileCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnQueryFileListCompleteCallbackInternal))] - internal static void OnQueryFileListCompleteCallbackInternalImplementation(System.IntPtr data) - { - OnQueryFileListCompleteCallback callback; - QueryFileListCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnReadFileCompleteCallbackInternal))] - internal static void OnReadFileCompleteCallbackInternalImplementation(System.IntPtr data) - { - OnReadFileCompleteCallback callback; - ReadFileCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnReadFileDataCallbackInternal))] - internal static ReadResult OnReadFileDataCallbackInternalImplementation(System.IntPtr data) - { - OnReadFileDataCallback callback; - ReadFileDataCallbackInfo callbackInfo; - if (Helper.TryGetStructCallback(data, out callback, out callbackInfo)) - { - ReadFileDataCallbackInfo dataObj; - Helper.TryMarshalGet(data, out dataObj); - - var funcResult = callback(dataObj); - - return funcResult; - } - - return Helper.GetDefault(); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/TitleStorageInterface.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/TitleStorageInterface.cs.meta deleted file mode 100644 index a416155..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/TitleStorage/TitleStorageInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: bb6f8af2c92cf864ca00a0cb851f75ef -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI.meta deleted file mode 100644 index f3ea219..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 02835b4b8f876864487e5b76d2d27ec1 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/AcknowledgeEventIdOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/AcknowledgeEventIdOptions.cs deleted file mode 100644 index 1793c06..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/AcknowledgeEventIdOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UI -{ - /// - /// Input parameters for the . - /// - public class AcknowledgeEventIdOptions - { - /// - /// The ID being acknowledged. - /// - public ulong UiEventId { get; set; } - - /// - /// The result to use for the acknowledgment. - /// When acknowledging this should be the - /// result code from the JoinSession call. - /// - public Result Result { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AcknowledgeEventIdOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private ulong m_UiEventId; - private Result m_Result; - - public ulong UiEventId - { - set - { - m_UiEventId = value; - } - } - - public Result Result - { - set - { - m_Result = value; - } - } - - public void Set(AcknowledgeEventIdOptions other) - { - if (other != null) - { - m_ApiVersion = UIInterface.AcknowledgeeventidApiLatest; - UiEventId = other.UiEventId; - Result = other.Result; - } - } - - public void Set(object other) - { - Set(other as AcknowledgeEventIdOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/AcknowledgeEventIdOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/AcknowledgeEventIdOptions.cs.meta deleted file mode 100644 index be5b698..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/AcknowledgeEventIdOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 72b7daf0d535452469859db6df9f5b35 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/AddNotifyDisplaySettingsUpdatedOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/AddNotifyDisplaySettingsUpdatedOptions.cs deleted file mode 100644 index a1cf6db..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/AddNotifyDisplaySettingsUpdatedOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UI -{ - /// - /// Input parameters for the function. - /// - public class AddNotifyDisplaySettingsUpdatedOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct AddNotifyDisplaySettingsUpdatedOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(AddNotifyDisplaySettingsUpdatedOptions other) - { - if (other != null) - { - m_ApiVersion = UIInterface.AddnotifydisplaysettingsupdatedApiLatest; - } - } - - public void Set(object other) - { - Set(other as AddNotifyDisplaySettingsUpdatedOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/AddNotifyDisplaySettingsUpdatedOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/AddNotifyDisplaySettingsUpdatedOptions.cs.meta deleted file mode 100644 index 4d2394d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/AddNotifyDisplaySettingsUpdatedOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: bc813bd0fc184bf49b72f5cd0e57ab14 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/GetFriendsVisibleOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/GetFriendsVisibleOptions.cs deleted file mode 100644 index 3526abc..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/GetFriendsVisibleOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UI -{ - /// - /// Input parameters for the function. - /// - public class GetFriendsVisibleOptions - { - /// - /// The Epic Online Services Account ID of the user whose overlay is being updated. - /// - public EpicAccountId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetFriendsVisibleOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(GetFriendsVisibleOptions other) - { - if (other != null) - { - m_ApiVersion = UIInterface.GetfriendsvisibleApiLatest; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as GetFriendsVisibleOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/GetFriendsVisibleOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/GetFriendsVisibleOptions.cs.meta deleted file mode 100644 index 4763ceb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/GetFriendsVisibleOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 21c56aaef4619a9488eb855b798e79d2 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/GetToggleFriendsKeyOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/GetToggleFriendsKeyOptions.cs deleted file mode 100644 index b4e52d8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/GetToggleFriendsKeyOptions.cs +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UI -{ - /// - /// Input parameters for the function. - /// - public class GetToggleFriendsKeyOptions - { - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetToggleFriendsKeyOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - - public void Set(GetToggleFriendsKeyOptions other) - { - if (other != null) - { - m_ApiVersion = UIInterface.GettogglefriendskeyApiLatest; - } - } - - public void Set(object other) - { - Set(other as GetToggleFriendsKeyOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/GetToggleFriendsKeyOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/GetToggleFriendsKeyOptions.cs.meta deleted file mode 100644 index 33cc2c7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/GetToggleFriendsKeyOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4760bcac4c849ef42ae2f55e6a129603 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/HideFriendsCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/HideFriendsCallbackInfo.cs deleted file mode 100644 index 89df884..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/HideFriendsCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UI -{ - /// - /// Output parameters for the function. - /// - public class HideFriendsCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The Epic Online Services Account ID of the user whose friend list is being shown. - /// - public EpicAccountId LocalUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(HideFriendsCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as HideFriendsCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct HideFriendsCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public EpicAccountId LocalUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/HideFriendsCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/HideFriendsCallbackInfo.cs.meta deleted file mode 100644 index e20ef62..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/HideFriendsCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 23b7d26165ae6b9428c85125bcecb5ca -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/HideFriendsOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/HideFriendsOptions.cs deleted file mode 100644 index 181636d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/HideFriendsOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UI -{ - /// - /// Input parameters for the function. - /// - public class HideFriendsOptions - { - /// - /// The Epic Online Services Account ID of the user whose friend list is being shown. - /// - public EpicAccountId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct HideFriendsOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(HideFriendsOptions other) - { - if (other != null) - { - m_ApiVersion = UIInterface.HidefriendsApiLatest; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as HideFriendsOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/HideFriendsOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/HideFriendsOptions.cs.meta deleted file mode 100644 index e4a6f95..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/HideFriendsOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 6822bbf1a733d1e41acdd3e3e49e33f5 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/KeyCombination.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/KeyCombination.cs deleted file mode 100644 index 79d77e1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/KeyCombination.cs +++ /dev/null @@ -1,173 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UI -{ - /// - /// Enum flags for storing a key combination. The low 16 bits are the key type, and modifiers are - /// stored in the next significant bits - /// - [System.Flags] - public enum KeyCombination : int - { - /// - /// Number of bits to shift the modifiers into the integer. - /// - ModifierShift = 16, - /// - /// A mask to isolate the single key. - /// - KeyTypeMask = (1 << ModifierShift) - 1, - /// - /// A mask to isolate the modifier keys. - /// - ModifierMask = ~KeyTypeMask, - /// - /// The Shift key - /// - Shift = (1 << ModifierShift), - /// - /// The Control key - /// - Control = (2 << ModifierShift), - /// - /// The Alt key - /// - Alt = (4 << ModifierShift), - /// - /// The Windows key on a Windows keyboard or the Command key on a Mac keyboard - /// - Meta = (8 << ModifierShift), - ValidModifierMask = (Shift | Control | Alt | Meta), - None = 0, - Space, - Backspace, - Tab, - Escape, - PageUp, - PageDown, - End, - Home, - Insert, - Delete, - Left, - Up, - Right, - Down, - Key0, - Key1, - Key2, - Key3, - Key4, - Key5, - Key6, - Key7, - Key8, - Key9, - KeyA, - KeyB, - KeyC, - KeyD, - KeyE, - KeyF, - KeyG, - KeyH, - KeyI, - KeyJ, - KeyK, - KeyL, - KeyM, - KeyN, - KeyO, - KeyP, - KeyQ, - KeyR, - KeyS, - KeyT, - KeyU, - KeyV, - KeyW, - KeyX, - KeyY, - KeyZ, - Numpad0, - Numpad1, - Numpad2, - Numpad3, - Numpad4, - Numpad5, - Numpad6, - Numpad7, - Numpad8, - Numpad9, - NumpadAsterisk, - NumpadPlus, - NumpadMinus, - NumpadPeriod, - NumpadDivide, - F1, - F2, - F3, - F4, - F5, - F6, - F7, - F8, - F9, - F10, - F11, - F12, - F13, - F14, - F15, - F16, - F17, - F18, - F19, - F20, - F21, - F22, - F23, - F24, - OemPlus, - OemComma, - OemMinus, - OemPeriod, - /// - /// ';' for US layout, others vary - /// - Oem1, - /// - /// '/' for US layout, others vary - /// - Oem2, - /// - /// '~' for US layout, others vary - /// - Oem3, - /// - /// '[' for US layout, others vary - /// - Oem4, - /// - /// '\' for US layout, others vary - /// - Oem5, - /// - /// ']' for US layout, others vary - /// - Oem6, - /// - /// '"' for US layout, others vary - /// - Oem7, - /// - /// varies on all layouts - /// - Oem8, - /// - /// Maximum key enumeration value. - /// - MaxKeyType - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/KeyCombination.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/KeyCombination.cs.meta deleted file mode 100644 index b733255..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/KeyCombination.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 75722fb1f30f6184b827c468f863ebb3 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/NotificationLocation.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/NotificationLocation.cs deleted file mode 100644 index 752f84b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/NotificationLocation.cs +++ /dev/null @@ -1,18 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UI -{ - /// - /// Notification locations to be used to set the preference - /// for pop-up. - /// - /// - public enum NotificationLocation : int - { - TopLeft, - TopRight, - BottomLeft, - BottomRight - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/NotificationLocation.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/NotificationLocation.cs.meta deleted file mode 100644 index f78d62f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/NotificationLocation.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f40c6e41384a01a44ad972b9addf3b5f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/OnDisplaySettingsUpdatedCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/OnDisplaySettingsUpdatedCallback.cs deleted file mode 100644 index 94d1bef..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/OnDisplaySettingsUpdatedCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UI -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the current display state. - public delegate void OnDisplaySettingsUpdatedCallback(OnDisplaySettingsUpdatedCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnDisplaySettingsUpdatedCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/OnDisplaySettingsUpdatedCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/OnDisplaySettingsUpdatedCallback.cs.meta deleted file mode 100644 index 6e8a112..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/OnDisplaySettingsUpdatedCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 288e27e81e86d4e4c8a5e394f1eaa34a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/OnDisplaySettingsUpdatedCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/OnDisplaySettingsUpdatedCallbackInfo.cs deleted file mode 100644 index 773e6bf..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/OnDisplaySettingsUpdatedCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UI -{ - public class OnDisplaySettingsUpdatedCallbackInfo : ICallbackInfo, ISettable - { - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// True when any portion of the overlay is visible. - /// - public bool IsVisible { get; private set; } - - /// - /// True when the overlay has switched to exclusive input mode. - /// While in exclusive input mode, no keyboard or mouse input will be sent to the game. - /// - public bool IsExclusiveInput { get; private set; } - - public Result? GetResultCode() - { - return null; - } - - internal void Set(OnDisplaySettingsUpdatedCallbackInfoInternal? other) - { - if (other != null) - { - ClientData = other.Value.ClientData; - IsVisible = other.Value.IsVisible; - IsExclusiveInput = other.Value.IsExclusiveInput; - } - } - - public void Set(object other) - { - Set(other as OnDisplaySettingsUpdatedCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct OnDisplaySettingsUpdatedCallbackInfoInternal : ICallbackInfoInternal - { - private System.IntPtr m_ClientData; - private int m_IsVisible; - private int m_IsExclusiveInput; - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public bool IsVisible - { - get - { - bool value; - Helper.TryMarshalGet(m_IsVisible, out value); - return value; - } - } - - public bool IsExclusiveInput - { - get - { - bool value; - Helper.TryMarshalGet(m_IsExclusiveInput, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/OnDisplaySettingsUpdatedCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/OnDisplaySettingsUpdatedCallbackInfo.cs.meta deleted file mode 100644 index 209cf6c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/OnDisplaySettingsUpdatedCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a0abd767448655b4e8c7fb81e0629c11 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/OnHideFriendsCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/OnHideFriendsCallback.cs deleted file mode 100644 index 8d38de8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/OnHideFriendsCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UI -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnHideFriendsCallback(HideFriendsCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnHideFriendsCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/OnHideFriendsCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/OnHideFriendsCallback.cs.meta deleted file mode 100644 index 0428db7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/OnHideFriendsCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 6ecf3b419adf2354795155b4f619cc1e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/OnShowFriendsCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/OnShowFriendsCallback.cs deleted file mode 100644 index a309ea4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/OnShowFriendsCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UI -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnShowFriendsCallback(ShowFriendsCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnShowFriendsCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/OnShowFriendsCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/OnShowFriendsCallback.cs.meta deleted file mode 100644 index 48195e5..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/OnShowFriendsCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 6e5cc54f9c913a44c85c7a5b572d5c7a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/PrePresentOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/PrePresentOptions.cs deleted file mode 100644 index d6e633c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/PrePresentOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UI -{ - /// - /// Parameters for the function. - /// - public class PrePresentOptions - { - /// - /// Platform specific data. - /// - public System.IntPtr PlatformSpecificData { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct PrePresentOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_PlatformSpecificData; - - public System.IntPtr PlatformSpecificData - { - set - { - m_PlatformSpecificData = value; - } - } - - public void Set(PrePresentOptions other) - { - if (other != null) - { - m_ApiVersion = UIInterface.PrepresentApiLatest; - PlatformSpecificData = other.PlatformSpecificData; - } - } - - public void Set(object other) - { - Set(other as PrePresentOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_PlatformSpecificData); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/PrePresentOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/PrePresentOptions.cs.meta deleted file mode 100644 index 639ee6c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/PrePresentOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 35268386f6391d54db20c5f5f3bc8d2a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/ReportKeyEventOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/ReportKeyEventOptions.cs deleted file mode 100644 index de364b2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/ReportKeyEventOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UI -{ - /// - /// Input parameters for the function. - /// - public class ReportKeyEventOptions - { - /// - /// The input data pushed to the SDK. - /// - public System.IntPtr PlatformSpecificInputData { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct ReportKeyEventOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_PlatformSpecificInputData; - - public System.IntPtr PlatformSpecificInputData - { - set - { - m_PlatformSpecificInputData = value; - } - } - - public void Set(ReportKeyEventOptions other) - { - if (other != null) - { - m_ApiVersion = UIInterface.ReportkeyeventApiLatest; - PlatformSpecificInputData = other.PlatformSpecificInputData; - } - } - - public void Set(object other) - { - Set(other as ReportKeyEventOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_PlatformSpecificInputData); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/ReportKeyEventOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/ReportKeyEventOptions.cs.meta deleted file mode 100644 index d868da9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/ReportKeyEventOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 584f029b2910190409ec230b2faff262 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/SetDisplayPreferenceOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/SetDisplayPreferenceOptions.cs deleted file mode 100644 index a0f555e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/SetDisplayPreferenceOptions.cs +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UI -{ - /// - /// Input parameters for the function. - /// - public class SetDisplayPreferenceOptions - { - /// - /// Preference for notification pop-up locations. - /// - public NotificationLocation NotificationLocation { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SetDisplayPreferenceOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private NotificationLocation m_NotificationLocation; - - public NotificationLocation NotificationLocation - { - set - { - m_NotificationLocation = value; - } - } - - public void Set(SetDisplayPreferenceOptions other) - { - if (other != null) - { - m_ApiVersion = UIInterface.SetdisplaypreferenceApiLatest; - NotificationLocation = other.NotificationLocation; - } - } - - public void Set(object other) - { - Set(other as SetDisplayPreferenceOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/SetDisplayPreferenceOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/SetDisplayPreferenceOptions.cs.meta deleted file mode 100644 index 4a6a5a8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/SetDisplayPreferenceOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 52a173c9acb7e2a44ac504f82cb8e732 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/SetToggleFriendsKeyOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/SetToggleFriendsKeyOptions.cs deleted file mode 100644 index 16f1fde..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/SetToggleFriendsKeyOptions.cs +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UI -{ - /// - /// Input parameters for the function. - /// - public class SetToggleFriendsKeyOptions - { - /// - /// The new key combination which will be used to toggle the friends overlay. - /// The combination can be any set of modifiers and one key. - /// A value of will cause the key to revert to the default. - /// - public KeyCombination KeyCombination { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct SetToggleFriendsKeyOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private KeyCombination m_KeyCombination; - - public KeyCombination KeyCombination - { - set - { - m_KeyCombination = value; - } - } - - public void Set(SetToggleFriendsKeyOptions other) - { - if (other != null) - { - m_ApiVersion = UIInterface.SettogglefriendskeyApiLatest; - KeyCombination = other.KeyCombination; - } - } - - public void Set(object other) - { - Set(other as SetToggleFriendsKeyOptions); - } - - public void Dispose() - { - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/SetToggleFriendsKeyOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/SetToggleFriendsKeyOptions.cs.meta deleted file mode 100644 index 47c9605..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/SetToggleFriendsKeyOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ee60a7a3e9328c041ac9dd6f98e387bd -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/ShowFriendsCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/ShowFriendsCallbackInfo.cs deleted file mode 100644 index 60e0dd6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/ShowFriendsCallbackInfo.cs +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UI -{ - /// - /// Output parameters for the function. - /// - public class ShowFriendsCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The Epic Online Services Account ID of the user whose friend list is being shown. - /// - public EpicAccountId LocalUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(ShowFriendsCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as ShowFriendsCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct ShowFriendsCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public EpicAccountId LocalUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/ShowFriendsCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/ShowFriendsCallbackInfo.cs.meta deleted file mode 100644 index 45178e6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/ShowFriendsCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 81d52d222b2ff5440b5178c04ec7beb1 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/ShowFriendsOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/ShowFriendsOptions.cs deleted file mode 100644 index 9840d46..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/ShowFriendsOptions.cs +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UI -{ - /// - /// Input parameters for the function. - /// - public class ShowFriendsOptions - { - /// - /// The Epic Online Services Account ID of the user whose friend list is being shown. - /// - public EpicAccountId LocalUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct ShowFriendsOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public void Set(ShowFriendsOptions other) - { - if (other != null) - { - m_ApiVersion = UIInterface.ShowfriendsApiLatest; - LocalUserId = other.LocalUserId; - } - } - - public void Set(object other) - { - Set(other as ShowFriendsOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/ShowFriendsOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/ShowFriendsOptions.cs.meta deleted file mode 100644 index a36ca71..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/ShowFriendsOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 312846881aa89c542a59931ea75f7c15 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/UIInterface.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/UIInterface.cs deleted file mode 100644 index 33e05ad..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/UIInterface.cs +++ /dev/null @@ -1,346 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UI -{ - public sealed partial class UIInterface : Handle - { - public UIInterface() - { - } - - public UIInterface(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// DEPRECATED! Use instead. - /// - public const int AcknowledgecorrelationidApiLatest = AcknowledgeeventidApiLatest; - - /// - /// The most recent version of the API. - /// - public const int AcknowledgeeventidApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int AddnotifydisplaysettingsupdatedApiLatest = 1; - - /// - /// ID representing a specific UI event. - /// - public const int EventidInvalid = 0; - - /// - /// The most recent version of the API. - /// - public const int GetfriendsvisibleApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GettogglefriendskeyApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int HidefriendsApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int PrepresentApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int ReportkeyeventApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int SetdisplaypreferenceApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int SettogglefriendskeyApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int ShowfriendsApiLatest = 1; - - /// - /// Lets the SDK know that the given UI event ID has been acknowledged and should be released. - /// - /// - /// - /// An is returned to indicate success or an error. - /// is returned if the UI event ID has been acknowledged. - /// is returned if the UI event ID does not exist. - /// - public Result AcknowledgeEventId(AcknowledgeEventIdOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_UI_AcknowledgeEventId(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Register to receive notifications when the overlay display settings are updated. - /// Newly registered handlers will always be called the next tick with the current state. - /// @note must call RemoveNotifyDisplaySettingsUpdated to remove the notification. - /// - /// Structure containing information about the request. - /// Arbitrary data that is passed back to you in the NotificationFn. - /// A callback that is fired when the overlay display settings are updated. - /// - /// handle representing the registered callback - /// - public ulong AddNotifyDisplaySettingsUpdated(AddNotifyDisplaySettingsUpdatedOptions options, object clientData, OnDisplaySettingsUpdatedCallback notificationFn) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var notificationFnInternal = new OnDisplaySettingsUpdatedCallbackInternal(OnDisplaySettingsUpdatedCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, notificationFn, notificationFnInternal); - - var funcResult = Bindings.EOS_UI_AddNotifyDisplaySettingsUpdated(InnerHandle, optionsAddress, clientDataAddress, notificationFnInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - - Helper.TryAssignNotificationIdToCallback(clientDataAddress, funcResult); - - return funcResult; - } - - /// - /// Gets the friends overlay visibility. - /// - /// Structure containing the Epic Online Services Account ID of the friends Social Overlay owner. - /// - /// true If the overlay is visible. - /// - public bool GetFriendsVisible(GetFriendsVisibleOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_UI_GetFriendsVisible(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - bool funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Returns the current notification location display preference. - /// - /// - /// The current notification location display preference. - /// - public NotificationLocation GetNotificationLocationPreference() - { - var funcResult = Bindings.EOS_UI_GetNotificationLocationPreference(InnerHandle); - - return funcResult; - } - - /// - /// Returns the current Toggle Friends Key. This key can be used by the user to toggle the friends - /// overlay when available. The default value represents `Shift + F3` as `((int32_t) | (int32_t))`. - /// - /// Structure containing any options that are needed to retrieve the key. - /// - /// A valid key combination which represent a single key with zero or more modifier keys. - /// will be returned if any error occurs. - /// - public KeyCombination GetToggleFriendsKey(GetToggleFriendsKeyOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_UI_GetToggleFriendsKey(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Hides the active Social Overlay. - /// - /// Structure containing the Epic Online Services Account ID of the browser to close. - /// Arbitrary data that is passed back to you in the CompletionDelegate. - /// A callback that is fired when the request to hide the friends list has been processed, or on an error. - /// - /// If the Social Overlay has been notified about the request. - /// If any of the options are incorrect. - /// If the Social Overlay is not properly configured. - /// If the Social Overlay is already hidden. - /// - public void HideFriends(HideFriendsOptions options, object clientData, OnHideFriendsCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnHideFriendsCallbackInternal(OnHideFriendsCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_UI_HideFriends(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// Determine if a key combination is valid. A key combinations must have a single key and at least one modifier. - /// The single key must be one of the following: F1 through F12, Space, Backspace, Escape, or Tab. - /// The modifier key must be one or more of the following: Shift, Control, or Alt. - /// - /// The key to test. - /// - /// true if the provided key combination is valid. - /// - public bool IsValidKeyCombination(KeyCombination keyCombination) - { - var funcResult = Bindings.EOS_UI_IsValidKeyCombination(InnerHandle, keyCombination); - - bool funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - - /// - /// Unregister from receiving notifications when the overlay display settings are updated. - /// - /// Handle representing the registered callback - public void RemoveNotifyDisplaySettingsUpdated(ulong id) - { - Helper.TryRemoveCallbackByNotificationId(id); - - Bindings.EOS_UI_RemoveNotifyDisplaySettingsUpdated(InnerHandle, id); - } - - /// - /// Define any preferences for any display settings. - /// - /// Structure containing any options that are needed to set - /// - /// If the overlay has been notified about the request. - /// If any of the options are incorrect. - /// If the overlay is not properly configured. - /// If the preferences did not change. - /// - public Result SetDisplayPreference(SetDisplayPreferenceOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_UI_SetDisplayPreference(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Updates the current Toggle Friends Key. This key can be used by the user to toggle the friends - /// overlay when available. The default value represents `Shift + F3` as `((int32_t) | (int32_t))`. - /// The provided key should satisfy . The value is specially handled - /// by resetting the key binding to the system default. - /// - /// - /// Structure containing the key combination to use. - /// - /// If the overlay has been notified about the request. - /// If any of the options are incorrect. - /// If the overlay is not properly configured. - /// If the key combination did not change. - /// - public Result SetToggleFriendsKey(SetToggleFriendsKeyOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_UI_SetToggleFriendsKey(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// Opens the Social Overlay with a request to show the friends list. - /// - /// Structure containing the Epic Online Services Account ID of the friends list to show. - /// Arbitrary data that is passed back to you in the CompletionDelegate. - /// A callback that is fired when the request to show the friends list has been sent to the Social Overlay, or on an error. - /// - /// If the Social Overlay has been notified about the request. - /// If any of the options are incorrect. - /// If the Social Overlay is not properly configured. - /// If the Social Overlay is already visible. - /// - public void ShowFriends(ShowFriendsOptions options, object clientData, OnShowFriendsCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnShowFriendsCallbackInternal(OnShowFriendsCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_UI_ShowFriends(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - [MonoPInvokeCallback(typeof(OnDisplaySettingsUpdatedCallbackInternal))] - internal static void OnDisplaySettingsUpdatedCallbackInternalImplementation(System.IntPtr data) - { - OnDisplaySettingsUpdatedCallback callback; - OnDisplaySettingsUpdatedCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnHideFriendsCallbackInternal))] - internal static void OnHideFriendsCallbackInternalImplementation(System.IntPtr data) - { - OnHideFriendsCallback callback; - HideFriendsCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnShowFriendsCallbackInternal))] - internal static void OnShowFriendsCallbackInternalImplementation(System.IntPtr data) - { - OnShowFriendsCallback callback; - ShowFriendsCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/UIInterface.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/UIInterface.cs.meta deleted file mode 100644 index f69218c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UI/UIInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 35ad2059fa078c14fa3326e3f4645329 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo.meta deleted file mode 100644 index 1d887ef..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 70e3a76cb24225741ba6eea7bf7492bd -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/CopyExternalUserInfoByAccountIdOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/CopyExternalUserInfoByAccountIdOptions.cs deleted file mode 100644 index 84d158b..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/CopyExternalUserInfoByAccountIdOptions.cs +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UserInfo -{ - /// - /// Input parameters for the function. - /// - public class CopyExternalUserInfoByAccountIdOptions - { - /// - /// The Epic Online Services Account ID of the local player requesting the information - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The Epic Online Services Account ID of the player whose information is being retrieved - /// - public EpicAccountId TargetUserId { get; set; } - - /// - /// The external account ID associated with the (external) user info to retrieve from the cache; cannot be null - /// - public string AccountId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyExternalUserInfoByAccountIdOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - private System.IntPtr m_AccountId; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public EpicAccountId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public string AccountId - { - set - { - Helper.TryMarshalSet(ref m_AccountId, value); - } - } - - public void Set(CopyExternalUserInfoByAccountIdOptions other) - { - if (other != null) - { - m_ApiVersion = UserInfoInterface.CopyexternaluserinfobyaccountidApiLatest; - LocalUserId = other.LocalUserId; - TargetUserId = other.TargetUserId; - AccountId = other.AccountId; - } - } - - public void Set(object other) - { - Set(other as CopyExternalUserInfoByAccountIdOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_TargetUserId); - Helper.TryMarshalDispose(ref m_AccountId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/CopyExternalUserInfoByAccountIdOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/CopyExternalUserInfoByAccountIdOptions.cs.meta deleted file mode 100644 index 6613ca3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/CopyExternalUserInfoByAccountIdOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ec339dfbd2a68a14983d658a4a8ae372 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/CopyExternalUserInfoByAccountTypeOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/CopyExternalUserInfoByAccountTypeOptions.cs deleted file mode 100644 index 3302f60..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/CopyExternalUserInfoByAccountTypeOptions.cs +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UserInfo -{ - /// - /// Input parameters for the function. - /// - public class CopyExternalUserInfoByAccountTypeOptions - { - /// - /// The Epic Online Services Account ID of the local player requesting the information - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The Epic Online Services Account ID of the player whose information is being retrieved - /// - public EpicAccountId TargetUserId { get; set; } - - /// - /// Account type of the external user info to retrieve from the cache - /// - public ExternalAccountType AccountType { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyExternalUserInfoByAccountTypeOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - private ExternalAccountType m_AccountType; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public EpicAccountId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public ExternalAccountType AccountType - { - set - { - m_AccountType = value; - } - } - - public void Set(CopyExternalUserInfoByAccountTypeOptions other) - { - if (other != null) - { - m_ApiVersion = UserInfoInterface.CopyexternaluserinfobyaccounttypeApiLatest; - LocalUserId = other.LocalUserId; - TargetUserId = other.TargetUserId; - AccountType = other.AccountType; - } - } - - public void Set(object other) - { - Set(other as CopyExternalUserInfoByAccountTypeOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/CopyExternalUserInfoByAccountTypeOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/CopyExternalUserInfoByAccountTypeOptions.cs.meta deleted file mode 100644 index cb4a574..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/CopyExternalUserInfoByAccountTypeOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 2caf6737a2543234a90c44045738fc0a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/CopyExternalUserInfoByIndexOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/CopyExternalUserInfoByIndexOptions.cs deleted file mode 100644 index 3f872e4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/CopyExternalUserInfoByIndexOptions.cs +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UserInfo -{ - /// - /// Input parameters for the function. - /// - public class CopyExternalUserInfoByIndexOptions - { - /// - /// The Epic Online Services Account ID of the local player requesting the information - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The Epic Online Services Account ID of the player whose information is being retrieved - /// - public EpicAccountId TargetUserId { get; set; } - - /// - /// Index of the external user info to retrieve from the cache - /// - public uint Index { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyExternalUserInfoByIndexOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - private uint m_Index; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public EpicAccountId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public uint Index - { - set - { - m_Index = value; - } - } - - public void Set(CopyExternalUserInfoByIndexOptions other) - { - if (other != null) - { - m_ApiVersion = UserInfoInterface.CopyexternaluserinfobyindexApiLatest; - LocalUserId = other.LocalUserId; - TargetUserId = other.TargetUserId; - Index = other.Index; - } - } - - public void Set(object other) - { - Set(other as CopyExternalUserInfoByIndexOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/CopyExternalUserInfoByIndexOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/CopyExternalUserInfoByIndexOptions.cs.meta deleted file mode 100644 index fd1d44a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/CopyExternalUserInfoByIndexOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 5da31470bf11a1e4487b9e8837699ce8 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/CopyUserInfoOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/CopyUserInfoOptions.cs deleted file mode 100644 index 6f1c0ff..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/CopyUserInfoOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UserInfo -{ - /// - /// Input parameters for the function. - /// - public class CopyUserInfoOptions - { - /// - /// The Epic Online Services Account ID of the local player requesting the information - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The Epic Online Services Account ID of the player whose information is being retrieved - /// - public EpicAccountId TargetUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct CopyUserInfoOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public EpicAccountId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public void Set(CopyUserInfoOptions other) - { - if (other != null) - { - m_ApiVersion = UserInfoInterface.CopyuserinfoApiLatest; - LocalUserId = other.LocalUserId; - TargetUserId = other.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as CopyUserInfoOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/CopyUserInfoOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/CopyUserInfoOptions.cs.meta deleted file mode 100644 index 95acbc6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/CopyUserInfoOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 93ab766234ba81241ac289e791a91df1 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/ExternalUserInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/ExternalUserInfo.cs deleted file mode 100644 index c2c182e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/ExternalUserInfo.cs +++ /dev/null @@ -1,115 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UserInfo -{ - /// - /// Contains information about a single external user info. - /// - public class ExternalUserInfo : ISettable - { - /// - /// The type of the external account - /// - public ExternalAccountType AccountType { get; set; } - - /// - /// The ID of the external account. Can be null - /// - public string AccountId { get; set; } - - /// - /// The display name of the external account. Can be null - /// - public string DisplayName { get; set; } - - internal void Set(ExternalUserInfoInternal? other) - { - if (other != null) - { - AccountType = other.Value.AccountType; - AccountId = other.Value.AccountId; - DisplayName = other.Value.DisplayName; - } - } - - public void Set(object other) - { - Set(other as ExternalUserInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct ExternalUserInfoInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private ExternalAccountType m_AccountType; - private System.IntPtr m_AccountId; - private System.IntPtr m_DisplayName; - - public ExternalAccountType AccountType - { - get - { - return m_AccountType; - } - - set - { - m_AccountType = value; - } - } - - public string AccountId - { - get - { - string value; - Helper.TryMarshalGet(m_AccountId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_AccountId, value); - } - } - - public string DisplayName - { - get - { - string value; - Helper.TryMarshalGet(m_DisplayName, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_DisplayName, value); - } - } - - public void Set(ExternalUserInfo other) - { - if (other != null) - { - m_ApiVersion = UserInfoInterface.ExternaluserinfoApiLatest; - AccountType = other.AccountType; - AccountId = other.AccountId; - DisplayName = other.DisplayName; - } - } - - public void Set(object other) - { - Set(other as ExternalUserInfo); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_AccountId); - Helper.TryMarshalDispose(ref m_DisplayName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/ExternalUserInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/ExternalUserInfo.cs.meta deleted file mode 100644 index 8dfd1d2..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/ExternalUserInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: af59d1d3483c5d2459c0cc2c00c6d4b4 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/GetExternalUserInfoCountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/GetExternalUserInfoCountOptions.cs deleted file mode 100644 index b89f643..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/GetExternalUserInfoCountOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UserInfo -{ - /// - /// Input parameters for the function. - /// - public class GetExternalUserInfoCountOptions - { - /// - /// The Epic Online Services Account ID of the local player requesting the information - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The Epic Online Services Account ID of the player whose information is being retrieved - /// - public EpicAccountId TargetUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct GetExternalUserInfoCountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public EpicAccountId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public void Set(GetExternalUserInfoCountOptions other) - { - if (other != null) - { - m_ApiVersion = UserInfoInterface.GetexternaluserinfocountApiLatest; - LocalUserId = other.LocalUserId; - TargetUserId = other.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as GetExternalUserInfoCountOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/GetExternalUserInfoCountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/GetExternalUserInfoCountOptions.cs.meta deleted file mode 100644 index 982cec3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/GetExternalUserInfoCountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 8d5e672b814d6f84292b359108183120 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/OnQueryUserInfoByDisplayNameCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/OnQueryUserInfoByDisplayNameCallback.cs deleted file mode 100644 index c690c94..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/OnQueryUserInfoByDisplayNameCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UserInfo -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnQueryUserInfoByDisplayNameCallback(QueryUserInfoByDisplayNameCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnQueryUserInfoByDisplayNameCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/OnQueryUserInfoByDisplayNameCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/OnQueryUserInfoByDisplayNameCallback.cs.meta deleted file mode 100644 index 24025eb..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/OnQueryUserInfoByDisplayNameCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 09578a01dd0ddb54199a8d012aa0ef96 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/OnQueryUserInfoByExternalAccountCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/OnQueryUserInfoByExternalAccountCallback.cs deleted file mode 100644 index 8dc3208..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/OnQueryUserInfoByExternalAccountCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UserInfo -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnQueryUserInfoByExternalAccountCallback(QueryUserInfoByExternalAccountCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnQueryUserInfoByExternalAccountCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/OnQueryUserInfoByExternalAccountCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/OnQueryUserInfoByExternalAccountCallback.cs.meta deleted file mode 100644 index dac4a81..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/OnQueryUserInfoByExternalAccountCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 93f6cee9511ab004b8f6761fb0141081 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/OnQueryUserInfoCallback.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/OnQueryUserInfoCallback.cs deleted file mode 100644 index 327fc9f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/OnQueryUserInfoCallback.cs +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UserInfo -{ - /// - /// Function prototype definition for callbacks passed to - /// - /// A containing the output information and result - public delegate void OnQueryUserInfoCallback(QueryUserInfoCallbackInfo data); - - [System.Runtime.InteropServices.UnmanagedFunctionPointer(Config.LibraryCallingConvention)] - internal delegate void OnQueryUserInfoCallbackInternal(System.IntPtr data); -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/OnQueryUserInfoCallback.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/OnQueryUserInfoCallback.cs.meta deleted file mode 100644 index 3efe41c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/OnQueryUserInfoCallback.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: cb10976bdb3bd0a428a7358f62d3748b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoByDisplayNameCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoByDisplayNameCallbackInfo.cs deleted file mode 100644 index 68e3b1a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoByDisplayNameCallbackInfo.cs +++ /dev/null @@ -1,124 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UserInfo -{ - /// - /// Output parameters for the Function. - /// - public class QueryUserInfoByDisplayNameCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The Epic Online Services Account ID of the local player requesting the information - /// - public EpicAccountId LocalUserId { get; private set; } - - /// - /// The Epic Online Services Account ID of the player whose information is being retrieved - /// - public EpicAccountId TargetUserId { get; private set; } - - /// - /// Display name of the player being queried. This memory is only valid during the scope of the callback. - /// - public string DisplayName { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(QueryUserInfoByDisplayNameCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - TargetUserId = other.Value.TargetUserId; - DisplayName = other.Value.DisplayName; - } - } - - public void Set(object other) - { - Set(other as QueryUserInfoByDisplayNameCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryUserInfoByDisplayNameCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - private System.IntPtr m_DisplayName; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public EpicAccountId LocalUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public EpicAccountId TargetUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_TargetUserId, out value); - return value; - } - } - - public string DisplayName - { - get - { - string value; - Helper.TryMarshalGet(m_DisplayName, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoByDisplayNameCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoByDisplayNameCallbackInfo.cs.meta deleted file mode 100644 index 7522259..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoByDisplayNameCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d620049d7264f8449b6bbc1af3515585 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoByDisplayNameOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoByDisplayNameOptions.cs deleted file mode 100644 index 817bd4a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoByDisplayNameOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UserInfo -{ - /// - /// Input parameters for the function. - /// - public class QueryUserInfoByDisplayNameOptions - { - /// - /// The Epic Online Services Account ID of the local player requesting the information - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// Display name of the player being queried - /// - public string DisplayName { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryUserInfoByDisplayNameOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_DisplayName; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string DisplayName - { - set - { - Helper.TryMarshalSet(ref m_DisplayName, value); - } - } - - public void Set(QueryUserInfoByDisplayNameOptions other) - { - if (other != null) - { - m_ApiVersion = UserInfoInterface.QueryuserinfobydisplaynameApiLatest; - LocalUserId = other.LocalUserId; - DisplayName = other.DisplayName; - } - } - - public void Set(object other) - { - Set(other as QueryUserInfoByDisplayNameOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_DisplayName); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoByDisplayNameOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoByDisplayNameOptions.cs.meta deleted file mode 100644 index b2ecda0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoByDisplayNameOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: fd1c475494739004c931549b9b7e1a08 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoByExternalAccountCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoByExternalAccountCallbackInfo.cs deleted file mode 100644 index 31f5dd6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoByExternalAccountCallbackInfo.cs +++ /dev/null @@ -1,139 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UserInfo -{ - /// - /// Output parameters for the Function. - /// - public class QueryUserInfoByExternalAccountCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The Epic Online Services Account ID of the local player who requested the information - /// - public EpicAccountId LocalUserId { get; private set; } - - /// - /// External account id of the user whose information has been retrieved - /// - public string ExternalAccountId { get; private set; } - - /// - /// Account type of the external account id - /// - public ExternalAccountType AccountType { get; private set; } - - /// - /// Account ID of the player whose information has been retrieved - /// - public EpicAccountId TargetUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(QueryUserInfoByExternalAccountCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - ExternalAccountId = other.Value.ExternalAccountId; - AccountType = other.Value.AccountType; - TargetUserId = other.Value.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as QueryUserInfoByExternalAccountCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryUserInfoByExternalAccountCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_ExternalAccountId; - private ExternalAccountType m_AccountType; - private System.IntPtr m_TargetUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public EpicAccountId LocalUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public string ExternalAccountId - { - get - { - string value; - Helper.TryMarshalGet(m_ExternalAccountId, out value); - return value; - } - } - - public ExternalAccountType AccountType - { - get - { - return m_AccountType; - } - } - - public EpicAccountId TargetUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_TargetUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoByExternalAccountCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoByExternalAccountCallbackInfo.cs.meta deleted file mode 100644 index efdaea0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoByExternalAccountCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 1b399119953401b40b33631f8282d275 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoByExternalAccountOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoByExternalAccountOptions.cs deleted file mode 100644 index fe418a6..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoByExternalAccountOptions.cs +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UserInfo -{ - /// - /// Input parameters for the function. - /// - public class QueryUserInfoByExternalAccountOptions - { - /// - /// The Epic Online Services Account ID of the local player requesting the information - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// External account ID of the user whose information is being retrieved - /// - public string ExternalAccountId { get; set; } - - /// - /// Account type of the external user info to query - /// - public ExternalAccountType AccountType { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryUserInfoByExternalAccountOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_ExternalAccountId; - private ExternalAccountType m_AccountType; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public string ExternalAccountId - { - set - { - Helper.TryMarshalSet(ref m_ExternalAccountId, value); - } - } - - public ExternalAccountType AccountType - { - set - { - m_AccountType = value; - } - } - - public void Set(QueryUserInfoByExternalAccountOptions other) - { - if (other != null) - { - m_ApiVersion = UserInfoInterface.QueryuserinfobyexternalaccountApiLatest; - LocalUserId = other.LocalUserId; - ExternalAccountId = other.ExternalAccountId; - AccountType = other.AccountType; - } - } - - public void Set(object other) - { - Set(other as QueryUserInfoByExternalAccountOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_ExternalAccountId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoByExternalAccountOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoByExternalAccountOptions.cs.meta deleted file mode 100644 index ba2205d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoByExternalAccountOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 50ab84cb2ccd2c84cb33d0c119954e03 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoCallbackInfo.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoCallbackInfo.cs deleted file mode 100644 index 97d8383..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoCallbackInfo.cs +++ /dev/null @@ -1,107 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UserInfo -{ - /// - /// Output parameters for the Function. - /// - public class QueryUserInfoCallbackInfo : ICallbackInfo, ISettable - { - /// - /// The code for the operation. indicates that the operation succeeded; other codes indicate errors. - /// - public Result ResultCode { get; private set; } - - /// - /// Context that was passed into - /// - public object ClientData { get; private set; } - - /// - /// The Epic Online Services Account ID of the local player requesting the information - /// - public EpicAccountId LocalUserId { get; private set; } - - /// - /// The Epic Online Services Account ID of the player whose information is being retrieved - /// - public EpicAccountId TargetUserId { get; private set; } - - public Result? GetResultCode() - { - return ResultCode; - } - - internal void Set(QueryUserInfoCallbackInfoInternal? other) - { - if (other != null) - { - ResultCode = other.Value.ResultCode; - ClientData = other.Value.ClientData; - LocalUserId = other.Value.LocalUserId; - TargetUserId = other.Value.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as QueryUserInfoCallbackInfoInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryUserInfoCallbackInfoInternal : ICallbackInfoInternal - { - private Result m_ResultCode; - private System.IntPtr m_ClientData; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - - public Result ResultCode - { - get - { - return m_ResultCode; - } - } - - public object ClientData - { - get - { - object value; - Helper.TryMarshalGet(m_ClientData, out value); - return value; - } - } - - public System.IntPtr ClientDataAddress - { - get - { - return m_ClientData; - } - } - - public EpicAccountId LocalUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_LocalUserId, out value); - return value; - } - } - - public EpicAccountId TargetUserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_TargetUserId, out value); - return value; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoCallbackInfo.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoCallbackInfo.cs.meta deleted file mode 100644 index ab4260e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoCallbackInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f7e3873e36b49254ab17338d68066e37 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoOptions.cs deleted file mode 100644 index f9c41ba..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoOptions.cs +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UserInfo -{ - /// - /// Input parameters for the function. - /// - public class QueryUserInfoOptions - { - /// - /// The Epic Online Services Account ID of the local player requesting the information - /// - public EpicAccountId LocalUserId { get; set; } - - /// - /// The Epic Online Services Account ID of the player whose information is being retrieved - /// - public EpicAccountId TargetUserId { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct QueryUserInfoOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_LocalUserId; - private System.IntPtr m_TargetUserId; - - public EpicAccountId LocalUserId - { - set - { - Helper.TryMarshalSet(ref m_LocalUserId, value); - } - } - - public EpicAccountId TargetUserId - { - set - { - Helper.TryMarshalSet(ref m_TargetUserId, value); - } - } - - public void Set(QueryUserInfoOptions other) - { - if (other != null) - { - m_ApiVersion = UserInfoInterface.QueryuserinfoApiLatest; - LocalUserId = other.LocalUserId; - TargetUserId = other.TargetUserId; - } - } - - public void Set(object other) - { - Set(other as QueryUserInfoOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_LocalUserId); - Helper.TryMarshalDispose(ref m_TargetUserId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoOptions.cs.meta deleted file mode 100644 index e8e4fba..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/QueryUserInfoOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 93b0006950a0160478d06e6cc04c530c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/UserInfoData.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/UserInfoData.cs deleted file mode 100644 index d661ea9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/UserInfoData.cs +++ /dev/null @@ -1,166 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UserInfo -{ - /// - /// A structure that contains the user information. These structures are created by and must be passed to . - /// - public class UserInfoData : ISettable - { - /// - /// The Epic Online Services Account ID of the user - /// - public EpicAccountId UserId { get; set; } - - /// - /// The name of the owner's country. This may be null - /// - public string Country { get; set; } - - /// - /// The display name. This may be null - /// - public string DisplayName { get; set; } - - /// - /// The ISO 639 language code for the user's preferred language. This may be null - /// - public string PreferredLanguage { get; set; } - - /// - /// A nickname/alias for the target user assigned by the local user. This may be null - /// - public string Nickname { get; set; } - - internal void Set(UserInfoDataInternal? other) - { - if (other != null) - { - UserId = other.Value.UserId; - Country = other.Value.Country; - DisplayName = other.Value.DisplayName; - PreferredLanguage = other.Value.PreferredLanguage; - Nickname = other.Value.Nickname; - } - } - - public void Set(object other) - { - Set(other as UserInfoDataInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct UserInfoDataInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_UserId; - private System.IntPtr m_Country; - private System.IntPtr m_DisplayName; - private System.IntPtr m_PreferredLanguage; - private System.IntPtr m_Nickname; - - public EpicAccountId UserId - { - get - { - EpicAccountId value; - Helper.TryMarshalGet(m_UserId, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_UserId, value); - } - } - - public string Country - { - get - { - string value; - Helper.TryMarshalGet(m_Country, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Country, value); - } - } - - public string DisplayName - { - get - { - string value; - Helper.TryMarshalGet(m_DisplayName, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_DisplayName, value); - } - } - - public string PreferredLanguage - { - get - { - string value; - Helper.TryMarshalGet(m_PreferredLanguage, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_PreferredLanguage, value); - } - } - - public string Nickname - { - get - { - string value; - Helper.TryMarshalGet(m_Nickname, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_Nickname, value); - } - } - - public void Set(UserInfoData other) - { - if (other != null) - { - m_ApiVersion = UserInfoInterface.CopyuserinfoApiLatest; - UserId = other.UserId; - Country = other.Country; - DisplayName = other.DisplayName; - PreferredLanguage = other.PreferredLanguage; - Nickname = other.Nickname; - } - } - - public void Set(object other) - { - Set(other as UserInfoData); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_UserId); - Helper.TryMarshalDispose(ref m_Country); - Helper.TryMarshalDispose(ref m_DisplayName); - Helper.TryMarshalDispose(ref m_PreferredLanguage); - Helper.TryMarshalDispose(ref m_Nickname); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/UserInfoData.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/UserInfoData.cs.meta deleted file mode 100644 index fa3dd58..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/UserInfoData.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 529510f576b054d4fa38065765852225 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/UserInfoInterface.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/UserInfoInterface.cs deleted file mode 100644 index 3a6b184..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/UserInfoInterface.cs +++ /dev/null @@ -1,326 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.UserInfo -{ - public sealed partial class UserInfoInterface : Handle - { - public UserInfoInterface() - { - } - - public UserInfoInterface(System.IntPtr innerHandle) : base(innerHandle) - { - } - - /// - /// The most recent version of the struct. - /// - public const int CopyexternaluserinfobyaccountidApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int CopyexternaluserinfobyaccounttypeApiLatest = 1; - - /// - /// The most recent version of the struct. - /// - public const int CopyexternaluserinfobyindexApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int CopyuserinfoApiLatest = 2; - - /// - /// The most recent version of the struct. - /// - public const int ExternaluserinfoApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int GetexternaluserinfocountApiLatest = 1; - - /// - /// The maximum length of display names, in displayable characters - /// - public const int MaxDisplaynameCharacters = 16; - - /// - /// The maximum length of display names when encoded as UTF-8 as returned by . This length does not include the null terminator. - /// - public const int MaxDisplaynameUtf8Length = 64; - - /// - /// The most recent version of the API. - /// - public const int QueryuserinfoApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int QueryuserinfobydisplaynameApiLatest = 1; - - /// - /// The most recent version of the API. - /// - public const int QueryuserinfobyexternalaccountApiLatest = 1; - - /// - /// Fetches an external user info for a given external account ID. - /// - /// - /// Structure containing the account ID being accessed - /// The external user info. If it exists and is valid, use when finished - /// - /// if the information is available and passed out in OutExternalUserInfo - /// if you pass a null pointer for the out parameter - /// if the external user info is not found - /// - public Result CopyExternalUserInfoByAccountId(CopyExternalUserInfoByAccountIdOptions options, out ExternalUserInfo outExternalUserInfo) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outExternalUserInfoAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_UserInfo_CopyExternalUserInfoByAccountId(InnerHandle, optionsAddress, ref outExternalUserInfoAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outExternalUserInfoAddress, out outExternalUserInfo)) - { - Bindings.EOS_UserInfo_ExternalUserInfo_Release(outExternalUserInfoAddress); - } - - return funcResult; - } - - /// - /// Fetches an external user info for a given external account type. - /// - /// - /// Structure containing the account type being accessed - /// The external user info. If it exists and is valid, use when finished - /// - /// if the information is available and passed out in OutExternalUserInfo - /// if you pass a null pointer for the out parameter - /// if the external user info is not found - /// - public Result CopyExternalUserInfoByAccountType(CopyExternalUserInfoByAccountTypeOptions options, out ExternalUserInfo outExternalUserInfo) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outExternalUserInfoAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_UserInfo_CopyExternalUserInfoByAccountType(InnerHandle, optionsAddress, ref outExternalUserInfoAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outExternalUserInfoAddress, out outExternalUserInfo)) - { - Bindings.EOS_UserInfo_ExternalUserInfo_Release(outExternalUserInfoAddress); - } - - return funcResult; - } - - /// - /// Fetches an external user info from a given index. - /// - /// - /// Structure containing the index being accessed - /// The external user info. If it exists and is valid, use when finished - /// - /// if the information is available and passed out in OutExternalUserInfo - /// if you pass a null pointer for the out parameter - /// if the external user info is not found - /// - public Result CopyExternalUserInfoByIndex(CopyExternalUserInfoByIndexOptions options, out ExternalUserInfo outExternalUserInfo) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outExternalUserInfoAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_UserInfo_CopyExternalUserInfoByIndex(InnerHandle, optionsAddress, ref outExternalUserInfoAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outExternalUserInfoAddress, out outExternalUserInfo)) - { - Bindings.EOS_UserInfo_ExternalUserInfo_Release(outExternalUserInfoAddress); - } - - return funcResult; - } - - /// - /// is used to immediately retrieve a copy of user information based on an Epic Online Services Account ID, cached by a previous call to . - /// If the call returns an result, the out parameter, OutUserInfo, must be passed to to release the memory associated with it. - /// - /// - /// - /// - /// structure containing the input parameters - /// out parameter used to receive the structure. - /// - /// if the information is available and passed out in OutUserInfo - /// if you pass a null pointer for the out parameter - /// if the API version passed in is incorrect - /// if the user info is not locally cached. The information must have been previously cached by a call to - /// - public Result CopyUserInfo(CopyUserInfoOptions options, out UserInfoData outUserInfo) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var outUserInfoAddress = System.IntPtr.Zero; - - var funcResult = Bindings.EOS_UserInfo_CopyUserInfo(InnerHandle, optionsAddress, ref outUserInfoAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - if (Helper.TryMarshalGet(outUserInfoAddress, out outUserInfo)) - { - Bindings.EOS_UserInfo_Release(outUserInfoAddress); - } - - return funcResult; - } - - /// - /// Fetch the number of external user infos that are cached locally. - /// - /// - /// The options associated with retrieving the external user info count - /// - /// The number of external user infos, or 0 if there is an error - /// - public uint GetExternalUserInfoCount(GetExternalUserInfoCountOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_UserInfo_GetExternalUserInfoCount(InnerHandle, optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - return funcResult; - } - - /// - /// is used to start an asynchronous query to retrieve information, such as display name, about another account. - /// Once the callback has been fired with a successful ResultCode, it is possible to call to receive an containing the available information. - /// - /// - /// - /// - /// - /// structure containing the input parameters - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the async operation completes, either successfully or in error - public void QueryUserInfo(QueryUserInfoOptions options, object clientData, OnQueryUserInfoCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnQueryUserInfoCallbackInternal(OnQueryUserInfoCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_UserInfo_QueryUserInfo(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// is used to start an asynchronous query to retrieve user information by display name. This can be useful for getting the for a display name. - /// Once the callback has been fired with a successful ResultCode, it is possible to call to receive an containing the available information. - /// - /// - /// - /// - /// - /// structure containing the input parameters - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the async operation completes, either successfully or in error - public void QueryUserInfoByDisplayName(QueryUserInfoByDisplayNameOptions options, object clientData, OnQueryUserInfoByDisplayNameCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnQueryUserInfoByDisplayNameCallbackInternal(OnQueryUserInfoByDisplayNameCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_UserInfo_QueryUserInfoByDisplayName(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - /// - /// is used to start an asynchronous query to retrieve user information by external accounts. - /// This can be useful for getting the for external accounts. - /// Once the callback has been fired with a successful ResultCode, it is possible to call CopyUserInfo to receive an containing the available information. - /// - /// - /// - /// - /// structure containing the input parameters - /// arbitrary data that is passed back to you in the CompletionDelegate - /// a callback that is fired when the async operation completes, either successfully or in error - public void QueryUserInfoByExternalAccount(QueryUserInfoByExternalAccountOptions options, object clientData, OnQueryUserInfoByExternalAccountCallback completionDelegate) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var clientDataAddress = System.IntPtr.Zero; - - var completionDelegateInternal = new OnQueryUserInfoByExternalAccountCallbackInternal(OnQueryUserInfoByExternalAccountCallbackInternalImplementation); - Helper.AddCallback(ref clientDataAddress, clientData, completionDelegate, completionDelegateInternal); - - Bindings.EOS_UserInfo_QueryUserInfoByExternalAccount(InnerHandle, optionsAddress, clientDataAddress, completionDelegateInternal); - - Helper.TryMarshalDispose(ref optionsAddress); - } - - [MonoPInvokeCallback(typeof(OnQueryUserInfoByDisplayNameCallbackInternal))] - internal static void OnQueryUserInfoByDisplayNameCallbackInternalImplementation(System.IntPtr data) - { - OnQueryUserInfoByDisplayNameCallback callback; - QueryUserInfoByDisplayNameCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnQueryUserInfoByExternalAccountCallbackInternal))] - internal static void OnQueryUserInfoByExternalAccountCallbackInternalImplementation(System.IntPtr data) - { - OnQueryUserInfoByExternalAccountCallback callback; - QueryUserInfoByExternalAccountCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - - [MonoPInvokeCallback(typeof(OnQueryUserInfoCallbackInternal))] - internal static void OnQueryUserInfoCallbackInternalImplementation(System.IntPtr data) - { - OnQueryUserInfoCallback callback; - QueryUserInfoCallbackInfo callbackInfo; - if (Helper.TryGetAndRemoveCallback(data, out callback, out callbackInfo)) - { - callback(callbackInfo); - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/UserInfoInterface.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/UserInfoInterface.cs.meta deleted file mode 100644 index 9dcdfa1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/UserInfo/UserInfoInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 575a55a941af933499f6789e02ec0795 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Windows.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Windows.meta deleted file mode 100644 index 8a745f4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Windows.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: e85b2e01f4f8d394687cc9af647b4559 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Windows/Platform.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Windows/Platform.meta deleted file mode 100644 index 6848c18..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Windows/Platform.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 7ca8a2f7768e91c4fb6f0ffdf673cdbb -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Windows/Platform/PlatformInterface.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Windows/Platform/PlatformInterface.cs deleted file mode 100644 index de9e17a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Windows/Platform/PlatformInterface.cs +++ /dev/null @@ -1,27 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Platform -{ - public sealed partial class PlatformInterface : Handle - { - /// - /// The most recent version of the structure. - /// - public const int PlatformWindowsrtcoptionsplatformspecificoptionsApiLatest = 1; - - public static PlatformInterface Create(WindowsOptions options) - { - var optionsAddress = System.IntPtr.Zero; - Helper.TryMarshalSet(ref optionsAddress, options); - - var funcResult = Bindings.EOS_Platform_Create(optionsAddress); - - Helper.TryMarshalDispose(ref optionsAddress); - - PlatformInterface funcResultReturn; - Helper.TryMarshalGet(funcResult, out funcResultReturn); - return funcResultReturn; - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Windows/Platform/PlatformInterface.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Windows/Platform/PlatformInterface.cs.meta deleted file mode 100644 index 7f93f75..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Windows/Platform/PlatformInterface.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 6b4467a5a86270e4493ef6dd6d9f774c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Windows/Platform/WindowsOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Windows/Platform/WindowsOptions.cs deleted file mode 100644 index 8ee7eef..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Windows/Platform/WindowsOptions.cs +++ /dev/null @@ -1,241 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Platform -{ - /// - /// Platform options for . - /// - public class WindowsOptions - { - /// - /// A reserved field that should always be nulled. - /// - public System.IntPtr Reserved { get; set; } - - /// - /// The product ID for the running application, found on the dev portal - /// - public string ProductId { get; set; } - - /// - /// The sandbox ID for the running application, found on the dev portal - /// - public string SandboxId { get; set; } - - /// - /// Set of service permissions associated with the running application - /// - public ClientCredentials ClientCredentials { get; set; } - - /// - /// Is this running as a server - /// - public bool IsServer { get; set; } - - /// - /// Used by Player Data Storage and Title Storage. Must be null initialized if unused. 256-bit Encryption Key for file encryption in hexadecimal format (64 hex chars) - /// - public string EncryptionKey { get; set; } - - /// - /// The override country code to use for the logged in user. () - /// - public string OverrideCountryCode { get; set; } - - /// - /// The override locale code to use for the logged in user. This follows ISO 639. () - /// - public string OverrideLocaleCode { get; set; } - - /// - /// The deployment ID for the running application, found on the dev portal - /// - public string DeploymentId { get; set; } - - /// - /// Platform creation flags, e.g. . This is a bitwise-or union of the defined flags. - /// - public PlatformFlags Flags { get; set; } - - /// - /// Used by Player Data Storage and Title Storage. Must be null initialized if unused. Cache directory path. Absolute path to the folder that is going to be used for caching temporary data. The path is created if it's missing. - /// - public string CacheDirectory { get; set; } - - /// - /// A budget, measured in milliseconds, for to do its work. When the budget is met or exceeded (or if no work is available), will return. - /// This allows your game to amortize the cost of SDK work across multiple frames in the event that a lot of work is queued for processing. - /// Zero is interpreted as "perform all available work". - /// - public uint TickBudgetInMilliseconds { get; set; } - - /// - /// RTC options. Setting to NULL will disable RTC features (e.g. voice) - /// - public WindowsRTCOptions RTCOptions { get; set; } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct WindowsOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_Reserved; - private System.IntPtr m_ProductId; - private System.IntPtr m_SandboxId; - private ClientCredentialsInternal m_ClientCredentials; - private int m_IsServer; - private System.IntPtr m_EncryptionKey; - private System.IntPtr m_OverrideCountryCode; - private System.IntPtr m_OverrideLocaleCode; - private System.IntPtr m_DeploymentId; - private PlatformFlags m_Flags; - private System.IntPtr m_CacheDirectory; - private uint m_TickBudgetInMilliseconds; - private System.IntPtr m_RTCOptions; - - public System.IntPtr Reserved - { - set - { - m_Reserved = value; - } - } - - public string ProductId - { - set - { - Helper.TryMarshalSet(ref m_ProductId, value); - } - } - - public string SandboxId - { - set - { - Helper.TryMarshalSet(ref m_SandboxId, value); - } - } - - public ClientCredentials ClientCredentials - { - set - { - Helper.TryMarshalSet(ref m_ClientCredentials, value); - } - } - - public bool IsServer - { - set - { - Helper.TryMarshalSet(ref m_IsServer, value); - } - } - - public string EncryptionKey - { - set - { - Helper.TryMarshalSet(ref m_EncryptionKey, value); - } - } - - public string OverrideCountryCode - { - set - { - Helper.TryMarshalSet(ref m_OverrideCountryCode, value); - } - } - - public string OverrideLocaleCode - { - set - { - Helper.TryMarshalSet(ref m_OverrideLocaleCode, value); - } - } - - public string DeploymentId - { - set - { - Helper.TryMarshalSet(ref m_DeploymentId, value); - } - } - - public PlatformFlags Flags - { - set - { - m_Flags = value; - } - } - - public string CacheDirectory - { - set - { - Helper.TryMarshalSet(ref m_CacheDirectory, value); - } - } - - public uint TickBudgetInMilliseconds - { - set - { - m_TickBudgetInMilliseconds = value; - } - } - - public WindowsRTCOptions RTCOptions - { - set - { - Helper.TryMarshalSet(ref m_RTCOptions, value); - } - } - - public void Set(WindowsOptions other) - { - if (other != null) - { - m_ApiVersion = PlatformInterface.OptionsApiLatest; - Reserved = other.Reserved; - ProductId = other.ProductId; - SandboxId = other.SandboxId; - ClientCredentials = other.ClientCredentials; - IsServer = other.IsServer; - EncryptionKey = other.EncryptionKey; - OverrideCountryCode = other.OverrideCountryCode; - OverrideLocaleCode = other.OverrideLocaleCode; - DeploymentId = other.DeploymentId; - Flags = other.Flags; - CacheDirectory = other.CacheDirectory; - TickBudgetInMilliseconds = other.TickBudgetInMilliseconds; - RTCOptions = other.RTCOptions; - } - } - - public void Set(object other) - { - Set(other as WindowsOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_Reserved); - Helper.TryMarshalDispose(ref m_ProductId); - Helper.TryMarshalDispose(ref m_SandboxId); - Helper.TryMarshalDispose(ref m_ClientCredentials); - Helper.TryMarshalDispose(ref m_EncryptionKey); - Helper.TryMarshalDispose(ref m_OverrideCountryCode); - Helper.TryMarshalDispose(ref m_OverrideLocaleCode); - Helper.TryMarshalDispose(ref m_DeploymentId); - Helper.TryMarshalDispose(ref m_CacheDirectory); - Helper.TryMarshalDispose(ref m_RTCOptions); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Windows/Platform/WindowsOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Windows/Platform/WindowsOptions.cs.meta deleted file mode 100644 index 6727503..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Windows/Platform/WindowsOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ceb0ddc45289a7a499f141df04248ecc -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Windows/Platform/WindowsRTCOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Windows/Platform/WindowsRTCOptions.cs deleted file mode 100644 index 1ad8a00..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Windows/Platform/WindowsRTCOptions.cs +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Platform -{ - /// - /// Platform RTC options. - /// - public class WindowsRTCOptions : ISettable - { - /// - /// This field is for platform specific initialization if any. - /// - /// If provided then the structure will be located in /eos_.h. - /// The structure will be named EOS__RTCOptions. - /// - public WindowsRTCOptionsPlatformSpecificOptions PlatformSpecificOptions { get; set; } - - internal void Set(WindowsRTCOptionsInternal? other) - { - if (other != null) - { - PlatformSpecificOptions = other.Value.PlatformSpecificOptions; - } - } - - public void Set(object other) - { - Set(other as WindowsRTCOptionsInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct WindowsRTCOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_PlatformSpecificOptions; - - public WindowsRTCOptionsPlatformSpecificOptions PlatformSpecificOptions - { - get - { - WindowsRTCOptionsPlatformSpecificOptions value; - Helper.TryMarshalGet(m_PlatformSpecificOptions, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_PlatformSpecificOptions, value); - } - } - - public void Set(WindowsRTCOptions other) - { - if (other != null) - { - m_ApiVersion = PlatformInterface.RtcoptionsApiLatest; - PlatformSpecificOptions = other.PlatformSpecificOptions; - } - } - - public void Set(object other) - { - Set(other as WindowsRTCOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_PlatformSpecificOptions); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Windows/Platform/WindowsRTCOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Windows/Platform/WindowsRTCOptions.cs.meta deleted file mode 100644 index 0e545cc..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Windows/Platform/WindowsRTCOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b35c028a47cca484bbdf28a225c56f0a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Windows/Platform/WindowsRTCOptionsPlatformSpecificOptions.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Windows/Platform/WindowsRTCOptionsPlatformSpecificOptions.cs deleted file mode 100644 index 8977549..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Windows/Platform/WindowsRTCOptionsPlatformSpecificOptions.cs +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. -// This file is automatically generated. Changes to this file may be overwritten. - -namespace Epic.OnlineServices.Platform -{ - /// - /// Options for initializing rtc functionality required for some platforms. - /// - public class WindowsRTCOptionsPlatformSpecificOptions : ISettable - { - /// - /// The absolute path to a `xaudio2_9redist.dll` dependency, including the file name - /// - public string XAudio29DllPath { get; set; } - - internal void Set(WindowsRTCOptionsPlatformSpecificOptionsInternal? other) - { - if (other != null) - { - XAudio29DllPath = other.Value.XAudio29DllPath; - } - } - - public void Set(object other) - { - Set(other as WindowsRTCOptionsPlatformSpecificOptionsInternal?); - } - } - - [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] - internal struct WindowsRTCOptionsPlatformSpecificOptionsInternal : ISettable, System.IDisposable - { - private int m_ApiVersion; - private System.IntPtr m_XAudio29DllPath; - - public string XAudio29DllPath - { - get - { - string value; - Helper.TryMarshalGet(m_XAudio29DllPath, out value); - return value; - } - - set - { - Helper.TryMarshalSet(ref m_XAudio29DllPath, value); - } - } - - public void Set(WindowsRTCOptionsPlatformSpecificOptions other) - { - if (other != null) - { - m_ApiVersion = PlatformInterface.PlatformWindowsrtcoptionsplatformspecificoptionsApiLatest; - XAudio29DllPath = other.XAudio29DllPath; - } - } - - public void Set(object other) - { - Set(other as WindowsRTCOptionsPlatformSpecificOptions); - } - - public void Dispose() - { - Helper.TryMarshalDispose(ref m_XAudio29DllPath); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Windows/Platform/WindowsRTCOptionsPlatformSpecificOptions.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Windows/Platform/WindowsRTCOptionsPlatformSpecificOptions.cs.meta deleted file mode 100644 index b1483b1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/Generated/Windows/Platform/WindowsRTCOptionsPlatformSpecificOptions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a90390c9c4f2b4a4ebf5ea3fdb1be310 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/libEOSSDK-Linux-Shipping.so b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/libEOSSDK-Linux-Shipping.so deleted file mode 100644 index 84b77f1..0000000 Binary files a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/libEOSSDK-Linux-Shipping.so and /dev/null differ diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/libEOSSDK-Linux-Shipping.so.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/libEOSSDK-Linux-Shipping.so.meta deleted file mode 100644 index 5c9ab2a..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/libEOSSDK-Linux-Shipping.so.meta +++ /dev/null @@ -1,27 +0,0 @@ -fileFormatVersion: 2 -guid: 3cb13ba56ac92914581031be50e8b2fd -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Any: - second: - enabled: 1 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/libEOSSDK-Mac-Shipping.dylib b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/libEOSSDK-Mac-Shipping.dylib deleted file mode 100644 index 5f2fc75..0000000 Binary files a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/libEOSSDK-Mac-Shipping.dylib and /dev/null differ diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/libEOSSDK-Mac-Shipping.dylib.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/libEOSSDK-Mac-Shipping.dylib.meta deleted file mode 100644 index 041da13..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/libEOSSDK-Mac-Shipping.dylib.meta +++ /dev/null @@ -1,32 +0,0 @@ -fileFormatVersion: 2 -guid: d747fcc61550658458c4c81b7cc5e35f -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 1 - settings: - DefaultValueInitialized: true - - first: - Standalone: OSXUniversal - second: - enabled: 1 - settings: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDKComponent.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDKComponent.cs deleted file mode 100644 index 93162f8..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDKComponent.cs +++ /dev/null @@ -1,434 +0,0 @@ -using Epic.OnlineServices; -using Epic.OnlineServices.Logging; -using Epic.OnlineServices.Platform; - -using System; -using System.Runtime.InteropServices; - -using UnityEngine; - -/// -/// Manages the Epic Online Services SDK -/// Do not destroy this component! -/// The Epic Online Services SDK can only be initialized once, -/// after releasing the SDK the game has to be restarted in order to initialize the SDK again. -/// In the unity editor the OnDestroy function will not run so that we dont have to restart the editor after play. -/// -namespace EpicTransport { - [DefaultExecutionOrder(-32000)] - public class EOSSDKComponent : MonoBehaviour { - - // Unity Inspector shown variables - - [SerializeField] - private EosApiKey apiKeys; - - [Header("User Login")] - public bool authInterfaceLogin = false; - public Epic.OnlineServices.Auth.LoginCredentialType authInterfaceCredentialType = Epic.OnlineServices.Auth.LoginCredentialType.AccountPortal; - public uint devAuthToolPort = 7878; - public string devAuthToolCredentialName = ""; - public Epic.OnlineServices.ExternalCredentialType connectInterfaceCredentialType = Epic.OnlineServices.ExternalCredentialType.DeviceidAccessToken; - public string deviceModel = "PC Windows 64bit"; - [SerializeField] private string displayName = "User"; - public static string DisplayName { - get { - return Instance.displayName; - } - set { - Instance.displayName = value; - } - } - - [Header("Misc")] - public LogLevel epicLoggerLevel = LogLevel.Error; - - [SerializeField] private bool collectPlayerMetrics = true; - public static bool CollectPlayerMetrics { - get { - return Instance.collectPlayerMetrics; - } - } - - public bool checkForEpicLauncherAndRestart = false; - public bool delayedInitialization = false; - public float platformTickIntervalInSeconds = 0.0f; - private float platformTickTimer = 0f; - public uint tickBudgetInMilliseconds = 0; - - // End Unity Inspector shown variables - - private ulong authExpirationHandle; - - - private string authInterfaceLoginCredentialId = null; - public static void SetAuthInterfaceLoginCredentialId(string credentialId) => Instance.authInterfaceLoginCredentialId = credentialId; - private string authInterfaceCredentialToken = null; - public static void SetAuthInterfaceCredentialToken(string credentialToken) => Instance.authInterfaceCredentialToken = credentialToken; - private string connectInterfaceCredentialToken = null; - public static void SetConnectInterfaceCredentialToken(string credentialToken) => Instance.connectInterfaceCredentialToken = credentialToken; - - private PlatformInterface EOS; - - // Interfaces - public static Epic.OnlineServices.Achievements.AchievementsInterface GetAchievementsInterface() => Instance.EOS.GetAchievementsInterface(); - public static Epic.OnlineServices.Auth.AuthInterface GetAuthInterface() => Instance.EOS.GetAuthInterface(); - public static Epic.OnlineServices.Connect.ConnectInterface GetConnectInterface() => Instance.EOS.GetConnectInterface(); - public static Epic.OnlineServices.Ecom.EcomInterface GetEcomInterface() => Instance.EOS.GetEcomInterface(); - public static Epic.OnlineServices.Friends.FriendsInterface GetFriendsInterface() => Instance.EOS.GetFriendsInterface(); - public static Epic.OnlineServices.Leaderboards.LeaderboardsInterface GetLeaderboardsInterface() => Instance.EOS.GetLeaderboardsInterface(); - public static Epic.OnlineServices.Lobby.LobbyInterface GetLobbyInterface() => Instance.EOS.GetLobbyInterface(); - public static Epic.OnlineServices.Metrics.MetricsInterface GetMetricsInterface() => Instance.EOS.GetMetricsInterface(); // Handled by the transport automatically, only use this interface if Mirror is not used for singleplayer - public static Epic.OnlineServices.Mods.ModsInterface GetModsInterface() => Instance.EOS.GetModsInterface(); - public static Epic.OnlineServices.P2P.P2PInterface GetP2PInterface() => Instance.EOS.GetP2PInterface(); - public static Epic.OnlineServices.PlayerDataStorage.PlayerDataStorageInterface GetPlayerDataStorageInterface() => Instance.EOS.GetPlayerDataStorageInterface(); - public static Epic.OnlineServices.Presence.PresenceInterface GetPresenceInterface() => Instance.EOS.GetPresenceInterface(); - public static Epic.OnlineServices.Sessions.SessionsInterface GetSessionsInterface() => Instance.EOS.GetSessionsInterface(); - public static Epic.OnlineServices.TitleStorage.TitleStorageInterface GetTitleStorageInterface() => Instance.EOS.GetTitleStorageInterface(); - public static Epic.OnlineServices.UI.UIInterface GetUIInterface() => Instance.EOS.GetUIInterface(); - public static Epic.OnlineServices.UserInfo.UserInfoInterface GetUserInfoInterface() => Instance.EOS.GetUserInfoInterface(); - - - protected EpicAccountId localUserAccountId; - public static EpicAccountId LocalUserAccountId { - get { - return Instance.localUserAccountId; - } - } - - protected string localUserAccountIdString; - public static string LocalUserAccountIdString { - get { - return Instance.localUserAccountIdString; - } - } - - protected ProductUserId localUserProductId; - public static ProductUserId LocalUserProductId { - get { - return Instance.localUserProductId; - } - } - - protected string localUserProductIdString; - public static string LocalUserProductIdString { - get { - return Instance.localUserProductIdString; - } - } - - protected bool initialized; - public static bool Initialized { - get { - return Instance.initialized; - } - } - - protected bool isConnecting; - public static bool IsConnecting { - get { - return Instance.isConnecting; - } - } - - protected static EOSSDKComponent instance; - protected static EOSSDKComponent Instance { - get { - if (instance == null) { - return new GameObject("EOSSDKComponent").AddComponent(); - } else { - return instance; - } - } - } - - public static void Tick() { - instance.platformTickTimer -= Time.deltaTime; - instance.EOS.Tick(); - } - - // If we're in editor, we should dynamically load and unload the SDK between play sessions. - // This allows us to initialize the SDK each time the game is run in editor. -#if UNITY_EDITOR_WIN - [DllImport("Kernel32.dll")] - private static extern IntPtr LoadLibrary(string lpLibFileName); - - [DllImport("Kernel32.dll")] - private static extern int FreeLibrary(IntPtr hLibModule); - - [DllImport("Kernel32.dll")] - private static extern IntPtr GetProcAddress(IntPtr hModule, string lpProcName); - - private IntPtr libraryPointer; -#endif - -#if UNITY_EDITOR_LINUX - [DllImport("libdl.so", EntryPoint = "dlopen")] - private static extern IntPtr LoadLibrary(String lpFileName, int flags = 2); - - [DllImport("libdl.so", EntryPoint = "dlclose")] - private static extern int FreeLibrary(IntPtr hLibModule); - - [DllImport("libdl.so")] - private static extern IntPtr dlsym(IntPtr handle, String symbol); - - [DllImport("libdl.so")] - private static extern IntPtr dlerror(); - - private static IntPtr GetProcAddress(IntPtr hModule, string lpProcName) { - // clear previous errors if any - dlerror(); - var res = dlsym(hModule, lpProcName); - var errPtr = dlerror(); - if (errPtr != IntPtr.Zero) { - throw new Exception("dlsym: " + Marshal.PtrToStringAnsi(errPtr)); - } - return res; - } - private IntPtr libraryPointer; -#endif - - private void Awake() { - // Initialize Java version of the SDK with a reference to the VM with JNI - // See https://eoshelp.epicgames.com/s/question/0D54z00006ufJBNCA2/cant-get-createdeviceid-to-work-in-unity-android-c-sdk?language=en_US - if (Application.platform == RuntimePlatform.Android) - { - AndroidJavaClass unityPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer"); - AndroidJavaObject activity = unityPlayer.GetStatic("currentActivity"); - AndroidJavaObject context = activity.Call("getApplicationContext"); - AndroidJavaClass EOS_SDK_JAVA = new AndroidJavaClass("com.epicgames.mobile.eossdk.EOSSDK"); - EOS_SDK_JAVA.CallStatic("init", context); - } - - // Prevent multiple instances - if (instance != null) { - Destroy(gameObject); - return; - } - instance = this; - -#if UNITY_EDITOR - var libraryPath = "Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDK/" + Config.LibraryName; - - libraryPointer = LoadLibrary(libraryPath); - if (libraryPointer == IntPtr.Zero) { - throw new Exception("Failed to load library" + libraryPath); - } - - Bindings.Hook(libraryPointer, GetProcAddress); -#endif - - if (!delayedInitialization) { - Initialize(); - } - } - - protected void InitializeImplementation() { - isConnecting = true; - - var initializeOptions = new InitializeOptions() { - ProductName = apiKeys.epicProductName, - ProductVersion = apiKeys.epicProductVersion - }; - - var initializeResult = PlatformInterface.Initialize(initializeOptions); - - // This code is called each time the game is run in the editor, so we catch the case where the SDK has already been initialized in the editor. - var isAlreadyConfiguredInEditor = Application.isEditor && initializeResult == Result.AlreadyConfigured; - if (initializeResult != Result.Success && !isAlreadyConfiguredInEditor) { - throw new System.Exception("Failed to initialize platform: " + initializeResult); - } - - // The SDK outputs lots of information that is useful for debugging. - // Make sure to set up the logging interface as early as possible: after initializing. - LoggingInterface.SetLogLevel(LogCategory.AllCategories, epicLoggerLevel); - LoggingInterface.SetCallback(message => Logger.EpicDebugLog(message)); - - var options = new Options() { - ProductId = apiKeys.epicProductId, - SandboxId = apiKeys.epicSandboxId, - DeploymentId = apiKeys.epicDeploymentId, - ClientCredentials = new ClientCredentials() { - ClientId = apiKeys.epicClientId, - ClientSecret = apiKeys.epicClientSecret - }, - TickBudgetInMilliseconds = tickBudgetInMilliseconds - }; - - EOS = PlatformInterface.Create(options); - if (EOS == null) { - throw new System.Exception("Failed to create platform"); - } - - if (checkForEpicLauncherAndRestart) { - Result result = EOS.CheckForLauncherAndRestart(); - - // If not started through epic launcher the app will be restarted and we can quit - if (result != Result.NoChange) { - - // Log error if launcher check failed, but still quit to prevent hacking - if (result == Result.UnexpectedError) { - Debug.LogError("Unexpected Error while checking if app was started through epic launcher"); - } - - Application.Quit(); - } - } - - // If we use the Auth interface then only login into the Connect interface after finishing the auth interface login - // If we don't use the Auth interface we can directly login to the Connect interface - if (authInterfaceLogin) { - if (authInterfaceCredentialType == Epic.OnlineServices.Auth.LoginCredentialType.Developer) { - authInterfaceLoginCredentialId = "localhost:" + devAuthToolPort; - authInterfaceCredentialToken = devAuthToolCredentialName; - } - - // Login to Auth Interface - Epic.OnlineServices.Auth.LoginOptions loginOptions = new Epic.OnlineServices.Auth.LoginOptions() { - Credentials = new Epic.OnlineServices.Auth.Credentials() { - Type = authInterfaceCredentialType, - Id = authInterfaceLoginCredentialId, - Token = authInterfaceCredentialToken - }, - ScopeFlags = Epic.OnlineServices.Auth.AuthScopeFlags.BasicProfile | Epic.OnlineServices.Auth.AuthScopeFlags.FriendsList | Epic.OnlineServices.Auth.AuthScopeFlags.Presence - }; - - EOS.GetAuthInterface().Login(loginOptions, null, OnAuthInterfaceLogin); - } else { - // Login to Connect Interface - if (connectInterfaceCredentialType == Epic.OnlineServices.ExternalCredentialType.DeviceidAccessToken) { - Epic.OnlineServices.Connect.CreateDeviceIdOptions createDeviceIdOptions = new Epic.OnlineServices.Connect.CreateDeviceIdOptions(); - createDeviceIdOptions.DeviceModel = deviceModel; - EOS.GetConnectInterface().CreateDeviceId(createDeviceIdOptions, null, OnCreateDeviceId); - } else { - ConnectInterfaceLogin(); - } - } - - } - public static void Initialize() { - if (Instance.initialized || Instance.isConnecting) { - return; - } - - Instance.InitializeImplementation(); - } - - private void OnAuthInterfaceLogin(Epic.OnlineServices.Auth.LoginCallbackInfo loginCallbackInfo) { - if (loginCallbackInfo.ResultCode == Result.Success) { - Debug.Log("Auth Interface Login succeeded"); - - string accountIdString; - Result result = loginCallbackInfo.LocalUserId.ToString(out accountIdString); - if (Result.Success == result) { - Debug.Log("EOS User ID:" + accountIdString); - - localUserAccountIdString = accountIdString; - localUserAccountId = loginCallbackInfo.LocalUserId; - } - - ConnectInterfaceLogin(); - } else if(Epic.OnlineServices.Common.IsOperationComplete(loginCallbackInfo.ResultCode)){ - Debug.Log("Login returned " + loginCallbackInfo.ResultCode); - } - } - - private void OnCreateDeviceId(Epic.OnlineServices.Connect.CreateDeviceIdCallbackInfo createDeviceIdCallbackInfo) { - if (createDeviceIdCallbackInfo.ResultCode == Result.Success || createDeviceIdCallbackInfo.ResultCode == Result.DuplicateNotAllowed) { - ConnectInterfaceLogin(); - } else if(Epic.OnlineServices.Common.IsOperationComplete(createDeviceIdCallbackInfo.ResultCode)) { - Debug.Log("Device ID creation returned " + createDeviceIdCallbackInfo.ResultCode); - } - } - - private void ConnectInterfaceLogin() { - var loginOptions = new Epic.OnlineServices.Connect.LoginOptions(); - - if (connectInterfaceCredentialType == Epic.OnlineServices.ExternalCredentialType.Epic) { - Epic.OnlineServices.Auth.Token token; - Result result = EOS.GetAuthInterface().CopyUserAuthToken(new Epic.OnlineServices.Auth.CopyUserAuthTokenOptions(), localUserAccountId, out token); - - if (result == Result.Success) { - connectInterfaceCredentialToken = token.AccessToken; - } else { - Debug.LogError("Failed to retrieve User Auth Token"); - } - } else if (connectInterfaceCredentialType == Epic.OnlineServices.ExternalCredentialType.DeviceidAccessToken) { - loginOptions.UserLoginInfo = new Epic.OnlineServices.Connect.UserLoginInfo(); - loginOptions.UserLoginInfo.DisplayName = displayName; - } - - loginOptions.Credentials = new Epic.OnlineServices.Connect.Credentials(); - loginOptions.Credentials.Type = connectInterfaceCredentialType; - loginOptions.Credentials.Token = connectInterfaceCredentialToken; - - EOS.GetConnectInterface().Login(loginOptions, null, OnConnectInterfaceLogin); - } - - private void OnConnectInterfaceLogin(Epic.OnlineServices.Connect.LoginCallbackInfo loginCallbackInfo) { - if (loginCallbackInfo.ResultCode == Result.Success) { - Debug.Log("Connect Interface Login succeeded"); - - string productIdString; - Result result = loginCallbackInfo.LocalUserId.ToString(out productIdString); - if (Result.Success == result) { - Debug.Log("EOS User Product ID:" + productIdString); - - localUserProductIdString = productIdString; - localUserProductId = loginCallbackInfo.LocalUserId; - } - - initialized = true; - isConnecting = false; - - var authExpirationOptions = new Epic.OnlineServices.Connect.AddNotifyAuthExpirationOptions(); - authExpirationHandle = EOS.GetConnectInterface().AddNotifyAuthExpiration(authExpirationOptions, null, OnAuthExpiration); - } else if (Epic.OnlineServices.Common.IsOperationComplete(loginCallbackInfo.ResultCode)) { - Debug.Log("Login returned " + loginCallbackInfo.ResultCode + "\nRetrying..."); - EOS.GetConnectInterface().CreateUser(new Epic.OnlineServices.Connect.CreateUserOptions() { ContinuanceToken = loginCallbackInfo.ContinuanceToken }, null, (Epic.OnlineServices.Connect.CreateUserCallbackInfo cb) => { - if (cb.ResultCode != Result.Success) { Debug.Log(cb.ResultCode); return; } - localUserProductId = cb.LocalUserId; - ConnectInterfaceLogin(); - }); - } - } - - private void OnAuthExpiration(Epic.OnlineServices.Connect.AuthExpirationCallbackInfo authExpirationCallbackInfo) { - Debug.Log("AuthExpiration callback"); - EOS.GetConnectInterface().RemoveNotifyAuthExpiration(authExpirationHandle); - ConnectInterfaceLogin(); - } - - // Calling tick on a regular interval is required for callbacks to work. - private void LateUpdate() { - if (EOS != null) { - platformTickTimer += Time.deltaTime; - - if (platformTickTimer >= platformTickIntervalInSeconds) { - platformTickTimer = 0; - EOS.Tick(); - } - } - } - - private void OnApplicationQuit() { - if (EOS != null) { - EOS.Release(); - EOS = null; - PlatformInterface.Shutdown(); - } - - // Unhook the library in the editor, this makes it possible to load the library again after stopping to play -#if UNITY_EDITOR - if (libraryPointer != IntPtr.Zero) { - Bindings.Unhook(); - - // Free until the module ref count is 0 - while (FreeLibrary(libraryPointer) != 0) { } - - libraryPointer = IntPtr.Zero; - } -#endif - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDKComponent.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDKComponent.cs.meta deleted file mode 100644 index 121a71c..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EOSSDKComponent.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 09c2b9adb023e6547aa45a0e8bf5fcfc -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EosApiKey.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EosApiKey.cs deleted file mode 100644 index ddc037d..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EosApiKey.cs +++ /dev/null @@ -1,23 +0,0 @@ -using System.Collections; -using System.Collections.Generic; -using UnityEngine; - -/// -/// Create an instance of this scriptable object and assign your eos api keys to it -/// Then add a reference to it to the EOSSDKComponent -/// -/// You can right click in your Project view in unity and choose: -/// Create -> EOS -> API Key -/// in order to create an instance of this scriptable object -/// - -[CreateAssetMenu(fileName = "EosApiKey", menuName = "EOS/API Key", order = 1)] -public class EosApiKey : ScriptableObject { - public string epicProductName = "MyApplication"; - public string epicProductVersion = "1.0"; - public string epicProductId = ""; - public string epicSandboxId = ""; - public string epicDeploymentId = ""; - public string epicClientId = ""; - public string epicClientSecret = ""; -} diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EosApiKey.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EosApiKey.cs.meta deleted file mode 100644 index 762c815..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EosApiKey.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 2006c7a2843279e4598781ed39185dd0 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EosTransport.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EosTransport.cs deleted file mode 100644 index 1b373f3..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EosTransport.cs +++ /dev/null @@ -1,325 +0,0 @@ -using System; -using System.Collections.Generic; -using System.IO; -using UnityEngine; -using Epic.OnlineServices.P2P; -using Epic.OnlineServices; -using Mirror; -using Epic.OnlineServices.Metrics; -using System.Collections; - -namespace EpicTransport { - - /// - /// EOS Transport following the Mirror transport standard - /// - public class EosTransport : Transport { - private const string EPIC_SCHEME = "epic"; - - private Client client; - private Server server; - - private Common activeNode; - - [SerializeField] - public PacketReliability[] Channels = new PacketReliability[2] { PacketReliability.ReliableOrdered, PacketReliability.UnreliableUnordered }; - - [Tooltip("Timeout for connecting in seconds.")] - public int timeout = 25; - - [Tooltip("The max fragments used in fragmentation before throwing an error.")] - public int maxFragments = 55; - - public float ignoreCachedMessagesAtStartUpInSeconds = 2.0f; - private float ignoreCachedMessagesTimer = 0.0f; - - public RelayControl relayControl = RelayControl.AllowRelays; - - [Header("Info")] - [Tooltip("This will display your Epic Account ID when you start or connect to a server.")] - public ProductUserId productUserId; - - private int packetId = 0; - - private void Awake() { - Debug.Assert(Channels != null && Channels.Length > 0, "No channel configured for EOS Transport."); - Debug.Assert(Channels.Length < byte.MaxValue, "Too many channels configured for EOS Transport"); - - if(Channels[0] != PacketReliability.ReliableOrdered) { - Debug.LogWarning("EOS Transport Channel[0] is not ReliableOrdered, Mirror expects Channel 0 to be ReliableOrdered, only change this if you know what you are doing."); - } - if (Channels[1] != PacketReliability.UnreliableUnordered) { - Debug.LogWarning("EOS Transport Channel[1] is not UnreliableUnordered, Mirror expects Channel 1 to be UnreliableUnordered, only change this if you know what you are doing."); - } - - StartCoroutine("FetchEpicAccountId"); - StartCoroutine("ChangeRelayStatus"); - } - - public override void ClientEarlyUpdate() { - EOSSDKComponent.Tick(); - - if (activeNode != null) { - ignoreCachedMessagesTimer += Time.deltaTime; - - if (ignoreCachedMessagesTimer <= ignoreCachedMessagesAtStartUpInSeconds) { - activeNode.ignoreAllMessages = true; - } else { - activeNode.ignoreAllMessages = false; - - if (client != null && !client.isConnecting) { - if (EOSSDKComponent.Initialized) { - client.Connect(client.hostAddress); - } else { - Debug.LogError("EOS not initialized"); - client.EosNotInitialized(); - } - client.isConnecting = true; - } - } - } - - if (enabled) { - activeNode?.ReceiveData(); - } - } - - public override void ClientLateUpdate() {} - - public override void ServerEarlyUpdate() { - EOSSDKComponent.Tick(); - - if (activeNode != null) { - ignoreCachedMessagesTimer += Time.deltaTime; - - if (ignoreCachedMessagesTimer <= ignoreCachedMessagesAtStartUpInSeconds) { - activeNode.ignoreAllMessages = true; - } else { - activeNode.ignoreAllMessages = false; - } - } - - if (enabled) { - activeNode?.ReceiveData(); - } - } - - public override void ServerLateUpdate() {} - - public override bool ClientConnected() => ClientActive() && client.Connected; - public override void ClientConnect(string address) { - if (!EOSSDKComponent.Initialized) { - Debug.LogError("EOS not initialized. Client could not be started."); - OnClientDisconnected.Invoke(); - return; - } - - StartCoroutine("FetchEpicAccountId"); - - if (ServerActive()) { - Debug.LogError("Transport already running as server!"); - return; - } - - if (!ClientActive() || client.Error) { - Debug.Log($"Starting client, target address {address}."); - - client = Client.CreateClient(this, address); - activeNode = client; - - if (EOSSDKComponent.CollectPlayerMetrics) { - // Start Metrics colletion session - BeginPlayerSessionOptions sessionOptions = new BeginPlayerSessionOptions(); - sessionOptions.AccountId = EOSSDKComponent.LocalUserAccountId; - sessionOptions.ControllerType = UserControllerType.Unknown; - sessionOptions.DisplayName = EOSSDKComponent.DisplayName; - sessionOptions.GameSessionId = null; - sessionOptions.ServerIp = null; - Result result = EOSSDKComponent.GetMetricsInterface().BeginPlayerSession(sessionOptions); - - if(result == Result.Success) { - Debug.Log("Started Metric Session"); - } - } - } else { - Debug.LogError("Client already running!"); - } - } - - public override void ClientConnect(Uri uri) { - if (uri.Scheme != EPIC_SCHEME) - throw new ArgumentException($"Invalid url {uri}, use {EPIC_SCHEME}://EpicAccountId instead", nameof(uri)); - - ClientConnect(uri.Host); - } - - public override void ClientSend(ArraySegment segment, int channelId) { - Send(channelId, segment); - } - - public override void ClientDisconnect() { - if (ClientActive()) { - Shutdown(); - } - } - public bool ClientActive() => client != null; - - - public override bool ServerActive() => server != null; - public override void ServerStart() { - if (!EOSSDKComponent.Initialized) { - Debug.LogError("EOS not initialized. Server could not be started."); - return; - } - - StartCoroutine("FetchEpicAccountId"); - - if (ClientActive()) { - Debug.LogError("Transport already running as client!"); - return; - } - - if (!ServerActive()) { - Debug.Log("Starting server."); - - server = Server.CreateServer(this, NetworkManager.singleton.maxConnections); - activeNode = server; - - if (EOSSDKComponent.CollectPlayerMetrics) { - // Start Metrics colletion session - BeginPlayerSessionOptions sessionOptions = new BeginPlayerSessionOptions(); - sessionOptions.AccountId = EOSSDKComponent.LocalUserAccountId; - sessionOptions.ControllerType = UserControllerType.Unknown; - sessionOptions.DisplayName = EOSSDKComponent.DisplayName; - sessionOptions.GameSessionId = null; - sessionOptions.ServerIp = null; - Result result = EOSSDKComponent.GetMetricsInterface().BeginPlayerSession(sessionOptions); - - if (result == Result.Success) { - Debug.Log("Started Metric Session"); - } - } - } else { - Debug.LogError("Server already started!"); - } - } - - public override Uri ServerUri() { - UriBuilder epicBuilder = new UriBuilder { - Scheme = EPIC_SCHEME, - Host = EOSSDKComponent.LocalUserProductIdString - }; - - return epicBuilder.Uri; - } - - public override void ServerSend(int connectionId, ArraySegment segment, int channelId) { - if (ServerActive()) { - Send( channelId, segment, connectionId); - } - } - public override void ServerDisconnect(int connectionId) => server.Disconnect(connectionId); - public override string ServerGetClientAddress(int connectionId) => ServerActive() ? server.ServerGetClientAddress(connectionId) : string.Empty; - public override void ServerStop() { - if (ServerActive()) { - Shutdown(); - } - } - - private void Send(int channelId, ArraySegment segment, int connectionId = int.MinValue) { - Packet[] packets = GetPacketArray(channelId, segment); - - for(int i = 0; i < packets.Length; i++) { - if (connectionId == int.MinValue) { - client.Send(packets[i].ToBytes(), channelId); - } else { - server.SendAll(connectionId, packets[i].ToBytes(), channelId); - } - } - - packetId++; - } - - private Packet[] GetPacketArray(int channelId, ArraySegment segment) { - int packetCount = Mathf.CeilToInt((float) segment.Count / (float)GetMaxSinglePacketSize(channelId)); - Packet[] packets = new Packet[packetCount]; - - for (int i = 0; i < segment.Count; i += GetMaxSinglePacketSize(channelId)) { - int fragment = i / GetMaxSinglePacketSize(channelId); - - packets[fragment] = new Packet(); - packets[fragment].id = packetId; - packets[fragment].fragment = fragment; - packets[fragment].moreFragments = (segment.Count - i) > GetMaxSinglePacketSize(channelId); - packets[fragment].data = new byte[segment.Count - i > GetMaxSinglePacketSize(channelId) ? GetMaxSinglePacketSize(channelId) : segment.Count - i]; - Array.Copy(segment.Array, i, packets[fragment].data, 0, packets[fragment].data.Length); - } - - return packets; - } - - public override void Shutdown() { - if (EOSSDKComponent.CollectPlayerMetrics) { - // Stop Metrics collection session - EndPlayerSessionOptions endSessionOptions = new EndPlayerSessionOptions(); - endSessionOptions.AccountId = EOSSDKComponent.LocalUserAccountId; - Result result = EOSSDKComponent.GetMetricsInterface().EndPlayerSession(endSessionOptions); - - if (result == Result.Success) { - Debug.LogError("Stopped Metric Session"); - } - } - - server?.Shutdown(); - client?.Disconnect(); - - server = null; - client = null; - activeNode = null; - Debug.Log("Transport shut down."); - } - - public int GetMaxSinglePacketSize(int channelId) => P2PInterface.MaxPacketSize - 10; // 1159 bytes, we need to remove 10 bytes for the packet header (id (4 bytes) + fragment (4 bytes) + more fragments (1 byte)) - - public override int GetMaxPacketSize(int channelId) => P2PInterface.MaxPacketSize * maxFragments; - - public override int GetBatchThreshold(int channelId) => P2PInterface.MaxPacketSize; // Use P2PInterface.MaxPacketSize as everything above will get fragmentated and will be counter effective to batching - - public override bool Available() { - try { - return EOSSDKComponent.Initialized; - } catch { - return false; - } - } - - private IEnumerator FetchEpicAccountId() { - while (!EOSSDKComponent.Initialized) { - yield return null; - } - - productUserId = EOSSDKComponent.LocalUserProductId; - } - - private IEnumerator ChangeRelayStatus() { - while (!EOSSDKComponent.Initialized) { - yield return null; - } - - SetRelayControlOptions setRelayControlOptions = new SetRelayControlOptions(); - setRelayControlOptions.RelayControl = relayControl; - - EOSSDKComponent.GetP2PInterface().SetRelayControl(setRelayControlOptions); - } - - public void ResetIgnoreMessagesAtStartUpTimer() { - ignoreCachedMessagesTimer = 0; - } - - private void OnDestroy() { - if (activeNode != null) { - Shutdown(); - } - } - } -} diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EosTransport.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EosTransport.cs.meta deleted file mode 100644 index ce9a255..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/EosTransport.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f5f2d307354f3ea49b3ea12e6763a9fe -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Lobby.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Lobby.meta deleted file mode 100644 index 2855083..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Lobby.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: e95f05391c4035e4895e5f61f0afe88b -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Lobby/EOSLobby.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Lobby/EOSLobby.cs deleted file mode 100644 index 6d08bda..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Lobby/EOSLobby.cs +++ /dev/null @@ -1,416 +0,0 @@ -using EpicTransport; -using Epic.OnlineServices.Lobby; -using UnityEngine; -using Epic.OnlineServices; -using System.Collections.Generic; - -public class EOSLobby : MonoBehaviour { - ///True if the user is connected to a lobby. - [HideInInspector] public bool ConnectedToLobby { get; private set; } - ///The details of the lobby that the user is currently connected to. - public LobbyDetails ConnectedLobbyDetails { get; private set; } - - ///The available keys assigned by the user. - [SerializeField] public string[] AttributeKeys = new string[] { "lobby_name" }; - - private const string DefaultAttributeKey = "default"; - public const string hostAddressKey = "host_address"; - - private string currentLobbyId = string.Empty; - private bool isLobbyOwner = false; - private List foundLobbies = new List(); - private List lobbyData = new List(); - - //create lobby events - public delegate void CreateLobbySuccess(List attributes); - /// When invoked, a message is sent to all subscribers with a list of that were assigned to the lobby. - public event CreateLobbySuccess CreateLobbySucceeded; - - public delegate void CreateLobbyFailure(string errorMessage); - /// When invoked, a message is sent to all subscribers with an error message. - public event CreateLobbyFailure CreateLobbyFailed; - - //join lobby events - public delegate void JoinLobbySuccess(List attributes); - /// When invoked, a message is sent to all subscribers with a list of that were found when joining the lobby. - public event JoinLobbySuccess JoinLobbySucceeded; - - public delegate void JoinLobbyFailure(string errorMessage); - /// When invoked, a message is sent to all subscribers with an error message. - public event JoinLobbyFailure JoinLobbyFailed; - - //find lobby events - public delegate void FindLobbiesSuccess(List foundLobbies); - /// When invoked, a message is sent to all subscribers with a list of that contains the found lobbies. - public event FindLobbiesSuccess FindLobbiesSucceeded; - - public delegate void FindLobbiesFailure(string errorMessage); - /// When invoked, a message is sent to all subscribers with an error message. - public event FindLobbiesFailure FindLobbiesFailed; - - //leave lobby events - public delegate void LeaveLobbySuccess(); - /// When invoked, an empty message is sent to all subscribers. - public event LeaveLobbySuccess LeaveLobbySucceeded; - - public delegate void LeaveLobbyFailure(string errorMessage); - /// When invoked, a message is sent to all subscribers with an error message. - public event LeaveLobbyFailure LeaveLobbyFailed; - - //update attribute events - public delegate void UpdateAttributeSuccess(string key); - /// When invoked, a message is sent to all subscribers with the key of the attribute that was updated. - public event UpdateAttributeSuccess AttributeUpdateSucceeded; - - public delegate void UpdateAttributeFailure(string key, string errorMessage); - /// When invoked, a message is sent to all subscribers with the key of the attribute that wasn't updated and an error message. - public event UpdateAttributeFailure AttributeUpdateFailed; - - //lobby update events - private ulong lobbyMemberStatusNotifyId = 0; - private ulong lobbyAttributeUpdateNotifyId = 0; - - public delegate void LobbyMemberStatusUpdate(LobbyMemberStatusReceivedCallbackInfo callback); - /// When invoked, a message is sent to all subscribers with an update on member status. - public event LobbyMemberStatusUpdate LobbyMemberStatusUpdated; - - public delegate void LobbyAttributeUpdate(LobbyUpdateReceivedCallbackInfo callback); - /// When invoked, a message is sent to all subscribers with information on the lobby that was updated. - public event LobbyAttributeUpdate LobbyAttributeUpdated; - - public virtual void Start() { - lobbyMemberStatusNotifyId = EOSSDKComponent.GetLobbyInterface().AddNotifyLobbyMemberStatusReceived(new AddNotifyLobbyMemberStatusReceivedOptions { }, null, - (LobbyMemberStatusReceivedCallbackInfo callback) => { - LobbyMemberStatusUpdated?.Invoke(callback); - - if (callback.CurrentStatus == LobbyMemberStatus.Closed) { - LeaveLobby(); - } - }); - - lobbyAttributeUpdateNotifyId = EOSSDKComponent.GetLobbyInterface().AddNotifyLobbyUpdateReceived(new AddNotifyLobbyUpdateReceivedOptions { }, null, - (LobbyUpdateReceivedCallbackInfo callback) => { - LobbyAttributeUpdated?.Invoke(callback); - }); - } - - /// - /// Creates a lobby based on given parameters using Epic Online Services. - /// You can get the data that was added to the lobby by subscribing to the event which gives you a list of . - /// This process may throw errors. You can get errors by subscribing to the event. - /// - /// The maximum amount of connections the lobby allows. - /// The restriction on the lobby to prevent unwanted people from joining. - /// Use Epic's overlay to display information to others. - /// Optional data that you can to the lobby. By default, there is an empty attribute for searching and an attribute which holds the host's network address. - public virtual void CreateLobby(uint maxConnections, LobbyPermissionLevel permissionLevel, bool presenceEnabled, AttributeData[] lobbyData = null) { - - EOSSDKComponent.GetLobbyInterface().CreateLobby(new CreateLobbyOptions { - //lobby options - LocalUserId = EOSSDKComponent.LocalUserProductId, - MaxLobbyMembers = maxConnections, - PermissionLevel = permissionLevel, - PresenceEnabled = presenceEnabled, - BucketId = DefaultAttributeKey, - }, null, (CreateLobbyCallbackInfo callback) => { - List lobbyReturnData = new List(); - - //if the result of CreateLobby is not successful, invoke an error event and return - if (callback.ResultCode != Result.Success) { - CreateLobbyFailed?.Invoke("There was an error while creating a lobby. Error: " + callback.ResultCode); - return; - } - - //create mod handle and lobby data - LobbyModification modHandle = new LobbyModification(); - AttributeData defaultData = new AttributeData { Key = DefaultAttributeKey, Value = DefaultAttributeKey }; - AttributeData hostAddressData = new AttributeData { Key = hostAddressKey, Value = EOSSDKComponent.LocalUserProductIdString }; - - //set the mod handle - EOSSDKComponent.GetLobbyInterface().UpdateLobbyModification(new UpdateLobbyModificationOptions { LobbyId = callback.LobbyId, LocalUserId = EOSSDKComponent.LocalUserProductId }, out modHandle); - - //add attributes - modHandle.AddAttribute(new LobbyModificationAddAttributeOptions { Attribute = defaultData, Visibility = LobbyAttributeVisibility.Public }); - modHandle.AddAttribute(new LobbyModificationAddAttributeOptions { Attribute = hostAddressData, Visibility = LobbyAttributeVisibility.Public }); - - //add user attributes - if (lobbyData != null) { - foreach (AttributeData data in lobbyData) { - modHandle.AddAttribute(new LobbyModificationAddAttributeOptions { Attribute = data, Visibility = LobbyAttributeVisibility.Public }); - lobbyReturnData.Add(new Attribute { Data = data, Visibility = LobbyAttributeVisibility.Public }); - } - } - - //update the lobby - EOSSDKComponent.GetLobbyInterface().UpdateLobby(new UpdateLobbyOptions { LobbyModificationHandle = modHandle }, null, (UpdateLobbyCallbackInfo updateCallback) => { - - //if there was an error while updating the lobby, invoke an error event and return - if (updateCallback.ResultCode != Result.Success) { - CreateLobbyFailed?.Invoke("There was an error while updating the lobby. Error: " + updateCallback.ResultCode); - return; - } - - LobbyDetails details; - EOSSDKComponent.GetLobbyInterface().CopyLobbyDetailsHandle(new CopyLobbyDetailsHandleOptions { LobbyId = callback.LobbyId, LocalUserId = EOSSDKComponent.LocalUserProductId }, out details); - - ConnectedLobbyDetails = details; - isLobbyOwner = true; - ConnectedToLobby = true; - currentLobbyId = callback.LobbyId; - - //invoke event - CreateLobbySucceeded?.Invoke(lobbyReturnData); - }); - }); - } - - /// - /// Finds lobbies based on given parameters using Epic Online Services. - /// You can get the found lobbies by subscribing to the event which gives you a list of . - /// This process may throw errors. You can get errors by subscribing to the event. - /// - /// The maximum amount of results to return. - /// The parameters to search by. If left empty, then the search will use the default attribute attached to all the lobbies. - public virtual void FindLobbies(uint maxResults = 100, LobbySearchSetParameterOptions[] lobbySearchSetParameterOptions = null) { - //create search handle and list of lobby details - LobbySearch search = new LobbySearch(); - - //set the search handle - EOSSDKComponent.GetLobbyInterface().CreateLobbySearch(new CreateLobbySearchOptions { MaxResults = maxResults }, out search); - - //set search parameters - if (lobbySearchSetParameterOptions != null) { - foreach (LobbySearchSetParameterOptions searchOption in lobbySearchSetParameterOptions) { - search.SetParameter(searchOption); - } - } else { - search.SetParameter(new LobbySearchSetParameterOptions { - ComparisonOp = ComparisonOp.Equal, - Parameter = new AttributeData { Key = DefaultAttributeKey, Value = DefaultAttributeKey } - }); - } - - //find lobbies - search.Find(new LobbySearchFindOptions { LocalUserId = EOSSDKComponent.LocalUserProductId }, null, (LobbySearchFindCallbackInfo callback) => { - //if the search was unsuccessful, invoke an error event and return - if (callback.ResultCode != Result.Success) { - FindLobbiesFailed?.Invoke("There was an error while finding lobbies. Error: " + callback.ResultCode); - return; - } - - foundLobbies.Clear(); - - //for each lobby found, add data to details - for (int i = 0; i < search.GetSearchResultCount(new LobbySearchGetSearchResultCountOptions { }); i++) { - LobbyDetails lobbyInformation; - search.CopySearchResultByIndex(new LobbySearchCopySearchResultByIndexOptions { LobbyIndex = (uint) i }, out lobbyInformation); - foundLobbies.Add(lobbyInformation); - } - - //invoke event - FindLobbiesSucceeded?.Invoke(foundLobbies); - }); - } - - /// - /// Join the given lobby and get the data attached. - /// You can get the lobby's data by subscribing to the event which gives you a list of . - /// This process may throw errors. You can get errors by subscribing to the event. - /// - /// of the lobby to join that is retrieved from the event. - /// The keys to use to retrieve the data attached to the lobby. If you leave this empty, the host address attribute will still be read. - /// Use Epic's overlay to display information to others. - public virtual void JoinLobby(LobbyDetails lobbyToJoin, string[] attributeKeys = null, bool presenceEnabled = false) { - //join lobby - EOSSDKComponent.GetLobbyInterface().JoinLobby(new JoinLobbyOptions { LobbyDetailsHandle = lobbyToJoin, LocalUserId = EOSSDKComponent.LocalUserProductId, PresenceEnabled = presenceEnabled }, null, (JoinLobbyCallbackInfo callback) => { - //if the result was not a success, invoke an error event and return - if (callback.ResultCode != Result.Success) { - JoinLobbyFailed?.Invoke("There was an error while joining a lobby. Error: " + callback.ResultCode); - return; - } - - lobbyData.Clear(); - - Attribute hostAddress = new Attribute(); - lobbyToJoin.CopyAttributeByKey(new LobbyDetailsCopyAttributeByKeyOptions { AttrKey = hostAddressKey }, out hostAddress); - lobbyData.Add(hostAddress); - - if (attributeKeys != null) { - foreach (string key in attributeKeys) { - Attribute attribute = new Attribute(); - lobbyToJoin.CopyAttributeByKey(new LobbyDetailsCopyAttributeByKeyOptions { AttrKey = key }, out attribute); - lobbyData.Add(attribute); - } - } - - LobbyDetails details; - EOSSDKComponent.GetLobbyInterface().CopyLobbyDetailsHandle(new CopyLobbyDetailsHandleOptions { LobbyId = callback.LobbyId, LocalUserId = EOSSDKComponent.LocalUserProductId }, out details); - - ConnectedLobbyDetails = details; - isLobbyOwner = false; - ConnectedToLobby = true; - currentLobbyId = callback.LobbyId; - - //invoke event - JoinLobbySucceeded?.Invoke(lobbyData); - }); - } - - public virtual void JoinLobbyByID(string lobbyID){ - LobbySearch search = new LobbySearch(); - EOSSDKComponent.GetLobbyInterface().CreateLobbySearch(new CreateLobbySearchOptions { MaxResults = 1 }, out search); - search.SetLobbyId(new LobbySearchSetLobbyIdOptions {LobbyId = lobbyID}); - - search.Find(new LobbySearchFindOptions { LocalUserId = EOSSDKComponent.LocalUserProductId }, null, (LobbySearchFindCallbackInfo callback) => { - //if the search was unsuccessful, invoke an error event and return - if (callback.ResultCode != Result.Success) { - FindLobbiesFailed?.Invoke("There was an error while finding lobbies. Error: " + callback.ResultCode); - return; - } - - foundLobbies.Clear(); - - //for each lobby found, add data to details - for (int i = 0; i < search.GetSearchResultCount(new LobbySearchGetSearchResultCountOptions { }); i++) { - LobbyDetails lobbyInformation; - search.CopySearchResultByIndex(new LobbySearchCopySearchResultByIndexOptions { LobbyIndex = (uint) i }, out lobbyInformation); - foundLobbies.Add(lobbyInformation); - } - - if (foundLobbies.Count > 0) { - JoinLobby(foundLobbies[0]); - } - }); - } - - /// - /// Leave the lobby that the user is connected to. If the creator of the lobby leaves, the lobby will be destroyed, and any client connected to the lobby will leave. If a member leaves, there will be no further action. - /// If the player was able to destroy or leave the lobby, the event will be invoked. - /// This process may throw errors. You can errors by subscribing to the event. - /// - public virtual void LeaveLobby() { - //if we are the owner of the lobby - if (isLobbyOwner) { - //Destroy lobby - EOSSDKComponent.GetLobbyInterface().DestroyLobby(new DestroyLobbyOptions { LobbyId = currentLobbyId, LocalUserId = EOSSDKComponent.LocalUserProductId }, null, (DestroyLobbyCallbackInfo callback) => { - //if the result was not a success, log error and return - if (callback.ResultCode != Result.Success) { - LeaveLobbyFailed?.Invoke("There was an error while destroying the lobby. Error: " + callback.ResultCode); - return; - } - - ConnectedToLobby = false; - LeaveLobbySucceeded?.Invoke(); - }); - } - //if we are a member of the lobby - else { - EOSSDKComponent.GetLobbyInterface().LeaveLobby(new LeaveLobbyOptions { LobbyId = currentLobbyId, LocalUserId = EOSSDKComponent.LocalUserProductId }, null, (LeaveLobbyCallbackInfo callback) => { - //if the result was not a success, log error and return - if (callback.ResultCode != Result.Success && callback.ResultCode != Result.NotFound) { - LeaveLobbyFailed?.Invoke("There was an error while leaving the lobby. Error: " + callback.ResultCode); - return; - } - - ConnectedToLobby = false; - LeaveLobbySucceeded?.Invoke(); - }); - } - - //when the player leaves the lobby, remove notifications - //will be useless when not connected to lobby - EOSSDKComponent.GetLobbyInterface().RemoveNotifyLobbyMemberStatusReceived(lobbyMemberStatusNotifyId); - EOSSDKComponent.GetLobbyInterface().RemoveNotifyLobbyUpdateReceived(lobbyAttributeUpdateNotifyId); - } - - - /// - /// Remove an attribute attached to the lobby. - /// - /// The key of the attribute that will be removed. - public virtual void RemoveAttribute(string key) { - LobbyModification modHandle = new LobbyModification(); - - EOSSDKComponent.GetLobbyInterface().UpdateLobbyModification(new UpdateLobbyModificationOptions { LobbyId = currentLobbyId, LocalUserId = EOSSDKComponent.LocalUserProductId }, out modHandle); - - modHandle.RemoveAttribute(new LobbyModificationRemoveAttributeOptions { Key = key }); - - EOSSDKComponent.GetLobbyInterface().UpdateLobby(new UpdateLobbyOptions { LobbyModificationHandle = modHandle }, null, (UpdateLobbyCallbackInfo callback) => { - if (callback.ResultCode != Result.Success) { - AttributeUpdateFailed?.Invoke(key, $"There was an error while removing attribute \"{ key }\". Error: " + callback.ResultCode); - return; - } - - AttributeUpdateSucceeded?.Invoke(key); - }); - } - - /// - /// Update an attribute that is attached to the lobby. - /// - /// The new data to apply. - private void UpdateAttribute(AttributeData attribute) { - LobbyModification modHandle = new LobbyModification(); - - EOSSDKComponent.GetLobbyInterface().UpdateLobbyModification(new UpdateLobbyModificationOptions { LobbyId = currentLobbyId, LocalUserId = EOSSDKComponent.LocalUserProductId }, out modHandle); - - modHandle.AddAttribute(new LobbyModificationAddAttributeOptions { Attribute = attribute, Visibility = LobbyAttributeVisibility.Public }); - - EOSSDKComponent.GetLobbyInterface().UpdateLobby(new UpdateLobbyOptions { LobbyModificationHandle = modHandle }, null, (UpdateLobbyCallbackInfo callback) => { - if (callback.ResultCode != Result.Success) { - AttributeUpdateFailed?.Invoke(attribute.Key, $"There was an error while updating attribute \"{ attribute.Key }\". Error: " + callback.ResultCode); - return; - } - - AttributeUpdateSucceeded?.Invoke(attribute.Key); - }); - } - - /// - /// Update a boolean attribute. - /// - /// The key of the attribute. - /// The new boolean value. - public void UpdateLobbyAttribute(string key, bool newValue) { - AttributeData data = new AttributeData { Key = key, Value = newValue }; - UpdateAttribute(data); - } - - /// - /// Update an integer attribute. - /// - /// The key of the attribute. - /// The new integer value. - public void UpdateLobbyAttribute(string key, int newValue) { - AttributeData data = new AttributeData { Key = key, Value = newValue }; - UpdateAttribute(data); - } - - /// - /// Update a double attribute. - /// - /// The key of the attribute. - /// The new double value. - public void UpdateLobbyAttribute(string key, double newValue) { - AttributeData data = new AttributeData { Key = key, Value = newValue }; - UpdateAttribute(data); - } - - /// - /// Update a string attribute. - /// - /// The key of the attribute. - /// The new string value. - public void UpdateLobbyAttribute(string key, string newValue) { - AttributeData data = new AttributeData { Key = key, Value = newValue }; - UpdateAttribute(data); - } - - /// - /// Returns the current lobby id - /// - /// current lobby id - public string GetCurrentLobbyId() { - return currentLobbyId; - } -} diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Lobby/EOSLobby.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Lobby/EOSLobby.cs.meta deleted file mode 100644 index 9503db9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Lobby/EOSLobby.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 01574b072600be34dbd5de0e569c6c99 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Lobby/EOSLobbyUI.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Lobby/EOSLobbyUI.cs deleted file mode 100644 index d140603..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Lobby/EOSLobbyUI.cs +++ /dev/null @@ -1,177 +0,0 @@ -using Epic.OnlineServices.Lobby; -using UnityEngine; -using System.Collections.Generic; -using EpicTransport; -using Mirror; - -public class EOSLobbyUI : EOSLobby { - private string lobbyName = "My Lobby"; - private bool showLobbyList = false; - private bool showPlayerList = false; - - private List foundLobbies = new List(); - private List lobbyData = new List(); - - //register events - private void OnEnable() { - //subscribe to events - CreateLobbySucceeded += OnCreateLobbySuccess; - JoinLobbySucceeded += OnJoinLobbySuccess; - FindLobbiesSucceeded += OnFindLobbiesSuccess; - LeaveLobbySucceeded += OnLeaveLobbySuccess; - } - - //deregister events - private void OnDisable() { - //unsubscribe from events - CreateLobbySucceeded -= OnCreateLobbySuccess; - JoinLobbySucceeded -= OnJoinLobbySuccess; - FindLobbiesSucceeded -= OnFindLobbiesSuccess; - LeaveLobbySucceeded -= OnLeaveLobbySuccess; - } - - //when the lobby is successfully created, start the host - private void OnCreateLobbySuccess(List attributes) { - lobbyData = attributes; - showPlayerList = true; - showLobbyList = false; - - GetComponent().StartHost(); - } - - //when the user joined the lobby successfully, set network address and connect - private void OnJoinLobbySuccess(List attributes) { - lobbyData = attributes; - showPlayerList = true; - showLobbyList = false; - - NetworkManager netManager = GetComponent(); - netManager.networkAddress = attributes.Find((x) => x.Data.Key == hostAddressKey).Data.Value.AsUtf8; - netManager.StartClient(); - } - - //callback for FindLobbiesSucceeded - private void OnFindLobbiesSuccess(List lobbiesFound) { - foundLobbies = lobbiesFound; - showPlayerList = false; - showLobbyList = true; - } - - //when the lobby was left successfully, stop the host/client - private void OnLeaveLobbySuccess() { - NetworkManager netManager = GetComponent(); - netManager.StopHost(); - netManager.StopClient(); - } - - private void OnGUI() { - //if the component is not initialized then dont continue - if (!EOSSDKComponent.Initialized) { - return; - } - - //start UI - GUILayout.BeginHorizontal(); - - //draw side buttons - DrawMenuButtons(); - - //draw scroll view - GUILayout.BeginScrollView(Vector2.zero, GUILayout.MaxHeight(400)); - - //runs when we want to show the lobby list - if (showLobbyList && !showPlayerList) { - DrawLobbyList(); - } - //runs when we want to show the player list and we are connected to a lobby - else if (!showLobbyList && showPlayerList && ConnectedToLobby) { - DrawLobbyMenu(); - } - - GUILayout.EndScrollView(); - - GUILayout.EndHorizontal(); - } - - private void DrawMenuButtons() { - //start button column - GUILayout.BeginVertical(); - - //decide if we should enable the create and find lobby buttons - //prevents user from creating or searching for lobbies when in a lobby - GUI.enabled = !ConnectedToLobby; - - #region Draw Create Lobby Button - - GUILayout.BeginHorizontal(); - - //create lobby button - if (GUILayout.Button("Create Lobby")) { - CreateLobby(4, LobbyPermissionLevel.Publicadvertised, false, new AttributeData[] { new AttributeData { Key = AttributeKeys[0], Value = lobbyName }, }); - } - - lobbyName = GUILayout.TextField(lobbyName, 40, GUILayout.Width(200)); - - GUILayout.EndHorizontal(); - - #endregion - - //find lobby button - if (GUILayout.Button("Find Lobbies")) { - FindLobbies(); - } - - //decide if we should enable the leave lobby button - //only enabled when the user is connected to a lobby - GUI.enabled = ConnectedToLobby; - - if (GUILayout.Button("Leave Lobby")) { - LeaveLobby(); - } - - GUI.enabled = true; - - GUILayout.EndVertical(); - } - - private void DrawLobbyList() { - //draw labels - GUILayout.BeginHorizontal(); - GUILayout.Label("Lobby Name", GUILayout.Width(220)); - GUILayout.Label("Player Count"); - GUILayout.EndHorizontal(); - - //draw lobbies - foreach (LobbyDetails lobby in foundLobbies) { - //get lobby name - Attribute lobbyNameAttribute = new Attribute(); - lobby.CopyAttributeByKey(new LobbyDetailsCopyAttributeByKeyOptions { AttrKey = AttributeKeys[0] }, out lobbyNameAttribute); - - //draw the lobby result - GUILayout.BeginHorizontal(GUILayout.Width(400), GUILayout.MaxWidth(400)); - //draw lobby name - GUILayout.Label(lobbyNameAttribute.Data.Value.AsUtf8.Length > 30 ? lobbyNameAttribute.Data.Value.AsUtf8.Substring(0, 27).Trim() + "..." : lobbyNameAttribute.Data.Value.AsUtf8, GUILayout.Width(175)); - GUILayout.Space(75); - //draw player count - GUILayout.Label(lobby.GetMemberCount(new LobbyDetailsGetMemberCountOptions { }).ToString()); - GUILayout.Space(75); - - //draw join button - if (GUILayout.Button("Join", GUILayout.ExpandWidth(false))) { - JoinLobby(lobby, AttributeKeys); - } - - GUILayout.EndHorizontal(); - } - } - - private void DrawLobbyMenu() { - //draws the lobby name - GUILayout.Label("Name: " + lobbyData.Find((x) => x.Data.Key == AttributeKeys[0]).Data.Value.AsUtf8); - - //draws players - for (int i = 0; i < ConnectedLobbyDetails.GetMemberCount(new LobbyDetailsGetMemberCountOptions { }); i++) { - GUILayout.Label("Player " + i); - } - } -} diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Lobby/EOSLobbyUI.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Lobby/EOSLobbyUI.cs.meta deleted file mode 100644 index 4639671..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Lobby/EOSLobbyUI.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: db5efa10489208a44a5e560cc56f93ed -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Logger.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Logger.cs deleted file mode 100644 index 197c6e0..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Logger.cs +++ /dev/null @@ -1,30 +0,0 @@ -using Epic.OnlineServices.Logging; -using System; -using System.Collections; -using System.Collections.Generic; -using UnityEngine; - -namespace EpicTransport { - public static class Logger { - - public static void EpicDebugLog(LogMessage message) { - switch (message.Level) { - case LogLevel.Info: - Debug.Log($"Epic Manager: Category - {message.Category} Message - {message.Message}"); - break; - case LogLevel.Error: - Debug.LogError($"Epic Manager: Category - {message.Category} Message - {message.Message}"); - break; - case LogLevel.Warning: - Debug.LogWarning($"Epic Manager: Category - {message.Category} Message - {message.Message}"); - break; - case LogLevel.Fatal: - Debug.LogException(new Exception($"Epic Manager: Category - {message.Category} Message - {message.Message}")); - break; - default: - Debug.Log($"Epic Manager: Unknown log processing. Category - {message.Category} Message - {message.Message}"); - break; - } - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Logger.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Logger.cs.meta deleted file mode 100644 index 725d0e9..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Logger.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 931e541b7ce0625409e7436900f4d3bf -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Packet.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Packet.cs deleted file mode 100644 index cb43d75..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Packet.cs +++ /dev/null @@ -1,47 +0,0 @@ -using System; - -namespace EpicTransport { - public struct Packet { - public const int headerSize = sizeof(uint) + sizeof(uint) + 1; - public int size => headerSize + data.Length; - - // header - public int id; - public int fragment; - public bool moreFragments; - - // body - public byte[] data; - - public byte[] ToBytes() { - byte[] array = new byte[size]; - - // Copy id - array[0] = (byte) id; - array[1] = (byte) (id >> 8); - array[2] = (byte) (id >> 0x10); - array[3] = (byte) (id >> 0x18); - - // Copy fragment - array[4] = (byte) fragment; - array[5] = (byte) (fragment >> 8); - array[6] = (byte) (fragment >> 0x10); - array[7] = (byte) (fragment >> 0x18); - - array[8] = moreFragments ? (byte)1 : (byte)0; - - Array.Copy(data, 0, array, 9, data.Length); - - return array; - } - - public void FromBytes(byte[] array) { - id = BitConverter.ToInt32(array, 0); - fragment = BitConverter.ToInt32(array, 4); - moreFragments = array[8] == 1; - - data = new byte[array.Length - 9]; - Array.Copy(array, 9, data, 0, data.Length); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Packet.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Packet.cs.meta deleted file mode 100644 index 185eb93..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Packet.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 024906aad4257f34d8fa7cb029271132 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/RandomString.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/RandomString.cs deleted file mode 100644 index 46b7dc1..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/RandomString.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System; -using System.Text; - -public class RandomString { - - // Generates a random string with a given size. - public static string Generate(int size) { - var builder = new StringBuilder(size); - - Random random = new Random(); - - // Unicode/ASCII Letters are divided into two blocks - // (Letters 65–90 / 97–122): - // The first group containing the uppercase letters and - // the second group containing the lowercase. - - // char is a single Unicode character - char offsetLowerCase = 'a'; - char offsetUpperCase = 'A'; - const int lettersOffset = 26; // A...Z or a..z: length=26 - - for (var i = 0; i < size; i++) { - char offset; - if(random.Next(0,2) == 0) { - offset = offsetLowerCase; - } else { - offset = offsetUpperCase; - } - - var @char = (char) random.Next(offset, offset + lettersOffset); - builder.Append(@char); - } - - return builder.ToString(); - } -} diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/RandomString.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/RandomString.cs.meta deleted file mode 100644 index 20f1db4..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/RandomString.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3c57ecc1f6812bc4b983d71742e38a66 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Server.cs b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Server.cs deleted file mode 100644 index 6959f0e..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Server.cs +++ /dev/null @@ -1,185 +0,0 @@ -using Epic.OnlineServices; -using Epic.OnlineServices.P2P; -using System; -using System.Collections.Generic; -using UnityEngine; - -namespace EpicTransport { - public class Server : Common { - private event Action OnConnected; - private event Action OnReceivedData; - private event Action OnDisconnected; - private event Action OnReceivedError; - - private BidirectionalDictionary epicToMirrorIds; - private Dictionary epicToSocketIds; - private int maxConnections; - private int nextConnectionID; - - public static Server CreateServer(EosTransport transport, int maxConnections) { - Server s = new Server(transport, maxConnections); - - s.OnConnected += (id) => transport.OnServerConnected.Invoke(id); - s.OnDisconnected += (id) => transport.OnServerDisconnected.Invoke(id); - s.OnReceivedData += (id, data, channel) => transport.OnServerDataReceived.Invoke(id, new ArraySegment(data), channel); - s.OnReceivedError += (id, exception) => transport.OnServerError.Invoke(id, exception); - - if (!EOSSDKComponent.Initialized) { - Debug.LogError("EOS not initialized."); - } - - return s; - } - - private Server(EosTransport transport, int maxConnections) : base(transport) { - this.maxConnections = maxConnections; - epicToMirrorIds = new BidirectionalDictionary(); - epicToSocketIds = new Dictionary(); - nextConnectionID = 1; - } - - protected override void OnNewConnection(OnIncomingConnectionRequestInfo result) { - if (ignoreAllMessages) { - return; - } - - if (deadSockets.Contains(result.SocketId.SocketName)) { - Debug.LogError("Received incoming connection request from dead socket"); - return; - } - - EOSSDKComponent.GetP2PInterface().AcceptConnection( - new AcceptConnectionOptions() { - LocalUserId = EOSSDKComponent.LocalUserProductId, - RemoteUserId = result.RemoteUserId, - SocketId = result.SocketId - }); - } - - protected override void OnReceiveInternalData(InternalMessages type, ProductUserId clientUserId, SocketId socketId) { - if (ignoreAllMessages) { - return; - } - - switch (type) { - case InternalMessages.CONNECT: - if (epicToMirrorIds.Count >= maxConnections) { - Debug.LogError("Reached max connections"); - //CloseP2PSessionWithUser(clientUserId, socketId); - SendInternal(clientUserId, socketId, InternalMessages.DISCONNECT); - return; - } - - SendInternal(clientUserId, socketId, InternalMessages.ACCEPT_CONNECT); - - int connectionId = nextConnectionID++; - epicToMirrorIds.Add(clientUserId, connectionId); - epicToSocketIds.Add(clientUserId, socketId); - OnConnected.Invoke(connectionId); - - string clientUserIdString; - clientUserId.ToString(out clientUserIdString); - Debug.Log($"Client with Product User ID {clientUserIdString} connected. Assigning connection id {connectionId}"); - break; - case InternalMessages.DISCONNECT: - if (epicToMirrorIds.TryGetValue(clientUserId, out int connId)) { - OnDisconnected.Invoke(connId); - //CloseP2PSessionWithUser(clientUserId, socketId); - epicToMirrorIds.Remove(clientUserId); - epicToSocketIds.Remove(clientUserId); - Debug.Log($"Client with Product User ID {clientUserId} disconnected."); - } else { - OnReceivedError.Invoke(-1, new Exception("ERROR Unknown Product User ID")); - } - - break; - default: - Debug.Log("Received unknown message type"); - break; - } - } - - protected override void OnReceiveData(byte[] data, ProductUserId clientUserId, int channel) { - if (ignoreAllMessages) { - return; - } - - if (epicToMirrorIds.TryGetValue(clientUserId, out int connectionId)) { - OnReceivedData.Invoke(connectionId, data, channel); - } else { - SocketId socketId; - epicToSocketIds.TryGetValue(clientUserId, out socketId); - CloseP2PSessionWithUser(clientUserId, socketId); - - string productId; - clientUserId.ToString(out productId); - - Debug.LogError("Data received from epic client thats not known " + productId); - OnReceivedError.Invoke(-1, new Exception("ERROR Unknown product ID")); - } - } - - public void Disconnect(int connectionId) { - if (epicToMirrorIds.TryGetValue(connectionId, out ProductUserId userId)) { - SocketId socketId; - epicToSocketIds.TryGetValue(userId, out socketId); - SendInternal(userId, socketId, InternalMessages.DISCONNECT); - epicToMirrorIds.Remove(userId); - epicToSocketIds.Remove(userId); - } else { - Debug.LogWarning("Trying to disconnect unknown connection id: " + connectionId); - } - } - - public void Shutdown() { - foreach (KeyValuePair client in epicToMirrorIds) { - Disconnect(client.Value); - SocketId socketId; - epicToSocketIds.TryGetValue(client.Key, out socketId); - WaitForClose(client.Key, socketId); - } - - ignoreAllMessages = true; - ReceiveData(); - - Dispose(); - } - - public void SendAll(int connectionId, byte[] data, int channelId) { - if (epicToMirrorIds.TryGetValue(connectionId, out ProductUserId userId)) { - SocketId socketId; - epicToSocketIds.TryGetValue(userId, out socketId); - Send(userId, socketId, data, (byte)channelId); - } else { - Debug.LogError("Trying to send on unknown connection: " + connectionId); - OnReceivedError.Invoke(connectionId, new Exception("ERROR Unknown Connection")); - } - - } - - public string ServerGetClientAddress(int connectionId) { - if (epicToMirrorIds.TryGetValue(connectionId, out ProductUserId userId)) { - string userIdString; - userId.ToString(out userIdString); - return userIdString; - } else { - Debug.LogError("Trying to get info on unknown connection: " + connectionId); - OnReceivedError.Invoke(connectionId, new Exception("ERROR Unknown Connection")); - return string.Empty; - } - } - - protected override void OnConnectionFailed(ProductUserId remoteId) { - if (ignoreAllMessages) { - return; - } - - int connectionId = epicToMirrorIds.TryGetValue(remoteId, out int connId) ? connId : nextConnectionID++; - OnDisconnected.Invoke(connectionId); - - Debug.LogError("Connection Failed, removing user"); - epicToMirrorIds.Remove(remoteId); - epicToSocketIds.Remove(remoteId); - } - } -} \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Server.cs.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Server.cs.meta deleted file mode 100644 index 28990e7..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/Server.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 305ff3b4caeb22e40bc120454cceaf55 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/ThirdPartyNotices.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/ThirdPartyNotices.meta deleted file mode 100644 index 391bb6f..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/ThirdPartyNotices.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: c5a636e66d4c1cb4487ed2436c3c7480 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/ThirdPartyNotices/ThirdPartySoftwareNotice.txt b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/ThirdPartyNotices/ThirdPartySoftwareNotice.txt deleted file mode 100644 index 9c9d554..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/ThirdPartyNotices/ThirdPartySoftwareNotice.txt +++ /dev/null @@ -1,2509 +0,0 @@ - -I. CityHash -Copyright (c) 2011 Google, Inc. - -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -II. Slicing-by-8 algorithm -Copyright (c) 2004-2006 Intel Corporation. -All Rights Reserved. - -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - -Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. -Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES -OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE - -III. Expat XML Parser -Copyright (c) 1998-2000 Thai Open Source Software Center Ltd and Clark Cooper -Copyright (c) 2001-2016 Expat maintainers - -Permission is hereby granted, free of charge, to any person obtaining -a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -IV. ICU 51.2 -NOTICE TO USER: Carefully read the following legal agreement. -BY DOWNLOADING, INSTALLING, COPYING OR OTHERWISE USING UNICODE INC.'S DATA FILES ("DATA FILES"), AND/OR SOFTWARE ("SOFTWARE"), YOU UNEQUIVOCALLY ACCEPT, AND AGREE TO BE BOUND BY, ALL OF THE TERMS AND CONDITIONS OF THIS AGREEMENT. -IF YOU DO NOT AGREE, DO NOT DOWNLOAD, INSTALL, COPY, DISTRIBUTE OR USE THE DATA FILES OR SOFTWARE. - -COPYRIGHT AND PERMISSION NOTICE - -Copyright 1991-2019 Unicode, Inc. All rights reserved. -Distributed under the Terms of Use in https://www.unicode.org/copyright.html. - -Permission is hereby granted, free of charge, to any person obtaining a copy of the Unicode data files and any associated documentation (the "Data Files") or Unicode software and any associated documentation (the "Software") to deal in the Data Files or Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, and/or sell copies of the Data Files or Software, and to permit persons to whom the Data Files or Software are furnished to do so, provided that either (a) this copyright and permission notice appear with all copies of the Data Files or Software, or (b) this copyright and permission notice appear in associated Documentation. - -THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE -WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. -IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS -NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA FILES OR SOFTWARE. - -Except as contained in this notice, the name of a copyright holder shall not be used in advertising or otherwise to promote the sale, use or other dealings in these Data Files or Software without prior written authorization of the copyright holder. - - -V. Jemalloc -Licensing - -jemalloc is released under the terms of the following BSD-derived license: --------------------------------------------------------------------------------- -Copyright (C) 2002-2013 Jason Evans . -All rights reserved. -Copyright (C) 2007-2012 Mozilla Foundation. All rights reserved. -Copyright (C) 2009-2013 Facebook, Inc. All rights reserved. - -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: -1. Redistributions of source code must retain the above copyright notice(s), this list of conditions and the following disclaimer. -2. Redistributions in binary form must reproduce the above copyright notice(s), this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER(S) ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER(S) BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - -VI. libcurl v7.47.1, v7.48.0, v7.55.1 -COPYRIGHT AND PERMISSION NOTICE - -Copyright (c) 1996 - 2017, Daniel Stenberg, , and many contributors, see the THANKS file. - -All rights reserved. - -Permission to use, copy, modify, and distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -Except as contained in this notice, the name of a copyright holder shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Software without prior written authorization of the copyright holder. - -VII. [Intentionally Omitted] - -VIII. libwebsockets v1.7.3 -The Epic Games Online Services SDK is based in part on the work of the libwebsockets project (http://libwebsockets.org). Source code for the version of libwebsockets used in Epic Games Online Services SDK can be obtained at https://github.com/EpicGames/ThirdParty - -IX. OpenSSL 1.0.1e -Copyright (c) 1998-2018 The OpenSSL Project. All rights reserved. - -Redistribution and use in source and binary forms, with or without modification, are -permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. All advertising materials mentioning features or use of this software must display the following acknowledgment: -"This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - -4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to endorse or promote products derived from this software without prior written permission. For written permission, please contact openssl-core@openssl.org. - -5. Products derived from this software may not be called "OpenSSL" nor may "OpenSSL" appear in their names without prior written permission of the OpenSSL Project. - -6. Redistributions of any form whatsoever must retain the following acknowledgment: - "This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit (http://www.openssl.org/)" - -THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -X. PLCrashReporter 1.2 -Except as noted below, PLCrashReporter is provided under the following license: - - Copyright (c) 2008 - 2014 Plausible Labs Cooperative, Inc. - All rights reserved. - - Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES - OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT - HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, - WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING - FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR - OTHER DEALINGS IN THE SOFTWARE. - -Additional contributions have been made under the same license terms as above, with copyright held by their respective authors: - - Damian Morris - Copyright (c) 2010 MOSO Corporation, Pty Ltd. - All rights reserved. - - HockeyApp/Bitstadium - Copyright (c) 2012 HockeyApp, Bit Stadium GmbH. - All rights reserved. - -The protobuf-c library, as well as the PLCrashLogWriterEncoding.c file are licensed as follows: - -Copyright 2008, Dave Benson. - -Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. - -XI. Protobuf -Copyright 2008 Google Inc. All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: - - * Redistributions of source code must retain the above copyright -notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above -copyright notice, this list of conditions and the following disclaimer -in the documentation and/or other materials provided with the -distribution. - * Neither the name of Google Inc. nor the names of its -contributors may be used to endorse or promote products derived from -this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -Code generated by the Protocol Buffer compiler is owned by the owner -of the input file used when generating it. This code is not -standalone and requires a support library to be linked with it. This -support library is itself covered by the above license. - -XII. Protobuf-c -Copyright (c) 2008-2016, Dave Benson and the protobuf-c authors. -All rights reserved. - -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - - * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -The code generated by the protoc-c compiler is owned by the owner of the input files used when generating it. This code is not standalone and requires a support library to be linked with it. This support library is covered by the above license. - -XIII. gflags -Copyright (c) 2006, Google Inc. -All rights reserved. - -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - * Neither the name of Google Inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -XIV. LibYUV -Copyright 2011 The LibYuv Project Authors. All rights reserved. - -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - * Neither the name of Google nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -XV. WebRTC stable and trunk version -Copyright (c) 2011, The WebRTC project authors. All rights reserved. - -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - - * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - - * Neither the name of Google nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -XVI. zlib -Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler - -XVII. DirectXTK -Copyright (c) 2012-2019 Microsoft Corp - -Permission is hereby granted, free of charge, to any person obtaining a copy of this -software and associated documentation files (the "Software"), to deal in the Software -without restriction, including without limitation the rights to use, copy, modify, -merge, publish, distribute, sublicense, and/or sell copies of the Software, and to -permit persons to whom the Software is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice shall be included in all copies -or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, -INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF -CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE -OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -XVIII. electron-prebuilt-compile -Copyright (c) 2013-2020 GitHub Inc. - -Permission is hereby granted, free of charge, to any person obtaining -a copy of this software and associated documentation files (the -"Software"), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, sublicense, and/or sell copies of the Software, and to -permit persons to whom the Software is furnished to do so, subject to -the following conditions: - -The above copyright notice and this permission notice shall be -included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -XIX. Node.js -Node.js is licensed for use as follows: - -""" -Copyright Node.js contributors. All rights reserved. - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS -IN THE SOFTWARE. -""" - -This license applies to parts of Node.js originating from the -https://github.com/joyent/node repository: - -""" -Copyright Joyent, Inc. and other Node contributors. All rights reserved. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to -deal in the Software without restriction, including without limitation the -rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -sell copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS -IN THE SOFTWARE. -""" - -The Node.js license applies to all parts of Node.js that are not externally -maintained libraries. - -The externally maintained libraries used by Node.js are: - -- Acorn, located at deps/acorn, is licensed as follows: - """ - MIT License - - Copyright (C) 2012-2018 by various contributors (see AUTHORS) - - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to deal - in the Software without restriction, including without limitation the rights - to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in - all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - THE SOFTWARE. - """ - -- Acorn plugins, located at deps/acorn-plugins, is licensed as follows: - """ - Copyright (C) 2017-2018 by Adrian Heine - - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to deal - in the Software without restriction, including without limitation the rights - to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in - all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - THE SOFTWARE. - """ - -- c-ares, located at deps/cares, is licensed as follows: - """ - Copyright (c) 2007 - 2018, Daniel Stenberg with many contributors, see AUTHORS - file. - - Copyright 1998 by the Massachusetts Institute of Technology. - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, provided that - the above copyright notice appear in all copies and that both that copyright - notice and this permission notice appear in supporting documentation, and that - the name of M.I.T. not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior permission. - M.I.T. makes no representations about the suitability of this software for any - purpose. It is provided "as is" without express or implied warranty. - """ - -- cjs-module-lexer, located at deps/cjs-module-lexer, is licensed as follows: - """ - MIT License - ----------- - - Copyright (C) 2018-2020 Guy Bedford - - Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - """ - -- ICU, located at deps/icu-small, is licensed as follows: - """ - COPYRIGHT AND PERMISSION NOTICE (ICU 58 and later) - - Copyright 1991-2020 Unicode, Inc. All rights reserved. - Distributed under the Terms of Use in https://www.unicode.org/copyright.html. - - Permission is hereby granted, free of charge, to any person obtaining - a copy of the Unicode data files and any associated documentation - (the "Data Files") or Unicode software and any associated documentation - (the "Software") to deal in the Data Files or Software - without restriction, including without limitation the rights to use, - copy, modify, merge, publish, distribute, and/or sell copies of - the Data Files or Software, and to permit persons to whom the Data Files - or Software are furnished to do so, provided that either - (a) this copyright and permission notice appear with all copies - of the Data Files or Software, or - (b) this copyright and permission notice appear in associated - Documentation. - - THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF - ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE - WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - NONINFRINGEMENT OF THIRD PARTY RIGHTS. - IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS - NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL - DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, - DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THE DATA FILES OR SOFTWARE. - - Except as contained in this notice, the name of a copyright holder - shall not be used in advertising or otherwise to promote the sale, - use or other dealings in these Data Files or Software without prior - written authorization of the copyright holder. - - --------------------- - - Third-Party Software Licenses - - This section contains third-party software notices and/or additional - terms for licensed third-party software components included within ICU - libraries. - - 1. ICU License - ICU 1.8.1 to ICU 57.1 - - COPYRIGHT AND PERMISSION NOTICE - - Copyright (c) 1995-2016 International Business Machines Corporation and others - All rights reserved. - - Permission is hereby granted, free of charge, to any person obtaining - a copy of this software and associated documentation files (the - "Software"), to deal in the Software without restriction, including - without limitation the rights to use, copy, modify, merge, publish, - distribute, and/or sell copies of the Software, and to permit persons - to whom the Software is furnished to do so, provided that the above - copyright notice(s) and this permission notice appear in all copies of - the Software and that both the above copyright notice(s) and this - permission notice appear in supporting documentation. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT - OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR - HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY - SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER - RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF - CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN - CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - - Except as contained in this notice, the name of a copyright holder - shall not be used in advertising or otherwise to promote the sale, use - or other dealings in this Software without prior written authorization - of the copyright holder. - - All trademarks and registered trademarks mentioned herein are the - property of their respective owners. - - 2. Chinese/Japanese Word Break Dictionary Data (cjdict.txt) - - # The Google Chrome software developed by Google is licensed under - # the BSD license. Other software included in this distribution is - # provided under other licenses, as set forth below. - # - # The BSD License - # http://opensource.org/licenses/bsd-license.php - # Copyright (C) 2006-2008, Google Inc. - # - # All rights reserved. - # - # Redistribution and use in source and binary forms, with or without - # modification, are permitted provided that the following conditions are met: - # - # Redistributions of source code must retain the above copyright notice, - # this list of conditions and the following disclaimer. - # Redistributions in binary form must reproduce the above - # copyright notice, this list of conditions and the following - # disclaimer in the documentation and/or other materials provided with - # the distribution. - # Neither the name of Google Inc. nor the names of its - # contributors may be used to endorse or promote products derived from - # this software without specific prior written permission. - # - # - # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND - # CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, - # INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF - # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - # DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE - # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR - # BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - # - # - # The word list in cjdict.txt are generated by combining three word lists - # listed below with further processing for compound word breaking. The - # frequency is generated with an iterative training against Google web - # corpora. - # - # * Libtabe (Chinese) - # - https://sourceforge.net/project/?group_id=1519 - # - Its license terms and conditions are shown below. - # - # * IPADIC (Japanese) - # - http://chasen.aist-nara.ac.jp/chasen/distribution.html - # - Its license terms and conditions are shown below. - # - # ---------COPYING.libtabe ---- BEGIN-------------------- - # - # /* - # * Copyright (c) 1999 TaBE Project. - # * Copyright (c) 1999 Pai-Hsiang Hsiao. - # * All rights reserved. - # * - # * Redistribution and use in source and binary forms, with or without - # * modification, are permitted provided that the following conditions - # * are met: - # * - # * . Redistributions of source code must retain the above copyright - # * notice, this list of conditions and the following disclaimer. - # * . Redistributions in binary form must reproduce the above copyright - # * notice, this list of conditions and the following disclaimer in - # * the documentation and/or other materials provided with the - # * distribution. - # * . Neither the name of the TaBE Project nor the names of its - # * contributors may be used to endorse or promote products derived - # * from this software without specific prior written permission. - # * - # * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - # * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - # * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - # * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - # * REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, - # * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - # * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR - # * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - # * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - # * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - # * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - # * OF THE POSSIBILITY OF SUCH DAMAGE. - # */ - # - # /* - # * Copyright (c) 1999 Computer Systems and Communication Lab, - # * Institute of Information Science, Academia - # * Sinica. All rights reserved. - # * - # * Redistribution and use in source and binary forms, with or without - # * modification, are permitted provided that the following conditions - # * are met: - # * - # * . Redistributions of source code must retain the above copyright - # * notice, this list of conditions and the following disclaimer. - # * . Redistributions in binary form must reproduce the above copyright - # * notice, this list of conditions and the following disclaimer in - # * the documentation and/or other materials provided with the - # * distribution. - # * . Neither the name of the Computer Systems and Communication Lab - # * nor the names of its contributors may be used to endorse or - # * promote products derived from this software without specific - # * prior written permission. - # * - # * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - # * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - # * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - # * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - # * REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, - # * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - # * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR - # * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - # * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - # * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - # * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - # * OF THE POSSIBILITY OF SUCH DAMAGE. - # */ - # - # Copyright 1996 Chih-Hao Tsai @ Beckman Institute, - # University of Illinois - # c-tsai4@uiuc.edu http://casper.beckman.uiuc.edu/~c-tsai4 - # - # ---------------COPYING.libtabe-----END-------------------------------- - # - # - # ---------------COPYING.ipadic-----BEGIN------------------------------- - # - # Copyright 2000, 2001, 2002, 2003 Nara Institute of Science - # and Technology. All Rights Reserved. - # - # Use, reproduction, and distribution of this software is permitted. - # Any copy of this software, whether in its original form or modified, - # must include both the above copyright notice and the following - # paragraphs. - # - # Nara Institute of Science and Technology (NAIST), - # the copyright holders, disclaims all warranties with regard to this - # software, including all implied warranties of merchantability and - # fitness, in no event shall NAIST be liable for - # any special, indirect or consequential damages or any damages - # whatsoever resulting from loss of use, data or profits, whether in an - # action of contract, negligence or other tortuous action, arising out - # of or in connection with the use or performance of this software. - # - # A large portion of the dictionary entries - # originate from ICOT Free Software. The following conditions for ICOT - # Free Software applies to the current dictionary as well. - # - # Each User may also freely distribute the Program, whether in its - # original form or modified, to any third party or parties, PROVIDED - # that the provisions of Section 3 ("NO WARRANTY") will ALWAYS appear - # on, or be attached to, the Program, which is distributed substantially - # in the same form as set out herein and that such intended - # distribution, if actually made, will neither violate or otherwise - # contravene any of the laws and regulations of the countries having - # jurisdiction over the User or the intended distribution itself. - # - # NO WARRANTY - # - # The program was produced on an experimental basis in the course of the - # research and development conducted during the project and is provided - # to users as so produced on an experimental basis. Accordingly, the - # program is provided without any warranty whatsoever, whether express, - # implied, statutory or otherwise. The term "warranty" used herein - # includes, but is not limited to, any warranty of the quality, - # performance, merchantability and fitness for a particular purpose of - # the program and the nonexistence of any infringement or violation of - # any right of any third party. - # - # Each user of the program will agree and understand, and be deemed to - # have agreed and understood, that there is no warranty whatsoever for - # the program and, accordingly, the entire risk arising from or - # otherwise connected with the program is assumed by the user. - # - # Therefore, neither ICOT, the copyright holder, or any other - # organization that participated in or was otherwise related to the - # development of the program and their respective officials, directors, - # officers and other employees shall be held liable for any and all - # damages, including, without limitation, general, special, incidental - # and consequential damages, arising out of or otherwise in connection - # with the use or inability to use the program or any product, material - # or result produced or otherwise obtained by using the program, - # regardless of whether they have been advised of, or otherwise had - # knowledge of, the possibility of such damages at any time during the - # project or thereafter. Each user will be deemed to have agreed to the - # foregoing by his or her commencement of use of the program. The term - # "use" as used herein includes, but is not limited to, the use, - # modification, copying and distribution of the program and the - # production of secondary products from the program. - # - # In the case where the program, whether in its original form or - # modified, was distributed or delivered to or received by a user from - # any person, organization or entity other than ICOT, unless it makes or - # grants independently of ICOT any specific warranty to the user in - # writing, such person, organization or entity, will also be exempted - # from and not be held liable to the user for any such damages as noted - # above as far as the program is concerned. - # - # ---------------COPYING.ipadic-----END---------------------------------- - - 3. Lao Word Break Dictionary Data (laodict.txt) - - # Copyright (c) 2013 International Business Machines Corporation - # and others. All Rights Reserved. - # - # Project: http://code.google.com/p/lao-dictionary/ - # Dictionary: http://lao-dictionary.googlecode.com/git/Lao-Dictionary.txt - # License: http://lao-dictionary.googlecode.com/git/Lao-Dictionary-LICENSE.txt - # (copied below) - # - # This file is derived from the above dictionary, with slight - # modifications. - # ---------------------------------------------------------------------- - # Copyright (C) 2013 Brian Eugene Wilson, Robert Martin Campbell. - # All rights reserved. - # - # Redistribution and use in source and binary forms, with or without - # modification, - # are permitted provided that the following conditions are met: - # - # - # Redistributions of source code must retain the above copyright notice, this - # list of conditions and the following disclaimer. Redistributions in - # binary form must reproduce the above copyright notice, this list of - # conditions and the following disclaimer in the documentation and/or - # other materials provided with the distribution. - # - # - # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - # FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - # COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - # INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR - # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - # STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - # OF THE POSSIBILITY OF SUCH DAMAGE. - # -------------------------------------------------------------------------- - - 4. Burmese Word Break Dictionary Data (burmesedict.txt) - - # Copyright (c) 2014 International Business Machines Corporation - # and others. All Rights Reserved. - # - # This list is part of a project hosted at: - # github.com/kanyawtech/myanmar-karen-word-lists - # - # -------------------------------------------------------------------------- - # Copyright (c) 2013, LeRoy Benjamin Sharon - # All rights reserved. - # - # Redistribution and use in source and binary forms, with or without - # modification, are permitted provided that the following conditions - # are met: Redistributions of source code must retain the above - # copyright notice, this list of conditions and the following - # disclaimer. Redistributions in binary form must reproduce the - # above copyright notice, this list of conditions and the following - # disclaimer in the documentation and/or other materials provided - # with the distribution. - # - # Neither the name Myanmar Karen Word Lists, nor the names of its - # contributors may be used to endorse or promote products derived - # from this software without specific prior written permission. - # - # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND - # CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, - # INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF - # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - # DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS - # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - # EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED - # TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - # ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR - # TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF - # THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - # SUCH DAMAGE. - # -------------------------------------------------------------------------- - - 5. Time Zone Database - - ICU uses the public domain data and code derived from Time Zone - Database for its time zone support. The ownership of the TZ database - is explained in BCP 175: Procedure for Maintaining the Time Zone - Database section 7. - - # 7. Database Ownership - # - # The TZ database itself is not an IETF Contribution or an IETF - # document. Rather it is a pre-existing and regularly updated work - # that is in the public domain, and is intended to remain in the - # public domain. Therefore, BCPs 78 [RFC5378] and 79 [RFC3979] do - # not apply to the TZ Database or contributions that individuals make - # to it. Should any claims be made and substantiated against the TZ - # Database, the organization that is providing the IANA - # Considerations defined in this RFC, under the memorandum of - # understanding with the IETF, currently ICANN, may act in accordance - # with all competent court orders. No ownership claims will be made - # by ICANN or the IETF Trust on the database or the code. Any person - # making a contribution to the database or code waives all rights to - # future claims in that contribution or in the TZ Database. - - 6. Google double-conversion - - Copyright 2006-2011, the V8 project authors. All rights reserved. - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are - met: - - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above - copyright notice, this list of conditions and the following - disclaimer in the documentation and/or other materials provided - with the distribution. - * Neither the name of Google Inc. nor the names of its - contributors may be used to endorse or promote products derived - from this software without specific prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - """ - -- libuv, located at deps/uv, is licensed as follows: - """ - libuv is licensed for use as follows: - - ==== - Copyright (c) 2015-present libuv project contributors. - - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to - deal in the Software without restriction, including without limitation the - rights to use, copy, modify, merge, publish, distribute, sublicense, and/or - sell copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in - all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING - FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS - IN THE SOFTWARE. - ==== - - This license applies to parts of libuv originating from the - https://github.com/joyent/libuv repository: - - ==== - - Copyright Joyent, Inc. and other Node contributors. All rights reserved. - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to - deal in the Software without restriction, including without limitation the - rights to use, copy, modify, merge, publish, distribute, sublicense, and/or - sell copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in - all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING - FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS - IN THE SOFTWARE. - - ==== - - This license applies to all parts of libuv that are not externally - maintained libraries. - - The externally maintained libraries used by libuv are: - - - tree.h (from FreeBSD), copyright Niels Provos. Two clause BSD license. - - - inet_pton and inet_ntop implementations, contained in src/inet.c, are - copyright the Internet Systems Consortium, Inc., and licensed under the ISC - license. - - - stdint-msvc2008.h (from msinttypes), copyright Alexander Chemeris. Three - clause BSD license. - - - pthread-fixes.c, copyright Google Inc. and Sony Mobile Communications AB. - Three clause BSD license. - - - android-ifaddrs.h, android-ifaddrs.c, copyright Berkeley Software Design - Inc, Kenneth MacKay and Emergya (Cloud4all, FP7/2007-2013, grant agreement - n 289016). Three clause BSD license. - """ - -- llhttp, located at deps/llhttp, is licensed as follows: - """ - This software is licensed under the MIT License. - - Copyright Fedor Indutny, 2018. - - Permission is hereby granted, free of charge, to any person obtaining a - copy of this software and associated documentation files (the - "Software"), to deal in the Software without restriction, including - without limitation the rights to use, copy, modify, merge, publish, - distribute, sublicense, and/or sell copies of the Software, and to permit - persons to whom the Software is furnished to do so, subject to the - following conditions: - - The above copyright notice and this permission notice shall be included - in all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN - NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, - DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR - OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE - USE OR OTHER DEALINGS IN THE SOFTWARE. - """ - -- OpenSSL, located at deps/openssl, is licensed as follows: - """ - Copyright (c) 1998-2019 The OpenSSL Project. All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions - are met: - - 1. Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in - the documentation and/or other materials provided with the - distribution. - - 3. All advertising materials mentioning features or use of this - software must display the following acknowledgment: - "This product includes software developed by the OpenSSL Project - for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - - 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - endorse or promote products derived from this software without - prior written permission. For written permission, please contact - openssl-core@openssl.org. - - 5. Products derived from this software may not be called "OpenSSL" - nor may "OpenSSL" appear in their names without prior written - permission of the OpenSSL Project. - - 6. Redistributions of any form whatsoever must retain the following - acknowledgment: - "This product includes software developed by the OpenSSL Project - for use in the OpenSSL Toolkit (http://www.openssl.org/)" - - THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - OF THE POSSIBILITY OF SUCH DAMAGE. - ==================================================================== - - This product includes cryptographic software written by Eric Young - (eay@cryptsoft.com). This product includes software written by Tim - Hudson (tjh@cryptsoft.com). - """ - -- Punycode.js, located at lib/punycode.js, is licensed as follows: - """ - Copyright Mathias Bynens - - Permission is hereby granted, free of charge, to any person obtaining - a copy of this software and associated documentation files (the - "Software"), to deal in the Software without restriction, including - without limitation the rights to use, copy, modify, merge, publish, - distribute, sublicense, and/or sell copies of the Software, and to - permit persons to whom the Software is furnished to do so, subject to - the following conditions: - - The above copyright notice and this permission notice shall be - included in all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE - LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION - OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION - WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - """ - -- V8, located at deps/v8, is licensed as follows: - """ - This license applies to all parts of V8 that are not externally - maintained libraries. The externally maintained libraries used by V8 - are: - - - PCRE test suite, located in - test/mjsunit/third_party/regexp-pcre/regexp-pcre.js. This is based on the - test suite from PCRE-7.3, which is copyrighted by the University - of Cambridge and Google, Inc. The copyright notice and license - are embedded in regexp-pcre.js. - - - Layout tests, located in test/mjsunit/third_party/object-keys. These are - based on layout tests from webkit.org which are copyrighted by - Apple Computer, Inc. and released under a 3-clause BSD license. - - - Strongtalk assembler, the basis of the files assembler-arm-inl.h, - assembler-arm.cc, assembler-arm.h, assembler-ia32-inl.h, - assembler-ia32.cc, assembler-ia32.h, assembler-x64-inl.h, - assembler-x64.cc, assembler-x64.h, assembler-mips-inl.h, - assembler-mips.cc, assembler-mips.h, assembler.cc and assembler.h. - This code is copyrighted by Sun Microsystems Inc. and released - under a 3-clause BSD license. - - - Valgrind client API header, located at src/third_party/valgrind/valgrind.h - This is released under the BSD license. - - - The Wasm C/C++ API headers, located at third_party/wasm-api/wasm.{h,hh} - This is released under the Apache license. The API's upstream prototype - implementation also formed the basis of V8's implementation in - src/wasm/c-api.cc. - - These libraries have their own licenses; we recommend you read them, - as their terms may differ from the terms below. - - Further license information can be found in LICENSE files located in - sub-directories. - - Copyright 2014, the V8 project authors. All rights reserved. - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are - met: - - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above - copyright notice, this list of conditions and the following - disclaimer in the documentation and/or other materials provided - with the distribution. - * Neither the name of Google Inc. nor the names of its - contributors may be used to endorse or promote products derived - from this software without specific prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - """ - -- SipHash, located at deps/v8/src/third_party/siphash, is licensed as follows: - """ - SipHash reference C implementation - - Copyright (c) 2016 Jean-Philippe Aumasson - - To the extent possible under law, the author(s) have dedicated all - copyright and related and neighboring rights to this software to the public - domain worldwide. This software is distributed without any warranty. - """ - -- zlib, located at deps/zlib, is licensed as follows: - """ - zlib.h -- interface of the 'zlib' general purpose compression library - version 1.2.11, January 15th, 2017 - - Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - 3. This notice may not be removed or altered from any source distribution. - - Jean-loup Gailly Mark Adler - jloup@gzip.org madler@alumni.caltech.edu - """ - -- npm, located at deps/npm, is licensed as follows: - """ - The npm application - Copyright (c) npm, Inc. and Contributors - Licensed on the terms of The Artistic License 2.0 - - Node package dependencies of the npm application - Copyright (c) their respective copyright owners - Licensed on their respective license terms - - The npm public registry at https://registry.npmjs.org - and the npm website at https://www.npmjs.com - Operated by npm, Inc. - Use governed by terms published on https://www.npmjs.com - - "Node.js" - Trademark Joyent, Inc., https://joyent.com - Neither npm nor npm, Inc. are affiliated with Joyent, Inc. - - The Node.js application - Project of Node Foundation, https://nodejs.org - - The npm Logo - Copyright (c) Mathias Pettersson and Brian Hammond - - "Gubblebum Blocky" typeface - Copyright (c) Tjarda Koster, https://jelloween.deviantart.com - Used with permission - - -------- - - The Artistic License 2.0 - - Copyright (c) 2000-2006, The Perl Foundation. - - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - This license establishes the terms under which a given free software - Package may be copied, modified, distributed, and/or redistributed. - The intent is that the Copyright Holder maintains some artistic - control over the development of that Package while still keeping the - Package available as open source and free software. - - You are always permitted to make arrangements wholly outside of this - license directly with the Copyright Holder of a given Package. If the - terms of this license do not permit the full use that you propose to - make of the Package, you should contact the Copyright Holder and seek - a different licensing arrangement. - - Definitions - - "Copyright Holder" means the individual(s) or organization(s) - named in the copyright notice for the entire Package. - - "Contributor" means any party that has contributed code or other - material to the Package, in accordance with the Copyright Holder's - procedures. - - "You" and "your" means any person who would like to copy, - distribute, or modify the Package. - - "Package" means the collection of files distributed by the - Copyright Holder, and derivatives of that collection and/or of - those files. A given Package may consist of either the Standard - Version, or a Modified Version. - - "Distribute" means providing a copy of the Package or making it - accessible to anyone else, or in the case of a company or - organization, to others outside of your company or organization. - - "Distributor Fee" means any fee that you charge for Distributing - this Package or providing support for this Package to another - party. It does not mean licensing fees. - - "Standard Version" refers to the Package if it has not been - modified, or has been modified only in ways explicitly requested - by the Copyright Holder. - - "Modified Version" means the Package, if it has been changed, and - such changes were not explicitly requested by the Copyright - Holder. - - "Original License" means this Artistic License as Distributed with - the Standard Version of the Package, in its current version or as - it may be modified by The Perl Foundation in the future. - - "Source" form means the source code, documentation source, and - configuration files for the Package. - - "Compiled" form means the compiled bytecode, object code, binary, - or any other form resulting from mechanical transformation or - translation of the Source form. - - Permission for Use and Modification Without Distribution - - (1) You are permitted to use the Standard Version and create and use - Modified Versions for any purpose without restriction, provided that - you do not Distribute the Modified Version. - - Permissions for Redistribution of the Standard Version - - (2) You may Distribute verbatim copies of the Source form of the - Standard Version of this Package in any medium without restriction, - either gratis or for a Distributor Fee, provided that you duplicate - all of the original copyright notices and associated disclaimers. At - your discretion, such verbatim copies may or may not include a - Compiled form of the Package. - - (3) You may apply any bug fixes, portability changes, and other - modifications made available from the Copyright Holder. The resulting - Package will still be considered the Standard Version, and as such - will be subject to the Original License. - - Distribution of Modified Versions of the Package as Source - - (4) You may Distribute your Modified Version as Source (either gratis - or for a Distributor Fee, and with or without a Compiled form of the - Modified Version) provided that you clearly document how it differs - from the Standard Version, including, but not limited to, documenting - any non-standard features, executables, or modules, and provided that - you do at least ONE of the following: - - (a) make the Modified Version available to the Copyright Holder - of the Standard Version, under the Original License, so that the - Copyright Holder may include your modifications in the Standard - Version. - - (b) ensure that installation of your Modified Version does not - prevent the user installing or running the Standard Version. In - addition, the Modified Version must bear a name that is different - from the name of the Standard Version. - - (c) allow anyone who receives a copy of the Modified Version to - make the Source form of the Modified Version available to others - under - - (i) the Original License or - - (ii) a license that permits the licensee to freely copy, - modify and redistribute the Modified Version using the same - licensing terms that apply to the copy that the licensee - received, and requires that the Source form of the Modified - Version, and of any works derived from it, be made freely - available in that license fees are prohibited but Distributor - Fees are allowed. - - Distribution of Compiled Forms of the Standard Version - or Modified Versions without the Source - - (5) You may Distribute Compiled forms of the Standard Version without - the Source, provided that you include complete instructions on how to - get the Source of the Standard Version. Such instructions must be - valid at the time of your distribution. If these instructions, at any - time while you are carrying out such distribution, become invalid, you - must provide new instructions on demand or cease further distribution. - If you provide valid instructions or cease distribution within thirty - days after you become aware that the instructions are invalid, then - you do not forfeit any of your rights under this license. - - (6) You may Distribute a Modified Version in Compiled form without - the Source, provided that you comply with Section 4 with respect to - the Source of the Modified Version. - - Aggregating or Linking the Package - - (7) You may aggregate the Package (either the Standard Version or - Modified Version) with other packages and Distribute the resulting - aggregation provided that you do not charge a licensing fee for the - Package. Distributor Fees are permitted, and licensing fees for other - components in the aggregation are permitted. The terms of this license - apply to the use and Distribution of the Standard or Modified Versions - as included in the aggregation. - - (8) You are permitted to link Modified and Standard Versions with - other works, to embed the Package in a larger work of your own, or to - build stand-alone binary or bytecode versions of applications that - include the Package, and Distribute the result without restriction, - provided the result does not expose a direct interface to the Package. - - Items That are Not Considered Part of a Modified Version - - (9) Works (including, but not limited to, modules and scripts) that - merely extend or make use of the Package, do not, by themselves, cause - the Package to be a Modified Version. In addition, such works are not - considered parts of the Package itself, and are not subject to the - terms of this license. - - General Provisions - - (10) Any use, modification, and distribution of the Standard or - Modified Versions is governed by this Artistic License. By using, - modifying or distributing the Package, you accept this license. Do not - use, modify, or distribute the Package, if you do not accept this - license. - - (11) If your Modified Version has been derived from a Modified - Version made by someone other than you, you are nevertheless required - to ensure that your Modified Version complies with the requirements of - this license. - - (12) This license does not grant you the right to use any trademark, - service mark, tradename, or logo of the Copyright Holder. - - (13) This license includes the non-exclusive, worldwide, - free-of-charge patent license to make, have made, use, offer to sell, - sell, import and otherwise transfer the Package with respect to any - patent claims licensable by the Copyright Holder that are necessarily - infringed by the Package. If you institute patent litigation - (including a cross-claim or counterclaim) against any party alleging - that the Package constitutes direct or contributory patent - infringement, then this Artistic License to you shall terminate on the - date that such litigation is filed. - - (14) Disclaimer of Warranty: - THE PACKAGE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS "AS - IS' AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES. THE IMPLIED - WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR - NON-INFRINGEMENT ARE DISCLAIMED TO THE EXTENT PERMITTED BY YOUR LOCAL - LAW. UNLESS REQUIRED BY LAW, NO COPYRIGHT HOLDER OR CONTRIBUTOR WILL - BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL - DAMAGES ARISING IN ANY WAY OUT OF THE USE OF THE PACKAGE, EVEN IF - ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - -------- - """ - -- GYP, located at tools/gyp, is licensed as follows: - """ - Copyright (c) 2020 Node.js contributors. All rights reserved. - Copyright (c) 2009 Google Inc. All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are - met: - - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above - copyright notice, this list of conditions and the following disclaimer - in the documentation and/or other materials provided with the - distribution. - * Neither the name of Google Inc. nor the names of its - contributors may be used to endorse or promote products derived from - this software without specific prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - """ - -- inspector_protocol, located at tools/inspector_protocol, is licensed as follows: - """ - // Copyright 2016 The Chromium Authors. All rights reserved. - // - // Redistribution and use in source and binary forms, with or without - // modification, are permitted provided that the following conditions are - // met: - // - // * Redistributions of source code must retain the above copyright - // notice, this list of conditions and the following disclaimer. - // * Redistributions in binary form must reproduce the above - // copyright notice, this list of conditions and the following disclaimer - // in the documentation and/or other materials provided with the - // distribution. - // * Neither the name of Google Inc. nor the names of its - // contributors may be used to endorse or promote products derived from - // this software without specific prior written permission. - // - // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - """ - -- jinja2, located at tools/inspector_protocol/jinja2, is licensed as follows: - """ - Copyright (c) 2009 by the Jinja Team, see AUTHORS for more details. - - Some rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are - met: - - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - - * Redistributions in binary form must reproduce the above - copyright notice, this list of conditions and the following - disclaimer in the documentation and/or other materials provided - with the distribution. - - * The names of the contributors may not be used to endorse or - promote products derived from this software without specific - prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - """ - -- markupsafe, located at tools/inspector_protocol/markupsafe, is licensed as follows: - """ - Copyright (c) 2010 by Armin Ronacher and contributors. See AUTHORS - for more details. - - Some rights reserved. - - Redistribution and use in source and binary forms of the software as well - as documentation, with or without modification, are permitted provided - that the following conditions are met: - - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - - * Redistributions in binary form must reproduce the above - copyright notice, this list of conditions and the following - disclaimer in the documentation and/or other materials provided - with the distribution. - - * The names of the contributors may not be used to endorse or - promote products derived from this software without specific - prior written permission. - - THIS SOFTWARE AND DOCUMENTATION IS PROVIDED BY THE COPYRIGHT HOLDERS AND - CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT - NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER - OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - SOFTWARE AND DOCUMENTATION, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH - DAMAGE. - """ - -- cpplint.py, located at tools/cpplint.py, is licensed as follows: - """ - Copyright (c) 2009 Google Inc. All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are - met: - - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above - copyright notice, this list of conditions and the following disclaimer - in the documentation and/or other materials provided with the - distribution. - * Neither the name of Google Inc. nor the names of its - contributors may be used to endorse or promote products derived from - this software without specific prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - """ - -- ESLint, located at tools/node_modules/eslint, is licensed as follows: - """ - Copyright JS Foundation and other contributors, https://js.foundation - - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to deal - in the Software without restriction, including without limitation the rights - to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in - all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - THE SOFTWARE. - """ - -- babel-eslint, located at tools/node_modules/babel-eslint, is licensed as follows: - """ - Copyright (c) 2014-2016 Sebastian McKenzie - - MIT License - - Permission is hereby granted, free of charge, to any person obtaining - a copy of this software and associated documentation files (the - "Software"), to deal in the Software without restriction, including - without limitation the rights to use, copy, modify, merge, publish, - distribute, sublicense, and/or sell copies of the Software, and to - permit persons to whom the Software is furnished to do so, subject to - the following conditions: - - The above copyright notice and this permission notice shall be - included in all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE - LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION - OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION - WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - """ - -- gtest, located at test/cctest/gtest, is licensed as follows: - """ - Copyright 2008, Google Inc. - All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are - met: - - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above - copyright notice, this list of conditions and the following disclaimer - in the documentation and/or other materials provided with the - distribution. - * Neither the name of Google Inc. nor the names of its - contributors may be used to endorse or promote products derived from - this software without specific prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - """ - -- nghttp2, located at deps/nghttp2, is licensed as follows: - """ - The MIT License - - Copyright (c) 2012, 2014, 2015, 2016 Tatsuhiro Tsujikawa - Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors - - Permission is hereby granted, free of charge, to any person obtaining - a copy of this software and associated documentation files (the - "Software"), to deal in the Software without restriction, including - without limitation the rights to use, copy, modify, merge, publish, - distribute, sublicense, and/or sell copies of the Software, and to - permit persons to whom the Software is furnished to do so, subject to - the following conditions: - - The above copyright notice and this permission notice shall be - included in all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE - LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION - OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION - WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - """ - -- ngtcp2, located at deps/ngtcp2, is licensed as follows: - """ - The MIT License - - Copyright (c) 2016 ngtcp2 contributors - - Permission is hereby granted, free of charge, to any person obtaining - a copy of this software and associated documentation files (the - "Software"), to deal in the Software without restriction, including - without limitation the rights to use, copy, modify, merge, publish, - distribute, sublicense, and/or sell copies of the Software, and to - permit persons to whom the Software is furnished to do so, subject to - the following conditions: - - The above copyright notice and this permission notice shall be - included in all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE - LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION - OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION - WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - """ - -- nghttp3, located at deps/nghttp3, is licensed as follows: - """ - The MIT License - - Copyright (c) 2019 nghttp3 contributors - - Permission is hereby granted, free of charge, to any person obtaining - a copy of this software and associated documentation files (the - "Software"), to deal in the Software without restriction, including - without limitation the rights to use, copy, modify, merge, publish, - distribute, sublicense, and/or sell copies of the Software, and to - permit persons to whom the Software is furnished to do so, subject to - the following conditions: - - The above copyright notice and this permission notice shall be - included in all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE - LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION - OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION - WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - """ - -- node-inspect, located at deps/node-inspect, is licensed as follows: - """ - Copyright Node.js contributors. All rights reserved. - - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to - deal in the Software without restriction, including without limitation the - rights to use, copy, modify, merge, publish, distribute, sublicense, and/or - sell copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in - all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING - FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS - IN THE SOFTWARE. - """ - -- large_pages, located at src/large_pages, is licensed as follows: - """ - Copyright (C) 2018 Intel Corporation - - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), - to deal in the Software without restriction, including without limitation - the rights to use, copy, modify, merge, publish, distribute, sublicense, - and/or sell copies of the Software, and to permit persons to whom - the Software is furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included - in all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES - OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, - ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE - OR OTHER DEALINGS IN THE SOFTWARE. - """ - -- caja, located at lib/internal/freeze_intrinsics.js, is licensed as follows: - """ - Adapted from SES/Caja - Copyright (C) 2011 Google Inc. - Copyright (C) 2018 Agoric - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - """ - -- brotli, located at deps/brotli, is licensed as follows: - """ - Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors. - - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to deal - in the Software without restriction, including without limitation the rights - to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in - all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - THE SOFTWARE. - """ - -- HdrHistogram, located at deps/histogram, is licensed as follows: - """ - The code in this repository code was Written by Gil Tene, Michael Barker, - and Matt Warren, and released to the public domain, as explained at - http://creativecommons.org/publicdomain/zero/1.0/ - - For users of this code who wish to consume it under the "BSD" license - rather than under the public domain or CC0 contribution text mentioned - above, the code found under this directory is *also* provided under the - following license (commonly referred to as the BSD 2-Clause License). This - license does not detract from the above stated release of the code into - the public domain, and simply represents an additional license granted by - the Author. - - ----------------------------------------------------------------------------- - ** Beginning of "BSD 2-Clause License" text. ** - - Copyright (c) 2012, 2013, 2014 Gil Tene - Copyright (c) 2014 Michael Barker - Copyright (c) 2014 Matt Warren - All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE - LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF - THE POSSIBILITY OF SUCH DAMAGE. - """ - -- highlight.js, located at doc/api_assets/highlight.pack.js, is licensed as follows: - """ - BSD 3-Clause License - - Copyright (c) 2006, Ivan Sagalaev. - All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. - - * Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - * Neither the name of the copyright holder nor the names of its - contributors may be used to endorse or promote products derived from - this software without specific prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE - FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR - SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER - CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - """ - -- node-heapdump, located at src/heap_utils.cc, is licensed as follows: - """ - ISC License - - Copyright (c) 2012, Ben Noordhuis - - Permission to use, copy, modify, and/or distribute this software for any - purpose with or without fee is hereby granted, provided that the above - copyright notice and this permission notice appear in all copies. - - THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF - OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - - === src/compat.h src/compat-inl.h === - - ISC License - - Copyright (c) 2014, StrongLoop Inc. - - Permission to use, copy, modify, and/or distribute this software for any - purpose with or without fee is hereby granted, provided that the above - copyright notice and this permission notice appear in all copies. - - THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF - OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - """ - -- rimraf, located at lib/internal/fs/rimraf.js, is licensed as follows: - """ - The ISC License - - Copyright (c) Isaac Z. Schlueter and Contributors - - Permission to use, copy, modify, and/or distribute this software for any - purpose with or without fee is hereby granted, provided that the above - copyright notice and this permission notice appear in all copies. - - THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR - IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - """ - -- uvwasi, located at deps/uvwasi, is licensed as follows: - """ - MIT License - - Copyright (c) 2019 Colin Ihrig and Contributors - - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to deal - in the Software without restriction, including without limitation the rights - to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in all - copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - SOFTWARE. - """ - -XX. React -MIT License - -Copyright (c) Facebook, Inc. and its affiliates. - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - -XXI. Roboto Font -Apache License -Font data copyright Google 2012 - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - License shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - Licensor shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - Legal Entity shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - control means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - You (or Your) shall mean an individual or Legal Entity - exercising permissions granted by this License. - - Source form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - Object form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - Work shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - Derivative Works shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - Contribution shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, submitted - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as Not a Contribution. - - Contributor shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a NOTICE text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an AS IS BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets [] - replaced with your own identifying information. (Dont include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same printed page as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed under the Apache License, Version 2.0 (the License); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an AS IS BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - -XXII. Flatbuffers -https://github.com/google/flatbuffers - -Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - -XXIII. cpp-httplib -The MIT License (MIT) - -Copyright (c) 2017 yhirose - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - - -XXIV.OpenSSL toolkit - The OpenSSL toolkit stays under a double license, i.e. both the conditions of - the OpenSSL License and the original SSLeay license apply to the toolkit. - See below for the actual license texts. - - OpenSSL License - --------------- - -/* ==================================================================== - * Copyright (c) 1998-2019 The OpenSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" - * - * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * openssl-core@openssl.org. - * - * 5. Products derived from this software may not be called "OpenSSL" - * nor may "OpenSSL" appear in their names without prior written - * permission of the OpenSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the OpenSSL Project - * for use in the OpenSSL Toolkit (http://www.openssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - * This product includes cryptographic software written by Eric Young - * (eay@cryptsoft.com). This product includes software written by Tim - * Hudson (tjh@cryptsoft.com). - * - */ - - Original SSLeay License - ----------------------- - -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] - */ - -XXV. Libcurl -COPYRIGHT AND PERMISSION NOTICE - -Copyright (c) 1996 - 2021, Daniel Stenberg, daniel@haxx.se, and many contributors, see the THANKS file. - -All rights reserved. - -Permission to use, copy, modify, and distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -Except as contained in this notice, the name of a copyright holder shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Software without prior written authorization of the copyright holder. \ No newline at end of file diff --git a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/ThirdPartyNotices/ThirdPartySoftwareNotice.txt.meta b/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/ThirdPartyNotices/ThirdPartySoftwareNotice.txt.meta deleted file mode 100644 index 9771370..0000000 --- a/Assets/Mirror/Runtime/Transport/EpicOnlineTransport/ThirdPartyNotices/ThirdPartySoftwareNotice.txt.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: e51da2bfb9f30384d92d73279620bdb8 -TextScriptImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/NetworkManagerValuieHolder.cs b/Assets/NetworkManagerValuieHolder.cs new file mode 100644 index 0000000..512b4de --- /dev/null +++ b/Assets/NetworkManagerValuieHolder.cs @@ -0,0 +1,110 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using Mirror; +using System.Linq; +public struct PlayerObject +{ + public int connectionId; + public Transform playerGhost; + public Transform playerBody; +} + +public class NetworkManagerValuieHolder : NetworkBehaviour +{ + + public UserInfo userInfo; + + public readonly SyncList playerObjectList = new SyncList(); + + public override void OnStartClient() + { + playerObjectList.Callback += OnInventoryUpdated; + + // Process initial SyncList payload + for (int index = 0; index < playerObjectList.Count; index++) + OnInventoryUpdated(SyncList.Operation.OP_ADD, index, new PlayerObject(), playerObjectList[index]); + } + + void OnInventoryUpdated(SyncList.Operation op, int index, PlayerObject oldPlayerObject, PlayerObject newPlayerObject) + { + switch (op) + { + case SyncList.Operation.OP_ADD: + // index is where it was added into the list + // newItem is the new item + break; + case SyncList.Operation.OP_INSERT: + // index is where it was inserted into the list + // newItem is the new item + break; + case SyncList.Operation.OP_REMOVEAT: + // index is where it was removed from the list + // oldItem is the item that was removed + break; + case SyncList.Operation.OP_SET: + // index is of the item that was changed + // oldItem is the previous value for the item at the index + // newItem is the new value for the item at the index + break; + case SyncList.Operation.OP_CLEAR: + // list got cleared + break; + } + } + + + [ClientRpc] + public void AddPlayerObject(int connectionId, Transform playerGhost, Transform playerBody) + { + Debug.Log("AddPlayerObject"); + + + try + { + playerObjectList.Add(new PlayerObject() { connectionId = connectionId, playerGhost = playerGhost, playerBody = playerBody }); + } + catch (System.Exception e) + { + Debug.LogError($"Error: there is a proble with AddPlayerObject, {e}"); + } + finally + { + Debug.Log($"added object with connection id {connectionId}"); + } + } + + [ClientRpc] + /// + /// Searches for a specific connection Id and removes the entry associated with it + /// + /// + /// + public void RemovePlayerObject(int connectionId) + { + for (int playerObject = 0; playerObject < playerObjectList.Count; playerObject++) + { + if (playerObjectList[playerObject].connectionId == connectionId) + { + playerObjectList.RemoveAt(playerObject); + break; + } + } + } + + [ClientRpc] + public void UpdatePlayerObject(int connectionId, Transform playerGhost, Transform playerBody) + { + for (int playerObject = 0; playerObject < playerObjectList.Count; playerObject++) + { + if (playerObjectList[playerObject].connectionId == connectionId) + { + RemovePlayerObject(connectionId); + AddPlayerObject(connectionId, playerGhost, playerBody); + + break; + } + } + } + +} diff --git a/Assets/NetworkManagerValuieHolder.cs.meta b/Assets/NetworkManagerValuieHolder.cs.meta new file mode 100644 index 0000000..48394fc --- /dev/null +++ b/Assets/NetworkManagerValuieHolder.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 29f6d8a4bb1bce6439239f41fbc82f88 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/ParentCheck.cs b/Assets/ParentCheck.cs new file mode 100644 index 0000000..2378a80 --- /dev/null +++ b/Assets/ParentCheck.cs @@ -0,0 +1,21 @@ +using Chronity; +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class ParentCheck : MonoBehaviour +{ + void Awake() + { + Debug.Log("checking parrents"); + if (transform.parent == null) + { + Debug.Log("No parent, deleting object"); + GameObject.Destroy(gameObject); + } + else + { + Debug.Log("Parent is " + transform.parent.name); + } + } +} diff --git a/Assets/ParentCheck.cs.meta b/Assets/ParentCheck.cs.meta new file mode 100644 index 0000000..ecf596e --- /dev/null +++ b/Assets/ParentCheck.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6c0e30f5736166943a9a159b1285d717 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/PlayerList.cs b/Assets/PlayerList.cs new file mode 100644 index 0000000..bb69f65 --- /dev/null +++ b/Assets/PlayerList.cs @@ -0,0 +1,38 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using TMPro; + +public class PlayerList : MonoBehaviour +{ + [SerializeField] + GameObject playerPrefab; + [SerializeField] + Transform contnent; + + NetworkManagerValuieHolder _networkManagerValuieHolder; + List _players; + + + private void Start() + { + _networkManagerValuieHolder = GetComponentInParent(); + _players = new List(); + } + + // Update is called once per frame + void Update() + { + for (int player = 0; _players.Count < _networkManagerValuieHolder.playerObjectList.Count; player++) + { + GameObject playerObject; + playerObject = Instantiate(playerPrefab, contnent); + _players.Add(playerObject); + + TMP_Text text; + text = playerObject.GetComponentInChildren(); + text.text = $"Player [{_networkManagerValuieHolder.playerObjectList[player].connectionId}]"; + } + + } +} diff --git a/Assets/PlayerList.cs.meta b/Assets/PlayerList.cs.meta new file mode 100644 index 0000000..e974463 --- /dev/null +++ b/Assets/PlayerList.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 5f0c7c4bdb12e9a49b8ae35111b5f67a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/Android.meta b/Assets/Plugins/Android.meta deleted file mode 100644 index 25cc54f..0000000 --- a/Assets/Plugins/Android.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 881dbc8a5f4bbbe42852a1e06a4074b9 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Plugins/Android/gradleTemplate.properties b/Assets/Plugins/Android/gradleTemplate.properties deleted file mode 100644 index c723b9b..0000000 --- a/Assets/Plugins/Android/gradleTemplate.properties +++ /dev/null @@ -1,6 +0,0 @@ -org.gradle.jvmargs=-Xmx**JVM_HEAP_SIZE**M -org.gradle.parallel=true -android.enableR8=**MINIFY_WITH_R_EIGHT** -android.useAndroidX=true -unityStreamingAssets=.unity3d**STREAMING_ASSETS** -**ADDITIONAL_PROPERTIES** diff --git a/Assets/Plugins/Android/gradleTemplate.properties.meta b/Assets/Plugins/Android/gradleTemplate.properties.meta deleted file mode 100644 index 42a4d4b..0000000 --- a/Assets/Plugins/Android/gradleTemplate.properties.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 5fb6e3933e1f64d41913e1657d7206e8 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Plugins/Android/libs.meta b/Assets/Plugins/Android/libs.meta deleted file mode 100644 index 5706210..0000000 --- a/Assets/Plugins/Android/libs.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 091af36645b0e7c4eb54936e07aa9fbc -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Plugins/Android/libs/arm64-v8a.meta b/Assets/Plugins/Android/libs/arm64-v8a.meta deleted file mode 100644 index 7086c49..0000000 --- a/Assets/Plugins/Android/libs/arm64-v8a.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 72554f9634fddad4a9ac14ad467f4145 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Plugins/Android/libs/arm64-v8a/libc++_shared.so b/Assets/Plugins/Android/libs/arm64-v8a/libc++_shared.so deleted file mode 100644 index 9a530c8..0000000 Binary files a/Assets/Plugins/Android/libs/arm64-v8a/libc++_shared.so and /dev/null differ diff --git a/Assets/Plugins/Android/libs/arm64-v8a/libc++_shared.so.meta b/Assets/Plugins/Android/libs/arm64-v8a/libc++_shared.so.meta deleted file mode 100644 index 9b11860..0000000 --- a/Assets/Plugins/Android/libs/arm64-v8a/libc++_shared.so.meta +++ /dev/null @@ -1,70 +0,0 @@ -fileFormatVersion: 2 -guid: 8841dda7400f3bd4699d61fdf0365792 -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - : Any - second: - enabled: 0 - settings: - Exclude Android: 0 - Exclude Editor: 1 - Exclude Linux64: 1 - Exclude OSXUniversal: 1 - Exclude Win: 1 - Exclude Win64: 1 - - first: - Android: Android - second: - enabled: 1 - settings: - CPU: ARM64 - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - CPU: AnyCPU - DefaultValueInitialized: true - OS: AnyOS - - first: - Standalone: Linux64 - second: - enabled: 0 - settings: - CPU: None - - first: - Standalone: OSXUniversal - second: - enabled: 0 - settings: - CPU: None - - first: - Standalone: Win - second: - enabled: 0 - settings: - CPU: None - - first: - Standalone: Win64 - second: - enabled: 0 - settings: - CPU: None - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Plugins/Android/libs/armeabi-v7a.meta b/Assets/Plugins/Android/libs/armeabi-v7a.meta deleted file mode 100644 index 7e75484..0000000 --- a/Assets/Plugins/Android/libs/armeabi-v7a.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: ea698b9e77482454cb3d2a16b0fc4007 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Plugins/Android/libs/armeabi-v7a/libc++_shared.so b/Assets/Plugins/Android/libs/armeabi-v7a/libc++_shared.so deleted file mode 100644 index f364d17..0000000 Binary files a/Assets/Plugins/Android/libs/armeabi-v7a/libc++_shared.so and /dev/null differ diff --git a/Assets/Plugins/Android/libs/armeabi-v7a/libc++_shared.so.meta b/Assets/Plugins/Android/libs/armeabi-v7a/libc++_shared.so.meta deleted file mode 100644 index c784602..0000000 --- a/Assets/Plugins/Android/libs/armeabi-v7a/libc++_shared.so.meta +++ /dev/null @@ -1,70 +0,0 @@ -fileFormatVersion: 2 -guid: 45456d6216ef2064cbbb8eff5ee5fa2b -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - : Any - second: - enabled: 0 - settings: - Exclude Android: 0 - Exclude Editor: 1 - Exclude Linux64: 1 - Exclude OSXUniversal: 1 - Exclude Win: 1 - Exclude Win64: 1 - - first: - Android: Android - second: - enabled: 1 - settings: - CPU: ARMv7 - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - CPU: AnyCPU - DefaultValueInitialized: true - OS: AnyOS - - first: - Standalone: Linux64 - second: - enabled: 0 - settings: - CPU: None - - first: - Standalone: OSXUniversal - second: - enabled: 0 - settings: - CPU: None - - first: - Standalone: Win - second: - enabled: 0 - settings: - CPU: None - - first: - Standalone: Win64 - second: - enabled: 0 - settings: - CPU: None - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Plugins/Android/libs/eos-sdk.aar b/Assets/Plugins/Android/libs/eos-sdk.aar deleted file mode 100644 index 77f04eb..0000000 Binary files a/Assets/Plugins/Android/libs/eos-sdk.aar and /dev/null differ diff --git a/Assets/Plugins/Android/libs/eos-sdk.aar.meta b/Assets/Plugins/Android/libs/eos-sdk.aar.meta deleted file mode 100644 index 20195b2..0000000 --- a/Assets/Plugins/Android/libs/eos-sdk.aar.meta +++ /dev/null @@ -1,32 +0,0 @@ -fileFormatVersion: 2 -guid: fe052f86271116547876ab6f1b369487 -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Android: Android - second: - enabled: 1 - settings: {} - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Plugins/Android/mainTemplate.gradle b/Assets/Plugins/Android/mainTemplate.gradle deleted file mode 100644 index 17c5fd5..0000000 --- a/Assets/Plugins/Android/mainTemplate.gradle +++ /dev/null @@ -1,52 +0,0 @@ - -apply plugin: 'com.android.library' -**APPLY_PLUGINS** - -dependencies { - implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation 'androidx.appcompat:appcompat:1.1.0' - implementation 'androidx.constraintlayout:constraintlayout:1.1.3' - implementation 'androidx.security:security-crypto:1.0.0-rc01' - implementation(name: 'eos-sdk', ext:'aar') -**DEPS**} - -android { - compileSdkVersion **APIVERSION** - buildToolsVersion '**BUILDTOOLS**' - - compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 - } - - defaultConfig { - minSdkVersion **MINSDKVERSION** - targetSdkVersion **TARGETSDKVERSION** - ndk { - abiFilters **ABIFILTERS** - } - versionCode **VERSIONCODE** - versionName '**VERSIONNAME**' - consumerProguardFiles 'proguard-unity.txt'**USER_PROGUARD** - - externalNativeBuild { - cmake { - cppFlags "" - arguments "-DANDROID_STL=c++_shared", - "-DANDROID_ARM_NEON=TRUE" - } - } - } - - lintOptions { - abortOnError false - } - - aaptOptions { - noCompress = ['.ress', '.resource', '.obb'] + unityStreamingAssets.tokenize(', ') - ignoreAssetsPattern = "!.svn:!.git:!.ds_store:!*.scc:.*:!CVS:!thumbs.db:!picasa.ini:!*~" - }**PACKAGING_OPTIONS** -}**REPOSITORIES** -**IL_CPP_BUILD_SETUP** -**SOURCE_BUILD_SETUP** -**EXTERNAL_SOURCES** diff --git a/Assets/Plugins/Android/mainTemplate.gradle.meta b/Assets/Plugins/Android/mainTemplate.gradle.meta deleted file mode 100644 index 8f6bc6b..0000000 --- a/Assets/Plugins/Android/mainTemplate.gradle.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 4daaba4580b359445b23f89ed1e0fff5 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Resources/Character/Controller/NetworkCharacter/NetworkPlayerGhost.prefab b/Assets/Resources/Character/Controller/NetworkCharacter/NetworkPlayerGhost.prefab index 52e16a3..cb75501 100644 --- a/Assets/Resources/Character/Controller/NetworkCharacter/NetworkPlayerGhost.prefab +++ b/Assets/Resources/Character/Controller/NetworkCharacter/NetworkPlayerGhost.prefab @@ -40,7 +40,7 @@ GameObject: serializedVersion: 6 m_Component: - component: {fileID: 5298965799069515053} - - component: {fileID: 5298965799069515046} + - component: {fileID: 9060809219817885018} - component: {fileID: 5298965799069515051} - component: {fileID: 5298965799069515054} - component: {fileID: 5193012033669626433} @@ -71,7 +71,7 @@ Transform: m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &5298965799069515046 +--- !u!114 &9060809219817885018 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -80,13 +80,13 @@ MonoBehaviour: m_GameObject: {fileID: 5298965799069515057} m_Enabled: 1 m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 495cd3a0a3a33904ab3473618f482aa4, type: 3} + m_Script: {fileID: 11500000, guid: e31737bd5bd14e54cb8b837df5656c7b, type: 3} m_Name: m_EditorClassIdentifier: characterRigidbody: {fileID: 5298965799069515050} cameraTransform: {fileID: 0} playerInfoData: {fileID: 0} - playerStateEnforcrer: {fileID: 0} + playerStateEnforcrer: {fileID: 5193012033669626433} playerStateMachine: {fileID: 5298965799069515051} playerInputReceiver: {fileID: 5298965799069515054} gameManager: {fileID: 0} @@ -131,15 +131,12 @@ MonoBehaviour: m_EditorClassIdentifier: syncMode: 0 syncInterval: 0.1 - _playerGhostReffrenceHub: {fileID: 5298965799069515046} + _playerGhostReffrenceHub: {fileID: 9060809219817885018} _playerInfoData: {fileID: 0} _aliveBodyPrefab: {fileID: 2012543120969203556, guid: d657db29cb7fd7c49a774f0d99fefb78, type: 3} _spectatorBodyPrefab: {fileID: 1135382073684329176, guid: b615186e864b86245a99d5258f67ae27, type: 3} - playerObjectList: - - playerGhost: {fileID: 0} - playerBody: {fileID: 0} --- !u!54 &5298965799069515050 Rigidbody: m_ObjectHideFlags: 0 diff --git a/Assets/Resources/Character/Controller/NetworkCharacter/NetworkedAlive.prefab b/Assets/Resources/Character/Controller/NetworkCharacter/NetworkedAlive.prefab index 95ac622..61aeaf7 100644 --- a/Assets/Resources/Character/Controller/NetworkCharacter/NetworkedAlive.prefab +++ b/Assets/Resources/Character/Controller/NetworkCharacter/NetworkedAlive.prefab @@ -901,16 +901,15 @@ GameObject: serializedVersion: 6 m_Component: - component: {fileID: 2012543120969203555} - - component: {fileID: 2774461514372533717} - - component: {fileID: 7159894118658290477} + - component: {fileID: 1122485652432015870} - component: {fileID: 2012543120969203567} - component: {fileID: 5998557319319874545} - component: {fileID: 2835173981838146917} - component: {fileID: 1269850959387019397} - component: {fileID: 2716202054029851332} - component: {fileID: 7738513814173773324} - - component: {fileID: 7874455332287569041} - component: {fileID: 5228559917914550197} + - component: {fileID: -2632659586440853265} m_Layer: 3 m_Name: NetworkedAlive m_TagString: Player @@ -935,7 +934,7 @@ Transform: m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &2774461514372533717 +--- !u!114 &1122485652432015870 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -944,30 +943,13 @@ MonoBehaviour: m_GameObject: {fileID: 2012543120969203556} m_Enabled: 1 m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 4a3c4a8867cd2f64e9f17bd9abc1f72a, type: 3} + m_Script: {fileID: 11500000, guid: e2f15370edceb3b43ac91e3342926cd7, type: 3} m_Name: m_EditorClassIdentifier: characterMovementConfig: {fileID: 2012543120969203567} - characterStateMachine: {fileID: 0} - characterHover: {fileID: 0} - characterStateChanger: {fileID: 0} ---- !u!114 &7159894118658290477 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2012543120969203556} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: d2065225f7daf0247af0ecc3bd961814, type: 3} - m_Name: - m_EditorClassIdentifier: - aliveNetworkIdentity: {fileID: 5228559917914550197} - networkCharacterMovementConfig: {fileID: 0} - networkCharacterStateMachine: {fileID: 0} - networkCharacterHover: {fileID: 0} - networkCharacterStateChanger: {fileID: 0} + characterStateMachine: {fileID: 1269850959387019397} + characterHover: {fileID: 5998557319319874545} + characterStateChanger: {fileID: 2716202054029851332} --- !u!114 &2012543120969203567 MonoBehaviour: m_ObjectHideFlags: 0 @@ -990,10 +972,10 @@ MonoBehaviour: jumpForce: 3 standingColliderPosition: 0.07 standingColliderHight: 0.6 - standingColliderRadius: 0 + standingColliderRadius: 0.4 crouchedColliderPosition: 0.24 crouchedColliderHight: 0.4 - crouchedColliderRadius: 0 + crouchedColliderRadius: 0.4 idleDrag: 10 moveDrag: 5 inAirDrag: 1 @@ -1018,6 +1000,17 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 056c12f3d440f8546b9ac56f7a99ddc5, type: 3} m_Name: m_EditorClassIdentifier: + syncMode: 0 + syncInterval: 0.1 + _capsuleCastHight: 0.22 + _capsuleCastRadius: 0.35 + _aliveReffrenceHub: {fileID: 1122485652432015870} + _groundCheckOrigin: {fileID: 2012543120290741375} + _layerMask: + serializedVersion: 2 + m_Bits: 576 + currentHoverHight: 1.3 + _capsuleMesh: {fileID: 10208, guid: 0000000000000000e000000000000000, type: 0} --- !u!114 &2835173981838146917 MonoBehaviour: m_ObjectHideFlags: 0 @@ -1030,6 +1023,14 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 46a49060ecbe7a24d94402a041be9c9a, type: 3} m_Name: m_EditorClassIdentifier: + syncMode: 0 + syncInterval: 0.1 + _playerGhostReffrenceHub: {fileID: 0} + _aliveReffrenceHub: {fileID: 1122485652432015870} + _autoB_Hop: 0 + _hoverForceMode: 0 + _moveForceMode: 0 + _characterDrag: 0 --- !u!114 &1269850959387019397 MonoBehaviour: m_ObjectHideFlags: 0 @@ -1067,6 +1068,8 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: ece0bc79b10211544962d17c6381cf1c, type: 3} m_Name: m_EditorClassIdentifier: + syncMode: 0 + syncInterval: 0.1 --- !u!114 &7738513814173773324 MonoBehaviour: m_ObjectHideFlags: 0 @@ -1079,31 +1082,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 513aa684d5e83a142bc0c9d18053daaf, type: 3} m_Name: m_EditorClassIdentifier: ---- !u!114 &7874455332287569041 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2012543120969203556} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: a5cc54e44c2fd3747a35f1e5089efab9, type: 3} - m_Name: - m_EditorClassIdentifier: - syncMode: 0 - syncInterval: 0.1 - characterState: 0 - movementState: 0 - ceilingDetected: 0 - eligibleForStep: 0 - onLadder: 0 - topOnLadder: 0 - bottomOnLadder: 0 - enteredLadderFromBottom: 0 - enteredLadderFromTop: 0 - topLadder: {fileID: 0} - bottomLadder: {fileID: 0} + _characterEnviormentCollider: {fileID: 2012543121633358167} --- !u!114 &5228559917914550197 MonoBehaviour: m_ObjectHideFlags: 0 @@ -1121,6 +1100,18 @@ MonoBehaviour: visible: 0 m_AssetId: d657db29cb7fd7c49a774f0d99fefb78 hasSpawned: 0 +--- !u!114 &-2632659586440853265 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2012543120969203556} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 6c0e30f5736166943a9a159b1285d717, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1 &2012543121125054948 GameObject: m_ObjectHideFlags: 0 diff --git a/Assets/Scenes/Initialization.unity b/Assets/Scenes/Initialization.unity index 7ca6e7a..182d91e 100644 --- a/Assets/Scenes/Initialization.unity +++ b/Assets/Scenes/Initialization.unity @@ -123,6 +123,79 @@ NavMeshSettings: debug: m_Flags: 0 m_NavMeshData: {fileID: 0} +--- !u!1 &102986419 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 102986422} + - component: {fileID: 102986421} + - component: {fileID: 102986420} + m_Layer: 5 + m_Name: SteamAvatar + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &102986420 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 102986419} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1344c3c82d62a2a41a3576d8abb8e3ea, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Texture: {fileID: 0} + m_UVRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 +--- !u!222 &102986421 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 102986419} + m_CullTransparentMesh: 1 +--- !u!224 &102986422 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 102986419} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 6.5618863} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 984279548} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 571.6973, y: 321.5732} + m_SizeDelta: {x: 100, y: 100} + m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &112465024 GameObject: m_ObjectHideFlags: 0 @@ -216,44 +289,13 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 4 + m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0, y: 0} ---- !u!1 &130938898 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 130938899} - m_Layer: 0 - m_Name: '# Stuff' - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &130938899 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 130938898} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: -12.274981, y: 6.8673854, z: -11.890483} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 0} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &536071250 GameObject: m_ObjectHideFlags: 0 @@ -284,7 +326,7 @@ Transform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 5 + m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &536071252 MonoBehaviour: @@ -344,7 +386,7 @@ Transform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 3 + m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &800066350 MonoBehaviour: @@ -468,7 +510,7 @@ Transform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 1 + m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &963194229 MonoBehaviour: @@ -532,6 +574,8 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 1907ee57167c28b4797ca1e44f4761f5, type: 3} m_Name: m_EditorClassIdentifier: + userInfo: {fileID: 0} + userAvatar: {fileID: 102986420} --- !u!4 &984279548 Transform: m_ObjectHideFlags: 0 @@ -543,9 +587,10 @@ Transform: m_LocalPosition: {x: -5.6973567, y: -3.0732017, z: -6.5618863} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 - m_Children: [] + m_Children: + - {fileID: 102986422} m_Father: {fileID: 0} - m_RootOrder: 6 + m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1413757486 GameObject: @@ -578,7 +623,7 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 7 + m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} @@ -650,12 +695,10 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: fa0972236a1d4a24893e30da89668599, type: 3} m_Name: m_EditorClassIdentifier: - EOSManagerPrefab: {fileID: 2209092976737935735, guid: 023dc204246f92344887fd8ce2ea894c, - type: 3} - eOSManager: {fileID: 0} + encryptedAppTicketHexString: userInfo: {fileID: 11400000, guid: a4b2bf6c0f2b7a941a81dd2f76f0c095, type: 2} test: {fileID: 1413757488} - steamworks_manager: {fileID: 0} + steamworksManager: {fileID: 984279547} --- !u!4 &1843285935 Transform: m_ObjectHideFlags: 0 @@ -669,7 +712,7 @@ Transform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 2 + m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1843285936 MonoBehaviour: diff --git a/Assets/Scenes/MainMenu.unity b/Assets/Scenes/MainMenu.unity index 243598e..7ebaebb 100644 --- a/Assets/Scenes/MainMenu.unity +++ b/Assets/Scenes/MainMenu.unity @@ -208,14 +208,12 @@ GameObject: serializedVersion: 6 m_Component: - component: {fileID: 170579990} - - component: {fileID: 170579997} - component: {fileID: 170579998} - - component: {fileID: 170579999} - component: {fileID: 170579994} - component: {fileID: 170579992} - component: {fileID: 170579991} - component: {fileID: 170579995} - - component: {fileID: 170579996} + - component: {fileID: 170579999} m_Layer: 0 m_Name: NetworkManager m_TagString: Untagged @@ -234,7 +232,8 @@ Transform: m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 - m_Children: [] + m_Children: + - {fileID: 1389150342} m_Father: {fileID: 0} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -315,7 +314,8 @@ MonoBehaviour: spawnPrefabs: - {fileID: 2012543120969203556, guid: d657db29cb7fd7c49a774f0d99fefb78, type: 3} - {fileID: 1135382073684329176, guid: b615186e864b86245a99d5258f67ae27, type: 3} - _networkPresenceUtilities: {fileID: 170579999} + _networkManagerValuieHolder: {fileID: 1389150343} + _networkPresenceUtilities: {fileID: 1389150340} --- !u!114 &170579995 MonoBehaviour: m_ObjectHideFlags: 0 @@ -341,37 +341,6 @@ MonoBehaviour: debugLog: 0 statisticsGUI: 0 statisticsLog: 0 ---- !u!114 &170579996 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 170579985} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 9b91ecbcc199f4492b9a91e820070131, type: 3} - m_Name: - m_EditorClassIdentifier: - sceneId: 3568955504 - serverOnly: 0 - visible: 0 - m_AssetId: - hasSpawned: 0 ---- !u!114 &170579997 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 170579985} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 4493fd577a848724f97327338ae295ac, type: 3} - m_Name: - m_EditorClassIdentifier: - syncMode: 0 - syncInterval: 0.1 --- !u!114 &170579998 MonoBehaviour: m_ObjectHideFlags: 0 @@ -428,12 +397,13 @@ MonoBehaviour: m_GameObject: {fileID: 170579985} m_Enabled: 1 m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: a77b2fc8580a4eb4d8e781879796473c, type: 3} + m_Script: {fileID: 11500000, guid: 39adc6e09d5544ed955a50ce8600355a, type: 3} m_Name: m_EditorClassIdentifier: - syncMode: 0 - syncInterval: 0.1 - _gameEventDataSet: {fileID: 0} + visRange: 30 + rebuildInterval: 1 + checkMethod: 0 + showSlider: 0 --- !u!1 &248595333 GameObject: m_ObjectHideFlags: 0 @@ -955,80 +925,6 @@ MonoBehaviour: type: 3} m_DeselectOnBackgroundClick: 1 m_PointerBehavior: 0 ---- !u!1001 &935804059 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - m_TransformParent: {fileID: 0} - m_Modifications: - - target: {fileID: 3214688313764448385, guid: 91a2b3994bef78c4c960c08087b0b493, - type: 3} - propertyPath: m_RootOrder - value: 7 - objectReference: {fileID: 0} - - target: {fileID: 3214688313764448385, guid: 91a2b3994bef78c4c960c08087b0b493, - type: 3} - propertyPath: m_LocalPosition.x - value: 2.7515028 - objectReference: {fileID: 0} - - target: {fileID: 3214688313764448385, guid: 91a2b3994bef78c4c960c08087b0b493, - type: 3} - propertyPath: m_LocalPosition.y - value: 0.6396844 - objectReference: {fileID: 0} - - target: {fileID: 3214688313764448385, guid: 91a2b3994bef78c4c960c08087b0b493, - type: 3} - propertyPath: m_LocalPosition.z - value: -17.639381 - objectReference: {fileID: 0} - - target: {fileID: 3214688313764448385, guid: 91a2b3994bef78c4c960c08087b0b493, - type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 3214688313764448385, guid: 91a2b3994bef78c4c960c08087b0b493, - type: 3} - propertyPath: m_LocalRotation.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 3214688313764448385, guid: 91a2b3994bef78c4c960c08087b0b493, - type: 3} - propertyPath: m_LocalRotation.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 3214688313764448385, guid: 91a2b3994bef78c4c960c08087b0b493, - type: 3} - propertyPath: m_LocalRotation.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 3214688313764448385, guid: 91a2b3994bef78c4c960c08087b0b493, - type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 3214688313764448385, guid: 91a2b3994bef78c4c960c08087b0b493, - type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 3214688313764448385, guid: 91a2b3994bef78c4c960c08087b0b493, - type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 3214688313764448388, guid: 91a2b3994bef78c4c960c08087b0b493, - type: 3} - propertyPath: sceneId - value: 298270676 - objectReference: {fileID: 0} - - target: {fileID: 3214688313764448389, guid: 91a2b3994bef78c4c960c08087b0b493, - type: 3} - propertyPath: m_Name - value: TestPlayer - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: 91a2b3994bef78c4c960c08087b0b493, type: 3} --- !u!1 &944180868 GameObject: m_ObjectHideFlags: 0 @@ -1047,7 +943,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!114 &944180869 MonoBehaviour: m_ObjectHideFlags: 0 @@ -1551,6 +1447,89 @@ MonoBehaviour: m_ChildScaleWidth: 0 m_ChildScaleHeight: 0 m_ReverseArrangement: 0 +--- !u!1 &1389150339 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1389150342} + - component: {fileID: 1389150341} + - component: {fileID: 1389150343} + - component: {fileID: 1389150340} + m_Layer: 0 + m_Name: NetworkManagerSubComponents + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1389150340 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1389150339} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a77b2fc8580a4eb4d8e781879796473c, type: 3} + m_Name: + m_EditorClassIdentifier: + syncMode: 0 + syncInterval: 0.1 + _networkManager: {fileID: 170579994} + _gameEventManager: {fileID: 170579998} + _gameEventDataSet: {fileID: 0} +--- !u!114 &1389150341 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1389150339} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 9b91ecbcc199f4492b9a91e820070131, type: 3} + m_Name: + m_EditorClassIdentifier: + sceneId: 729942705 + serverOnly: 0 + visible: 0 + m_AssetId: + hasSpawned: 0 +--- !u!4 &1389150342 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1389150339} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 170579990} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1389150343 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1389150339} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 29f6d8a4bb1bce6439239f41fbc82f88, type: 3} + m_Name: + m_EditorClassIdentifier: + syncMode: 0 + syncInterval: 0.1 + userInfo: {fileID: 0} --- !u!1 &1439005499 GameObject: m_ObjectHideFlags: 0 diff --git a/Assets/Scripts/EOSManager.cs b/Assets/Scripts/EOSManager.cs deleted file mode 100644 index 62f182e..0000000 --- a/Assets/Scripts/EOSManager.cs +++ /dev/null @@ -1,64 +0,0 @@ -using System.Collections; -using System.Threading.Tasks; -using System.Threading; -using System.Collections.Generic; -using Mirror; -using UnityEngine; -using EpicTransport; -using UnityEngine.SceneManagement; - -public class EOSManager : EOSSDKComponent -{ - public NetworkManager networkManager; - - private void OnEnable() - { - DontDestroyOnLoad(this); - StartCoroutine("InitializationCheck"); - } - - - public void InitializeEOS(Epic.OnlineServices.Auth.LoginCredentialType loginCredentialType, Epic.OnlineServices.ExternalCredentialType externalCredentialType, string connectToken) - { - authInterfaceCredentialType = loginCredentialType; - connectInterfaceCredentialType = externalCredentialType; - SetConnectInterfaceCredentialToken(connectToken); - Debug.Log("Set token"); - if(connectToken.Length > 3) - Initialize(); - } - - [ContextMenu("Set NetworkAdress")] - public void SetNetworkAddress() - { - networkManager = FindObjectOfType(); - Debug.Log("DeviceID (ProductID) of host is : " + localUserProductIdString); - networkManager.networkAddress = localUserProductIdString; - - if (!Initialized) - Initialize(); - } - - IEnumerator InitializationCheck() - { - Debug.Log("Waiting for initialization"); - - - - while (true) - { - if (initialized) - { - SceneManager.LoadScene("MainMenu"); - Debug.Log("initialized"); - SetNetworkAddress(); - StopCoroutine("InitializationCheck"); - } - - yield return new WaitForSecondsRealtime(2); - } - - } - - -} \ No newline at end of file diff --git a/Assets/Scripts/EOSManager.cs.meta b/Assets/Scripts/EOSManager.cs.meta deleted file mode 100644 index 4d4a359..0000000 --- a/Assets/Scripts/EOSManager.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 016d8460ff2ae644db4fc92d25ce1a79 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Scripts/Epic_Login.cs b/Assets/Scripts/Epic_Login.cs deleted file mode 100644 index 7d49661..0000000 --- a/Assets/Scripts/Epic_Login.cs +++ /dev/null @@ -1,18 +0,0 @@ -using System.Collections; -using System.Collections.Generic; -using UnityEngine; - -public class Epic_Login : MonoBehaviour -{ - // Start is called before the first frame update - void Start() - { - - } - - // Update is called once per frame - void Update() - { - - } -} diff --git a/Assets/Scripts/Epic_Login.cs.meta b/Assets/Scripts/Epic_Login.cs.meta deleted file mode 100644 index 859d212..0000000 --- a/Assets/Scripts/Epic_Login.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 79329cc1bc15aec4ebba1bc65bd6a2c6 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Scripts/InitializationManager.cs b/Assets/Scripts/InitializationManager.cs index 9acc950..66a5ba3 100644 --- a/Assets/Scripts/InitializationManager.cs +++ b/Assets/Scripts/InitializationManager.cs @@ -13,20 +13,13 @@ public class InitializationManager : MonoBehaviour void OnEnable() { startArguments = Environment.GetCommandLineArgs(); - -#if !UNITY_EDITOR - PlatformLogin(); - AppMode(); -#endif - } -#if UNITY_EDITOR private void OnGUI() { if (GUILayout.Button("Log in with steam")) { - steamworks_Login.SteamEOSLogin(); + steamworks_Login.SteamLogin(); } /* @@ -35,7 +28,6 @@ public class InitializationManager : MonoBehaviour steamworks_Login.SteamLogin(); }*/ } -#endif #if !UNITY_EDITOR private void PlatformLogin() @@ -47,10 +39,7 @@ public class InitializationManager : MonoBehaviour switch (startArguments[1]) { case "-SteamLogin": - steamworks_Login.SteamEOSLogin(); - break; - case "-EpicLogin": - Debug.Log("Loging in with epic"); + steamworks_Login.SteamLogin(); break; case "-XboxLogin": Debug.Log("Loging in with xbox"); @@ -84,9 +73,4 @@ public class InitializationManager : MonoBehaviour } #endif - // Update is called once per frame - void Update() - { - - } } diff --git a/Assets/Scripts/Networking/NetworkPresenceUtilities.cs b/Assets/Scripts/Networking/NetworkPresenceUtilities.cs index f0738c6..aa4a2cd 100644 --- a/Assets/Scripts/Networking/NetworkPresenceUtilities.cs +++ b/Assets/Scripts/Networking/NetworkPresenceUtilities.cs @@ -6,21 +6,28 @@ using Mirror; public class NetworkPresenceUtilities : NetworkBehaviour { + [SerializeField] TTTSC_NetworkManager _networkManager; + [SerializeField] GameEventManager _gameEventManager; [SerializeField] GameEventDataSet _gameEventDataSet; private void Start() { - _networkManager = GetComponent(); - _gameEventManager = GetComponent(); + + _gameEventDataSet = Instantiate(new GameEventDataSet()); GameEventData _newEntry = new GameEventData(); + + } public void CreateDataSet(GameEventDataSet dataSet, string state, string gamemode, string map, string playersInGame, string maxPlayersInGame) { + if (!isClient) + return; + Debug.Log("Checing passed data"); @@ -52,7 +59,7 @@ public class NetworkPresenceUtilities : NetworkBehaviour // case 2: GameEventData gamemodeEntry = new GameEventData(); - gamemodeEntry.valueName = "presence_gamemode"; + gamemodeEntry.valueName = "presence_gamemode"; if (gamemode == null || gamemode == "null") { Debug.Log("no gamemode was passed"); @@ -122,10 +129,14 @@ public class NetworkPresenceUtilities : NetworkBehaviour //await Task.WhenAll(task); Debug.Log("all data has been successfully edited"); + } public void UpdateDataSetValue(GameEventDataSet dataSet, string valueName, string value) { + if (!isClient) + return; + Debug.Log("Checing passed data"); for (int data = 0; data < dataSet.gameEventData.Count; data++) @@ -140,21 +151,31 @@ public class NetworkPresenceUtilities : NetworkBehaviour break; } } + + } [Client] public void ClientEnterGame(string gamemode, string map, string playersInGame, string maxPlayersInGame) { + if (!isClient) + return; + Debug.Log("Checing passed data"); CreateDataSet(_gameEventDataSet, "presence_InGame", gamemode, map, playersInGame, maxPlayersInGame); _gameEventManager.TriggerGameEvent("EnterGame"); + + } [Client] public void ClientUpdatePresence(string valueName, string value) { + if (!isClient) + return; + UpdateDataSetValue(_gameEventDataSet, valueName, value); Debug.Log("Asking clients to update player count"); @@ -164,8 +185,11 @@ public class NetworkPresenceUtilities : NetworkBehaviour [Client] public void UpdatePresence(string valueName, string value) { + if (!isClient) + return; + UpdateDataSetValue(_gameEventDataSet, valueName, value); - + Debug.Log("Asking clients to update player count"); _gameEventManager.TriggerGameEvent("UpdatePlayerCount"); } diff --git a/Assets/Scripts/Networking/NetworkingUtilities.cs b/Assets/Scripts/Networking/NetworkingUtilities.cs deleted file mode 100644 index 0c5cb9d..0000000 --- a/Assets/Scripts/Networking/NetworkingUtilities.cs +++ /dev/null @@ -1,23 +0,0 @@ -using System.Collections; -using System.Collections.Generic; -using UnityEngine; -using Mirror; - -public class NetworkingUtilities : NetworkBehaviour -{ - - //public void SpawnAsChild(GameObject prefabToSpawn, NetworkIdentity parentClient, Quaternion rotation, GameObject parrent) - [ContextMenu("Spawn As Child")] - public void SpawnAsChild() - { - // generate a new unique assetId - //System.Guid newAssetId = System.Guid.NewGuid(); - //NetworkServer.Spawn(prefabToSpawn, parentClient.connectionToClient); - - - - // get the spawned object - Debug.Log(NetworkServer.spawned.Count); - } - -} diff --git a/Assets/Scripts/Networking/NetworkingUtilities.cs.meta b/Assets/Scripts/Networking/NetworkingUtilities.cs.meta deleted file mode 100644 index 700a61c..0000000 --- a/Assets/Scripts/Networking/NetworkingUtilities.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4493fd577a848724f97327338ae295ac -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Scripts/Player/Character/AliveReffrenceHub.cs b/Assets/Scripts/Player/Character/AliveReffrenceHub.cs index c638368..f9f92b6 100644 --- a/Assets/Scripts/Player/Character/AliveReffrenceHub.cs +++ b/Assets/Scripts/Player/Character/AliveReffrenceHub.cs @@ -1,12 +1,13 @@ using System.Collections; using System.Collections.Generic; using UnityEngine; -using Mirror; namespace TTTSC.Player.Character { public class AliveReffrenceHub : MonoBehaviour { + + public Controller.CharacterMovementConfig characterMovementConfig; public Controller.CharacterStateMachine characterStateMachine; public Controller.GroundCheck characterHover; diff --git a/Assets/Scripts/Player/Character/Controller/CharacterStateChanger.cs b/Assets/Scripts/Player/Character/Controller/CharacterStateChanger.cs index 1fdb1e1..9879024 100644 --- a/Assets/Scripts/Player/Character/Controller/CharacterStateChanger.cs +++ b/Assets/Scripts/Player/Character/Controller/CharacterStateChanger.cs @@ -1,12 +1,11 @@ using System.Collections; using System.Collections.Generic; using UnityEngine; -using Mirror; namespace TTTSC.Player.Character.Controller { [RequireComponent(typeof(CharacterStateMachine))] - public class CharacterStateChanger : NetworkBehaviour + public class CharacterStateChanger : MonoBehaviour { private PlayerGhostReffrenceHub _playerGhostReffrenceHub; private PlayerInputReceiver _playerInputReceiver; @@ -41,41 +40,28 @@ namespace TTTSC.Player.Character.Controller private void Update() { - if (isLocalPlayer) + + Debug.Log("I am the local player"); + + if (_crouchIsHeld && !_sprintIsPerforming) { - Debug.Log("I am the local player"); - - if (_crouchIsHeld && !_sprintIsPerforming) - { - CmdCrouch(); - } + _characterStateMachine.movementStates = CharacterStateMachine.MovementStates.Crouching; + } - if (_walkIsPerforming && !_crouchIsHeld && !_sprintIsPerforming) - _characterStateMachine.movementStates = CharacterStateMachine.MovementStates.Walking; + if (_walkIsPerforming && !_crouchIsHeld && !_sprintIsPerforming) + _characterStateMachine.movementStates = CharacterStateMachine.MovementStates.Walking; - if (_sprintIsPerforming && !_crouchIsHeld && _walkIsPerforming) - _characterStateMachine.movementStates = CharacterStateMachine.MovementStates.Sprinting; + if (_sprintIsPerforming && !_crouchIsHeld && _walkIsPerforming) + _characterStateMachine.movementStates = CharacterStateMachine.MovementStates.Sprinting; - if (!_walkIsPerforming && !_crouchIsHeld && !_sprintIsPerforming) - { - _characterStateMachine.movementStates = CharacterStateMachine.MovementStates.Idle; - } + if (!_walkIsPerforming && !_crouchIsHeld && !_sprintIsPerforming) + { + _characterStateMachine.movementStates = CharacterStateMachine.MovementStates.Idle; } } - [Command] - void CmdCrouch() - { - RpcCrouch(); - } - - [ClientRpc] - void RpcCrouch() - { - _characterStateMachine.movementStates = CharacterStateMachine.MovementStates.Crouching; - } } } diff --git a/Assets/Scripts/Player/Character/Controller/CinemachineObjectRotator.cs b/Assets/Scripts/Player/Character/Controller/CinemachineObjectRotator.cs index 5be37d1..4f12f29 100644 --- a/Assets/Scripts/Player/Character/Controller/CinemachineObjectRotator.cs +++ b/Assets/Scripts/Player/Character/Controller/CinemachineObjectRotator.cs @@ -54,7 +54,8 @@ namespace TTTSC.Player.Character.Controller { for (int i = 0; i < horizontalRotationTargets.Count; i++) { - horizontalRotationTargets[i].rotation = Quaternion.Euler(horizontalRotationTargets[i].up * rotationX); + if (horizontalRotationTargets[i] != null) + horizontalRotationTargets[i].rotation = Quaternion.Euler(horizontalRotationTargets[i].up * rotationX); } } break; diff --git a/Assets/Scripts/Player/Character/Controller/PlayerInputReceiver.cs b/Assets/Scripts/Player/Character/Controller/PlayerInputReceiver.cs index cafb660..665bfdd 100644 --- a/Assets/Scripts/Player/Character/Controller/PlayerInputReceiver.cs +++ b/Assets/Scripts/Player/Character/Controller/PlayerInputReceiver.cs @@ -19,25 +19,33 @@ namespace TTTSC.Player.Character.Controller #region SpectatorControls public event Action SpectatorScrollSpeedInputEvent; public event Action SpectatorFlyFastInputEvent, SpectatorFlySlowInputEvent, SpectatorFlyUpInputEvent, SpectatorFlyDownInputEvent; - + bool _spectatorSpeedUpIsHeld, _spectatorSlowDownIsHeld, _flyUpIsHeld, _flyDownIsHeld; #endregion public PlayerInputSender playerInputEvents; - private void Awake() + private void Start() { + Debug.Log("PlayerInputReceiver is still here"); + playerInputEvents = new PlayerInputSender(); playerInputEvents.Enable(); _networkIdentity = GetComponent(); - - - if (isServer) + + + if (isServerOnly) { _networkIdentity.AssignClientAuthority(_networkIdentity.connectionToClient); + Debug.LogWarning("I'm server, and I have assigned authority to client"); } + else if (isClientOnly) + { + Debug.LogWarning("I'm not server, so I'm probably a clien with authority, ... or maybe I'm a client but I'm not the one who has authority"); + } + // #region GlobalControls @@ -68,10 +76,15 @@ namespace TTTSC.Player.Character.Controller playerInputEvents.SpectatorControls.FlyDown.performed += SpectatorFlyDownInputReceiver; #endregion + + } private void OnDisable() { + if (playerInputEvents == null) + return; + playerInputEvents.Disable(); // @@ -99,7 +112,7 @@ namespace TTTSC.Player.Character.Controller #region SpectatorControls playerInputEvents.SpectatorControls.FlyFast.started -= SpectatorFlyFastInputReceiver; - playerInputEvents.SpectatorControls.FlySlow.started -= SpectatorFlySlowInputReceiver;; + playerInputEvents.SpectatorControls.FlySlow.started -= SpectatorFlySlowInputReceiver; ; playerInputEvents.SpectatorControls.FlyUp.started -= SpectatorFlyUpInputReceiver; playerInputEvents.SpectatorControls.FlyDown.performed -= SpectatorFlyDownInputReceiver; @@ -193,7 +206,7 @@ namespace TTTSC.Player.Character.Controller #region GlobalControls - + [Client] private void LookXInputReceiver(InputAction.CallbackContext ctx) { @@ -240,7 +253,7 @@ namespace TTTSC.Player.Character.Controller { MoveInputEvent?.Invoke(value, performing); } - + #endregion @@ -258,7 +271,7 @@ namespace TTTSC.Player.Character.Controller } } - + [Command] private void CmdSprintInput(bool performed) { @@ -269,7 +282,7 @@ namespace TTTSC.Player.Character.Controller #region CrouchInputReciver - + private void CrouchInputReceiver(InputAction.CallbackContext ctx) { float value = ctx.ReadValue(); @@ -285,7 +298,7 @@ namespace TTTSC.Player.Character.Controller #endregion #region JumpInputReciver - + [Client] private void JumpInputReceiver(InputAction.CallbackContext ctx) { @@ -304,7 +317,7 @@ namespace TTTSC.Player.Character.Controller { JumpInputEvent?.Invoke(performed); } - + #endregion @@ -324,7 +337,7 @@ namespace TTTSC.Player.Character.Controller CmdSpectatorFlyFast(FloatBool(value, "==", 1)); } } - + [Command] private void CmdSpectatorFlyFast(bool performed) { @@ -369,7 +382,7 @@ namespace TTTSC.Player.Character.Controller #endregion - + #region SpectatorFlyDown private void SpectatorFlyDownInputReceiver(InputAction.CallbackContext ctx) { @@ -384,7 +397,7 @@ namespace TTTSC.Player.Character.Controller } #endregion - + #endregion } } diff --git a/Assets/Scripts/Player/Character/Controller/PlayerInputSender.cs b/Assets/Scripts/Player/Character/Controller/PlayerInputSender.cs index 48fb1da..5d043fd 100644 --- a/Assets/Scripts/Player/Character/Controller/PlayerInputSender.cs +++ b/Assets/Scripts/Player/Character/Controller/PlayerInputSender.cs @@ -2,7 +2,7 @@ // // This code was auto-generated by com.unity.inputsystem:InputActionCodeGenerator // version 1.3.0 -// from Assets/Character/Controller/PlayerInputMap.inputactions +// from Assets/Resources/Character/Controller/PlayerInputMap.inputactions // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Assets/Scripts/Player/Character/PlayerGhostReffrenceHub.cs b/Assets/Scripts/Player/Character/PlayerGhostReffrenceHub.cs index b8f9986..aaf4492 100644 --- a/Assets/Scripts/Player/Character/PlayerGhostReffrenceHub.cs +++ b/Assets/Scripts/Player/Character/PlayerGhostReffrenceHub.cs @@ -1,3 +1,4 @@ +using System.Collections.Generic; using UnityEngine; namespace TTTSC.Player.Character @@ -8,6 +9,7 @@ namespace TTTSC.Player.Character public Rigidbody characterRigidbody; public Transform cameraTransform; public PlayerCharacterInfo.PlayerCharacterInfoData playerInfoData; + [Header("----------Scripts-----------")] public PlayerStateEnforcer playerStateEnforcrer; public PlayerStateMachine playerStateMachine; diff --git a/Assets/Scripts/Player/NetworkCharacter/NetworkAliveReffrenceHub.cs b/Assets/Scripts/Player/NetworkCharacter/NetworkAliveReffrenceHub.cs index d389407..4b8d23d 100644 --- a/Assets/Scripts/Player/NetworkCharacter/NetworkAliveReffrenceHub.cs +++ b/Assets/Scripts/Player/NetworkCharacter/NetworkAliveReffrenceHub.cs @@ -4,15 +4,13 @@ using UnityEngine; using Mirror; using TTTSC.Player.Character.Controller; -namespace TTTSC.Player.NetworkedCharacter +namespace TTTSC.Player.NetworkCharacter { public class NetworkAliveReffrenceHub : MonoBehaviour { - public NetworkIdentity aliveNetworkIdentity; - public CharacterMovementConfig networkCharacterMovementConfig; - public NetworkCharacterStateMachine networkCharacterStateMachine; - public NetworkCharacterHover networkCharacterHover; - public NetworkCharacterStateChanger networkCharacterStateChanger; + public CharacterMovementConfig characterMovementConfig; + public NetworkCharacterStateMachine characterStateMachine; + public NetworkCharacterHover characterHover; + public NetworkCharacterStateChanger characterStateChanger; } -} - +} \ No newline at end of file diff --git a/Assets/Scripts/Player/NetworkCharacter/NetworkAliveReffrenceHub.cs.meta b/Assets/Scripts/Player/NetworkCharacter/NetworkAliveReffrenceHub.cs.meta index 81c2bcd..626db6b 100644 --- a/Assets/Scripts/Player/NetworkCharacter/NetworkAliveReffrenceHub.cs.meta +++ b/Assets/Scripts/Player/NetworkCharacter/NetworkAliveReffrenceHub.cs.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: d2065225f7daf0247af0ecc3bd961814 +guid: e2f15370edceb3b43ac91e3342926cd7 MonoImporter: externalObjects: {} serializedVersion: 2 diff --git a/Assets/Scripts/Player/NetworkCharacter/NetworkCharacterHover.cs b/Assets/Scripts/Player/NetworkCharacter/NetworkCharacterHover.cs index e7d27ed..3ca880f 100644 --- a/Assets/Scripts/Player/NetworkCharacter/NetworkCharacterHover.cs +++ b/Assets/Scripts/Player/NetworkCharacter/NetworkCharacterHover.cs @@ -1,18 +1,121 @@ - using System.Collections; +using System.Collections; using System.Collections.Generic; using UnityEngine; +using Mirror; +using TTTSC.Player.Character; +using TTTSC.Player.Character.Controller; -public class NetworkCharacterHover : MonoBehaviour +namespace TTTSC.Player.NetworkCharacter { - // Start is called before the first frame update - void Start() + public class NetworkCharacterHover : NetworkBehaviour { - - } + [SerializeField] + float _capsuleCastHight, _capsuleCastRadius; - // Update is called once per frame - void Update() - { - + Vector3 _downVector; + + [SerializeField] + private NetworkAliveReffrenceHub _aliveReffrenceHub; + private CharacterMovementConfig _characterMovementConfig; + private NetworkCharacterStateMachine _characterStateMachine; + [SerializeField] + private Transform _groundCheckOrigin; + [SerializeField] + LayerMask _layerMask; + + public float hoverForce { get; private set; } + + public float currentHoverHight; + + RaycastHit _hoverRayHit; + + [SerializeField] + Mesh _capsuleMesh; + + bool _rayStatus; + + private void OnDrawGizmos() + { + + _characterMovementConfig = _aliveReffrenceHub.characterMovementConfig; + + + switch (_rayStatus) + { + case true: + Gizmos.color = Color.green; + break; + case false: + Gizmos.color = Color.red; + break; + } + + Gizmos.DrawMesh(_capsuleMesh, new Vector3(_groundCheckOrigin.position.x, (_groundCheckOrigin.position.y - _capsuleCastHight) - _hoverRayHit.distance, _groundCheckOrigin.position.z), Quaternion.identity, new Vector3(_capsuleCastRadius * 2, _capsuleCastHight / 2, _capsuleCastRadius * 2)); + + //Gizmos.DrawSphere(new Vector3(_groundCheckOrigin.position.x, (_capsuleCastHight / 2) + _groundCheckOrigin.position.y , _groundCheckOrigin.position.z), 0.5f); + //Gizmos.DrawSphere(new Vector3(_groundCheckOrigin.position.x, (-_capsuleCastHight / 2) + _groundCheckOrigin.position.y, _groundCheckOrigin.position.z), 0.5f); + + Gizmos.DrawLine(_groundCheckOrigin.transform.position, _groundCheckOrigin.transform.position + _downVector * _characterMovementConfig.groundCheckLength); + + + + } + + private void Awake() + { + _characterMovementConfig = _aliveReffrenceHub.characterMovementConfig; + _characterStateMachine = _aliveReffrenceHub.characterStateMachine; + } + + // Update is called once per frame + void FixedUpdate() + { + _downVector = transform.TransformDirection(Vector3.down); + + Vector3 characterVelocity = GetComponentInParent().velocity; + + _rayStatus = Physics.CapsuleCast(new Vector3(_groundCheckOrigin.position.x, (_capsuleCastHight / 2) + _groundCheckOrigin.position.y, _groundCheckOrigin.position.z), + new Vector3(_groundCheckOrigin.position.x, (-_capsuleCastHight / 2) + _groundCheckOrigin.position.y, _groundCheckOrigin.position.z), _capsuleCastRadius, _downVector, out _hoverRayHit, _characterMovementConfig.groundCheckLength, _layerMask); + + switch (_rayStatus) + { + case true: + + Vector3 otherObjectVelocity = Vector3.zero; + _characterStateMachine.characterState = NetworkCharacterStateMachine.CharacterStates.Grounded; + + Rigidbody otherRigidbody = _hoverRayHit.rigidbody; + + if (otherRigidbody != null) + { + otherObjectVelocity = otherRigidbody.velocity; + } + + float characterDirectionalVelocity = Vector3.Dot(_downVector, characterVelocity); + float otherObjectDirectionalVelocity = Vector3.Dot(_downVector, otherObjectVelocity); + + float realVelocity = characterDirectionalVelocity - otherObjectDirectionalVelocity; + + float characterHightDiffrence = _hoverRayHit.distance - currentHoverHight; + + hoverForce = (characterHightDiffrence * _characterMovementConfig.hoverStrenght) - (realVelocity * _characterMovementConfig.hoverDampening) * Time.deltaTime; + + + //Debug.Log("ray number " + ray + " found ground " + characterHightDiffrence); + + break; + + case false: + _characterStateMachine.characterState = NetworkCharacterStateMachine.CharacterStates.InAir; + + hoverForce = 0; + + //Debug.Log("ray number " + ray + " did not found ground"); + + break; + } + + } } } + diff --git a/Assets/Scripts/Player/NetworkCharacter/NetworkCharacterMover.cs b/Assets/Scripts/Player/NetworkCharacter/NetworkCharacterMover.cs index c1117a1..08f6a3c 100644 --- a/Assets/Scripts/Player/NetworkCharacter/NetworkCharacterMover.cs +++ b/Assets/Scripts/Player/NetworkCharacter/NetworkCharacterMover.cs @@ -1,18 +1,249 @@ using System.Collections; using System.Collections.Generic; using UnityEngine; +using Mirror; +using TTTSC.Player.Character; +using TTTSC.Player.Character.Controller; -public class NetworkCharacterMover : MonoBehaviour +namespace TTTSC.Player.NetworkCharacter { - // Start is called before the first frame update - void Start() + public class NetworkCharacterMover : NetworkBehaviour { + [SerializeField] + private NetworkPlayerGhostReffrenceHub _playerGhostReffrenceHub; - } + [SerializeField] + private NetworkAliveReffrenceHub _aliveReffrenceHub; + private PlayerStateMachine _playerStateMachine; + private NetworkPlayerStateEnforcer _playerStateEnforcer; + private NetworkCharacterStateMachine characterStateMachine; + private CharacterMovementConfig _characterMovementConfig; + private NetworkCharacterHover _characterHover; + private PlayerInputReceiver _playerInputReceiver; + private Rigidbody _characterRigidbody; + + + [SerializeField] + private bool _autoB_Hop; + + [SerializeField] + private ForceModes _hoverForceMode, _moveForceMode; + + [SerializeField] + private float _characterDrag; + + private float _jumpStageValue; + private bool _jumpInputHeld; + private bool _performingMoveInput; + private Vector3 _moveDirection; + + private void Start() + { + _playerGhostReffrenceHub = GetComponentInParent(); + _characterRigidbody = _playerGhostReffrenceHub.characterRigidbody; + _playerStateMachine = _playerGhostReffrenceHub.playerStateMachine; + _playerStateEnforcer = _playerGhostReffrenceHub.playerStateEnforcrer; + characterStateMachine = _aliveReffrenceHub.characterStateMachine; + _characterMovementConfig = _aliveReffrenceHub.characterMovementConfig; + _characterHover = _aliveReffrenceHub.characterHover; + _playerInputReceiver = _playerGhostReffrenceHub.playerInputReceiver; + + + _playerInputReceiver.MoveInputEvent += MoveInput; + _playerInputReceiver.JumpInputEvent += JumpInput; + + _characterRigidbody = _playerGhostReffrenceHub.characterRigidbody; + } + + private void OnDisable() + { + if (_playerInputReceiver != null) + { + _playerInputReceiver.MoveInputEvent -= MoveInput; + _playerInputReceiver.JumpInputEvent -= JumpInput; + } + } + + #region Input event listeners + + private void MoveInput(Vector2 moveDirection, bool performing) + { + _performingMoveInput = performing; + _moveDirection = new Vector2(moveDirection.x, moveDirection.y); + } + + //Remember to change jumpPower from 0 to some other number that preferably is in the positives and not negatives + private void JumpInput(bool performed) + { + _jumpInputHeld = performed; + } + + #endregion + + enum ForceModes + { + force, + acceleration, + impulse, + velocityChange + + } + + private void FixedUpdate() + { + + Vector3 downVector = transform.TransformDirection(Vector3.down); + + Drag(); + + switch (characterStateMachine.characterState) + { + case NetworkCharacterStateMachine.CharacterStates.Grounded: + if (characterStateMachine.movementState == NetworkCharacterStateMachine.MovementStates.Idle) + { + _characterDrag = _characterMovementConfig.idleDrag; + } + else + { + _characterDrag = _characterMovementConfig.moveDrag; + } + + Move(); + + Jump(); + + break; + case NetworkCharacterStateMachine.CharacterStates.InAir: + _characterDrag = _characterMovementConfig.inAirDrag; + InAirMove(); + + break; + } + + + _characterRigidbody.AddForce(_characterHover.hoverForce * downVector, ForceMode.VelocityChange); + + + } + + private void Drag() + { + float multiplier = 1.0f - _characterDrag * Time.fixedDeltaTime; + if (multiplier < 0.0f) multiplier = 0.0f; + + Vector3 newVelocity = new(_characterRigidbody.velocity.x * multiplier, _characterRigidbody.velocity.y, multiplier * _characterRigidbody.velocity.z); + + _characterRigidbody.velocity = newVelocity; + } + + private void Move() + { + switch (characterStateMachine.movementState) + { + case NetworkCharacterStateMachine.MovementStates.Walking: + Walking(); + break; + + case NetworkCharacterStateMachine.MovementStates.Crouching: + Crouching(); + break; + + case NetworkCharacterStateMachine.MovementStates.Sprinting: + Sprinting(); + break; + } + } + + private void InAirMove() + { + Vector3 movement = _moveDirection.x * Time.deltaTime * transform.right + _moveDirection.y * Time.deltaTime * transform.forward; + + Vector3 normalizedMovement = movement.normalized * _characterMovementConfig.airControlForce; + + Vector3 counterForce = -movement.normalized * _characterMovementConfig.airControlCounterForce; + + + + + if (characterStateMachine.movementState == NetworkCharacterStateMachine.MovementStates.Walking) + { + _characterRigidbody.AddForce(normalizedMovement, ForceMode.VelocityChange); + _characterRigidbody.AddForce(counterForce, ForceMode.VelocityChange); + } + + } + + private void Jump() + { + + switch (_autoB_Hop) + { + case true: + if (_jumpInputHeld && characterStateMachine.movementState != NetworkCharacterStateMachine.MovementStates.Crouching) + { + _characterRigidbody.velocity = new Vector3(_characterRigidbody.velocity.x, 0f, _characterRigidbody.velocity.z); + _characterRigidbody.AddForce(_characterMovementConfig.jumpForce * transform.up, ForceMode.VelocityChange); + } + break; + case false: + if (_jumpStageValue == 1 && characterStateMachine.movementState != NetworkCharacterStateMachine.MovementStates.Crouching) + { + _characterRigidbody.velocity = new Vector3(_characterRigidbody.velocity.x, 0f, _characterRigidbody.velocity.z); + _characterRigidbody.AddForce(_characterMovementConfig.jumpForce * transform.up, ForceMode.VelocityChange); + } + break; + + } + + + } + + private void Walking() + { + Vector3 movement = _moveDirection.x * Time.deltaTime * transform.right + _moveDirection.y * Time.deltaTime * transform.forward; + + Vector3 normalizedMovement = movement.normalized * _characterMovementConfig.moveForce; + + //Vector3 counterForce = -movement.normalized * _characterMovementConfig.moveCounterForce; + + _characterRigidbody.AddForce(normalizedMovement, ForceMode.VelocityChange); + //_characterRigidbody.AddForce(counterForce, ForceMode.VelocityChange); + } + + private void Crouching() + { + //bool switched; + + Vector3 movement = _moveDirection.x * Time.deltaTime * transform.right + _moveDirection.y * Time.deltaTime * transform.forward; + + Vector3 normalizedMovement = movement.normalized * _characterMovementConfig.crouchMoveForce; + + //Vector3 counterForce = -movement.normalized * _characterMovementConfig.crouchMoveCounterForce; + + /*(switch (switched) + { + case false: + _characterRigidbody.AddForce(_characterRigidbody.velocity, ForceMode.VelocityChange); + switched = true; + break; + }*/ + + _characterRigidbody.AddForce(normalizedMovement, ForceMode.VelocityChange); + //_characterRigidbody.AddForce(counterForce, ForceMode.VelocityChange); + } + + private void Sprinting() + { + + Vector3 movement = _moveDirection.x * Time.deltaTime * transform.right + _moveDirection.y * Time.deltaTime * transform.forward; + + Vector3 normalizedMovement = movement.normalized * _characterMovementConfig.sprintMoveForce; + + //Vector3 counterForce = -movement.normalized *_characterMovementConfig.sprintMoveCounterForce; + + _characterRigidbody.AddForce(normalizedMovement, ForceMode.VelocityChange); + //_characterRigidbody.AddForce(counterForce, ForceMode.VelocityChange); + } - // Update is called once per frame - void Update() - { - } } diff --git a/Assets/Scripts/Player/NetworkCharacter/NetworkCharacterStateChanger.cs b/Assets/Scripts/Player/NetworkCharacter/NetworkCharacterStateChanger.cs index ebc308c..b76e27b 100644 --- a/Assets/Scripts/Player/NetworkCharacter/NetworkCharacterStateChanger.cs +++ b/Assets/Scripts/Player/NetworkCharacter/NetworkCharacterStateChanger.cs @@ -5,21 +5,62 @@ using TTTSC.Player.Character.Controller; using TTTSC.Player.Character; using Mirror; -namespace TTTSC.Player.NetworkedCharacter +namespace TTTSC.Player.NetworkCharacter { - public class NetworkCharacterStateChanger : MonoBehaviour + public class NetworkCharacterStateChanger : NetworkBehaviour { - private PlayerGhostReffrenceHub _playerGhostReffrenceHub; + private NetworkIdentity _parentNetworkIdentity; + private NetworkIdentity _networkIdentity; + private NetworkPlayerGhostReffrenceHub _playerGhostReffrenceHub; private PlayerInputReceiver _playerInputReceiver; private NetworkCharacterStateMachine _networkCharacterStateMachine; - + private TTTSC_NetworkManager _networkManager; + private bool _walkIsPerforming, _crouchIsHeld, _sprintIsPerforming; private void Start() { - _playerGhostReffrenceHub = GetComponentInParent(); - _playerInputReceiver = _playerGhostReffrenceHub.playerInputReceiver; - _networkCharacterStateMachine = GetComponent(); + + // Get the player network manager, if unable to find network manager then print error to console + try + { + _networkManager = FindObjectOfType(); + } + catch (System.Exception e) + { + Debug.LogError($"Error, can't find network manager: {e}"); + } + + // Get the player ghost reffrence hub, if unable to find ghost reffrence hub then print error to console + try + { + _playerGhostReffrenceHub = GetComponentInParent(); + } + catch (System.Exception e) + { + Debug.LogError($"Error, can't find player ghost reffrence hub: {e}"); + } + + // Get the player input receiver, if unable to find input receiver then print error to console + try + { + _playerInputReceiver = _playerGhostReffrenceHub.playerInputReceiver; + } + catch (System.Exception e) + { + Debug.LogError($"Error, can't find player input receiver: {e}"); + } + + // try to get the network character state machine, if unable to find network character state machine print error to console + try + { + _networkCharacterStateMachine = GetComponent(); + } + catch (System.Exception e) + { + Debug.LogError($"Error, can't find network character state machine: {e}"); + } + _playerInputReceiver.MoveInputEvent += Walk; _playerInputReceiver.CrouchInputEvent += Crouch; _playerInputReceiver.SprintInputEvent += Sprint; @@ -42,21 +83,42 @@ namespace TTTSC.Player.NetworkedCharacter private void Update() { - - if (_crouchIsHeld && !_sprintIsPerforming) - _networkCharacterStateMachine.movementState = NetworkCharacterStateMachine.MovementStates.Crouching; - - if (_walkIsPerforming && !_crouchIsHeld && !_sprintIsPerforming) - _networkCharacterStateMachine.movementState = NetworkCharacterStateMachine.MovementStates.Walking; - - if (_sprintIsPerforming && !_crouchIsHeld && _walkIsPerforming) - _networkCharacterStateMachine.movementState = NetworkCharacterStateMachine.MovementStates.Sprinting; - - - if (!_walkIsPerforming && !_crouchIsHeld && !_sprintIsPerforming) + if (hasAuthority) { - _networkCharacterStateMachine.movementState = NetworkCharacterStateMachine.MovementStates.Idle; + if (_crouchIsHeld && !_sprintIsPerforming) + { + Debug.Log("he is attempting to crouch"); + CmdCrouch(); + } + + if (_walkIsPerforming && !_crouchIsHeld && !_sprintIsPerforming) + _networkCharacterStateMachine.movementState = NetworkCharacterStateMachine.MovementStates.Walking; + + if (_sprintIsPerforming && !_crouchIsHeld && _walkIsPerforming) + _networkCharacterStateMachine.movementState = NetworkCharacterStateMachine.MovementStates.Sprinting; + + + if (!_walkIsPerforming && !_crouchIsHeld && !_sprintIsPerforming) + { + _networkCharacterStateMachine.movementState = NetworkCharacterStateMachine.MovementStates.Idle; + } } + + } + + + [Command] + void CmdCrouch() + { + Debug.Log("CrouchCmd"); + RpcCrouch(); + } + + [ClientRpc] + void RpcCrouch() + { + Debug.Log("CrouchRpc"); + _networkCharacterStateMachine.movementState = NetworkCharacterStateMachine.MovementStates.Crouching; } } } diff --git a/Assets/Scripts/Player/NetworkCharacter/NetworkCharacterStateEnforcer.cs b/Assets/Scripts/Player/NetworkCharacter/NetworkCharacterStateEnforcer.cs index 302f7a5..4f8b42a 100644 --- a/Assets/Scripts/Player/NetworkCharacter/NetworkCharacterStateEnforcer.cs +++ b/Assets/Scripts/Player/NetworkCharacter/NetworkCharacterStateEnforcer.cs @@ -1,18 +1,58 @@ using System.Collections; using System.Collections.Generic; +using TTTSC.Player.Character.Controller; using UnityEngine; -public class NetworkCharacterStateEnforcer : MonoBehaviour +namespace TTTSC.Player.NetworkCharacter { - // Start is called before the first frame update - void Start() + public class NetworkCharacterStateEnforcer : MonoBehaviour { - - } - // Update is called once per frame - void Update() - { - + [SerializeField] + private Transform _characterEnviormentCollider; + private CharacterMovementConfig _characterMovementConfig; + private NetworkCharacterHover _characterHover; + private NetworkCharacterStateMachine _characterStateMachine; + + + // Start is called before the first frame update + void Start() + { + _characterMovementConfig = GetComponent(); + _characterHover = GetComponent(); + _characterStateMachine = GetComponent(); + } + + // Update is called once per frame + void FixedUpdate() + { + switch (_characterStateMachine.movementState) + { + default: + CharacterDefault(); + break; + case NetworkCharacterStateMachine.MovementStates.Crouching: + CharacterCrouch(); + break; + } + } + + private void CharacterCrouch() + { + _characterHover.currentHoverHight = _characterMovementConfig.crouchHeight; + + _characterEnviormentCollider.localScale = new Vector3(_characterMovementConfig.crouchedColliderRadius, _characterMovementConfig.crouchedColliderHight, _characterMovementConfig.crouchedColliderRadius); + _characterEnviormentCollider.localPosition = _characterMovementConfig.crouchedColliderPosition * transform.up; + } + + private void CharacterDefault() + { + _characterHover.currentHoverHight = _characterMovementConfig.desieredHoverHight; + + _characterEnviormentCollider.localScale = new Vector3(_characterMovementConfig.standingColliderRadius, _characterMovementConfig.standingColliderHight, _characterMovementConfig.standingColliderRadius); + _characterEnviormentCollider.localPosition = _characterMovementConfig.standingColliderPosition * transform.up; + + } } } + diff --git a/Assets/Scripts/Player/NetworkCharacter/NetworkCharacterStateMachine.cs b/Assets/Scripts/Player/NetworkCharacter/NetworkCharacterStateMachine.cs index 919b508..7f61b67 100644 --- a/Assets/Scripts/Player/NetworkCharacter/NetworkCharacterStateMachine.cs +++ b/Assets/Scripts/Player/NetworkCharacter/NetworkCharacterStateMachine.cs @@ -1,7 +1,7 @@ using UnityEngine; using Mirror; -namespace TTTSC.Player.NetworkedCharacter +namespace TTTSC.Player.NetworkCharacter { public class NetworkCharacterStateMachine : NetworkBehaviour { diff --git a/Assets/Scripts/Player/NetworkCharacter/NetworkPlayerGhostReffrenceHub.cs b/Assets/Scripts/Player/NetworkCharacter/NetworkPlayerGhostReffrenceHub.cs new file mode 100644 index 0000000..10619aa --- /dev/null +++ b/Assets/Scripts/Player/NetworkCharacter/NetworkPlayerGhostReffrenceHub.cs @@ -0,0 +1,30 @@ +using System.Collections.Generic; +using TTTSC.Player.Character; +using TTTSC.Player.Character.Controller; +using TTTSC.Player.Character.PlayerCharacterInfo; +using UnityEngine; + +namespace TTTSC.Player.NetworkCharacter +{ + public class NetworkPlayerGhostReffrenceHub : MonoBehaviour + { + [Header("-----------Misc------------")] + public Rigidbody characterRigidbody; + public Transform cameraTransform; + public PlayerCharacterInfoData playerInfoData; + + [Header("----------Scripts-----------")] + public NetworkPlayerStateEnforcer playerStateEnforcrer; + public PlayerStateMachine playerStateMachine; + public PlayerInputReceiver playerInputReceiver; + public GameManager gameManager; + public RoundSystem roundSystem; + + void Awake() + { + playerInfoData = ScriptableObject.CreateInstance(); + gameManager = FindObjectOfType(); + roundSystem = FindObjectOfType(); + } + } +} \ No newline at end of file diff --git a/Assets/Scripts/Player/NetworkCharacter/NetworkPlayerGhostReffrenceHub.cs.meta b/Assets/Scripts/Player/NetworkCharacter/NetworkPlayerGhostReffrenceHub.cs.meta new file mode 100644 index 0000000..bfabea1 --- /dev/null +++ b/Assets/Scripts/Player/NetworkCharacter/NetworkPlayerGhostReffrenceHub.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e31737bd5bd14e54cb8b837df5656c7b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Player/NetworkCharacter/NetworkPlayerStateEnforcer.cs b/Assets/Scripts/Player/NetworkCharacter/NetworkPlayerStateEnforcer.cs index d2e8412..5ded413 100644 --- a/Assets/Scripts/Player/NetworkCharacter/NetworkPlayerStateEnforcer.cs +++ b/Assets/Scripts/Player/NetworkCharacter/NetworkPlayerStateEnforcer.cs @@ -1,16 +1,17 @@ using System.Collections; using System.Collections.Generic; +using System.Linq; using UnityEngine; using TTTSC.Player.Character; using TTTSC.Player.Character.PlayerCharacterInfo; using Mirror; -namespace TTTSC.Player.NetworkedCharacter +namespace TTTSC.Player.NetworkCharacter { public class NetworkPlayerStateEnforcer : NetworkBehaviour { [SerializeField] - private PlayerGhostReffrenceHub _playerGhostReffrenceHub; + private NetworkPlayerGhostReffrenceHub _playerGhostReffrenceHub; [SerializeField] private PlayerCharacterInfoData _playerInfoData; private Rigidbody _characterRigidbody; @@ -21,22 +22,24 @@ namespace TTTSC.Player.NetworkedCharacter [Tooltip("assign the 'dead' prefab here")] private GameObject _spectatorBodyPrefab; [SerializeField] - private List playerObjectList; - - [System.Serializable] - private class PlayerObject - { - public GameObject playerGhost; - public GameObject playerBody; - } + private NetworkManagerValuieHolder _networkManagerValuieHolder; private GameObject _aliveBody; private GameObject _spectatorBody; private void Start() { - _playerInfoData = _playerGhostReffrenceHub.playerInfoData; + try + { + _playerInfoData = _playerGhostReffrenceHub.playerInfoData; + } + catch (System.Exception e) + { + Debug.LogError($"Error: unable to set _networkManager, {e}"); + } _characterRigidbody = _playerGhostReffrenceHub.characterRigidbody; + _networkManagerValuieHolder = FindObjectOfType(); + CheckPlayerState(); } @@ -47,22 +50,26 @@ namespace TTTSC.Player.NetworkedCharacter public void CheckPlayerState() { - switch (_playerInfoData.currentPlayerPlayState) + if (isServer) { - case PlayerCharacterInfoData.playerPlayStates.Spectator: - SpawnSpectatorPlayerBody(); - _characterRigidbody.useGravity = false; - break; - case PlayerCharacterInfoData.playerPlayStates.Alive: - SpawnAlivePlayerBody(); - _characterRigidbody.useGravity = true; - break; + switch (_playerInfoData.currentPlayerPlayState) + { + case PlayerCharacterInfoData.playerPlayStates.Spectator: + SpawnSpectatorPlayerBody(); + _characterRigidbody.useGravity = false; + break; + case PlayerCharacterInfoData.playerPlayStates.Alive: + SpawnAlivePlayerBody(); + _characterRigidbody.useGravity = true; + break; + } } } - public void SpawnAlivePlayerBody() + [ClientRpc] + private void SpawnAlivePlayerBody() { - _playerInfoData.helth = 100; + if (_spectatorBody != null) { Destroy(_spectatorBody); @@ -71,23 +78,61 @@ namespace TTTSC.Player.NetworkedCharacter if (_aliveBody == null) { + + Debug.Log("Intantiated alive body"); _aliveBody = Instantiate(_aliveBodyPrefab, transform.position, transform.rotation, transform); - NetworkServer.Spawn(_aliveBody); - GameObject _networkAliveBody = NetworkServer.spawned[(uint)NetworkServer.spawned.Count].gameObject; - - Debug.Log("spawned alive body with ID " + _aliveBody.GetComponent().netId); - - if (_networkAliveBody != null) + if (isServer) { - _networkAliveBody.transform.parent = transform; + NetworkServer.Spawn(_aliveBody, connectionToClient); + Debug.Log("_aliveBody spawned by server"); } + if (_networkManagerValuieHolder == null) + { + Debug.LogError("_networkManagerValuieHolder is null"); + return; + } + else if (_networkManagerValuieHolder.playerObjectList.Count! > 0) + { + Debug.LogError("playerObjectList has no entries, aborting action"); + return; + } + + for (int playerObject = 0; playerObject < _networkManagerValuieHolder.playerObjectList.Count; playerObject++) + { + if (_networkManagerValuieHolder.playerObjectList[playerObject].connectionId == connectionToClient.connectionId) + { + PlayerObject currentPlayerObject = _networkManagerValuieHolder.playerObjectList[playerObject]; + + currentPlayerObject.playerGhost = transform; + currentPlayerObject.playerBody = _aliveBody.transform; + + break; + } + } + } + else + { + if (_playerInfoData == null) + { + Debug.LogError("_playerInfoData is a null reference"); + return; + } + + _playerInfoData.helth = 100; } } + [ClientRpc] public void SpawnSpectatorPlayerBody() { + + if (!isServer) + return; + + + _playerInfoData.helth = 100; if (_aliveBody != null) { Destroy(_aliveBody); @@ -98,8 +143,28 @@ namespace TTTSC.Player.NetworkedCharacter if (_spectatorBody == null) { + + Debug.Log("Intantiated alive body"); _spectatorBody = Instantiate(_spectatorBodyPrefab, transform.position, transform.rotation, transform); - NetworkServer.Spawn(_spectatorBody); + + if (isServer) + { + NetworkServer.Spawn(_spectatorBody, connectionToClient); + Debug.Log("_spectator spawned by server"); + } + + for (int playerObject = 0; playerObject < _networkManagerValuieHolder.playerObjectList.Count; playerObject++) + { + if (_networkManagerValuieHolder.playerObjectList[playerObject].connectionId == connectionToClient.connectionId) + { + PlayerObject currentPlayerObject = _networkManagerValuieHolder.playerObjectList[playerObject]; + + currentPlayerObject.playerGhost = transform; + currentPlayerObject.playerBody = _spectatorBody.transform; + + break; + } + } } } diff --git a/Assets/Scripts/Steam_Login.cs b/Assets/Scripts/Steam_Login.cs index 767b67e..9cca080 100644 --- a/Assets/Scripts/Steam_Login.cs +++ b/Assets/Scripts/Steam_Login.cs @@ -11,22 +11,20 @@ using UnityEngine.SceneManagement; public class Steam_Login : MonoBehaviour { [SerializeField] - public GameObject EOSManagerPrefab; - [SerializeField] - private EOSManager eOSManager; private string encryptedAppTicketHexString; private byte[] encryptedAppTicket; public UserInfo userInfo; [SerializeField] private RawImage test; [SerializeField] - private SteamworksManager steamworks_manager; + private SteamworksManager steamworksManager; - public void SteamEOSLogin() + public void SteamLogin() { SteamClient.Init(1860180, true); - + userInfo = Instantiate(new UserInfo()); + GetAppToken(); } @@ -34,64 +32,12 @@ public class Steam_Login : MonoBehaviour { encryptedAppTicket = await SteamUser.RequestEncryptedAppTicketAsync(); - //Debug.Log(encryptedAppTicket); - - StringBuilder sb = new StringBuilder(); - encryptedAppTicketHexString = BitConverter.ToString(encryptedAppTicket); encryptedAppTicketHexString = encryptedAppTicketHexString.Replace("-",""); await Task.Yield(); - SetEOSUserInfo(); - } - - public async void SetEOSUserInfo() - { - userInfo.userName = SteamClient.Name; - userInfo.usedPlatform = "steam"; - var avatar = await SteamFriends.GetLargeAvatarAsync(SteamClient.SteamId); - test.texture = AvatarToTexture2D(avatar.Value); - - await Task.Yield(); - userInfo.profilePicture = test.texture; - - - SceneManager.LoadScene("MainMenu"); - - - //StartCoroutine("CreateEOSManager"); - } - - public Texture2D AvatarToTexture2D(Steamworks.Data.Image image) - { - // Create a new Texture2D - Texture2D texture = new Texture2D((int)image.Width, (int)image.Height); - - - // Flip image - for (int x = 0; x < image.Width; x++) - { - for (int y = 0; y < image.Height; y++) - { - var pixels = image.GetPixel(x, y); - texture.SetPixel(x, (int)image.Height - y, new UnityEngine.Color(pixels.r / 255.0f, pixels.g / 255.0f, pixels.b / 255.0f, pixels.a / 255.0f)); - } - } - - texture.Apply(); - return texture; - } - - private IEnumerator CreateEOSManager() - { - Debug.Log("waiting for app ticket"); - yield return new WaitForSeconds(3); - Debug.Log("attempting login"); - Instantiate(EOSManagerPrefab); - - eOSManager = FindObjectOfType(); - eOSManager.InitializeEOS(Epic.OnlineServices.Auth.LoginCredentialType.ExternalAuth, Epic.OnlineServices.ExternalCredentialType.SteamAppTicket,encryptedAppTicketHexString); + steamworksManager.SetUserInfo(userInfo); } } \ No newline at end of file diff --git a/Assets/Scripts/SteamworksManager.cs b/Assets/Scripts/SteamworksManager.cs index ab69df3..b42ab62 100644 --- a/Assets/Scripts/SteamworksManager.cs +++ b/Assets/Scripts/SteamworksManager.cs @@ -1,15 +1,58 @@ using System.Collections; using System.Collections.Generic; -using UnityEngine; +using System.Text; +using System; +using System.Threading.Tasks; using Steamworks; +using UnityEngine; +using UnityEngine.UI; +using UnityEngine.SceneManagement; public class SteamworksManager : MonoBehaviour { + public UserInfo userInfo; + public RawImage userAvatar; + private void OnEnable() { DontDestroyOnLoad(this); } + public Texture2D AvatarToTexture2D(Steamworks.Data.Image image) + { + // Create a new Texture2D + Texture2D texture = new Texture2D((int)image.Width, (int)image.Height); + + + // Flip image + for (int x = 0; x < image.Width; x++) + { + for (int y = 0; y < image.Height; y++) + { + var pixels = image.GetPixel(x, y); + texture.SetPixel(x, (int)image.Height - y, new UnityEngine.Color(pixels.r / 255.0f, pixels.g / 255.0f, pixels.b / 255.0f, pixels.a / 255.0f)); + } + } + + texture.Apply(); + return texture; + } + + public async void SetUserInfo(UserInfo _userInfo) + { + userInfo = _userInfo; + + userInfo.userName = SteamClient.Name; + var avatar = await SteamFriends.GetLargeAvatarAsync(SteamClient.SteamId); + userAvatar.texture = AvatarToTexture2D(avatar.Value); + userInfo.steamId = $"{SteamClient.SteamId}"; + await Task.Yield(); + userInfo.profilePicture = userAvatar.texture; + + + SceneManager.LoadScene("MainMenu"); + } + // Start is called before the first frame update public void SetSteamPresance(string valueName, string presanceText) { @@ -17,9 +60,4 @@ public class SteamworksManager : MonoBehaviour SteamFriends.SetRichPresence(valueName, presanceText); } - // Update is called once per frame - void Update() - { - - } } diff --git a/Assets/Scripts/TTTSC_NetworkManager.cs b/Assets/Scripts/TTTSC_NetworkManager.cs index b82b18f..bef2095 100644 --- a/Assets/Scripts/TTTSC_NetworkManager.cs +++ b/Assets/Scripts/TTTSC_NetworkManager.cs @@ -2,10 +2,13 @@ using System.Collections; using System.Collections.Generic; using UnityEngine; using Mirror; -using TTTSC.Player.NetworkedCharacter; +using TTTSC.Player.NetworkCharacter; public class TTTSC_NetworkManager : NetworkManager { + [SerializeField] + NetworkManagerValuieHolder _networkManagerValuieHolder; + [SerializeField] NetworkPresenceUtilities _networkPresenceUtilities; @@ -23,12 +26,22 @@ public class TTTSC_NetworkManager : NetworkManager { base.OnServerAddPlayer(conn); + Debug.Log($"Server added a new player, there is now {numPlayers} players"); + + AddPlayerObject(conn); + //update player count _networkPresenceUtilities.UpdatePresence("presence_playersInGame", numPlayers.ToString()); Debug.Log("ther is " + numPlayers + " players in game"); } + private void AddPlayerObject(NetworkConnection conn) + { + _networkManagerValuieHolder.AddPlayerObject(conn.connectionId, null, null); + Debug.Log($"Added player object with connection id {conn.connectionId}"); + } + public override void OnServerDisconnect(NetworkConnection conn) { base.OnServerDisconnect(conn); @@ -36,9 +49,26 @@ public class TTTSC_NetworkManager : NetworkManager //update player count _networkPresenceUtilities.UpdatePresence("presence_playersInGame", numPlayers.ToString()); + RemovePlayerObject(conn); + + for (int playerObject = 0; playerObject < _networkManagerValuieHolder.playerObjectList.Count; playerObject++) + { + if (_networkManagerValuieHolder.playerObjectList[playerObject].connectionId == conn.connectionId) + { + _networkManagerValuieHolder.playerObjectList.RemoveAt(playerObject); + break; + } + } + Debug.Log("Server disconnected"); } + private void RemovePlayerObject(NetworkConnection conn) + { + _networkManagerValuieHolder.RemovePlayerObject(conn.connectionId); + Debug.Log($"Removed player object with connection id {conn.connectionId}"); + } + } diff --git a/Assets/Scripts/UserInfo.cs b/Assets/Scripts/UserInfo.cs index 8460b33..447857f 100644 --- a/Assets/Scripts/UserInfo.cs +++ b/Assets/Scripts/UserInfo.cs @@ -7,7 +7,6 @@ using UnityEngine; public class UserInfo : ScriptableObject { public string userName; - public string ID; - public string usedPlatform; + public string steamId; public Texture profilePicture; } diff --git a/Assets/TestPlayer.cs b/Assets/TestPlayer.cs deleted file mode 100644 index cff0e69..0000000 --- a/Assets/TestPlayer.cs +++ /dev/null @@ -1,29 +0,0 @@ -using System.Collections; -using System.Collections.Generic; -using UnityEngine; -using Mirror; -using TTTSC.Player.Character.Controller; - -public class TestPlayer : MonoBehaviour -{ - public PlayerInputReceiver playerInputReceiver; - - // Start is called before the first frame update - void Start() - { - playerInputReceiver = GetComponent(); - - playerInputReceiver.CrouchInputEvent += test; - } - - private void test(bool test) - { - Debug.Log("test"); - } - - // Update is called once per frame - void Update() - { - - } -} diff --git a/Assets/TestPlayer.cs.meta b/Assets/TestPlayer.cs.meta deleted file mode 100644 index a8ee225..0000000 --- a/Assets/TestPlayer.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ba1f1475f4d92434f8892cc2196b6de5 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/TestPlayer.prefab b/Assets/TestPlayer.prefab deleted file mode 100644 index 3a70207..0000000 --- a/Assets/TestPlayer.prefab +++ /dev/null @@ -1,80 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!1 &3214688313764448389 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 3214688313764448385} - - component: {fileID: 3214688313764448390} - - component: {fileID: 3214688313764448391} - - component: {fileID: 3214688313764448388} - m_Layer: 0 - m_Name: TestPlayer - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &3214688313764448385 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3214688313764448389} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 2.7515028, y: 0.6396844, z: -17.639381} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 0} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &3214688313764448390 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3214688313764448389} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 777675542a674f346bb9629fd1eb84bc, type: 3} - m_Name: - m_EditorClassIdentifier: - syncMode: 0 - syncInterval: 0.1 ---- !u!114 &3214688313764448391 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3214688313764448389} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: ba1f1475f4d92434f8892cc2196b6de5, type: 3} - m_Name: - m_EditorClassIdentifier: - playerInputReceiver: {fileID: 3214688313764448390} ---- !u!114 &3214688313764448388 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3214688313764448389} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 9b91ecbcc199f4492b9a91e820070131, type: 3} - m_Name: - m_EditorClassIdentifier: - sceneId: 0 - serverOnly: 0 - visible: 0 - m_AssetId: - hasSpawned: 0 diff --git a/Assets/TestPlayer.prefab.meta b/Assets/TestPlayer.prefab.meta deleted file mode 100644 index 2084cbd..0000000 --- a/Assets/TestPlayer.prefab.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 91a2b3994bef78c4c960c08087b0b493 -PrefabImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/manifest.json b/Packages/manifest.json index 02f3430..3fec009 100644 --- a/Packages/manifest.json +++ b/Packages/manifest.json @@ -4,6 +4,8 @@ "com.adrenak.unimic": "1.0.3", "com.adrenak.univoice": "1.1.4", "com.domybest.mybox": "https://github.com/Deadcows/MyBox.git", + "com.lms.version": "1.1.2", + "com.sushiwaumai.chronity": "1.0.0", "com.unity.cinemachine": "2.8.4", "com.unity.ide.rider": "3.0.14", "com.unity.ide.visualstudio": "2.0.15", @@ -48,7 +50,8 @@ "com.unity.modules.video": "1.0.0", "com.unity.modules.vr": "1.0.0", "com.unity.modules.wind": "1.0.0", - "com.unity.modules.xr": "1.0.0" + "com.unity.modules.xr": "1.0.0", + "com.tayx.graphy": "3.0.2" }, "scopedRegistries": [ { @@ -59,11 +62,15 @@ "com.adrenak.unimic", "com.adrenak.univoice", "com.charcolle.unityeditormemo", + "com.cysharp.slnmerge", + "com.lms.version", "com.openupm", + "com.sushiwaumai.chronity", + "com.tayx.graphy", "com.wooshii.hierarchydecorator", "com.yasirkula.ingamedebugconsole", "dev.chsxf.autoscene" ] } ] -} +} \ No newline at end of file diff --git a/Packages/packages-lock.json b/Packages/packages-lock.json index c8e0241..34579e4 100644 --- a/Packages/packages-lock.json +++ b/Packages/packages-lock.json @@ -35,6 +35,27 @@ }, "hash": "efa34f54bc82efb74dcad7b6d3387a521afe611d" }, + "com.lms.version": { + "version": "1.1.2", + "depth": 0, + "source": "registry", + "dependencies": {}, + "url": "https://package.openupm.com" + }, + "com.sushiwaumai.chronity": { + "version": "1.0.0", + "depth": 0, + "source": "registry", + "dependencies": {}, + "url": "https://package.openupm.com" + }, + "com.tayx.graphy": { + "version": "3.0.2", + "depth": 0, + "source": "registry", + "dependencies": {}, + "url": "https://package.openupm.com" + }, "com.unity.burst": { "version": "1.6.5", "depth": 1, diff --git a/ProjectSettings/EditorBuildSettings.asset b/ProjectSettings/EditorBuildSettings.asset index 99a6d08..51dc4c2 100644 --- a/ProjectSettings/EditorBuildSettings.asset +++ b/ProjectSettings/EditorBuildSettings.asset @@ -20,4 +20,6 @@ EditorBuildSettings: - enabled: 1 path: Assets/Scenes/MovementTesting.unity guid: 00d316b566f339348a002fdf69b7fdf3 - m_configObjects: {} + m_configObjects: + com.unity.input.settings: {fileID: 11400000, guid: 57459ac3439177e4291e185cb9d40806, + type: 2} diff --git a/ProjectSettings/EditorSettings.asset b/ProjectSettings/EditorSettings.asset index c8da44e..5118513 100644 --- a/ProjectSettings/EditorSettings.asset +++ b/ProjectSettings/EditorSettings.asset @@ -3,8 +3,7 @@ --- !u!159 &1 EditorSettings: m_ObjectHideFlags: 0 - serializedVersion: 9 - m_ExternalVersionControlSupport: Visible Meta Files + serializedVersion: 11 m_SerializationMode: 2 m_LineEndingsForNewScripts: 2 m_DefaultBehaviorMode: 0 @@ -12,24 +11,32 @@ EditorSettings: m_PrefabUIEnvironment: {fileID: 0} m_SpritePackerMode: 0 m_SpritePackerPaddingPower: 1 + m_Bc7TextureCompressor: 0 m_EtcTextureCompressorBehavior: 1 m_EtcTextureFastCompressor: 1 m_EtcTextureNormalCompressor: 2 m_EtcTextureBestCompressor: 4 m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd;asmdef;asmref;rsp m_ProjectGenerationRootNamespace: - m_CollabEditorSettings: - inProgressEnabled: 1 m_EnableTextureStreamingInEditMode: 1 m_EnableTextureStreamingInPlayMode: 1 m_AsyncShaderCompilation: 1 + m_CachingShaderPreprocessor: 1 + m_PrefabModeAllowAutoSave: 1 m_EnterPlayModeOptionsEnabled: 0 m_EnterPlayModeOptions: 3 - m_ShowLightmapResolutionOverlay: 1 + m_GameObjectNamingDigits: 1 + m_GameObjectNamingScheme: 0 + m_AssetNamingUsesSpace: 1 m_UseLegacyProbeSampleCount: 0 + m_SerializeInlineMappingsOnOneLine: 0 + m_DisableCookiesInLightmapper: 1 m_AssetPipelineMode: 1 + m_RefreshImportMode: 0 m_CacheServerMode: 0 m_CacheServerEndpoint: m_CacheServerNamespacePrefix: default m_CacheServerEnableDownload: 1 m_CacheServerEnableUpload: 1 + m_CacheServerEnableAuth: 0 + m_CacheServerEnableTls: 0 diff --git a/ProjectSettings/PackageManagerSettings.asset b/ProjectSettings/PackageManagerSettings.asset index f7f40ec..8491b3a 100644 --- a/ProjectSettings/PackageManagerSettings.asset +++ b/ProjectSettings/PackageManagerSettings.asset @@ -33,7 +33,11 @@ MonoBehaviour: - com.adrenak.unimic - com.adrenak.univoice - com.charcolle.unityeditormemo + - com.cysharp.slnmerge + - com.lms.version - com.openupm + - com.sushiwaumai.chronity + - com.tayx.graphy - com.wooshii.hierarchydecorator - com.yasirkula.ingamedebugconsole - dev.chsxf.autoscene diff --git a/node_modules/.bin/color-support b/node_modules/.bin/color-support new file mode 100644 index 0000000..59e6506 --- /dev/null +++ b/node_modules/.bin/color-support @@ -0,0 +1,12 @@ +#!/bin/sh +basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") + +case `uname` in + *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;; +esac + +if [ -x "$basedir/node" ]; then + exec "$basedir/node" "$basedir/../color-support/bin.js" "$@" +else + exec node "$basedir/../color-support/bin.js" "$@" +fi diff --git a/node_modules/.bin/color-support.cmd b/node_modules/.bin/color-support.cmd new file mode 100644 index 0000000..005f9a5 --- /dev/null +++ b/node_modules/.bin/color-support.cmd @@ -0,0 +1,17 @@ +@ECHO off +GOTO start +:find_dp0 +SET dp0=%~dp0 +EXIT /b +:start +SETLOCAL +CALL :find_dp0 + +IF EXIST "%dp0%\node.exe" ( + SET "_prog=%dp0%\node.exe" +) ELSE ( + SET "_prog=node" + SET PATHEXT=%PATHEXT:;.JS;=;% +) + +endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\color-support\bin.js" %* diff --git a/node_modules/.bin/color-support.ps1 b/node_modules/.bin/color-support.ps1 new file mode 100644 index 0000000..f5c9fe4 --- /dev/null +++ b/node_modules/.bin/color-support.ps1 @@ -0,0 +1,28 @@ +#!/usr/bin/env pwsh +$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent + +$exe="" +if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) { + # Fix case when both the Windows and Linux builds of Node + # are installed in the same directory + $exe=".exe" +} +$ret=0 +if (Test-Path "$basedir/node$exe") { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & "$basedir/node$exe" "$basedir/../color-support/bin.js" $args + } else { + & "$basedir/node$exe" "$basedir/../color-support/bin.js" $args + } + $ret=$LASTEXITCODE +} else { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & "node$exe" "$basedir/../color-support/bin.js" $args + } else { + & "node$exe" "$basedir/../color-support/bin.js" $args + } + $ret=$LASTEXITCODE +} +exit $ret diff --git a/node_modules/.bin/is-ci b/node_modules/.bin/is-ci new file mode 100644 index 0000000..c9b0db4 --- /dev/null +++ b/node_modules/.bin/is-ci @@ -0,0 +1,12 @@ +#!/bin/sh +basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") + +case `uname` in + *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;; +esac + +if [ -x "$basedir/node" ]; then + exec "$basedir/node" "$basedir/../is-ci/bin.js" "$@" +else + exec node "$basedir/../is-ci/bin.js" "$@" +fi diff --git a/node_modules/.bin/is-ci.cmd b/node_modules/.bin/is-ci.cmd new file mode 100644 index 0000000..67e1e22 --- /dev/null +++ b/node_modules/.bin/is-ci.cmd @@ -0,0 +1,17 @@ +@ECHO off +GOTO start +:find_dp0 +SET dp0=%~dp0 +EXIT /b +:start +SETLOCAL +CALL :find_dp0 + +IF EXIST "%dp0%\node.exe" ( + SET "_prog=%dp0%\node.exe" +) ELSE ( + SET "_prog=node" + SET PATHEXT=%PATHEXT:;.JS;=;% +) + +endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\is-ci\bin.js" %* diff --git a/node_modules/.bin/is-ci.ps1 b/node_modules/.bin/is-ci.ps1 new file mode 100644 index 0000000..773a44d --- /dev/null +++ b/node_modules/.bin/is-ci.ps1 @@ -0,0 +1,28 @@ +#!/usr/bin/env pwsh +$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent + +$exe="" +if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) { + # Fix case when both the Windows and Linux builds of Node + # are installed in the same directory + $exe=".exe" +} +$ret=0 +if (Test-Path "$basedir/node$exe") { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & "$basedir/node$exe" "$basedir/../is-ci/bin.js" $args + } else { + & "$basedir/node$exe" "$basedir/../is-ci/bin.js" $args + } + $ret=$LASTEXITCODE +} else { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & "node$exe" "$basedir/../is-ci/bin.js" $args + } else { + & "node$exe" "$basedir/../is-ci/bin.js" $args + } + $ret=$LASTEXITCODE +} +exit $ret diff --git a/node_modules/.bin/is-docker b/node_modules/.bin/is-docker new file mode 100644 index 0000000..9e45793 --- /dev/null +++ b/node_modules/.bin/is-docker @@ -0,0 +1,12 @@ +#!/bin/sh +basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") + +case `uname` in + *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;; +esac + +if [ -x "$basedir/node" ]; then + exec "$basedir/node" "$basedir/../is-docker/cli.js" "$@" +else + exec node "$basedir/../is-docker/cli.js" "$@" +fi diff --git a/node_modules/.bin/is-docker.cmd b/node_modules/.bin/is-docker.cmd new file mode 100644 index 0000000..79e76ca --- /dev/null +++ b/node_modules/.bin/is-docker.cmd @@ -0,0 +1,17 @@ +@ECHO off +GOTO start +:find_dp0 +SET dp0=%~dp0 +EXIT /b +:start +SETLOCAL +CALL :find_dp0 + +IF EXIST "%dp0%\node.exe" ( + SET "_prog=%dp0%\node.exe" +) ELSE ( + SET "_prog=node" + SET PATHEXT=%PATHEXT:;.JS;=;% +) + +endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\is-docker\cli.js" %* diff --git a/node_modules/.bin/is-docker.ps1 b/node_modules/.bin/is-docker.ps1 new file mode 100644 index 0000000..7427625 --- /dev/null +++ b/node_modules/.bin/is-docker.ps1 @@ -0,0 +1,28 @@ +#!/usr/bin/env pwsh +$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent + +$exe="" +if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) { + # Fix case when both the Windows and Linux builds of Node + # are installed in the same directory + $exe=".exe" +} +$ret=0 +if (Test-Path "$basedir/node$exe") { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & "$basedir/node$exe" "$basedir/../is-docker/cli.js" $args + } else { + & "$basedir/node$exe" "$basedir/../is-docker/cli.js" $args + } + $ret=$LASTEXITCODE +} else { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & "node$exe" "$basedir/../is-docker/cli.js" $args + } else { + & "node$exe" "$basedir/../is-docker/cli.js" $args + } + $ret=$LASTEXITCODE +} +exit $ret diff --git a/node_modules/.bin/mkdirp b/node_modules/.bin/mkdirp new file mode 100644 index 0000000..6ba5765 --- /dev/null +++ b/node_modules/.bin/mkdirp @@ -0,0 +1,12 @@ +#!/bin/sh +basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") + +case `uname` in + *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;; +esac + +if [ -x "$basedir/node" ]; then + exec "$basedir/node" "$basedir/../mkdirp/bin/cmd.js" "$@" +else + exec node "$basedir/../mkdirp/bin/cmd.js" "$@" +fi diff --git a/node_modules/.bin/mkdirp.cmd b/node_modules/.bin/mkdirp.cmd new file mode 100644 index 0000000..a865dd9 --- /dev/null +++ b/node_modules/.bin/mkdirp.cmd @@ -0,0 +1,17 @@ +@ECHO off +GOTO start +:find_dp0 +SET dp0=%~dp0 +EXIT /b +:start +SETLOCAL +CALL :find_dp0 + +IF EXIST "%dp0%\node.exe" ( + SET "_prog=%dp0%\node.exe" +) ELSE ( + SET "_prog=node" + SET PATHEXT=%PATHEXT:;.JS;=;% +) + +endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\mkdirp\bin\cmd.js" %* diff --git a/node_modules/.bin/mkdirp.ps1 b/node_modules/.bin/mkdirp.ps1 new file mode 100644 index 0000000..911e854 --- /dev/null +++ b/node_modules/.bin/mkdirp.ps1 @@ -0,0 +1,28 @@ +#!/usr/bin/env pwsh +$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent + +$exe="" +if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) { + # Fix case when both the Windows and Linux builds of Node + # are installed in the same directory + $exe=".exe" +} +$ret=0 +if (Test-Path "$basedir/node$exe") { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & "$basedir/node$exe" "$basedir/../mkdirp/bin/cmd.js" $args + } else { + & "$basedir/node$exe" "$basedir/../mkdirp/bin/cmd.js" $args + } + $ret=$LASTEXITCODE +} else { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & "node$exe" "$basedir/../mkdirp/bin/cmd.js" $args + } else { + & "node$exe" "$basedir/../mkdirp/bin/cmd.js" $args + } + $ret=$LASTEXITCODE +} +exit $ret diff --git a/node_modules/.bin/openupm b/node_modules/.bin/openupm new file mode 100644 index 0000000..2281e68 --- /dev/null +++ b/node_modules/.bin/openupm @@ -0,0 +1,12 @@ +#!/bin/sh +basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") + +case `uname` in + *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;; +esac + +if [ -x "$basedir/node" ]; then + exec "$basedir/node" "$basedir/../openupm-cli/bin/openupm" "$@" +else + exec node "$basedir/../openupm-cli/bin/openupm" "$@" +fi diff --git a/node_modules/.bin/openupm-cli b/node_modules/.bin/openupm-cli new file mode 100644 index 0000000..2281e68 --- /dev/null +++ b/node_modules/.bin/openupm-cli @@ -0,0 +1,12 @@ +#!/bin/sh +basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") + +case `uname` in + *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;; +esac + +if [ -x "$basedir/node" ]; then + exec "$basedir/node" "$basedir/../openupm-cli/bin/openupm" "$@" +else + exec node "$basedir/../openupm-cli/bin/openupm" "$@" +fi diff --git a/node_modules/.bin/openupm-cli.cmd b/node_modules/.bin/openupm-cli.cmd new file mode 100644 index 0000000..427ffc4 --- /dev/null +++ b/node_modules/.bin/openupm-cli.cmd @@ -0,0 +1,17 @@ +@ECHO off +GOTO start +:find_dp0 +SET dp0=%~dp0 +EXIT /b +:start +SETLOCAL +CALL :find_dp0 + +IF EXIST "%dp0%\node.exe" ( + SET "_prog=%dp0%\node.exe" +) ELSE ( + SET "_prog=node" + SET PATHEXT=%PATHEXT:;.JS;=;% +) + +endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\openupm-cli\bin\openupm" %* diff --git a/node_modules/.bin/openupm-cli.ps1 b/node_modules/.bin/openupm-cli.ps1 new file mode 100644 index 0000000..d6f32b7 --- /dev/null +++ b/node_modules/.bin/openupm-cli.ps1 @@ -0,0 +1,28 @@ +#!/usr/bin/env pwsh +$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent + +$exe="" +if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) { + # Fix case when both the Windows and Linux builds of Node + # are installed in the same directory + $exe=".exe" +} +$ret=0 +if (Test-Path "$basedir/node$exe") { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & "$basedir/node$exe" "$basedir/../openupm-cli/bin/openupm" $args + } else { + & "$basedir/node$exe" "$basedir/../openupm-cli/bin/openupm" $args + } + $ret=$LASTEXITCODE +} else { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & "node$exe" "$basedir/../openupm-cli/bin/openupm" $args + } else { + & "node$exe" "$basedir/../openupm-cli/bin/openupm" $args + } + $ret=$LASTEXITCODE +} +exit $ret diff --git a/node_modules/.bin/openupm-cn b/node_modules/.bin/openupm-cn new file mode 100644 index 0000000..2915a44 --- /dev/null +++ b/node_modules/.bin/openupm-cn @@ -0,0 +1,12 @@ +#!/bin/sh +basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") + +case `uname` in + *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;; +esac + +if [ -x "$basedir/node" ]; then + exec "$basedir/node" "$basedir/../openupm-cli/bin/openupm-cn" "$@" +else + exec node "$basedir/../openupm-cli/bin/openupm-cn" "$@" +fi diff --git a/node_modules/.bin/openupm-cn.cmd b/node_modules/.bin/openupm-cn.cmd new file mode 100644 index 0000000..302b67a --- /dev/null +++ b/node_modules/.bin/openupm-cn.cmd @@ -0,0 +1,17 @@ +@ECHO off +GOTO start +:find_dp0 +SET dp0=%~dp0 +EXIT /b +:start +SETLOCAL +CALL :find_dp0 + +IF EXIST "%dp0%\node.exe" ( + SET "_prog=%dp0%\node.exe" +) ELSE ( + SET "_prog=node" + SET PATHEXT=%PATHEXT:;.JS;=;% +) + +endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\openupm-cli\bin\openupm-cn" %* diff --git a/node_modules/.bin/openupm-cn.ps1 b/node_modules/.bin/openupm-cn.ps1 new file mode 100644 index 0000000..804803c --- /dev/null +++ b/node_modules/.bin/openupm-cn.ps1 @@ -0,0 +1,28 @@ +#!/usr/bin/env pwsh +$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent + +$exe="" +if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) { + # Fix case when both the Windows and Linux builds of Node + # are installed in the same directory + $exe=".exe" +} +$ret=0 +if (Test-Path "$basedir/node$exe") { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & "$basedir/node$exe" "$basedir/../openupm-cli/bin/openupm-cn" $args + } else { + & "$basedir/node$exe" "$basedir/../openupm-cli/bin/openupm-cn" $args + } + $ret=$LASTEXITCODE +} else { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & "node$exe" "$basedir/../openupm-cli/bin/openupm-cn" $args + } else { + & "node$exe" "$basedir/../openupm-cli/bin/openupm-cn" $args + } + $ret=$LASTEXITCODE +} +exit $ret diff --git a/node_modules/.bin/openupm.cmd b/node_modules/.bin/openupm.cmd new file mode 100644 index 0000000..427ffc4 --- /dev/null +++ b/node_modules/.bin/openupm.cmd @@ -0,0 +1,17 @@ +@ECHO off +GOTO start +:find_dp0 +SET dp0=%~dp0 +EXIT /b +:start +SETLOCAL +CALL :find_dp0 + +IF EXIST "%dp0%\node.exe" ( + SET "_prog=%dp0%\node.exe" +) ELSE ( + SET "_prog=node" + SET PATHEXT=%PATHEXT:;.JS;=;% +) + +endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\openupm-cli\bin\openupm" %* diff --git a/node_modules/.bin/openupm.ps1 b/node_modules/.bin/openupm.ps1 new file mode 100644 index 0000000..d6f32b7 --- /dev/null +++ b/node_modules/.bin/openupm.ps1 @@ -0,0 +1,28 @@ +#!/usr/bin/env pwsh +$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent + +$exe="" +if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) { + # Fix case when both the Windows and Linux builds of Node + # are installed in the same directory + $exe=".exe" +} +$ret=0 +if (Test-Path "$basedir/node$exe") { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & "$basedir/node$exe" "$basedir/../openupm-cli/bin/openupm" $args + } else { + & "$basedir/node$exe" "$basedir/../openupm-cli/bin/openupm" $args + } + $ret=$LASTEXITCODE +} else { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & "node$exe" "$basedir/../openupm-cli/bin/openupm" $args + } else { + & "node$exe" "$basedir/../openupm-cli/bin/openupm" $args + } + $ret=$LASTEXITCODE +} +exit $ret diff --git a/node_modules/.bin/rc b/node_modules/.bin/rc new file mode 100644 index 0000000..e31cd83 --- /dev/null +++ b/node_modules/.bin/rc @@ -0,0 +1,12 @@ +#!/bin/sh +basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") + +case `uname` in + *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;; +esac + +if [ -x "$basedir/node" ]; then + exec "$basedir/node" "$basedir/../rc/cli.js" "$@" +else + exec node "$basedir/../rc/cli.js" "$@" +fi diff --git a/node_modules/.bin/rc.cmd b/node_modules/.bin/rc.cmd new file mode 100644 index 0000000..be16b73 --- /dev/null +++ b/node_modules/.bin/rc.cmd @@ -0,0 +1,17 @@ +@ECHO off +GOTO start +:find_dp0 +SET dp0=%~dp0 +EXIT /b +:start +SETLOCAL +CALL :find_dp0 + +IF EXIST "%dp0%\node.exe" ( + SET "_prog=%dp0%\node.exe" +) ELSE ( + SET "_prog=node" + SET PATHEXT=%PATHEXT:;.JS;=;% +) + +endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\rc\cli.js" %* diff --git a/node_modules/.bin/rc.ps1 b/node_modules/.bin/rc.ps1 new file mode 100644 index 0000000..9a9b6e3 --- /dev/null +++ b/node_modules/.bin/rc.ps1 @@ -0,0 +1,28 @@ +#!/usr/bin/env pwsh +$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent + +$exe="" +if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) { + # Fix case when both the Windows and Linux builds of Node + # are installed in the same directory + $exe=".exe" +} +$ret=0 +if (Test-Path "$basedir/node$exe") { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & "$basedir/node$exe" "$basedir/../rc/cli.js" $args + } else { + & "$basedir/node$exe" "$basedir/../rc/cli.js" $args + } + $ret=$LASTEXITCODE +} else { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & "node$exe" "$basedir/../rc/cli.js" $args + } else { + & "node$exe" "$basedir/../rc/cli.js" $args + } + $ret=$LASTEXITCODE +} +exit $ret diff --git a/node_modules/.bin/resolve b/node_modules/.bin/resolve new file mode 100644 index 0000000..757d454 --- /dev/null +++ b/node_modules/.bin/resolve @@ -0,0 +1,12 @@ +#!/bin/sh +basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") + +case `uname` in + *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;; +esac + +if [ -x "$basedir/node" ]; then + exec "$basedir/node" "$basedir/../resolve/bin/resolve" "$@" +else + exec node "$basedir/../resolve/bin/resolve" "$@" +fi diff --git a/node_modules/.bin/resolve.cmd b/node_modules/.bin/resolve.cmd new file mode 100644 index 0000000..1a017c4 --- /dev/null +++ b/node_modules/.bin/resolve.cmd @@ -0,0 +1,17 @@ +@ECHO off +GOTO start +:find_dp0 +SET dp0=%~dp0 +EXIT /b +:start +SETLOCAL +CALL :find_dp0 + +IF EXIST "%dp0%\node.exe" ( + SET "_prog=%dp0%\node.exe" +) ELSE ( + SET "_prog=node" + SET PATHEXT=%PATHEXT:;.JS;=;% +) + +endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\resolve\bin\resolve" %* diff --git a/node_modules/.bin/resolve.ps1 b/node_modules/.bin/resolve.ps1 new file mode 100644 index 0000000..f22b2d3 --- /dev/null +++ b/node_modules/.bin/resolve.ps1 @@ -0,0 +1,28 @@ +#!/usr/bin/env pwsh +$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent + +$exe="" +if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) { + # Fix case when both the Windows and Linux builds of Node + # are installed in the same directory + $exe=".exe" +} +$ret=0 +if (Test-Path "$basedir/node$exe") { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & "$basedir/node$exe" "$basedir/../resolve/bin/resolve" $args + } else { + & "$basedir/node$exe" "$basedir/../resolve/bin/resolve" $args + } + $ret=$LASTEXITCODE +} else { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & "node$exe" "$basedir/../resolve/bin/resolve" $args + } else { + & "node$exe" "$basedir/../resolve/bin/resolve" $args + } + $ret=$LASTEXITCODE +} +exit $ret diff --git a/node_modules/.bin/rimraf b/node_modules/.bin/rimraf new file mode 100644 index 0000000..b816825 --- /dev/null +++ b/node_modules/.bin/rimraf @@ -0,0 +1,12 @@ +#!/bin/sh +basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") + +case `uname` in + *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;; +esac + +if [ -x "$basedir/node" ]; then + exec "$basedir/node" "$basedir/../rimraf/bin.js" "$@" +else + exec node "$basedir/../rimraf/bin.js" "$@" +fi diff --git a/node_modules/.bin/rimraf.cmd b/node_modules/.bin/rimraf.cmd new file mode 100644 index 0000000..13f45ec --- /dev/null +++ b/node_modules/.bin/rimraf.cmd @@ -0,0 +1,17 @@ +@ECHO off +GOTO start +:find_dp0 +SET dp0=%~dp0 +EXIT /b +:start +SETLOCAL +CALL :find_dp0 + +IF EXIST "%dp0%\node.exe" ( + SET "_prog=%dp0%\node.exe" +) ELSE ( + SET "_prog=node" + SET PATHEXT=%PATHEXT:;.JS;=;% +) + +endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\rimraf\bin.js" %* diff --git a/node_modules/.bin/rimraf.ps1 b/node_modules/.bin/rimraf.ps1 new file mode 100644 index 0000000..1716791 --- /dev/null +++ b/node_modules/.bin/rimraf.ps1 @@ -0,0 +1,28 @@ +#!/usr/bin/env pwsh +$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent + +$exe="" +if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) { + # Fix case when both the Windows and Linux builds of Node + # are installed in the same directory + $exe=".exe" +} +$ret=0 +if (Test-Path "$basedir/node$exe") { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & "$basedir/node$exe" "$basedir/../rimraf/bin.js" $args + } else { + & "$basedir/node$exe" "$basedir/../rimraf/bin.js" $args + } + $ret=$LASTEXITCODE +} else { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & "node$exe" "$basedir/../rimraf/bin.js" $args + } else { + & "node$exe" "$basedir/../rimraf/bin.js" $args + } + $ret=$LASTEXITCODE +} +exit $ret diff --git a/node_modules/.bin/semver b/node_modules/.bin/semver new file mode 100644 index 0000000..77443e7 --- /dev/null +++ b/node_modules/.bin/semver @@ -0,0 +1,12 @@ +#!/bin/sh +basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") + +case `uname` in + *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;; +esac + +if [ -x "$basedir/node" ]; then + exec "$basedir/node" "$basedir/../semver/bin/semver.js" "$@" +else + exec node "$basedir/../semver/bin/semver.js" "$@" +fi diff --git a/node_modules/.bin/semver.cmd b/node_modules/.bin/semver.cmd new file mode 100644 index 0000000..9913fa9 --- /dev/null +++ b/node_modules/.bin/semver.cmd @@ -0,0 +1,17 @@ +@ECHO off +GOTO start +:find_dp0 +SET dp0=%~dp0 +EXIT /b +:start +SETLOCAL +CALL :find_dp0 + +IF EXIST "%dp0%\node.exe" ( + SET "_prog=%dp0%\node.exe" +) ELSE ( + SET "_prog=node" + SET PATHEXT=%PATHEXT:;.JS;=;% +) + +endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\semver\bin\semver.js" %* diff --git a/node_modules/.bin/semver.ps1 b/node_modules/.bin/semver.ps1 new file mode 100644 index 0000000..314717a --- /dev/null +++ b/node_modules/.bin/semver.ps1 @@ -0,0 +1,28 @@ +#!/usr/bin/env pwsh +$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent + +$exe="" +if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) { + # Fix case when both the Windows and Linux builds of Node + # are installed in the same directory + $exe=".exe" +} +$ret=0 +if (Test-Path "$basedir/node$exe") { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & "$basedir/node$exe" "$basedir/../semver/bin/semver.js" $args + } else { + & "$basedir/node$exe" "$basedir/../semver/bin/semver.js" $args + } + $ret=$LASTEXITCODE +} else { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & "node$exe" "$basedir/../semver/bin/semver.js" $args + } else { + & "node$exe" "$basedir/../semver/bin/semver.js" $args + } + $ret=$LASTEXITCODE +} +exit $ret diff --git a/node_modules/.bin/sshpk-conv b/node_modules/.bin/sshpk-conv new file mode 100644 index 0000000..ab33b1e --- /dev/null +++ b/node_modules/.bin/sshpk-conv @@ -0,0 +1,12 @@ +#!/bin/sh +basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") + +case `uname` in + *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;; +esac + +if [ -x "$basedir/node" ]; then + exec "$basedir/node" "$basedir/../sshpk/bin/sshpk-conv" "$@" +else + exec node "$basedir/../sshpk/bin/sshpk-conv" "$@" +fi diff --git a/node_modules/.bin/sshpk-conv.cmd b/node_modules/.bin/sshpk-conv.cmd new file mode 100644 index 0000000..2bdc325 --- /dev/null +++ b/node_modules/.bin/sshpk-conv.cmd @@ -0,0 +1,17 @@ +@ECHO off +GOTO start +:find_dp0 +SET dp0=%~dp0 +EXIT /b +:start +SETLOCAL +CALL :find_dp0 + +IF EXIST "%dp0%\node.exe" ( + SET "_prog=%dp0%\node.exe" +) ELSE ( + SET "_prog=node" + SET PATHEXT=%PATHEXT:;.JS;=;% +) + +endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\sshpk\bin\sshpk-conv" %* diff --git a/node_modules/.bin/sshpk-conv.ps1 b/node_modules/.bin/sshpk-conv.ps1 new file mode 100644 index 0000000..a8e820e --- /dev/null +++ b/node_modules/.bin/sshpk-conv.ps1 @@ -0,0 +1,28 @@ +#!/usr/bin/env pwsh +$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent + +$exe="" +if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) { + # Fix case when both the Windows and Linux builds of Node + # are installed in the same directory + $exe=".exe" +} +$ret=0 +if (Test-Path "$basedir/node$exe") { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & "$basedir/node$exe" "$basedir/../sshpk/bin/sshpk-conv" $args + } else { + & "$basedir/node$exe" "$basedir/../sshpk/bin/sshpk-conv" $args + } + $ret=$LASTEXITCODE +} else { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & "node$exe" "$basedir/../sshpk/bin/sshpk-conv" $args + } else { + & "node$exe" "$basedir/../sshpk/bin/sshpk-conv" $args + } + $ret=$LASTEXITCODE +} +exit $ret diff --git a/node_modules/.bin/sshpk-sign b/node_modules/.bin/sshpk-sign new file mode 100644 index 0000000..87f8ae8 --- /dev/null +++ b/node_modules/.bin/sshpk-sign @@ -0,0 +1,12 @@ +#!/bin/sh +basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") + +case `uname` in + *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;; +esac + +if [ -x "$basedir/node" ]; then + exec "$basedir/node" "$basedir/../sshpk/bin/sshpk-sign" "$@" +else + exec node "$basedir/../sshpk/bin/sshpk-sign" "$@" +fi diff --git a/node_modules/.bin/sshpk-sign.cmd b/node_modules/.bin/sshpk-sign.cmd new file mode 100644 index 0000000..7323578 --- /dev/null +++ b/node_modules/.bin/sshpk-sign.cmd @@ -0,0 +1,17 @@ +@ECHO off +GOTO start +:find_dp0 +SET dp0=%~dp0 +EXIT /b +:start +SETLOCAL +CALL :find_dp0 + +IF EXIST "%dp0%\node.exe" ( + SET "_prog=%dp0%\node.exe" +) ELSE ( + SET "_prog=node" + SET PATHEXT=%PATHEXT:;.JS;=;% +) + +endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\sshpk\bin\sshpk-sign" %* diff --git a/node_modules/.bin/sshpk-sign.ps1 b/node_modules/.bin/sshpk-sign.ps1 new file mode 100644 index 0000000..0de3957 --- /dev/null +++ b/node_modules/.bin/sshpk-sign.ps1 @@ -0,0 +1,28 @@ +#!/usr/bin/env pwsh +$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent + +$exe="" +if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) { + # Fix case when both the Windows and Linux builds of Node + # are installed in the same directory + $exe=".exe" +} +$ret=0 +if (Test-Path "$basedir/node$exe") { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & "$basedir/node$exe" "$basedir/../sshpk/bin/sshpk-sign" $args + } else { + & "$basedir/node$exe" "$basedir/../sshpk/bin/sshpk-sign" $args + } + $ret=$LASTEXITCODE +} else { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & "node$exe" "$basedir/../sshpk/bin/sshpk-sign" $args + } else { + & "node$exe" "$basedir/../sshpk/bin/sshpk-sign" $args + } + $ret=$LASTEXITCODE +} +exit $ret diff --git a/node_modules/.bin/sshpk-verify b/node_modules/.bin/sshpk-verify new file mode 100644 index 0000000..c2d00d0 --- /dev/null +++ b/node_modules/.bin/sshpk-verify @@ -0,0 +1,12 @@ +#!/bin/sh +basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") + +case `uname` in + *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;; +esac + +if [ -x "$basedir/node" ]; then + exec "$basedir/node" "$basedir/../sshpk/bin/sshpk-verify" "$@" +else + exec node "$basedir/../sshpk/bin/sshpk-verify" "$@" +fi diff --git a/node_modules/.bin/sshpk-verify.cmd b/node_modules/.bin/sshpk-verify.cmd new file mode 100644 index 0000000..b0c43cb --- /dev/null +++ b/node_modules/.bin/sshpk-verify.cmd @@ -0,0 +1,17 @@ +@ECHO off +GOTO start +:find_dp0 +SET dp0=%~dp0 +EXIT /b +:start +SETLOCAL +CALL :find_dp0 + +IF EXIST "%dp0%\node.exe" ( + SET "_prog=%dp0%\node.exe" +) ELSE ( + SET "_prog=node" + SET PATHEXT=%PATHEXT:;.JS;=;% +) + +endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\sshpk\bin\sshpk-verify" %* diff --git a/node_modules/.bin/sshpk-verify.ps1 b/node_modules/.bin/sshpk-verify.ps1 new file mode 100644 index 0000000..8370785 --- /dev/null +++ b/node_modules/.bin/sshpk-verify.ps1 @@ -0,0 +1,28 @@ +#!/usr/bin/env pwsh +$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent + +$exe="" +if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) { + # Fix case when both the Windows and Linux builds of Node + # are installed in the same directory + $exe=".exe" +} +$ret=0 +if (Test-Path "$basedir/node$exe") { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & "$basedir/node$exe" "$basedir/../sshpk/bin/sshpk-verify" $args + } else { + & "$basedir/node$exe" "$basedir/../sshpk/bin/sshpk-verify" $args + } + $ret=$LASTEXITCODE +} else { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & "node$exe" "$basedir/../sshpk/bin/sshpk-verify" $args + } else { + & "node$exe" "$basedir/../sshpk/bin/sshpk-verify" $args + } + $ret=$LASTEXITCODE +} +exit $ret diff --git a/node_modules/.bin/uuid b/node_modules/.bin/uuid new file mode 100644 index 0000000..2cfa7bf --- /dev/null +++ b/node_modules/.bin/uuid @@ -0,0 +1,12 @@ +#!/bin/sh +basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") + +case `uname` in + *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;; +esac + +if [ -x "$basedir/node" ]; then + exec "$basedir/node" "$basedir/../uuid/bin/uuid" "$@" +else + exec node "$basedir/../uuid/bin/uuid" "$@" +fi diff --git a/node_modules/.bin/uuid.cmd b/node_modules/.bin/uuid.cmd new file mode 100644 index 0000000..1156e27 --- /dev/null +++ b/node_modules/.bin/uuid.cmd @@ -0,0 +1,17 @@ +@ECHO off +GOTO start +:find_dp0 +SET dp0=%~dp0 +EXIT /b +:start +SETLOCAL +CALL :find_dp0 + +IF EXIST "%dp0%\node.exe" ( + SET "_prog=%dp0%\node.exe" +) ELSE ( + SET "_prog=node" + SET PATHEXT=%PATHEXT:;.JS;=;% +) + +endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\uuid\bin\uuid" %* diff --git a/node_modules/.bin/uuid.ps1 b/node_modules/.bin/uuid.ps1 new file mode 100644 index 0000000..9e6c24b --- /dev/null +++ b/node_modules/.bin/uuid.ps1 @@ -0,0 +1,28 @@ +#!/usr/bin/env pwsh +$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent + +$exe="" +if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) { + # Fix case when both the Windows and Linux builds of Node + # are installed in the same directory + $exe=".exe" +} +$ret=0 +if (Test-Path "$basedir/node$exe") { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & "$basedir/node$exe" "$basedir/../uuid/bin/uuid" $args + } else { + & "$basedir/node$exe" "$basedir/../uuid/bin/uuid" $args + } + $ret=$LASTEXITCODE +} else { + # Support pipeline input + if ($MyInvocation.ExpectingInput) { + $input | & "node$exe" "$basedir/../uuid/bin/uuid" $args + } else { + & "node$exe" "$basedir/../uuid/bin/uuid" $args + } + $ret=$LASTEXITCODE +} +exit $ret diff --git a/node_modules/.package-lock.json b/node_modules/.package-lock.json new file mode 100644 index 0000000..fbb4085 --- /dev/null +++ b/node_modules/.package-lock.json @@ -0,0 +1,2678 @@ +{ + "name": "Trouble-in-Terrorist-Town-Source-Crossed", + "lockfileVersion": 2, + "requires": true, + "packages": { + "node_modules/@gar/promisify": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", + "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==" + }, + "node_modules/@iarna/toml": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/@iarna/toml/-/toml-2.2.5.tgz", + "integrity": "sha512-trnsAYxU3xnS1gPHPyU961coFyLkh4gAD/0zQ5mymY4yOZ+CYvsPqUbOFSw0aDM4y0tV7tiFxL/1XfXPNC6IPg==" + }, + "node_modules/@npmcli/fs": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.0.tgz", + "integrity": "sha512-DmfBvNXGaetMxj9LTp8NAN9vEidXURrf5ZTslQzEAi/6GbW+4yjaLFQc6Tue5cpZ9Frlk4OBo/Snf1Bh/S7qTQ==", + "dependencies": { + "@gar/promisify": "^1.1.3", + "semver": "^7.3.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/@npmcli/move-file": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.0.tgz", + "integrity": "sha512-UR6D5f4KEGWJV6BGPH3Qb2EtgH+t+1XQ1Tt85c7qicN6cezzuHPdZwwAxqZr4JLtnQu0LZsTza/5gmNmSl8XLg==", + "dependencies": { + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/@sindresorhus/is": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", + "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/@szmarczak/http-timer": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", + "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "dependencies": { + "defer-to-connect": "^1.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "engines": { + "node": ">= 10" + } + }, + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/agentkeepalive": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.1.tgz", + "integrity": "sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA==", + "dependencies": { + "debug": "^4.1.0", + "depd": "^1.1.2", + "humanize-ms": "^1.2.1" + }, + "engines": { + "node": ">= 8.0.0" + } + }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/another-npm-registry-client": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/another-npm-registry-client/-/another-npm-registry-client-8.7.0.tgz", + "integrity": "sha512-1fqojpPsaqfCFvUw65yFOpU6HuREVG21VPJPJ92eYYHAmV6gAgQUHQHXNCHP/vwn7O+TfmYrZX5EtGjyo755Eg==", + "dependencies": { + "concat-stream": "^1.5.2", + "graceful-fs": "^4.1.6", + "normalize-package-data": "~1.0.1 || ^2.0.0", + "npm-package-arg": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0", + "once": "^1.3.3", + "request": "^2.74.0", + "retry": "^0.13.1", + "safe-buffer": "^5.1.1", + "semver": "^7.3.5", + "slide": "^1.1.3", + "ssri": "^8.0.1" + }, + "optionalDependencies": { + "npmlog": "2 || ^3.1.0 || ^4.0.0" + } + }, + "node_modules/another-npm-registry-client/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/another-npm-registry-client/node_modules/aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "optional": true + }, + "node_modules/another-npm-registry-client/node_modules/are-we-there-yet": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", + "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", + "optional": true, + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "node_modules/another-npm-registry-client/node_modules/gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "optional": true, + "dependencies": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "node_modules/another-npm-registry-client/node_modules/is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "optional": true, + "dependencies": { + "number-is-nan": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/another-npm-registry-client/node_modules/npmlog": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "optional": true, + "dependencies": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "node_modules/another-npm-registry-client/node_modules/string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "optional": true, + "dependencies": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/another-npm-registry-client/node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "optional": true, + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ansi-align": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", + "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", + "dependencies": { + "string-width": "^4.1.0" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/aproba": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==" + }, + "node_modules/are-we-there-yet": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.0.tgz", + "integrity": "sha512-0GWpv50YSOcLXaN6/FAKY3vfRbllXWV2xvfA/oKJF8pzFhWXPV+yjhJXDBbjscDYowv7Yw1A3uigpzn5iEGTyw==", + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16" + } + }, + "node_modules/are-we-there-yet/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/asn1": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", + "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", + "dependencies": { + "safer-buffer": "~2.1.0" + } + }, + "node_modules/assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "node_modules/aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", + "engines": { + "node": "*" + } + }, + "node_modules/aws4": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", + "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==" + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", + "dependencies": { + "tweetnacl": "^0.14.3" + } + }, + "node_modules/boxen": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", + "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", + "dependencies": { + "ansi-align": "^3.0.0", + "camelcase": "^6.2.0", + "chalk": "^4.1.0", + "cli-boxes": "^2.2.1", + "string-width": "^4.2.2", + "type-fest": "^0.20.2", + "widest-line": "^3.1.0", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" + }, + "node_modules/builtins": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", + "integrity": "sha512-uYBjakWipfaO/bXI7E8rq6kpwHRZK5cNYrUv2OzZSI/FvmdMyXJ2tG9dKcjEC5YHmHpUAwsargWIZNWdxb/bnQ==" + }, + "node_modules/cacache": { + "version": "16.1.0", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.1.0.tgz", + "integrity": "sha512-Pk4aQkwCW82A4jGKFvcGkQFqZcMspfP9YWq9Pr87/ldDvlWf718zeI6KWCdKt/jeihu6BytHRUicJPB1K2k8EQ==", + "dependencies": { + "@npmcli/fs": "^2.1.0", + "@npmcli/move-file": "^2.0.0", + "chownr": "^2.0.0", + "fs-minipass": "^2.1.0", + "glob": "^8.0.1", + "infer-owner": "^1.0.4", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "mkdirp": "^1.0.4", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^3.0.2", + "ssri": "^9.0.0", + "tar": "^6.1.11", + "unique-filename": "^1.1.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/cacache/node_modules/ssri": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", + "integrity": "sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==", + "dependencies": { + "minipass": "^3.1.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/cacheable-request": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", + "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", + "dependencies": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^3.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^4.1.0", + "responselike": "^1.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cacheable-request/node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cacheable-request/node_modules/lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==" + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "engines": { + "node": ">=10" + } + }, + "node_modules/ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==" + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/cli-boxes": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", + "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-table": { + "version": "0.3.11", + "resolved": "https://registry.npmjs.org/cli-table/-/cli-table-0.3.11.tgz", + "integrity": "sha512-IqLQi4lO0nIB4tcdTpN4LCB9FI3uqrJZK7RC515EnhZ6qBaglkIgICb1wjeAqpdoOabm1+SuQtkXIPdYC93jhQ==", + "dependencies": { + "colors": "1.0.3" + }, + "engines": { + "node": ">= 0.2.0" + } + }, + "node_modules/clone-response": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", + "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", + "dependencies": { + "mimic-response": "^1.0.0" + } + }, + "node_modules/code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "bin": { + "color-support": "bin.js" + } + }, + "node_modules/colors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", + "integrity": "sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs=", + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-9.2.0.tgz", + "integrity": "sha512-e2i4wANQiSXgnrBlIatyHtP1odfUp0BbV5Y5nEGbxtIrStkEOAAzCUirvLBNXHLr7kwLvJl6V+4V3XV9x7Wd9w==", + "engines": { + "node": "^12.20.0 || >=14" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "node_modules/concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "engines": [ + "node >= 0.8" + ], + "dependencies": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "node_modules/configstore": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", + "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", + "dependencies": { + "dot-prop": "^5.2.0", + "graceful-fs": "^4.1.2", + "make-dir": "^3.0.0", + "unique-string": "^2.0.0", + "write-file-atomic": "^3.0.0", + "xdg-basedir": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" + }, + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" + }, + "node_modules/crypto-random-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", + "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "dependencies": { + "assert-plus": "^1.0.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "dependencies": { + "mimic-response": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/defer-to-connect": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", + "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==" + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" + }, + "node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/dot-prop": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", + "dependencies": { + "is-obj": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=" + }, + "node_modules/ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "dependencies": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==" + }, + "node_modules/escape-goat": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", + "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "node_modules/extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "engines": [ + "node >=0.6.0" + ] + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" + }, + "node_modules/forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "engines": { + "node": "*" + } + }, + "node_modules/form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 0.12" + } + }, + "node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "node_modules/gauge": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", + "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", + "dependencies": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.7", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "dependencies": { + "assert-plus": "^1.0.0" + } + }, + "node_modules/glob": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", + "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/global-dirs": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.0.tgz", + "integrity": "sha512-v8ho2DS5RiCjftj1nD9NmnfaOzTdud7RRnVd9kFNOjqZbISlx5DQ+OrTkywgd0dIt7oFCvKetZSHoHcP3sDdiA==", + "dependencies": { + "ini": "2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/got": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", + "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", + "dependencies": { + "@sindresorhus/is": "^0.14.0", + "@szmarczak/http-timer": "^1.1.2", + "cacheable-request": "^6.0.0", + "decompress-response": "^3.3.0", + "duplexer3": "^0.1.4", + "get-stream": "^4.1.0", + "lowercase-keys": "^1.0.1", + "mimic-response": "^1.0.1", + "p-cancelable": "^1.0.0", + "to-readable-stream": "^1.0.0", + "url-parse-lax": "^3.0.0" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" + }, + "node_modules/har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "engines": { + "node": ">=4" + } + }, + "node_modules/har-validator": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", + "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", + "deprecated": "this library is no longer supported", + "dependencies": { + "ajv": "^6.12.3", + "har-schema": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" + }, + "node_modules/has-yarn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", + "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" + }, + "node_modules/http-cache-semantics": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==" + }, + "node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "dependencies": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + }, + "engines": { + "node": ">=0.8", + "npm": ">=1.3.7" + } + }, + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/humanize-ms": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", + "integrity": "sha1-xG4xWaKT9riW2ikxbYtv6Lt5u+0=", + "dependencies": { + "ms": "^2.0.0" + } + }, + "node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/import-lazy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", + "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", + "engines": { + "node": ">=4" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/infer-owner": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==" + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/ini": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", + "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", + "engines": { + "node": ">=10" + } + }, + "node_modules/ip": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz", + "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==" + }, + "node_modules/is-ci": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "dependencies": { + "ci-info": "^2.0.0" + }, + "bin": { + "is-ci": "bin.js" + } + }, + "node_modules/is-core-module": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz", + "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==", + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-installed-globally": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", + "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", + "dependencies": { + "global-dirs": "^3.0.0", + "is-path-inside": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha1-PZh3iZ5qU+/AFgUEzeFfgubwYdU=" + }, + "node_modules/is-npm": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz", + "integrity": "sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-yarn-global": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", + "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==" + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "node_modules/isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" + }, + "node_modules/jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" + }, + "node_modules/json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=" + }, + "node_modules/json-schema": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", + "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==" + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", + "engines": [ + "node >= 0.2.0" + ] + }, + "node_modules/jsprim": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", + "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", + "dependencies": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.4.0", + "verror": "1.10.0" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/keyv": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", + "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "dependencies": { + "json-buffer": "3.0.0" + } + }, + "node_modules/latest-version": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", + "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", + "dependencies": { + "package-json": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/libnpmsearch": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/libnpmsearch/-/libnpmsearch-5.0.3.tgz", + "integrity": "sha512-Ofq76qKAPhxbiyzPf/5LPjJln26VTKwU9hIU0ACxQ6tNtBJ1CHmI7iITrdp7vNezhZc0FlkXwrIpqXjhBJZgLQ==", + "dependencies": { + "npm-registry-fetch": "^13.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "node_modules/lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lru-cache": { + "version": "7.10.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.10.1.tgz", + "integrity": "sha512-BQuhQxPuRl79J5zSXRP+uNzPOyZw2oFI9JLRQ80XswSvg21KMKNtQza9eF42rfI/3Z40RvzBdXgziEkudzjo8A==", + "engines": { + "node": ">=12" + } + }, + "node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/make-fetch-happen": { + "version": "10.1.5", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.1.5.tgz", + "integrity": "sha512-mucOj2H0Jn/ax7H9K9T1bf0p1nn/mBFa551Os7ed9xRfLEx20aZhZeLslmRYfAaAqXZUGipcs+m5KOKvOH0XKA==", + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^16.1.0", + "http-cache-semantics": "^4.1.0", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^2.0.3", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^6.1.1", + "ssri": "^9.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/ssri": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", + "integrity": "sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==", + "dependencies": { + "minipass": "^3.1.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/minimatch": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", + "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/minimist": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" + }, + "node_modules/minipass": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz", + "integrity": "sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-collect": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", + "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-fetch": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.0.tgz", + "integrity": "sha512-H9U4UVBGXEyyWJnqYDCLp1PwD8XIkJ4akNHp1aGVI+2Ym7wQMlxDKi4IB4JbmyU+pl9pEs/cVrK6cOuvmbK4Sg==", + "dependencies": { + "minipass": "^3.1.6", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-json-stream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", + "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", + "dependencies": { + "jsonparse": "^1.3.1", + "minipass": "^3.0.0" + } + }, + "node_modules/minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==" + }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/normalize-package-data/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/normalize-url": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", + "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/npm-package-arg": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-6.1.1.tgz", + "integrity": "sha512-qBpssaL3IOZWi5vEKUKW0cO7kzLeT+EQO9W8RsLOZf76KF9E/K9+wH0C7t06HXPpaH8WH5xF1MExLuCwbTqRUg==", + "dependencies": { + "hosted-git-info": "^2.7.1", + "osenv": "^0.1.5", + "semver": "^5.6.0", + "validate-npm-package-name": "^3.0.0" + } + }, + "node_modules/npm-package-arg/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/npm-registry-fetch": { + "version": "13.1.1", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-13.1.1.tgz", + "integrity": "sha512-5p8rwe6wQPLJ8dMqeTnA57Dp9Ox6GH9H60xkyJup07FmVlu3Mk7pf/kIIpl9gaN5bM8NM+UUx3emUWvDNTt39w==", + "dependencies": { + "make-fetch-happen": "^10.0.6", + "minipass": "^3.1.6", + "minipass-fetch": "^2.0.3", + "minipass-json-stream": "^1.0.1", + "minizlib": "^2.1.2", + "npm-package-arg": "^9.0.1", + "proc-log": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/npm-registry-fetch/node_modules/builtins": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz", + "integrity": "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==", + "dependencies": { + "semver": "^7.0.0" + } + }, + "node_modules/npm-registry-fetch/node_modules/hosted-git-info": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-5.0.0.tgz", + "integrity": "sha512-rRnjWu0Bxj+nIfUOkz0695C0H6tRrN5iYIzYejb0tDEefe2AekHu/U5Kn9pEie5vsJqpNQU02az7TGSH3qpz4Q==", + "dependencies": { + "lru-cache": "^7.5.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16" + } + }, + "node_modules/npm-registry-fetch/node_modules/npm-package-arg": { + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-9.0.2.tgz", + "integrity": "sha512-v/miORuX8cndiOheW8p2moNuPJ7QhcFh9WGlTorruG8hXSA23vMTEp5hTCmDxic0nD8KHhj/NQgFuySD3GYY3g==", + "dependencies": { + "hosted-git-info": "^5.0.0", + "semver": "^7.3.5", + "validate-npm-package-name": "^4.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/npm-registry-fetch/node_modules/validate-npm-package-name": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-4.0.0.tgz", + "integrity": "sha512-mzR0L8ZDktZjpX4OB46KT+56MAhl4EIazWP/+G/HPGuvfdaqg4YsCdtOm6U9+LOFyYDoh4dpnpxZRB9MQQns5Q==", + "dependencies": { + "builtins": "^5.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/npmlog": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", + "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", + "dependencies": { + "are-we-there-yet": "^3.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^4.0.3", + "set-blocking": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "engines": { + "node": "*" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/openupm-cli": { + "version": "1.15.4", + "resolved": "https://registry.npmjs.org/openupm-cli/-/openupm-cli-1.15.4.tgz", + "integrity": "sha512-GMdfYEYTCeJ0J3k0hhPjcSUiZ2L4uhHLTPpIqm7wBYCi0c29P/qdTmK9kxqfoySQqPg0LNh3vE3i2cxNg/1p3A==", + "dependencies": { + "@iarna/toml": "^2.2.5", + "another-npm-registry-client": "^8.7.0", + "chalk": "^4.1.2", + "cli-table": "^0.3.11", + "commander": "^9.2.0", + "fs-extra": "^10.1.0", + "is-wsl": "^2.2.0", + "libnpmsearch": "^5.0.3", + "lodash": "^4.17.21", + "mkdirp": "^1.0.4", + "npm-registry-fetch": "^13.1.1", + "npmlog": "^6.0.2", + "pkginfo": "^0.4.1", + "promptly": "^3.2.0", + "update-notifier": "^5.1.0", + "yaml": "^2.0.1" + }, + "bin": { + "openupm": "bin/openupm", + "openupm-cli": "bin/openupm", + "openupm-cn": "bin/openupm-cn" + }, + "engines": { + "node": ">=14.18" + } + }, + "node_modules/os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/osenv": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", + "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", + "dependencies": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, + "node_modules/p-cancelable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", + "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/package-json": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", + "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", + "dependencies": { + "got": "^9.6.0", + "registry-auth-token": "^4.0.0", + "registry-url": "^5.0.0", + "semver": "^6.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/package-json/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "node_modules/performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" + }, + "node_modules/pkginfo": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/pkginfo/-/pkginfo-0.4.1.tgz", + "integrity": "sha1-tUGO8EOd5UJfxJlQQtztFPsqhP8=", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/prepend-http": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", + "engines": { + "node": ">=4" + } + }, + "node_modules/proc-log": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-2.0.1.tgz", + "integrity": "sha512-Kcmo2FhfDTXdcbfDH76N7uBYHINxc/8GW7UAVuVP9I+Va3uHSerrnKV6dLooga/gh7GlgzuCCr/eoldnL1muGw==", + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + }, + "node_modules/promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=" + }, + "node_modules/promise-retry": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "dependencies": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/promise-retry/node_modules/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", + "engines": { + "node": ">= 4" + } + }, + "node_modules/promptly": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/promptly/-/promptly-3.2.0.tgz", + "integrity": "sha512-WnR9obtgW+rG4oUV3hSnNGl1pHm3V1H/qD9iJBumGSmVsSC5HpZOLuu8qdMb6yCItGfT7dcRszejr/5P3i9Pug==", + "dependencies": { + "read": "^1.0.4" + } + }, + "node_modules/psl": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==" + }, + "node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/pupa": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", + "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", + "dependencies": { + "escape-goat": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/qs": { + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", + "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "dependencies": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "bin": { + "rc": "cli.js" + } + }, + "node_modules/rc/node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + }, + "node_modules/read": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/read/-/read-1.0.7.tgz", + "integrity": "sha1-s9oZvQUkMal2cdRKQmNK33ELQMQ=", + "dependencies": { + "mute-stream": "~0.0.4" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/readable-stream/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/registry-auth-token": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.1.tgz", + "integrity": "sha512-6gkSb4U6aWJB4SF2ZvLb76yCBjcvufXBqvvEx1HbmKPkutswjW1xNVRY0+daljIYRbogN7O0etYSlbiaEQyMyw==", + "dependencies": { + "rc": "^1.2.8" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/registry-url": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", + "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", + "dependencies": { + "rc": "^1.2.8" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/request": { + "version": "2.88.2", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", + "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142", + "dependencies": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.3", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.5.0", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/resolve": { + "version": "1.22.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", + "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", + "dependencies": { + "is-core-module": "^2.8.1", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", + "dependencies": { + "lowercase-keys": "^1.0.0" + } + }, + "node_modules/retry": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", + "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/rimraf/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "node_modules/semver": { + "version": "7.3.7", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", + "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver-diff": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", + "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", + "dependencies": { + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/semver-diff/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/semver/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + }, + "node_modules/slide": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", + "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", + "engines": { + "node": "*" + } + }, + "node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.6.2.tgz", + "integrity": "sha512-zDZhHhZRY9PxRruRMR7kMhnf3I8hDs4S3f9RecfnGxvcBHQcKcIH/oUcEWffsfl1XxdYlA7nnlGbbTvPz9D8gA==", + "dependencies": { + "ip": "^1.1.5", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.13.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks-proxy-agent": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-6.2.0.tgz", + "integrity": "sha512-wWqJhjb32Q6GsrUqzuFkukxb/zzide5quXYcMVpIjxalDBBYy2nqKCFQ/9+Ie4dvOYSQdOk3hUlZSdzZOd3zMQ==", + "dependencies": { + "agent-base": "^6.0.2", + "debug": "^4.3.3", + "socks": "^2.6.2" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/spdx-correct": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" + }, + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", + "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==" + }, + "node_modules/sshpk": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", + "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", + "dependencies": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + }, + "bin": { + "sshpk-conv": "bin/sshpk-conv", + "sshpk-sign": "bin/sshpk-sign", + "sshpk-verify": "bin/sshpk-verify" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ssri": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", + "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", + "dependencies": { + "minipass": "^3.1.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/string_decoder/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/tar": { + "version": "6.1.11", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", + "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^3.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/to-readable-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", + "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", + "engines": { + "node": ">=6" + } + }, + "node_modules/tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "dependencies": { + "psl": "^1.1.28", + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dependencies": { + "safe-buffer": "^5.0.1" + }, + "engines": { + "node": "*" + } + }, + "node_modules/tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" + }, + "node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" + }, + "node_modules/typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dependencies": { + "is-typedarray": "^1.0.0" + } + }, + "node_modules/unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "dependencies": { + "unique-slug": "^2.0.0" + } + }, + "node_modules/unique-slug": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", + "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", + "dependencies": { + "imurmurhash": "^0.1.4" + } + }, + "node_modules/unique-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", + "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", + "dependencies": { + "crypto-random-string": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/update-notifier": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz", + "integrity": "sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==", + "dependencies": { + "boxen": "^5.0.0", + "chalk": "^4.1.0", + "configstore": "^5.0.1", + "has-yarn": "^2.1.0", + "import-lazy": "^2.1.0", + "is-ci": "^2.0.0", + "is-installed-globally": "^0.4.0", + "is-npm": "^5.0.0", + "is-yarn-global": "^0.3.0", + "latest-version": "^5.1.0", + "pupa": "^2.1.1", + "semver": "^7.3.4", + "semver-diff": "^3.1.1", + "xdg-basedir": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/yeoman/update-notifier?sponsor=1" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/url-parse-lax": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", + "dependencies": { + "prepend-http": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/validate-npm-package-name": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", + "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", + "dependencies": { + "builtins": "^1.0.3" + } + }, + "node_modules/verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "engines": [ + "node >=0.6.0" + ], + "dependencies": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "node_modules/verror/node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "node_modules/wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "dependencies": { + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, + "node_modules/widest-line": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", + "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", + "dependencies": { + "string-width": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "node_modules/write-file-atomic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "dependencies": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "node_modules/xdg-basedir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", + "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/yaml": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.1.0.tgz", + "integrity": "sha512-OuAINfTsoJrY5H7CBWnKZhX6nZciXBydrMtTHr1dC4nP40X5jyTIVlogZHxSlVZM8zSgXRfgZGsaHF4+pV+JRw==", + "engines": { + "node": ">= 14" + } + } + } +} diff --git a/node_modules/@gar/promisify/LICENSE.md b/node_modules/@gar/promisify/LICENSE.md new file mode 100644 index 0000000..64f7732 --- /dev/null +++ b/node_modules/@gar/promisify/LICENSE.md @@ -0,0 +1,10 @@ +The MIT License (MIT) + +Copyright © 2020-2022 Michael Garvin + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + diff --git a/node_modules/@gar/promisify/README.md b/node_modules/@gar/promisify/README.md new file mode 100644 index 0000000..465c546 --- /dev/null +++ b/node_modules/@gar/promisify/README.md @@ -0,0 +1,65 @@ +# @gar/promisify + +### Promisify an entire object or class instance + +This module leverages es6 Proxy and Reflect to promisify every function in an +object or class instance. + +It assumes the callback that the function is expecting is the last +parameter, and that it is an error-first callback with only one value, +i.e. `(err, value) => ...`. This mirrors node's `util.promisify` method. + +In order that you can use it as a one-stop-shop for all your promisify +needs, you can also pass it a function. That function will be +promisified as normal using node's built-in `util.promisify` method. + +[node's custom promisified +functions](https://nodejs.org/api/util.html#util_custom_promisified_functions) +will also be mirrored, further allowing this to be a drop-in replacement +for the built-in `util.promisify`. + +### Examples + +Promisify an entire object + +```javascript + +const promisify = require('@gar/promisify') + +class Foo { + constructor (attr) { + this.attr = attr + } + + double (input, cb) { + cb(null, input * 2) + } + +const foo = new Foo('baz') +const promisified = promisify(foo) + +console.log(promisified.attr) +console.log(await promisified.double(1024)) +``` + +Promisify a function + +```javascript + +const promisify = require('@gar/promisify') + +function foo (a, cb) { + if (a !== 'bad') { + return cb(null, 'ok') + } + return cb('not ok') +} + +const promisified = promisify(foo) + +// This will resolve to 'ok' +promisified('good') + +// this will reject +promisified('bad') +``` diff --git a/node_modules/@gar/promisify/index.js b/node_modules/@gar/promisify/index.js new file mode 100644 index 0000000..d0be95f --- /dev/null +++ b/node_modules/@gar/promisify/index.js @@ -0,0 +1,36 @@ +'use strict' + +const { promisify } = require('util') + +const handler = { + get: function (target, prop, receiver) { + if (typeof target[prop] !== 'function') { + return target[prop] + } + if (target[prop][promisify.custom]) { + return function () { + return Reflect.get(target, prop, receiver)[promisify.custom].apply(target, arguments) + } + } + return function () { + return new Promise((resolve, reject) => { + Reflect.get(target, prop, receiver).apply(target, [...arguments, function (err, result) { + if (err) { + return reject(err) + } + resolve(result) + }]) + }) + } + } +} + +module.exports = function (thingToPromisify) { + if (typeof thingToPromisify === 'function') { + return promisify(thingToPromisify) + } + if (typeof thingToPromisify === 'object') { + return new Proxy(thingToPromisify, handler) + } + throw new TypeError('Can only promisify functions or objects') +} diff --git a/node_modules/@gar/promisify/package.json b/node_modules/@gar/promisify/package.json new file mode 100644 index 0000000..d0ce69b --- /dev/null +++ b/node_modules/@gar/promisify/package.json @@ -0,0 +1,32 @@ +{ + "name": "@gar/promisify", + "version": "1.1.3", + "description": "Promisify an entire class or object", + "main": "index.js", + "repository": { + "type": "git", + "url": "https://github.com/wraithgar/gar-promisify.git" + }, + "scripts": { + "lint": "standard", + "lint:fix": "standard --fix", + "test": "lab -a @hapi/code -t 100", + "posttest": "npm run lint" + }, + "files": [ + "index.js" + ], + "keywords": [ + "promisify", + "all", + "class", + "object" + ], + "author": "Gar ", + "license": "MIT", + "devDependencies": { + "@hapi/code": "^8.0.1", + "@hapi/lab": "^24.1.0", + "standard": "^16.0.3" + } +} diff --git a/node_modules/@iarna/toml/CHANGELOG.md b/node_modules/@iarna/toml/CHANGELOG.md new file mode 100644 index 0000000..21964f9 --- /dev/null +++ b/node_modules/@iarna/toml/CHANGELOG.md @@ -0,0 +1,278 @@ +# 2.2.5 + +* Docs: Updated benchmark results. Add fast-toml to result list. Improved benchmark layout. +* Update @sgarciac/bombadil and @ltd/j-toml in benchmarks and compliance tests. +* Dev: Some dev dep updates that shouldn't have any impact. + +# 2.2.4 + +* Bug fix: Plain date literals (not datetime) immediately followed by another statement (no whitespace or blank line) would crash. Fixes [#19](https://github.com/iarna/iarna-toml/issues/19) and [#23](https://github.com/iarna/iarna-toml/issues/23), thank you [@arnau](https://github.com/arnau) and [@jschaf](https://github.com/jschaf) for reporting this! +* Bug fix: Hex literals with lowercase Es would throw errors. (Thank you [@DaeCatt](https://github.com/DaeCatt) for this fix!) Fixed [#20](https://github.com/iarna/iarna-toml/issues/20) +* Some minor doc tweaks +* Added Node 12 and 13 to Travis. (Node 6 is failing there now, mysteriously. It works on my machine™, shipping anyway. 🙃) + +# 2.2.3 + +This release just updates the spec compliance tests and benchmark data to +better represent @ltd/j-toml. + +# 2.2.2 + +## Fixes + +* Support parsing and stringifying objects with `__proto__` properties. ([@LongTengDao](https://github.com/LongTengDao)) + +## Misc + +* Updates for spec compliance and benchmarking: + * @sgarciac/bombadil -> 2.1.0 + * toml -> 3.0.0 +* Added spec compliance and benchmarking for: + * @ltd/j-toml + +# 2.2.1 + +## Fixes + +* Fix bug where keys with names matching javascript Object methods would + error. Thanks [@LongTengDao](https://github.com/LongTengDao) for finding this! +* Fix bug where a bundled version would fail if `util.inspect` wasn't + provided. This was supposed to be guarded against, but there was a bug in + the guard. Thanks [@agriffis](https://github.com/agriffis) for finding and fixing this! + +## Misc + +* Update the version of bombadil for spec compliance and benchmarking purposes to 2.0.0 + +## Did you know? + +Node 6 and 8 are measurably slower than Node 6, 10 and 11, at least when it comes to parsing TOML! + +![](https://pbs.twimg.com/media/DtDeVjmU4AE5apz.jpg) + +# 2.2.0 + +## Features + +* Typescript: Lots of improvements to our type definitions, many many to + [@jorgegonzalez](https://github.com/jorgegonzalez) and [@momocow](https://github.com/momocow) for working through these. + +## Fixes + +* Very large integers (>52bit) are stored as BigInts on runtimes that + support them. BigInts are 128bits, but the TOML spec limits its integers + to 64bits. We now limit our integers to 64bits + as well. +* Fix a bug in stringify where control characters were being emitted as unicode chars and not escape sequences. + +## Misc + +* Moved our spec tests out to an external repo +* Improved the styling of the spec compliance comparison + +# 2.1.1 + +## Fixes + +* Oops, type defs didn't end up in the tarball, ty [@jorgegonzalez](https://github.com/jorgegonzalez)‼ + +# 2.1.0 + +## Features + +* Types for typescript support, thank you [@momocow](https://github.com/momocow)! + +## Fixes + +* stringify: always strip invalid dates. This fixes a bug where an + invalid date in an inline array would not be removed and would instead + result in an error. +* stringify: if an invalid type is found make sure it's thrown as an + error object. Previously the type name was, unhelpfully, being thrown. +* stringify: Multiline strings ending in a quote would generate invalid TOML. +* parse: Error if a signed integer has a leading zero, eg, `-01` or `+01`. +* parse: Error if \_ appears at the end of the integer part of a float, eg `1_.0`. \_ is only valid between _digits_. + +## Fun + +* BurntSushi's comprehensive TOML 0.4.0 test suite is now used in addition to our existing test suite. +* You can see exactly how the other JS TOML libraries stack up in testing + against both BurntSushi's tests and my own in the new + [TOML-SPEC-SUPPORT](TOML-SPEC-SUPPORT.md) doc. + +# 2.0.0 + +With 2.0.0, @iarna/toml supports the TOML v0.5.0 specification. TOML 0.5.0 +brings some changes: + +* Delete characters (U+007F) are not allowed in plain strings. You can include them with + escaped unicode characters, eg `\u007f`. +* Integers are specified as being 64bit unsigned values. These are + supported using `BigInt`s if you are using Node 10 or later. +* Keys may be literal strings, that is, you can use single quoted strings to + quote key names, so the following is now valid: + 'a"b"c' = 123 +* The floating point values `nan`, `inf` and `-inf` are supported. The stringifier will no + longer strip NaN, Infinity and -Infinity, instead serializing them as these new values.. +* Datetimes can separate the date and time with a space instead of a T, so + `2017-12-01T00:00:00Z` can be written as `2017-12-01 00:00:00Z`. +* Datetimes can be floating, that is, they can be represented without a timezone. + These are represented in javascript as Date objects whose `isFloating` property is true and + whose `toISOString` method will return a representation without a timezone. +* Dates without times are now supported. Dates do not have timezones. Dates + are represented in javascript as a Date object whose `isDate` property is true and + whose `toISOString` method returns just the date. +* Times without dates are now supported. Times do not have timezones. Times + are represented in javascript as a Date object whose `isTime` property is true and + whose `toISOString` method returns just the time. +* Keys can now include dots to directly address deeper structures, so `a.b = 23` is + the equivalent of `a = {b = 23}` or ```[a] +b = 23```. These can be used both as keys to regular tables and inline tables. +* Integers can now be specified in binary, octal and hexadecimal by prefixing the + number with `0b`, `0o` and `0x` respectively. It is now illegal to left + pad a decimal value with zeros. + +Some parser details were also fixed: + +* Negative zero (`-0.0`) and positive zero (`0.0`) are distinct floating point values. +* Negative integer zero (`-0`) is not distinguished from positive zero (`0`). + +# 1.7.1 + +Another 18% speed boost on our overall benchmarks! This time it came from +switching from string comparisons to integer by converting each character to +its respective code point. This also necessitated rewriting the boolean +parser to actually parse character-by-character as it should. End-of-stream +is now marked with a numeric value outside of the Unicode range, rather than +a Symbol, meaning that the parser's char property is now monomorphic. + +Bug fix, previously, `'abc''def'''` was accepted (as the value: `abcdef`). +Now it will correctly raise an error. + +Spec tests now run against bombadil as well (it fails some, which is unsurprising +given its incomplete state). + +# 1.7.0 + +This release features an overall 15% speed boost on our benchmarks. This +came from a few things: + +* Date parsing was rewritten to not use regexps, resulting in a huge speed increase. +* Strings of all kinds and bare keywords now use tight loops to collect characters when this will help. +* Regexps in general were mostly removed. This didn't result in a speed + change, but it did allow refactoring the parser to be a lot easier to + follow. +* The internal state tracking now uses a class and is constructed with a + fixed set of properties, allowing v8's optimizer to be more effective. + +In the land of new features: + +* Errors in the syntax of your TOML will now have the `fromTOML` property + set to true. This is in addition to the `line`, `col` and `pos` + properties they already have. + + The main use of this is to make it possible to distinguish between errors + in the TOML and errors in the parser code itself. This is of particular utility + when testing parse errors. + +# 1.6.0 + +**FIXES** + +* TOML.stringify: Allow toJSON properties that aren't functions, to align with JSON.stringify's behavior. +* TOML.stringify: Don't use ever render keys as literal strings. +* TOML.stringify: Don't try to escape control characters in literal strings. + +**FEATURES** + +* New Export: TOML.stringify.value, for encoding a stand alone inline value as TOML would. This produces + a TOML fragment, not a complete valid document. + +# 1.5.6 + +* String literals are NOT supported as key names. +* Accessing a shallower table after accessing it more deeply is ok and no longer crashes, eg: + ```toml + [a.b] + [a] + ``` +* Unicode characters in the reserved range now crash. +* Empty bare keys, eg `[.abc]` or `[]` now crash. +* Multiline backslash trimming supports CRs. +* Multiline post quote trimming supports CRs. +* Strings may not contain bare control chars (0x00-0x1f), except for \n, \r and \t. + +# 1.5.5 + +* Yet MORE README fixes. 🙃 + +# 1.5.4 + +* README fix + +# 1.5.3 + +* Benchmarks! +* More tests! +* More complete LICENSE information (some dev files are from other, MIT + licensed, projects, this is now more explicitly documented.) + +# 1.5.2 + +* parse: Arrays with mixed types now throw errors, per the spec. +* parse: Fix a parser bug that would result in errors when trying to parse arrays of numbers or dates + that were not separated by a space from the closing ]. +* parse: Fix a bug in the error pretty printer that resulted in errors on + the first line not getting the pretty print treatment. +* stringify: Fix long standing bug where an array of Numbers, some of which required + decimals, would be emitted in a way that parsers would treat as mixed + Integer and Float values. Now if any Numbers in an array must be + represented with a decimal then all will be emitted such that parsers will + understand them to be Float. + +# 1.5.1 + +* README fix + +# 1.5.0 + +* A brand new TOML parser, from scratch, that performs like `toml-j0.4` + without the crashes and with vastly better error messages. +* 100% test coverage for both the new parser and the existing stringifier. Some subtle bugs squashed! + +# v1.4.2 + +* Revert fallback due to its having issues with the same files. (New plan + will be to write my own.) + +# v1.4.1 + +* Depend on both `toml` and `toml-j0.4` with fallback from the latter to the + former when the latter crashes. + +# v1.4.0 + +* Ducktype dates to make them compatible with `moment` and other `Date` replacements. + +# v1.3.1 + +* Update docs with new toml module. + +# v1.3.0 + +* Switch from `toml` to `toml-j0.4`, which is between 20x and 200x faster. + (The larger the input, the faster it is compared to `toml`). + +# v1.2.0 + +* Return null when passed in null as the top level object. +* Detect and skip invalid dates and numbers + +# v1.1.0 + +* toJSON transformations are now honored (for everything except Date objects, as JSON represents them as strings). +* Undefined/null values no longer result in exceptions, they now just result in the associated key being elided. + +# v1.0.1 + +* Initial release diff --git a/node_modules/@iarna/toml/LICENSE b/node_modules/@iarna/toml/LICENSE new file mode 100644 index 0000000..51bcf57 --- /dev/null +++ b/node_modules/@iarna/toml/LICENSE @@ -0,0 +1,14 @@ +Copyright (c) 2016, Rebecca Turner + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + diff --git a/node_modules/@iarna/toml/README.md b/node_modules/@iarna/toml/README.md new file mode 100644 index 0000000..1958324 --- /dev/null +++ b/node_modules/@iarna/toml/README.md @@ -0,0 +1,301 @@ +# @iarna/toml + +Better TOML parsing and stringifying all in that familiar JSON interface. + +[![Coverage Status](https://coveralls.io/repos/github/iarna/iarna-toml/badge.svg)](https://coveralls.io/github/iarna/iarna-toml) + +# ** TOML 0.5.0 ** + +### TOML Spec Support + +The most recent version as of 2018-07-26: [v0.5.0](https://github.com/mojombo/toml/blob/master/versions/en/toml-v0.5.0.md) + +### Example + +```js +const TOML = require('@iarna/toml') +const obj = TOML.parse(`[abc] +foo = 123 +bar = [1,2,3]`) +/* obj = +{abc: {foo: 123, bar: [1,2,3]}} +*/ +const str = TOML.stringify(obj) +/* str = +[abc] +foo = 123 +bar = [ 1, 2, 3 ] +*/ +``` + +Visit the project github [for more examples](https://github.com/iarna/iarna-toml/tree/latest/examples)! + + +## Why @iarna/toml + +* See [TOML-SPEC-SUPPORT](https://shared.by.re-becca.org/misc/TOML-SPEC-SUPPORT.html) + for a comparison of which TOML features are supported by the various + Node.js TOML parsers. +* BigInt support on Node 10! +* 100% test coverage. +* Fast parsing. It's as much as 100 times + faster than `toml` and 3 times faster than `toml-j0.4`. However a recent + newcomer [`@ltd/j-toml`](https://www.npmjs.com/package/@ltd/j-toml) has + appeared with 0.5 support and astoundingly fast parsing speeds for large + text blocks. All I can say is you'll have to test your specific work loads + if you want to know which of @iarna/toml and @ltd/j-toml is faster for + you, as we currently excell in different areas. +* Careful adherence to spec. Tests go beyond simple coverage. +* Smallest parser bundle (if you use `@iarna/toml/parse-string`). +* No deps. +* Detailed and easy to read error messages‼ + +```console +> TOML.parse(src) +Error: Unexpected character, expecting string, number, datetime, boolean, inline array or inline table at row 6, col 5, pos 87: +5: "abc\"" = { abc=123,def="abc" } +6> foo=sdkfj + ^ +7: +``` + +## TOML.parse(str) → Object [(example)](https://github.com/iarna/iarna-toml/blob/latest/examples/parse.js) + +Also available with: `require('@iarna/toml/parse-string')` + +Synchronously parse a TOML string and return an object. + + +## TOML.stringify(obj) → String [(example)](https://github.com/iarna/iarna-toml/blob/latest/examples/stringify.js) + +Also available with: `require('@iarna/toml/stringify)` + +Serialize an object as TOML. + +## [your-object].toJSON + +If an object `TOML.stringify` is serializing has a `toJSON` method then it +will call it to transform the object before serializing it. This matches +the behavior of `JSON.stringify`. + +The one exception to this is that `toJSON` is not called for `Date` objects +because `JSON` represents dates as strings and TOML can represent them natively. + +[`moment`](https://www.npmjs.com/package/moment) objects are treated the +same as native `Date` objects, in this respect. + +## TOML.stringify.value(obj) -> String + +Also available with: `require('@iarna/toml/stringify').value` + +Serialize a value as TOML would. This is a fragment and not a complete +valid TOML document. + +## Promises and Streaming + +The parser provides alternative async and streaming interfaces, for times +that you're working with really absurdly big TOML files and don't want to +tie-up the event loop while it parses. + +### TOML.parse.async(str[, opts]) → Promise(Object) [(example)](https://github.com/iarna/iarna-toml/blob/latest/examples/parse-async.js) + +Also available with: `require('@iarna/toml/parse-async')` + +`opts.blocksize` is the amount text to parser per pass through the event loop. Defaults to 40kb. + +Asynchronously parse a TOML string and return a promise of the resulting object. + +### TOML.parse.stream(readable) → Promise(Object) [(example)](https://github.com/iarna/iarna-toml/blob/latest/examples/parse-stream-readable.js) + +Also available with: `require('@iarna/toml/parse-stream')` + +Given a readable stream, parse it as it feeds us data. Return a promise of the resulting object. + +### readable.pipe(TOML.parse.stream()) → Transform [(example)](https://github.com/iarna/iarna-toml/blob/latest/examples/parse-stream-through.js) + +Also available with: `require('@iarna/toml/parse-stream')` + +Returns a transform stream in object mode. When it completes, emit the +resulting object. Only one object will ever be emitted. + +## Lowlevel Interface [(example)](https://github.com/iarna/iarna-toml/blob/latest/examples/parse-lowlevel.js) [(example w/ parser debugging)](https://github.com/iarna/iarna-toml/blob/latest/examples/parse-lowlevel-debug.js) + +You construct a parser object, per TOML file you want to process: + +```js +const TOMLParser = require('@iarna/toml/lib/toml-parser.js') +const parser = new TOMLParser() +``` + +Then you call the `parse` method for each chunk as you read them, or in a +single call: + +```js +parser.parse(`hello = 'world'`) +``` + +And finally, you call the `finish` method to complete parsing and retrieve +the resulting object. + +```js +const data = parser.finish() +``` + +Both the `parse` method and `finish` method will throw if they find a +problem with the string they were given. Error objects thrown from the +parser have `pos`, `line` and `col` attributes. `TOML.parse` adds a visual +summary of where in the source string there were issues using +`parse-pretty-error` and you can too: + +```js +const prettyError = require('./parse-pretty-error.js') +const newErr = prettyError(err, sourceString) +``` + +## What's Different + +Version 2 of this module supports TOML 0.5.0. Other modules currently +published to the npm registry support 0.4.0. 0.5.0 is mostly backwards +compatible with 0.4.0, but if you have need, you can install @iarna/toml@1 +to get a version of this module that supports 0.4.0. Please see the +[CHANGELOG](CHANGELOG.md#2.0.0) for details on exactly whats changed. + +## TOML we can't do + +* `-nan` is a valid TOML value and is converted into `NaN`. There is no way to + produce `-nan` when stringifying. Stringification will produce positive `nan`. +* Detecting and erroring on invalid utf8 documents: This is because Node's + UTF8 processing converts invalid sequences into the placeholder character + and does not have facilities for reporting these as errors instead. We + _can_ detect the placeholder character, but it's valid to intentionally + include them in documents, so erroring on them is not great. +* On versions of Node < 10, very large Integer values will lose precision. + On Node >=10, bigints are used. +* Floating/local dates and times are still represented by JavaScript Date + objects, which don't actually support these concepts. The objects + returned have been modified so that you can determine what kind of thing + they are (with `isFloating`, `isDate`, `isTime` properties) and that + their ISO representation (via `toISOString`) is representative of their + TOML value. They will correctly round trip if you pass them to + `TOML.stringify`. +* Binary, hexadecimal and octal values are converted to ordinary integers and + will be decimal if you stringify them. + +## Changes + +I write a by hand, honest-to-god, +[CHANGELOG](https://github.com/iarna/iarna-toml/blob/latest/CHANGELOG.md) +for this project. It's a description of what went into a release that you +the consumer of the module could care about, not a list of git commits, so +please check it out! + +## Benchmarks + +You can run them yourself with: + +```console +$ npm run benchmark +``` + +The results below are from my desktop using Node 13.13.0. The library +versions tested were `@iarna/toml@2.2.4`, `toml-j0.4@1.1.1`, `toml@3.0.0`, +`@sgarciac/bombadil@2.3.0`, `@ltd/j-toml@0.5.107`, and `fast-toml@0.5.4`. The speed value is +megabytes-per-second that the parser can process of that document type. +Bigger is better. The percentage after average results is the margin of error. + +New here is fast-toml. fast-toml is very fast, for some datatypes, but it +also is missing most error checking demanded by the spec. For 0.4, it is +complete except for detail of multiline strings caught by the compliance +tests. Its support for 0.5 is incomplete. Check out the +[spec compliance](https://shared.by.re-becca.org/misc/TOML-SPEC-SUPPORT.html) doc +for details. + +As this table is getting a little wide, with how npm and github display it, +you can also view it seperately in the +[BENCHMARK](https://shared.by.re-becca.org/misc/BENCHMARK.html) document. + +| | @iarna/toml | toml-j0.4 | toml | @sgarciac/bombadil | @ltd/j-toml | fast-toml | +| - | :---------: | :-------: | :--: | :----------------: | :---------: | :-------: | +| **Overall** | 28MB/sec
0.35% | 6.5MB/sec
0.25% | 0.2MB/sec
0.70% | - | 35MB/sec
0.23% | - | +| **Spec Example: v0.4.0** | 26MB/sec
0.37% | 10MB/sec
0.27% | 1MB/sec
0.42% | 1.2MB/sec
0.95% | 28MB/sec
0.31% | - | +| **Spec Example: Hard Unicode** | 64MB/sec
0.59% | 18MB/sec
0.12% | 2MB/sec
0.20% | 0.6MB/sec
0.53% | 68MB/sec
0.31% | 78MB/sec
0.28% | +| **Types: Array, Inline** | 7.3MB/sec
0.60% | 4MB/sec
0.16% | 0.1MB/sec
0.91% | 1.3MB/sec
0.81% | 10MB/sec
0.35% | 9MB/sec
0.16% | +| **Types: Array** | 6.8MB/sec
0.19% | 6.7MB/sec
0.15% | 0.2MB/sec
0.79% | 1.2MB/sec
0.93% | 8.8MB/sec
0.47% | 27MB/sec
0.21% | +| **Types: Boolean,** | 21MB/sec
0.20% | 9.4MB/sec
0.17% | 0.2MB/sec
0.96% | 1.8MB/sec
0.70% | 16MB/sec
0.20% | 8.4MB/sec
0.22% | +| **Types: Datetime** | 18MB/sec
0.14% | 11MB/sec
0.15% | 0.3MB/sec
0.85% | 1.6MB/sec
0.45% | 9.8MB/sec
0.48% | 6.5MB/sec
0.23% | +| **Types: Float** | 8.8MB/sec
0.09% | 5.9MB/sec
0.14% | 0.2MB/sec
0.51% | 2.1MB/sec
0.82% | 14MB/sec
0.15% | 7.9MB/sec
0.14% | +| **Types: Int** | 5.9MB/sec
0.11% | 4.5MB/sec
0.28% | 0.1MB/sec
0.78% | 1.5MB/sec
0.64% | 10MB/sec
0.14% | 8MB/sec
0.17% | +| **Types: Literal String, 7 char** | 26MB/sec
0.29% | 8.5MB/sec
0.32% | 0.3MB/sec
0.84% | 2.3MB/sec
1.02% | 23MB/sec
0.15% | 13MB/sec
0.15% | +| **Types: Literal String, 92 char** | 46MB/sec
0.19% | 11MB/sec
0.20% | 0.3MB/sec
0.56% | 12MB/sec
0.92% | 101MB/sec
0.17% | 75MB/sec
0.29% | +| **Types: Literal String, Multiline, 1079 char** | 22MB/sec
0.42% | 6.7MB/sec
0.55% | 0.9MB/sec
0.78% | 44MB/sec
1.00% | 350MB/sec
0.16% | 636MB/sec
0.16% | +| **Types: Basic String, 7 char** | 25MB/sec
0.15% | 7.3MB/sec
0.18% | 0.2MB/sec
0.96% | 2.2MB/sec
1.09% | 14MB/sec
0.16% | 12MB/sec
0.22% | +| **Types: Basic String, 92 char** | 43MB/sec
0.30% | 7.2MB/sec
0.16% | 0.1MB/sec
4.04% | 12MB/sec
1.33% | 71MB/sec
0.19% | 70MB/sec
0.23% | +| **Types: Basic String, 1079 char** | 24MB/sec
0.45% | 5.8MB/sec
0.17% | 0.1MB/sec
3.64% | 44MB/sec
1.05% | 93MB/sec
0.29% | 635MB/sec
0.28% | +| **Types: Table, Inline** | 9.7MB/sec
0.10% | 5.5MB/sec
0.22% | 0.1MB/sec
0.87% | 1.4MB/sec
1.18% | 8.7MB/sec
0.60% | 8.7MB/sec
0.22% | +| **Types: Table** | 7.1MB/sec
0.14% | 5.6MB/sec
0.42% | 0.1MB/sec
0.65% | 1.4MB/sec
1.11% | 7.4MB/sec
0.70% | 18MB/sec
0.20% | +| **Scaling: Array, Inline, 1000 elements** | 40MB/sec
0.21% | 2.4MB/sec
0.19% | 0.1MB/sec
0.35% | 1.6MB/sec
1.02% | 17MB/sec
0.15% | 32MB/sec
0.16% | +| **Scaling: Array, Nested, 1000 deep** | 2MB/sec
0.15% | 1.7MB/sec
0.26% | 0.3MB/sec
0.58% | - | 1.8MB/sec
0.74% | 13MB/sec
0.20% | +| **Scaling: Literal String, 40kb** | 61MB/sec
0.18% | 10MB/sec
0.15% | 3MB/sec
0.84% | 12MB/sec
0.51% | 551MB/sec
0.44% | 19kMB/sec
0.19% | +| **Scaling: Literal String, Multiline, 40kb** | 62MB/sec
0.16% | 5MB/sec
0.45% | 0.2MB/sec
1.70% | 11MB/sec
0.74% | 291MB/sec
0.24% | 21kMB/sec
0.22% | +| **Scaling: Basic String, Multiline, 40kb** | 62MB/sec
0.18% | 5.8MB/sec
0.38% | 2.9MB/sec
0.86% | 11MB/sec
0.41% | 949MB/sec
0.44% | 26kMB/sec
0.16% | +| **Scaling: Basic String, 40kb** | 59MB/sec
0.20% | 6.3MB/sec
0.17% | 0.2MB/sec
1.95% | 12MB/sec
0.44% | 508MB/sec
0.35% | 18kMB/sec
0.15% | +| **Scaling: Table, Inline, 1000 elements** | 28MB/sec
0.12% | 8.2MB/sec
0.19% | 0.3MB/sec
0.89% | 2.3MB/sec
1.14% | 5.3MB/sec
0.24% | 13MB/sec
0.20% | +| **Scaling: Table, Inline, Nested, 1000 deep** | 7.8MB/sec
0.28% | 5MB/sec
0.20% | 0.1MB/sec
0.84% | - | 3.2MB/sec
0.52% | 10MB/sec
0.23% | + +## Tests + +The test suite is maintained at 100% coverage: [![Coverage Status](https://coveralls.io/repos/github/iarna/iarna-toml/badge.svg)](https://coveralls.io/github/iarna/iarna-toml) + +The spec was carefully hand converted into a series of test framework +independent (and mostly language independent) assertions, as pairs of TOML +and YAML files. You can find those files here: +[spec-test](https://github.com/iarna/iarna-toml/blob/latest/test/spec-test/). +A number of examples of invalid Unicode were also written, but are difficult +to make use of in Node.js where Unicode errors are silently hidden. You can +find those here: [spec-test-disabled](https://github.com/iarna/iarna-toml/blob/latest/test/spec-test-disabled/). + +Further tests were written to increase coverage to 100%, these may be more +implementation specific, but they can be found in [coverage](https://github.com/iarna/iarna-toml/blob/latest/test/coverage.js) and +[coverage-error](https://github.com/iarna/iarna-toml/blob/latest/test/coverage-error.js). + +I've also written some quality assurance style tests, which don't contribute +to coverage but do cover scenarios that could easily be problematic for some +implementations can be found in: +[test/qa.js](https://github.com/iarna/iarna-toml/blob/latest/test/qa.js) and +[test/qa-error.js](https://github.com/iarna/iarna-toml/blob/latest/test/qa-error.js). + +All of the official example files from the TOML spec are run through this +parser and compared to the official YAML files when available. These files are from the TOML spec as of: +[357a4ba6](https://github.com/toml-lang/toml/tree/357a4ba6782e48ff26e646780bab11c90ed0a7bc) +and specifically are: + +* [github.com/toml-lang/toml/tree/357a4ba6/examples](https://github.com/toml-lang/toml/tree/357a4ba6782e48ff26e646780bab11c90ed0a7bc/examples) +* [github.com/toml-lang/toml/tree/357a4ba6/tests](https://github.com/toml-lang/toml/tree/357a4ba6782e48ff26e646780bab11c90ed0a7bc/tests) + +The stringifier is tested by round-tripping these same files, asserting that +`TOML.parse(sourcefile)` deepEqual +`TOML.parse(TOML.stringify(TOML.parse(sourcefile))`. This is done in +[test/roundtrip-examples.js](https://github.com/iarna/iarna-toml/blob/latest/test/round-tripping.js) +There are also some tests written to complete coverage from stringification in: +[test/stringify.js](https://github.com/iarna/iarna-toml/blob/latest/test/stringify.js) + +Tests for the async and streaming interfaces are in [test/async.js](https://github.com/iarna/iarna-toml/blob/latest/test/async.js) and [test/stream.js](https://github.com/iarna/iarna-toml/blob/latest/test/stream.js) respectively. + +Tests for the parsers debugging mode live in [test/devel.js](https://github.com/iarna/iarna-toml/blob/latest/test/devel.js). + +And finally, many more stringification tests were borrowed from [@othiym23](https://github.com/othiym23)'s +[toml-stream](https://npmjs.com/package/toml-stream) module. They were fetched as of +[b6f1e26b572d49742d49fa6a6d11524d003441fa](https://github.com/othiym23/toml-stream/tree/b6f1e26b572d49742d49fa6a6d11524d003441fa/test) and live in +[test/toml-stream](https://github.com/iarna/iarna-toml/blob/latest/test/toml-stream/). + +## Improvements to make + +* In stringify: + * Any way to produce comments. As a JSON stand-in I'm not too worried + about this. That said, a document orientated fork is something I'd like + to look at eventually… + * Stringification could use some work on its error reporting. It reports + _what's_ wrong, but not where in your data structure it was. +* Further optimize the parser: + * There are some debugging assertions left in the main parser, these should be moved to a subclass. + * Make the whole debugging parser thing work as a mixin instead of as a superclass. diff --git a/node_modules/@iarna/toml/index.d.ts b/node_modules/@iarna/toml/index.d.ts new file mode 100644 index 0000000..d37e2b6 --- /dev/null +++ b/node_modules/@iarna/toml/index.d.ts @@ -0,0 +1,57 @@ +import { Transform } from "stream"; + +type JsonArray = boolean[] | number[] | string[] | JsonMap[] | Date[] +type AnyJson = boolean | number | string | JsonMap | Date | JsonArray | JsonArray[] + +interface JsonMap { + [key: string]: AnyJson; +} + +interface ParseOptions { + /** + * The amount text to parser per pass through the event loop. Defaults to 40kb (`40000`). + */ + blocksize: number +} + +interface FuncParse { + /** + * Synchronously parse a TOML string and return an object. + */ + (toml: string): JsonMap + + /** + * Asynchronously parse a TOML string and return a promise of the resulting object. + */ + async (toml: string, options?: ParseOptions): Promise + + /** + * Given a readable stream, parse it as it feeds us data. Return a promise of the resulting object. + */ + stream (readable: NodeJS.ReadableStream): Promise + stream (): Transform +} + +interface FuncStringify { + /** + * Serialize an object as TOML. + * + * If an object `TOML.stringify` is serializing has a `toJSON` method + * then it will call it to transform the object before serializing it. + * This matches the behavior of JSON.stringify. + * + * The one exception to this is that `toJSON` is not called for `Date` objects + * because JSON represents dates as strings and TOML can represent them natively. + * + * `moment` objects are treated the same as native `Date` objects, in this respect. + */ + (obj: JsonMap): string + + /** + * Serialize a value as TOML would. This is a fragment and not a complete valid TOML document. + */ + value (any: AnyJson): string +} + +export const parse: FuncParse +export const stringify: FuncStringify diff --git a/node_modules/@iarna/toml/lib/create-date.js b/node_modules/@iarna/toml/lib/create-date.js new file mode 100644 index 0000000..469fc65 --- /dev/null +++ b/node_modules/@iarna/toml/lib/create-date.js @@ -0,0 +1,23 @@ +'use strict' +const f = require('./format-num.js') +const DateTime = global.Date + +class Date extends DateTime { + constructor (value) { + super(value) + this.isDate = true + } + toISOString () { + return `${this.getUTCFullYear()}-${f(2, this.getUTCMonth() + 1)}-${f(2, this.getUTCDate())}` + } +} + +module.exports = value => { + const date = new Date(value) + /* istanbul ignore if */ + if (isNaN(date)) { + throw new TypeError('Invalid Datetime') + } else { + return date + } +} diff --git a/node_modules/@iarna/toml/lib/create-datetime-float.js b/node_modules/@iarna/toml/lib/create-datetime-float.js new file mode 100644 index 0000000..6fb30ac --- /dev/null +++ b/node_modules/@iarna/toml/lib/create-datetime-float.js @@ -0,0 +1,24 @@ +'use strict' +const f = require('./format-num.js') + +class FloatingDateTime extends Date { + constructor (value) { + super(value + 'Z') + this.isFloating = true + } + toISOString () { + const date = `${this.getUTCFullYear()}-${f(2, this.getUTCMonth() + 1)}-${f(2, this.getUTCDate())}` + const time = `${f(2, this.getUTCHours())}:${f(2, this.getUTCMinutes())}:${f(2, this.getUTCSeconds())}.${f(3, this.getUTCMilliseconds())}` + return `${date}T${time}` + } +} + +module.exports = value => { + const date = new FloatingDateTime(value) + /* istanbul ignore if */ + if (isNaN(date)) { + throw new TypeError('Invalid Datetime') + } else { + return date + } +} diff --git a/node_modules/@iarna/toml/lib/create-datetime.js b/node_modules/@iarna/toml/lib/create-datetime.js new file mode 100644 index 0000000..47deded --- /dev/null +++ b/node_modules/@iarna/toml/lib/create-datetime.js @@ -0,0 +1,10 @@ +'use strict' +module.exports = value => { + const date = new Date(value) + /* istanbul ignore if */ + if (isNaN(date)) { + throw new TypeError('Invalid Datetime') + } else { + return date + } +} diff --git a/node_modules/@iarna/toml/lib/create-time.js b/node_modules/@iarna/toml/lib/create-time.js new file mode 100644 index 0000000..190c767 --- /dev/null +++ b/node_modules/@iarna/toml/lib/create-time.js @@ -0,0 +1,22 @@ +'use strict' +const f = require('./format-num.js') + +class Time extends Date { + constructor (value) { + super(`0000-01-01T${value}Z`) + this.isTime = true + } + toISOString () { + return `${f(2, this.getUTCHours())}:${f(2, this.getUTCMinutes())}:${f(2, this.getUTCSeconds())}.${f(3, this.getUTCMilliseconds())}` + } +} + +module.exports = value => { + const date = new Time(value) + /* istanbul ignore if */ + if (isNaN(date)) { + throw new TypeError('Invalid Datetime') + } else { + return date + } +} diff --git a/node_modules/@iarna/toml/lib/format-num.js b/node_modules/@iarna/toml/lib/format-num.js new file mode 100644 index 0000000..6addf08 --- /dev/null +++ b/node_modules/@iarna/toml/lib/format-num.js @@ -0,0 +1,6 @@ +'use strict' +module.exports = (d, num) => { + num = String(num) + while (num.length < d) num = '0' + num + return num +} diff --git a/node_modules/@iarna/toml/lib/parser-debug.js b/node_modules/@iarna/toml/lib/parser-debug.js new file mode 100644 index 0000000..e222f27 --- /dev/null +++ b/node_modules/@iarna/toml/lib/parser-debug.js @@ -0,0 +1,60 @@ +'use strict' +const Parser = require('./parser.js') +const util = require('util') + +const dump = _ => util.inspect(_, {colors: true, depth: 10, breakLength: Infinity}) +class DebugParser extends Parser { + stateName (state) { + // istanbul ignore next + return (state.parser && state.parser.name) || state.name || ('anonymous') + } + runOne () { + const callStack = this.stack.concat(this.state).map(_ => this.stateName(_)).join(' <- ') + console.log('RUN', callStack, dump({line: this.line, col: this.col, char: this.char, ret: this.state.returned})) + return super.runOne() + } + finish () { + const obj = super.finish() + // istanbul ignore if + if (this.stack.length !== 0) { + throw new Parser.Error('All states did not return by end of stream') + } + return obj + } + callStack () { + const callStack = this.stack.map(_ => this.stateName(_)).join(' ').replace(/\S/g, ' ') + return callStack ? callStack + ' ' : '' + } + next (fn) { + console.log(' ', this.callStack(), 'NEXT', this.stateName(fn)) + return super.next(fn) + } + goto (fn) { + console.log(' ', this.callStack(), 'GOTO', this.stateName(fn)) + super.next(fn) + return false + } + call (fn, returnWith) { + console.log(' ', this.callStack(), 'CALL', fn.name, returnWith ? '-> ' + returnWith.name : '') + if (returnWith) super.next(returnWith) + this.stack.push(this.state) + this.state = {parser: fn, buf: '', returned: null} + } + callNow (fn, returnWith) { + console.log(' ', this.callStack(), 'CALLNOW', fn.name, returnWith ? '-> ' + returnWith.name : '') + if (returnWith) super.next(returnWith) + this.stack.push(this.state) + this.state = {parser: fn, buf: '', returned: null} + return false + } + return (value) { + console.log(' ', this.callStack(), 'RETURN') + return super.return(value) + } + returnNow (value) { + console.log(' ', this.callStack(), 'RETURNNOW') + super.return(value) + return false + } +} +module.exports = DebugParser diff --git a/node_modules/@iarna/toml/lib/parser.js b/node_modules/@iarna/toml/lib/parser.js new file mode 100644 index 0000000..398856b --- /dev/null +++ b/node_modules/@iarna/toml/lib/parser.js @@ -0,0 +1,127 @@ +'use strict' +const ParserEND = 0x110000 +class ParserError extends Error { + /* istanbul ignore next */ + constructor (msg, filename, linenumber) { + super('[ParserError] ' + msg, filename, linenumber) + this.name = 'ParserError' + this.code = 'ParserError' + if (Error.captureStackTrace) Error.captureStackTrace(this, ParserError) + } +} +class State { + constructor (parser) { + this.parser = parser + this.buf = '' + this.returned = null + this.result = null + this.resultTable = null + this.resultArr = null + } +} +class Parser { + constructor () { + this.pos = 0 + this.col = 0 + this.line = 0 + this.obj = {} + this.ctx = this.obj + this.stack = [] + this._buf = '' + this.char = null + this.ii = 0 + this.state = new State(this.parseStart) + } + + parse (str) { + /* istanbul ignore next */ + if (str.length === 0 || str.length == null) return + + this._buf = String(str) + this.ii = -1 + this.char = -1 + let getNext + while (getNext === false || this.nextChar()) { + getNext = this.runOne() + } + this._buf = null + } + nextChar () { + if (this.char === 0x0A) { + ++this.line + this.col = -1 + } + ++this.ii + this.char = this._buf.codePointAt(this.ii) + ++this.pos + ++this.col + return this.haveBuffer() + } + haveBuffer () { + return this.ii < this._buf.length + } + runOne () { + return this.state.parser.call(this, this.state.returned) + } + finish () { + this.char = ParserEND + let last + do { + last = this.state.parser + this.runOne() + } while (this.state.parser !== last) + + this.ctx = null + this.state = null + this._buf = null + + return this.obj + } + next (fn) { + /* istanbul ignore next */ + if (typeof fn !== 'function') throw new ParserError('Tried to set state to non-existent state: ' + JSON.stringify(fn)) + this.state.parser = fn + } + goto (fn) { + this.next(fn) + return this.runOne() + } + call (fn, returnWith) { + if (returnWith) this.next(returnWith) + this.stack.push(this.state) + this.state = new State(fn) + } + callNow (fn, returnWith) { + this.call(fn, returnWith) + return this.runOne() + } + return (value) { + /* istanbul ignore next */ + if (this.stack.length === 0) throw this.error(new ParserError('Stack underflow')) + if (value === undefined) value = this.state.buf + this.state = this.stack.pop() + this.state.returned = value + } + returnNow (value) { + this.return(value) + return this.runOne() + } + consume () { + /* istanbul ignore next */ + if (this.char === ParserEND) throw this.error(new ParserError('Unexpected end-of-buffer')) + this.state.buf += this._buf[this.ii] + } + error (err) { + err.line = this.line + err.col = this.col + err.pos = this.pos + return err + } + /* istanbul ignore next */ + parseStart () { + throw new ParserError('Must declare a parseStart method') + } +} +Parser.END = ParserEND +Parser.Error = ParserError +module.exports = Parser diff --git a/node_modules/@iarna/toml/lib/toml-parser.js b/node_modules/@iarna/toml/lib/toml-parser.js new file mode 100644 index 0000000..ebcaec8 --- /dev/null +++ b/node_modules/@iarna/toml/lib/toml-parser.js @@ -0,0 +1,1379 @@ +'use strict' +/* eslint-disable no-new-wrappers, no-eval, camelcase, operator-linebreak */ +module.exports = makeParserClass(require('./parser.js')) +module.exports.makeParserClass = makeParserClass + +class TomlError extends Error { + constructor (msg) { + super(msg) + this.name = 'TomlError' + /* istanbul ignore next */ + if (Error.captureStackTrace) Error.captureStackTrace(this, TomlError) + this.fromTOML = true + this.wrapped = null + } +} +TomlError.wrap = err => { + const terr = new TomlError(err.message) + terr.code = err.code + terr.wrapped = err + return terr +} +module.exports.TomlError = TomlError + +const createDateTime = require('./create-datetime.js') +const createDateTimeFloat = require('./create-datetime-float.js') +const createDate = require('./create-date.js') +const createTime = require('./create-time.js') + +const CTRL_I = 0x09 +const CTRL_J = 0x0A +const CTRL_M = 0x0D +const CTRL_CHAR_BOUNDARY = 0x1F // the last non-character in the latin1 region of unicode, except DEL +const CHAR_SP = 0x20 +const CHAR_QUOT = 0x22 +const CHAR_NUM = 0x23 +const CHAR_APOS = 0x27 +const CHAR_PLUS = 0x2B +const CHAR_COMMA = 0x2C +const CHAR_HYPHEN = 0x2D +const CHAR_PERIOD = 0x2E +const CHAR_0 = 0x30 +const CHAR_1 = 0x31 +const CHAR_7 = 0x37 +const CHAR_9 = 0x39 +const CHAR_COLON = 0x3A +const CHAR_EQUALS = 0x3D +const CHAR_A = 0x41 +const CHAR_E = 0x45 +const CHAR_F = 0x46 +const CHAR_T = 0x54 +const CHAR_U = 0x55 +const CHAR_Z = 0x5A +const CHAR_LOWBAR = 0x5F +const CHAR_a = 0x61 +const CHAR_b = 0x62 +const CHAR_e = 0x65 +const CHAR_f = 0x66 +const CHAR_i = 0x69 +const CHAR_l = 0x6C +const CHAR_n = 0x6E +const CHAR_o = 0x6F +const CHAR_r = 0x72 +const CHAR_s = 0x73 +const CHAR_t = 0x74 +const CHAR_u = 0x75 +const CHAR_x = 0x78 +const CHAR_z = 0x7A +const CHAR_LCUB = 0x7B +const CHAR_RCUB = 0x7D +const CHAR_LSQB = 0x5B +const CHAR_BSOL = 0x5C +const CHAR_RSQB = 0x5D +const CHAR_DEL = 0x7F +const SURROGATE_FIRST = 0xD800 +const SURROGATE_LAST = 0xDFFF + +const escapes = { + [CHAR_b]: '\u0008', + [CHAR_t]: '\u0009', + [CHAR_n]: '\u000A', + [CHAR_f]: '\u000C', + [CHAR_r]: '\u000D', + [CHAR_QUOT]: '\u0022', + [CHAR_BSOL]: '\u005C' +} + +function isDigit (cp) { + return cp >= CHAR_0 && cp <= CHAR_9 +} +function isHexit (cp) { + return (cp >= CHAR_A && cp <= CHAR_F) || (cp >= CHAR_a && cp <= CHAR_f) || (cp >= CHAR_0 && cp <= CHAR_9) +} +function isBit (cp) { + return cp === CHAR_1 || cp === CHAR_0 +} +function isOctit (cp) { + return (cp >= CHAR_0 && cp <= CHAR_7) +} +function isAlphaNumQuoteHyphen (cp) { + return (cp >= CHAR_A && cp <= CHAR_Z) + || (cp >= CHAR_a && cp <= CHAR_z) + || (cp >= CHAR_0 && cp <= CHAR_9) + || cp === CHAR_APOS + || cp === CHAR_QUOT + || cp === CHAR_LOWBAR + || cp === CHAR_HYPHEN +} +function isAlphaNumHyphen (cp) { + return (cp >= CHAR_A && cp <= CHAR_Z) + || (cp >= CHAR_a && cp <= CHAR_z) + || (cp >= CHAR_0 && cp <= CHAR_9) + || cp === CHAR_LOWBAR + || cp === CHAR_HYPHEN +} +const _type = Symbol('type') +const _declared = Symbol('declared') + +const hasOwnProperty = Object.prototype.hasOwnProperty +const defineProperty = Object.defineProperty +const descriptor = {configurable: true, enumerable: true, writable: true, value: undefined} + +function hasKey (obj, key) { + if (hasOwnProperty.call(obj, key)) return true + if (key === '__proto__') defineProperty(obj, '__proto__', descriptor) + return false +} + +const INLINE_TABLE = Symbol('inline-table') +function InlineTable () { + return Object.defineProperties({}, { + [_type]: {value: INLINE_TABLE} + }) +} +function isInlineTable (obj) { + if (obj === null || typeof (obj) !== 'object') return false + return obj[_type] === INLINE_TABLE +} + +const TABLE = Symbol('table') +function Table () { + return Object.defineProperties({}, { + [_type]: {value: TABLE}, + [_declared]: {value: false, writable: true} + }) +} +function isTable (obj) { + if (obj === null || typeof (obj) !== 'object') return false + return obj[_type] === TABLE +} + +const _contentType = Symbol('content-type') +const INLINE_LIST = Symbol('inline-list') +function InlineList (type) { + return Object.defineProperties([], { + [_type]: {value: INLINE_LIST}, + [_contentType]: {value: type} + }) +} +function isInlineList (obj) { + if (obj === null || typeof (obj) !== 'object') return false + return obj[_type] === INLINE_LIST +} + +const LIST = Symbol('list') +function List () { + return Object.defineProperties([], { + [_type]: {value: LIST} + }) +} +function isList (obj) { + if (obj === null || typeof (obj) !== 'object') return false + return obj[_type] === LIST +} + +// in an eval, to let bundlers not slurp in a util proxy +let _custom +try { + const utilInspect = eval("require('util').inspect") + _custom = utilInspect.custom +} catch (_) { + /* eval require not available in transpiled bundle */ +} +/* istanbul ignore next */ +const _inspect = _custom || 'inspect' + +class BoxedBigInt { + constructor (value) { + try { + this.value = global.BigInt.asIntN(64, value) + } catch (_) { + /* istanbul ignore next */ + this.value = null + } + Object.defineProperty(this, _type, {value: INTEGER}) + } + isNaN () { + return this.value === null + } + /* istanbul ignore next */ + toString () { + return String(this.value) + } + /* istanbul ignore next */ + [_inspect] () { + return `[BigInt: ${this.toString()}]}` + } + valueOf () { + return this.value + } +} + +const INTEGER = Symbol('integer') +function Integer (value) { + let num = Number(value) + // -0 is a float thing, not an int thing + if (Object.is(num, -0)) num = 0 + /* istanbul ignore else */ + if (global.BigInt && !Number.isSafeInteger(num)) { + return new BoxedBigInt(value) + } else { + /* istanbul ignore next */ + return Object.defineProperties(new Number(num), { + isNaN: {value: function () { return isNaN(this) }}, + [_type]: {value: INTEGER}, + [_inspect]: {value: () => `[Integer: ${value}]`} + }) + } +} +function isInteger (obj) { + if (obj === null || typeof (obj) !== 'object') return false + return obj[_type] === INTEGER +} + +const FLOAT = Symbol('float') +function Float (value) { + /* istanbul ignore next */ + return Object.defineProperties(new Number(value), { + [_type]: {value: FLOAT}, + [_inspect]: {value: () => `[Float: ${value}]`} + }) +} +function isFloat (obj) { + if (obj === null || typeof (obj) !== 'object') return false + return obj[_type] === FLOAT +} + +function tomlType (value) { + const type = typeof value + if (type === 'object') { + /* istanbul ignore if */ + if (value === null) return 'null' + if (value instanceof Date) return 'datetime' + /* istanbul ignore else */ + if (_type in value) { + switch (value[_type]) { + case INLINE_TABLE: return 'inline-table' + case INLINE_LIST: return 'inline-list' + /* istanbul ignore next */ + case TABLE: return 'table' + /* istanbul ignore next */ + case LIST: return 'list' + case FLOAT: return 'float' + case INTEGER: return 'integer' + } + } + } + return type +} + +function makeParserClass (Parser) { + class TOMLParser extends Parser { + constructor () { + super() + this.ctx = this.obj = Table() + } + + /* MATCH HELPER */ + atEndOfWord () { + return this.char === CHAR_NUM || this.char === CTRL_I || this.char === CHAR_SP || this.atEndOfLine() + } + atEndOfLine () { + return this.char === Parser.END || this.char === CTRL_J || this.char === CTRL_M + } + + parseStart () { + if (this.char === Parser.END) { + return null + } else if (this.char === CHAR_LSQB) { + return this.call(this.parseTableOrList) + } else if (this.char === CHAR_NUM) { + return this.call(this.parseComment) + } else if (this.char === CTRL_J || this.char === CHAR_SP || this.char === CTRL_I || this.char === CTRL_M) { + return null + } else if (isAlphaNumQuoteHyphen(this.char)) { + return this.callNow(this.parseAssignStatement) + } else { + throw this.error(new TomlError(`Unknown character "${this.char}"`)) + } + } + + // HELPER, this strips any whitespace and comments to the end of the line + // then RETURNS. Last state in a production. + parseWhitespaceToEOL () { + if (this.char === CHAR_SP || this.char === CTRL_I || this.char === CTRL_M) { + return null + } else if (this.char === CHAR_NUM) { + return this.goto(this.parseComment) + } else if (this.char === Parser.END || this.char === CTRL_J) { + return this.return() + } else { + throw this.error(new TomlError('Unexpected character, expected only whitespace or comments till end of line')) + } + } + + /* ASSIGNMENT: key = value */ + parseAssignStatement () { + return this.callNow(this.parseAssign, this.recordAssignStatement) + } + recordAssignStatement (kv) { + let target = this.ctx + let finalKey = kv.key.pop() + for (let kw of kv.key) { + if (hasKey(target, kw) && (!isTable(target[kw]) || target[kw][_declared])) { + throw this.error(new TomlError("Can't redefine existing key")) + } + target = target[kw] = target[kw] || Table() + } + if (hasKey(target, finalKey)) { + throw this.error(new TomlError("Can't redefine existing key")) + } + // unbox our numbers + if (isInteger(kv.value) || isFloat(kv.value)) { + target[finalKey] = kv.value.valueOf() + } else { + target[finalKey] = kv.value + } + return this.goto(this.parseWhitespaceToEOL) + } + + /* ASSSIGNMENT expression, key = value possibly inside an inline table */ + parseAssign () { + return this.callNow(this.parseKeyword, this.recordAssignKeyword) + } + recordAssignKeyword (key) { + if (this.state.resultTable) { + this.state.resultTable.push(key) + } else { + this.state.resultTable = [key] + } + return this.goto(this.parseAssignKeywordPreDot) + } + parseAssignKeywordPreDot () { + if (this.char === CHAR_PERIOD) { + return this.next(this.parseAssignKeywordPostDot) + } else if (this.char !== CHAR_SP && this.char !== CTRL_I) { + return this.goto(this.parseAssignEqual) + } + } + parseAssignKeywordPostDot () { + if (this.char !== CHAR_SP && this.char !== CTRL_I) { + return this.callNow(this.parseKeyword, this.recordAssignKeyword) + } + } + + parseAssignEqual () { + if (this.char === CHAR_EQUALS) { + return this.next(this.parseAssignPreValue) + } else { + throw this.error(new TomlError('Invalid character, expected "="')) + } + } + parseAssignPreValue () { + if (this.char === CHAR_SP || this.char === CTRL_I) { + return null + } else { + return this.callNow(this.parseValue, this.recordAssignValue) + } + } + recordAssignValue (value) { + return this.returnNow({key: this.state.resultTable, value: value}) + } + + /* COMMENTS: #...eol */ + parseComment () { + do { + if (this.char === Parser.END || this.char === CTRL_J) { + return this.return() + } + } while (this.nextChar()) + } + + /* TABLES AND LISTS, [foo] and [[foo]] */ + parseTableOrList () { + if (this.char === CHAR_LSQB) { + this.next(this.parseList) + } else { + return this.goto(this.parseTable) + } + } + + /* TABLE [foo.bar.baz] */ + parseTable () { + this.ctx = this.obj + return this.goto(this.parseTableNext) + } + parseTableNext () { + if (this.char === CHAR_SP || this.char === CTRL_I) { + return null + } else { + return this.callNow(this.parseKeyword, this.parseTableMore) + } + } + parseTableMore (keyword) { + if (this.char === CHAR_SP || this.char === CTRL_I) { + return null + } else if (this.char === CHAR_RSQB) { + if (hasKey(this.ctx, keyword) && (!isTable(this.ctx[keyword]) || this.ctx[keyword][_declared])) { + throw this.error(new TomlError("Can't redefine existing key")) + } else { + this.ctx = this.ctx[keyword] = this.ctx[keyword] || Table() + this.ctx[_declared] = true + } + return this.next(this.parseWhitespaceToEOL) + } else if (this.char === CHAR_PERIOD) { + if (!hasKey(this.ctx, keyword)) { + this.ctx = this.ctx[keyword] = Table() + } else if (isTable(this.ctx[keyword])) { + this.ctx = this.ctx[keyword] + } else if (isList(this.ctx[keyword])) { + this.ctx = this.ctx[keyword][this.ctx[keyword].length - 1] + } else { + throw this.error(new TomlError("Can't redefine existing key")) + } + return this.next(this.parseTableNext) + } else { + throw this.error(new TomlError('Unexpected character, expected whitespace, . or ]')) + } + } + + /* LIST [[a.b.c]] */ + parseList () { + this.ctx = this.obj + return this.goto(this.parseListNext) + } + parseListNext () { + if (this.char === CHAR_SP || this.char === CTRL_I) { + return null + } else { + return this.callNow(this.parseKeyword, this.parseListMore) + } + } + parseListMore (keyword) { + if (this.char === CHAR_SP || this.char === CTRL_I) { + return null + } else if (this.char === CHAR_RSQB) { + if (!hasKey(this.ctx, keyword)) { + this.ctx[keyword] = List() + } + if (isInlineList(this.ctx[keyword])) { + throw this.error(new TomlError("Can't extend an inline array")) + } else if (isList(this.ctx[keyword])) { + const next = Table() + this.ctx[keyword].push(next) + this.ctx = next + } else { + throw this.error(new TomlError("Can't redefine an existing key")) + } + return this.next(this.parseListEnd) + } else if (this.char === CHAR_PERIOD) { + if (!hasKey(this.ctx, keyword)) { + this.ctx = this.ctx[keyword] = Table() + } else if (isInlineList(this.ctx[keyword])) { + throw this.error(new TomlError("Can't extend an inline array")) + } else if (isInlineTable(this.ctx[keyword])) { + throw this.error(new TomlError("Can't extend an inline table")) + } else if (isList(this.ctx[keyword])) { + this.ctx = this.ctx[keyword][this.ctx[keyword].length - 1] + } else if (isTable(this.ctx[keyword])) { + this.ctx = this.ctx[keyword] + } else { + throw this.error(new TomlError("Can't redefine an existing key")) + } + return this.next(this.parseListNext) + } else { + throw this.error(new TomlError('Unexpected character, expected whitespace, . or ]')) + } + } + parseListEnd (keyword) { + if (this.char === CHAR_RSQB) { + return this.next(this.parseWhitespaceToEOL) + } else { + throw this.error(new TomlError('Unexpected character, expected whitespace, . or ]')) + } + } + + /* VALUE string, number, boolean, inline list, inline object */ + parseValue () { + if (this.char === Parser.END) { + throw this.error(new TomlError('Key without value')) + } else if (this.char === CHAR_QUOT) { + return this.next(this.parseDoubleString) + } if (this.char === CHAR_APOS) { + return this.next(this.parseSingleString) + } else if (this.char === CHAR_HYPHEN || this.char === CHAR_PLUS) { + return this.goto(this.parseNumberSign) + } else if (this.char === CHAR_i) { + return this.next(this.parseInf) + } else if (this.char === CHAR_n) { + return this.next(this.parseNan) + } else if (isDigit(this.char)) { + return this.goto(this.parseNumberOrDateTime) + } else if (this.char === CHAR_t || this.char === CHAR_f) { + return this.goto(this.parseBoolean) + } else if (this.char === CHAR_LSQB) { + return this.call(this.parseInlineList, this.recordValue) + } else if (this.char === CHAR_LCUB) { + return this.call(this.parseInlineTable, this.recordValue) + } else { + throw this.error(new TomlError('Unexpected character, expecting string, number, datetime, boolean, inline array or inline table')) + } + } + recordValue (value) { + return this.returnNow(value) + } + + parseInf () { + if (this.char === CHAR_n) { + return this.next(this.parseInf2) + } else { + throw this.error(new TomlError('Unexpected character, expected "inf", "+inf" or "-inf"')) + } + } + parseInf2 () { + if (this.char === CHAR_f) { + if (this.state.buf === '-') { + return this.return(-Infinity) + } else { + return this.return(Infinity) + } + } else { + throw this.error(new TomlError('Unexpected character, expected "inf", "+inf" or "-inf"')) + } + } + + parseNan () { + if (this.char === CHAR_a) { + return this.next(this.parseNan2) + } else { + throw this.error(new TomlError('Unexpected character, expected "nan"')) + } + } + parseNan2 () { + if (this.char === CHAR_n) { + return this.return(NaN) + } else { + throw this.error(new TomlError('Unexpected character, expected "nan"')) + } + } + + /* KEYS, barewords or basic, literal, or dotted */ + parseKeyword () { + if (this.char === CHAR_QUOT) { + return this.next(this.parseBasicString) + } else if (this.char === CHAR_APOS) { + return this.next(this.parseLiteralString) + } else { + return this.goto(this.parseBareKey) + } + } + + /* KEYS: barewords */ + parseBareKey () { + do { + if (this.char === Parser.END) { + throw this.error(new TomlError('Key ended without value')) + } else if (isAlphaNumHyphen(this.char)) { + this.consume() + } else if (this.state.buf.length === 0) { + throw this.error(new TomlError('Empty bare keys are not allowed')) + } else { + return this.returnNow() + } + } while (this.nextChar()) + } + + /* STRINGS, single quoted (literal) */ + parseSingleString () { + if (this.char === CHAR_APOS) { + return this.next(this.parseLiteralMultiStringMaybe) + } else { + return this.goto(this.parseLiteralString) + } + } + parseLiteralString () { + do { + if (this.char === CHAR_APOS) { + return this.return() + } else if (this.atEndOfLine()) { + throw this.error(new TomlError('Unterminated string')) + } else if (this.char === CHAR_DEL || (this.char <= CTRL_CHAR_BOUNDARY && this.char !== CTRL_I)) { + throw this.errorControlCharInString() + } else { + this.consume() + } + } while (this.nextChar()) + } + parseLiteralMultiStringMaybe () { + if (this.char === CHAR_APOS) { + return this.next(this.parseLiteralMultiString) + } else { + return this.returnNow() + } + } + parseLiteralMultiString () { + if (this.char === CTRL_M) { + return null + } else if (this.char === CTRL_J) { + return this.next(this.parseLiteralMultiStringContent) + } else { + return this.goto(this.parseLiteralMultiStringContent) + } + } + parseLiteralMultiStringContent () { + do { + if (this.char === CHAR_APOS) { + return this.next(this.parseLiteralMultiEnd) + } else if (this.char === Parser.END) { + throw this.error(new TomlError('Unterminated multi-line string')) + } else if (this.char === CHAR_DEL || (this.char <= CTRL_CHAR_BOUNDARY && this.char !== CTRL_I && this.char !== CTRL_J && this.char !== CTRL_M)) { + throw this.errorControlCharInString() + } else { + this.consume() + } + } while (this.nextChar()) + } + parseLiteralMultiEnd () { + if (this.char === CHAR_APOS) { + return this.next(this.parseLiteralMultiEnd2) + } else { + this.state.buf += "'" + return this.goto(this.parseLiteralMultiStringContent) + } + } + parseLiteralMultiEnd2 () { + if (this.char === CHAR_APOS) { + return this.return() + } else { + this.state.buf += "''" + return this.goto(this.parseLiteralMultiStringContent) + } + } + + /* STRINGS double quoted */ + parseDoubleString () { + if (this.char === CHAR_QUOT) { + return this.next(this.parseMultiStringMaybe) + } else { + return this.goto(this.parseBasicString) + } + } + parseBasicString () { + do { + if (this.char === CHAR_BSOL) { + return this.call(this.parseEscape, this.recordEscapeReplacement) + } else if (this.char === CHAR_QUOT) { + return this.return() + } else if (this.atEndOfLine()) { + throw this.error(new TomlError('Unterminated string')) + } else if (this.char === CHAR_DEL || (this.char <= CTRL_CHAR_BOUNDARY && this.char !== CTRL_I)) { + throw this.errorControlCharInString() + } else { + this.consume() + } + } while (this.nextChar()) + } + recordEscapeReplacement (replacement) { + this.state.buf += replacement + return this.goto(this.parseBasicString) + } + parseMultiStringMaybe () { + if (this.char === CHAR_QUOT) { + return this.next(this.parseMultiString) + } else { + return this.returnNow() + } + } + parseMultiString () { + if (this.char === CTRL_M) { + return null + } else if (this.char === CTRL_J) { + return this.next(this.parseMultiStringContent) + } else { + return this.goto(this.parseMultiStringContent) + } + } + parseMultiStringContent () { + do { + if (this.char === CHAR_BSOL) { + return this.call(this.parseMultiEscape, this.recordMultiEscapeReplacement) + } else if (this.char === CHAR_QUOT) { + return this.next(this.parseMultiEnd) + } else if (this.char === Parser.END) { + throw this.error(new TomlError('Unterminated multi-line string')) + } else if (this.char === CHAR_DEL || (this.char <= CTRL_CHAR_BOUNDARY && this.char !== CTRL_I && this.char !== CTRL_J && this.char !== CTRL_M)) { + throw this.errorControlCharInString() + } else { + this.consume() + } + } while (this.nextChar()) + } + errorControlCharInString () { + let displayCode = '\\u00' + if (this.char < 16) { + displayCode += '0' + } + displayCode += this.char.toString(16) + + return this.error(new TomlError(`Control characters (codes < 0x1f and 0x7f) are not allowed in strings, use ${displayCode} instead`)) + } + recordMultiEscapeReplacement (replacement) { + this.state.buf += replacement + return this.goto(this.parseMultiStringContent) + } + parseMultiEnd () { + if (this.char === CHAR_QUOT) { + return this.next(this.parseMultiEnd2) + } else { + this.state.buf += '"' + return this.goto(this.parseMultiStringContent) + } + } + parseMultiEnd2 () { + if (this.char === CHAR_QUOT) { + return this.return() + } else { + this.state.buf += '""' + return this.goto(this.parseMultiStringContent) + } + } + parseMultiEscape () { + if (this.char === CTRL_M || this.char === CTRL_J) { + return this.next(this.parseMultiTrim) + } else if (this.char === CHAR_SP || this.char === CTRL_I) { + return this.next(this.parsePreMultiTrim) + } else { + return this.goto(this.parseEscape) + } + } + parsePreMultiTrim () { + if (this.char === CHAR_SP || this.char === CTRL_I) { + return null + } else if (this.char === CTRL_M || this.char === CTRL_J) { + return this.next(this.parseMultiTrim) + } else { + throw this.error(new TomlError("Can't escape whitespace")) + } + } + parseMultiTrim () { + // explicitly whitespace here, END should follow the same path as chars + if (this.char === CTRL_J || this.char === CHAR_SP || this.char === CTRL_I || this.char === CTRL_M) { + return null + } else { + return this.returnNow() + } + } + parseEscape () { + if (this.char in escapes) { + return this.return(escapes[this.char]) + } else if (this.char === CHAR_u) { + return this.call(this.parseSmallUnicode, this.parseUnicodeReturn) + } else if (this.char === CHAR_U) { + return this.call(this.parseLargeUnicode, this.parseUnicodeReturn) + } else { + throw this.error(new TomlError('Unknown escape character: ' + this.char)) + } + } + parseUnicodeReturn (char) { + try { + const codePoint = parseInt(char, 16) + if (codePoint >= SURROGATE_FIRST && codePoint <= SURROGATE_LAST) { + throw this.error(new TomlError('Invalid unicode, character in range 0xD800 - 0xDFFF is reserved')) + } + return this.returnNow(String.fromCodePoint(codePoint)) + } catch (err) { + throw this.error(TomlError.wrap(err)) + } + } + parseSmallUnicode () { + if (!isHexit(this.char)) { + throw this.error(new TomlError('Invalid character in unicode sequence, expected hex')) + } else { + this.consume() + if (this.state.buf.length >= 4) return this.return() + } + } + parseLargeUnicode () { + if (!isHexit(this.char)) { + throw this.error(new TomlError('Invalid character in unicode sequence, expected hex')) + } else { + this.consume() + if (this.state.buf.length >= 8) return this.return() + } + } + + /* NUMBERS */ + parseNumberSign () { + this.consume() + return this.next(this.parseMaybeSignedInfOrNan) + } + parseMaybeSignedInfOrNan () { + if (this.char === CHAR_i) { + return this.next(this.parseInf) + } else if (this.char === CHAR_n) { + return this.next(this.parseNan) + } else { + return this.callNow(this.parseNoUnder, this.parseNumberIntegerStart) + } + } + parseNumberIntegerStart () { + if (this.char === CHAR_0) { + this.consume() + return this.next(this.parseNumberIntegerExponentOrDecimal) + } else { + return this.goto(this.parseNumberInteger) + } + } + parseNumberIntegerExponentOrDecimal () { + if (this.char === CHAR_PERIOD) { + this.consume() + return this.call(this.parseNoUnder, this.parseNumberFloat) + } else if (this.char === CHAR_E || this.char === CHAR_e) { + this.consume() + return this.next(this.parseNumberExponentSign) + } else { + return this.returnNow(Integer(this.state.buf)) + } + } + parseNumberInteger () { + if (isDigit(this.char)) { + this.consume() + } else if (this.char === CHAR_LOWBAR) { + return this.call(this.parseNoUnder) + } else if (this.char === CHAR_E || this.char === CHAR_e) { + this.consume() + return this.next(this.parseNumberExponentSign) + } else if (this.char === CHAR_PERIOD) { + this.consume() + return this.call(this.parseNoUnder, this.parseNumberFloat) + } else { + const result = Integer(this.state.buf) + /* istanbul ignore if */ + if (result.isNaN()) { + throw this.error(new TomlError('Invalid number')) + } else { + return this.returnNow(result) + } + } + } + parseNoUnder () { + if (this.char === CHAR_LOWBAR || this.char === CHAR_PERIOD || this.char === CHAR_E || this.char === CHAR_e) { + throw this.error(new TomlError('Unexpected character, expected digit')) + } else if (this.atEndOfWord()) { + throw this.error(new TomlError('Incomplete number')) + } + return this.returnNow() + } + parseNoUnderHexOctBinLiteral () { + if (this.char === CHAR_LOWBAR || this.char === CHAR_PERIOD) { + throw this.error(new TomlError('Unexpected character, expected digit')) + } else if (this.atEndOfWord()) { + throw this.error(new TomlError('Incomplete number')) + } + return this.returnNow() + } + parseNumberFloat () { + if (this.char === CHAR_LOWBAR) { + return this.call(this.parseNoUnder, this.parseNumberFloat) + } else if (isDigit(this.char)) { + this.consume() + } else if (this.char === CHAR_E || this.char === CHAR_e) { + this.consume() + return this.next(this.parseNumberExponentSign) + } else { + return this.returnNow(Float(this.state.buf)) + } + } + parseNumberExponentSign () { + if (isDigit(this.char)) { + return this.goto(this.parseNumberExponent) + } else if (this.char === CHAR_HYPHEN || this.char === CHAR_PLUS) { + this.consume() + this.call(this.parseNoUnder, this.parseNumberExponent) + } else { + throw this.error(new TomlError('Unexpected character, expected -, + or digit')) + } + } + parseNumberExponent () { + if (isDigit(this.char)) { + this.consume() + } else if (this.char === CHAR_LOWBAR) { + return this.call(this.parseNoUnder) + } else { + return this.returnNow(Float(this.state.buf)) + } + } + + /* NUMBERS or DATETIMES */ + parseNumberOrDateTime () { + if (this.char === CHAR_0) { + this.consume() + return this.next(this.parseNumberBaseOrDateTime) + } else { + return this.goto(this.parseNumberOrDateTimeOnly) + } + } + parseNumberOrDateTimeOnly () { + // note, if two zeros are in a row then it MUST be a date + if (this.char === CHAR_LOWBAR) { + return this.call(this.parseNoUnder, this.parseNumberInteger) + } else if (isDigit(this.char)) { + this.consume() + if (this.state.buf.length > 4) this.next(this.parseNumberInteger) + } else if (this.char === CHAR_E || this.char === CHAR_e) { + this.consume() + return this.next(this.parseNumberExponentSign) + } else if (this.char === CHAR_PERIOD) { + this.consume() + return this.call(this.parseNoUnder, this.parseNumberFloat) + } else if (this.char === CHAR_HYPHEN) { + return this.goto(this.parseDateTime) + } else if (this.char === CHAR_COLON) { + return this.goto(this.parseOnlyTimeHour) + } else { + return this.returnNow(Integer(this.state.buf)) + } + } + parseDateTimeOnly () { + if (this.state.buf.length < 4) { + if (isDigit(this.char)) { + return this.consume() + } else if (this.char === CHAR_COLON) { + return this.goto(this.parseOnlyTimeHour) + } else { + throw this.error(new TomlError('Expected digit while parsing year part of a date')) + } + } else { + if (this.char === CHAR_HYPHEN) { + return this.goto(this.parseDateTime) + } else { + throw this.error(new TomlError('Expected hyphen (-) while parsing year part of date')) + } + } + } + parseNumberBaseOrDateTime () { + if (this.char === CHAR_b) { + this.consume() + return this.call(this.parseNoUnderHexOctBinLiteral, this.parseIntegerBin) + } else if (this.char === CHAR_o) { + this.consume() + return this.call(this.parseNoUnderHexOctBinLiteral, this.parseIntegerOct) + } else if (this.char === CHAR_x) { + this.consume() + return this.call(this.parseNoUnderHexOctBinLiteral, this.parseIntegerHex) + } else if (this.char === CHAR_PERIOD) { + return this.goto(this.parseNumberInteger) + } else if (isDigit(this.char)) { + return this.goto(this.parseDateTimeOnly) + } else { + return this.returnNow(Integer(this.state.buf)) + } + } + parseIntegerHex () { + if (isHexit(this.char)) { + this.consume() + } else if (this.char === CHAR_LOWBAR) { + return this.call(this.parseNoUnderHexOctBinLiteral) + } else { + const result = Integer(this.state.buf) + /* istanbul ignore if */ + if (result.isNaN()) { + throw this.error(new TomlError('Invalid number')) + } else { + return this.returnNow(result) + } + } + } + parseIntegerOct () { + if (isOctit(this.char)) { + this.consume() + } else if (this.char === CHAR_LOWBAR) { + return this.call(this.parseNoUnderHexOctBinLiteral) + } else { + const result = Integer(this.state.buf) + /* istanbul ignore if */ + if (result.isNaN()) { + throw this.error(new TomlError('Invalid number')) + } else { + return this.returnNow(result) + } + } + } + parseIntegerBin () { + if (isBit(this.char)) { + this.consume() + } else if (this.char === CHAR_LOWBAR) { + return this.call(this.parseNoUnderHexOctBinLiteral) + } else { + const result = Integer(this.state.buf) + /* istanbul ignore if */ + if (result.isNaN()) { + throw this.error(new TomlError('Invalid number')) + } else { + return this.returnNow(result) + } + } + } + + /* DATETIME */ + parseDateTime () { + // we enter here having just consumed the year and about to consume the hyphen + if (this.state.buf.length < 4) { + throw this.error(new TomlError('Years less than 1000 must be zero padded to four characters')) + } + this.state.result = this.state.buf + this.state.buf = '' + return this.next(this.parseDateMonth) + } + parseDateMonth () { + if (this.char === CHAR_HYPHEN) { + if (this.state.buf.length < 2) { + throw this.error(new TomlError('Months less than 10 must be zero padded to two characters')) + } + this.state.result += '-' + this.state.buf + this.state.buf = '' + return this.next(this.parseDateDay) + } else if (isDigit(this.char)) { + this.consume() + } else { + throw this.error(new TomlError('Incomplete datetime')) + } + } + parseDateDay () { + if (this.char === CHAR_T || this.char === CHAR_SP) { + if (this.state.buf.length < 2) { + throw this.error(new TomlError('Days less than 10 must be zero padded to two characters')) + } + this.state.result += '-' + this.state.buf + this.state.buf = '' + return this.next(this.parseStartTimeHour) + } else if (this.atEndOfWord()) { + return this.returnNow(createDate(this.state.result + '-' + this.state.buf)) + } else if (isDigit(this.char)) { + this.consume() + } else { + throw this.error(new TomlError('Incomplete datetime')) + } + } + parseStartTimeHour () { + if (this.atEndOfWord()) { + return this.returnNow(createDate(this.state.result)) + } else { + return this.goto(this.parseTimeHour) + } + } + parseTimeHour () { + if (this.char === CHAR_COLON) { + if (this.state.buf.length < 2) { + throw this.error(new TomlError('Hours less than 10 must be zero padded to two characters')) + } + this.state.result += 'T' + this.state.buf + this.state.buf = '' + return this.next(this.parseTimeMin) + } else if (isDigit(this.char)) { + this.consume() + } else { + throw this.error(new TomlError('Incomplete datetime')) + } + } + parseTimeMin () { + if (this.state.buf.length < 2 && isDigit(this.char)) { + this.consume() + } else if (this.state.buf.length === 2 && this.char === CHAR_COLON) { + this.state.result += ':' + this.state.buf + this.state.buf = '' + return this.next(this.parseTimeSec) + } else { + throw this.error(new TomlError('Incomplete datetime')) + } + } + parseTimeSec () { + if (isDigit(this.char)) { + this.consume() + if (this.state.buf.length === 2) { + this.state.result += ':' + this.state.buf + this.state.buf = '' + return this.next(this.parseTimeZoneOrFraction) + } + } else { + throw this.error(new TomlError('Incomplete datetime')) + } + } + + parseOnlyTimeHour () { + /* istanbul ignore else */ + if (this.char === CHAR_COLON) { + if (this.state.buf.length < 2) { + throw this.error(new TomlError('Hours less than 10 must be zero padded to two characters')) + } + this.state.result = this.state.buf + this.state.buf = '' + return this.next(this.parseOnlyTimeMin) + } else { + throw this.error(new TomlError('Incomplete time')) + } + } + parseOnlyTimeMin () { + if (this.state.buf.length < 2 && isDigit(this.char)) { + this.consume() + } else if (this.state.buf.length === 2 && this.char === CHAR_COLON) { + this.state.result += ':' + this.state.buf + this.state.buf = '' + return this.next(this.parseOnlyTimeSec) + } else { + throw this.error(new TomlError('Incomplete time')) + } + } + parseOnlyTimeSec () { + if (isDigit(this.char)) { + this.consume() + if (this.state.buf.length === 2) { + return this.next(this.parseOnlyTimeFractionMaybe) + } + } else { + throw this.error(new TomlError('Incomplete time')) + } + } + parseOnlyTimeFractionMaybe () { + this.state.result += ':' + this.state.buf + if (this.char === CHAR_PERIOD) { + this.state.buf = '' + this.next(this.parseOnlyTimeFraction) + } else { + return this.return(createTime(this.state.result)) + } + } + parseOnlyTimeFraction () { + if (isDigit(this.char)) { + this.consume() + } else if (this.atEndOfWord()) { + if (this.state.buf.length === 0) throw this.error(new TomlError('Expected digit in milliseconds')) + return this.returnNow(createTime(this.state.result + '.' + this.state.buf)) + } else { + throw this.error(new TomlError('Unexpected character in datetime, expected period (.), minus (-), plus (+) or Z')) + } + } + + parseTimeZoneOrFraction () { + if (this.char === CHAR_PERIOD) { + this.consume() + this.next(this.parseDateTimeFraction) + } else if (this.char === CHAR_HYPHEN || this.char === CHAR_PLUS) { + this.consume() + this.next(this.parseTimeZoneHour) + } else if (this.char === CHAR_Z) { + this.consume() + return this.return(createDateTime(this.state.result + this.state.buf)) + } else if (this.atEndOfWord()) { + return this.returnNow(createDateTimeFloat(this.state.result + this.state.buf)) + } else { + throw this.error(new TomlError('Unexpected character in datetime, expected period (.), minus (-), plus (+) or Z')) + } + } + parseDateTimeFraction () { + if (isDigit(this.char)) { + this.consume() + } else if (this.state.buf.length === 1) { + throw this.error(new TomlError('Expected digit in milliseconds')) + } else if (this.char === CHAR_HYPHEN || this.char === CHAR_PLUS) { + this.consume() + this.next(this.parseTimeZoneHour) + } else if (this.char === CHAR_Z) { + this.consume() + return this.return(createDateTime(this.state.result + this.state.buf)) + } else if (this.atEndOfWord()) { + return this.returnNow(createDateTimeFloat(this.state.result + this.state.buf)) + } else { + throw this.error(new TomlError('Unexpected character in datetime, expected period (.), minus (-), plus (+) or Z')) + } + } + parseTimeZoneHour () { + if (isDigit(this.char)) { + this.consume() + // FIXME: No more regexps + if (/\d\d$/.test(this.state.buf)) return this.next(this.parseTimeZoneSep) + } else { + throw this.error(new TomlError('Unexpected character in datetime, expected digit')) + } + } + parseTimeZoneSep () { + if (this.char === CHAR_COLON) { + this.consume() + this.next(this.parseTimeZoneMin) + } else { + throw this.error(new TomlError('Unexpected character in datetime, expected colon')) + } + } + parseTimeZoneMin () { + if (isDigit(this.char)) { + this.consume() + if (/\d\d$/.test(this.state.buf)) return this.return(createDateTime(this.state.result + this.state.buf)) + } else { + throw this.error(new TomlError('Unexpected character in datetime, expected digit')) + } + } + + /* BOOLEAN */ + parseBoolean () { + /* istanbul ignore else */ + if (this.char === CHAR_t) { + this.consume() + return this.next(this.parseTrue_r) + } else if (this.char === CHAR_f) { + this.consume() + return this.next(this.parseFalse_a) + } + } + parseTrue_r () { + if (this.char === CHAR_r) { + this.consume() + return this.next(this.parseTrue_u) + } else { + throw this.error(new TomlError('Invalid boolean, expected true or false')) + } + } + parseTrue_u () { + if (this.char === CHAR_u) { + this.consume() + return this.next(this.parseTrue_e) + } else { + throw this.error(new TomlError('Invalid boolean, expected true or false')) + } + } + parseTrue_e () { + if (this.char === CHAR_e) { + return this.return(true) + } else { + throw this.error(new TomlError('Invalid boolean, expected true or false')) + } + } + + parseFalse_a () { + if (this.char === CHAR_a) { + this.consume() + return this.next(this.parseFalse_l) + } else { + throw this.error(new TomlError('Invalid boolean, expected true or false')) + } + } + + parseFalse_l () { + if (this.char === CHAR_l) { + this.consume() + return this.next(this.parseFalse_s) + } else { + throw this.error(new TomlError('Invalid boolean, expected true or false')) + } + } + + parseFalse_s () { + if (this.char === CHAR_s) { + this.consume() + return this.next(this.parseFalse_e) + } else { + throw this.error(new TomlError('Invalid boolean, expected true or false')) + } + } + + parseFalse_e () { + if (this.char === CHAR_e) { + return this.return(false) + } else { + throw this.error(new TomlError('Invalid boolean, expected true or false')) + } + } + + /* INLINE LISTS */ + parseInlineList () { + if (this.char === CHAR_SP || this.char === CTRL_I || this.char === CTRL_M || this.char === CTRL_J) { + return null + } else if (this.char === Parser.END) { + throw this.error(new TomlError('Unterminated inline array')) + } else if (this.char === CHAR_NUM) { + return this.call(this.parseComment) + } else if (this.char === CHAR_RSQB) { + return this.return(this.state.resultArr || InlineList()) + } else { + return this.callNow(this.parseValue, this.recordInlineListValue) + } + } + recordInlineListValue (value) { + if (this.state.resultArr) { + const listType = this.state.resultArr[_contentType] + const valueType = tomlType(value) + if (listType !== valueType) { + throw this.error(new TomlError(`Inline lists must be a single type, not a mix of ${listType} and ${valueType}`)) + } + } else { + this.state.resultArr = InlineList(tomlType(value)) + } + if (isFloat(value) || isInteger(value)) { + // unbox now that we've verified they're ok + this.state.resultArr.push(value.valueOf()) + } else { + this.state.resultArr.push(value) + } + return this.goto(this.parseInlineListNext) + } + parseInlineListNext () { + if (this.char === CHAR_SP || this.char === CTRL_I || this.char === CTRL_M || this.char === CTRL_J) { + return null + } else if (this.char === CHAR_NUM) { + return this.call(this.parseComment) + } else if (this.char === CHAR_COMMA) { + return this.next(this.parseInlineList) + } else if (this.char === CHAR_RSQB) { + return this.goto(this.parseInlineList) + } else { + throw this.error(new TomlError('Invalid character, expected whitespace, comma (,) or close bracket (])')) + } + } + + /* INLINE TABLE */ + parseInlineTable () { + if (this.char === CHAR_SP || this.char === CTRL_I) { + return null + } else if (this.char === Parser.END || this.char === CHAR_NUM || this.char === CTRL_J || this.char === CTRL_M) { + throw this.error(new TomlError('Unterminated inline array')) + } else if (this.char === CHAR_RCUB) { + return this.return(this.state.resultTable || InlineTable()) + } else { + if (!this.state.resultTable) this.state.resultTable = InlineTable() + return this.callNow(this.parseAssign, this.recordInlineTableValue) + } + } + recordInlineTableValue (kv) { + let target = this.state.resultTable + let finalKey = kv.key.pop() + for (let kw of kv.key) { + if (hasKey(target, kw) && (!isTable(target[kw]) || target[kw][_declared])) { + throw this.error(new TomlError("Can't redefine existing key")) + } + target = target[kw] = target[kw] || Table() + } + if (hasKey(target, finalKey)) { + throw this.error(new TomlError("Can't redefine existing key")) + } + if (isInteger(kv.value) || isFloat(kv.value)) { + target[finalKey] = kv.value.valueOf() + } else { + target[finalKey] = kv.value + } + return this.goto(this.parseInlineTableNext) + } + parseInlineTableNext () { + if (this.char === CHAR_SP || this.char === CTRL_I) { + return null + } else if (this.char === Parser.END || this.char === CHAR_NUM || this.char === CTRL_J || this.char === CTRL_M) { + throw this.error(new TomlError('Unterminated inline array')) + } else if (this.char === CHAR_COMMA) { + return this.next(this.parseInlineTable) + } else if (this.char === CHAR_RCUB) { + return this.goto(this.parseInlineTable) + } else { + throw this.error(new TomlError('Invalid character, expected whitespace, comma (,) or close bracket (])')) + } + } + } + return TOMLParser +} diff --git a/node_modules/@iarna/toml/package.json b/node_modules/@iarna/toml/package.json new file mode 100644 index 0000000..71f9e82 --- /dev/null +++ b/node_modules/@iarna/toml/package.json @@ -0,0 +1,82 @@ +{ + "name": "@iarna/toml", + "version": "2.2.5", + "main": "toml.js", + "scripts": { + "test": "tap -J --100 test/*.js test/toml-stream/*.js", + "benchmark": "node benchmark.js && node benchmark-per-file.js && node results2table.js", + "prerelease": "npm t", + "prepack": "rm -f *~", + "postpublish": "git push --follow-tags", + "pretest": "iarna-standard", + "update-coc": "weallbehave -o . && git add CODE_OF_CONDUCT.md && git commit -m 'docs(coc): updated CODE_OF_CONDUCT.md'", + "update-contrib": "weallcontribute -o . && git add CONTRIBUTING.md && git commit -m 'docs(contributing): updated CONTRIBUTING.md'", + "setup-burntsushi-toml-suite": "[ -d test/burntsushi-toml-test ] || (git clone https://github.com/BurntSushi/toml-test test/burntsushi-toml-test; rimraf test/burntsushi-toml-test/.git/hooks/*); cd test/burntsushi-toml-test; git pull", + "setup-iarna-toml-suite": "[ -d test/spec-test ] || (git clone https://github.com/iarna/toml-spec-tests -b 0.5.0 test/spec-test; rimraf test/spec-test/.git/hooks/*); cd test/spec-test; git pull", + "prepare": "npm run setup-burntsushi-toml-suite && npm run setup-iarna-toml-suite" + }, + "keywords": [ + "toml", + "toml-parser", + "toml-stringifier", + "parser", + "stringifer", + "emitter", + "ini", + "tomlify", + "encoder", + "decoder" + ], + "author": "Rebecca Turner (http://re-becca.org/)", + "license": "ISC", + "description": "Better TOML parsing and stringifying all in that familiar JSON interface.", + "dependencies": {}, + "devDependencies": { + "@iarna/standard": "^2.0.2", + "@ltd/j-toml": "^0.5.107", + "@perl/qx": "^1.1.0", + "@sgarciac/bombadil": "^2.3.0", + "ansi": "^0.3.1", + "approximate-number": "^2.0.0", + "benchmark": "^2.1.4", + "fast-toml": "^0.5.4", + "funstream": "^4.2.0", + "glob": "^7.1.6", + "js-yaml": "^3.13.1", + "rimraf": "^3.0.2", + "tap": "^12.0.1", + "toml": "^3.0.0", + "toml-j0.4": "^1.1.1", + "weallbehave": "*", + "weallcontribute": "*" + }, + "files": [ + "toml.js", + "stringify.js", + "parse.js", + "parse-string.js", + "parse-stream.js", + "parse-async.js", + "parse-pretty-error.js", + "lib/parser.js", + "lib/parser-debug.js", + "lib/toml-parser.js", + "lib/create-datetime.js", + "lib/create-date.js", + "lib/create-datetime-float.js", + "lib/create-time.js", + "lib/format-num.js", + "index.d.ts" + ], + "directories": { + "test": "test" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/iarna/iarna-toml.git" + }, + "bugs": { + "url": "https://github.com/iarna/iarna-toml/issues" + }, + "homepage": "https://github.com/iarna/iarna-toml#readme" +} diff --git a/node_modules/@iarna/toml/parse-async.js b/node_modules/@iarna/toml/parse-async.js new file mode 100644 index 0000000..e5ff090 --- /dev/null +++ b/node_modules/@iarna/toml/parse-async.js @@ -0,0 +1,30 @@ +'use strict' +module.exports = parseAsync + +const TOMLParser = require('./lib/toml-parser.js') +const prettyError = require('./parse-pretty-error.js') + +function parseAsync (str, opts) { + if (!opts) opts = {} + const index = 0 + const blocksize = opts.blocksize || 40960 + const parser = new TOMLParser() + return new Promise((resolve, reject) => { + setImmediate(parseAsyncNext, index, blocksize, resolve, reject) + }) + function parseAsyncNext (index, blocksize, resolve, reject) { + if (index >= str.length) { + try { + return resolve(parser.finish()) + } catch (err) { + return reject(prettyError(err, str)) + } + } + try { + parser.parse(str.slice(index, index + blocksize)) + setImmediate(parseAsyncNext, index + blocksize, blocksize, resolve, reject) + } catch (err) { + reject(prettyError(err, str)) + } + } +} diff --git a/node_modules/@iarna/toml/parse-pretty-error.js b/node_modules/@iarna/toml/parse-pretty-error.js new file mode 100644 index 0000000..fc0d31f --- /dev/null +++ b/node_modules/@iarna/toml/parse-pretty-error.js @@ -0,0 +1,33 @@ +'use strict' +module.exports = prettyError + +function prettyError (err, buf) { + /* istanbul ignore if */ + if (err.pos == null || err.line == null) return err + let msg = err.message + msg += ` at row ${err.line + 1}, col ${err.col + 1}, pos ${err.pos}:\n` + + /* istanbul ignore else */ + if (buf && buf.split) { + const lines = buf.split(/\n/) + const lineNumWidth = String(Math.min(lines.length, err.line + 3)).length + let linePadding = ' ' + while (linePadding.length < lineNumWidth) linePadding += ' ' + for (let ii = Math.max(0, err.line - 1); ii < Math.min(lines.length, err.line + 2); ++ii) { + let lineNum = String(ii + 1) + if (lineNum.length < lineNumWidth) lineNum = ' ' + lineNum + if (err.line === ii) { + msg += lineNum + '> ' + lines[ii] + '\n' + msg += linePadding + ' ' + for (let hh = 0; hh < err.col; ++hh) { + msg += ' ' + } + msg += '^\n' + } else { + msg += lineNum + ': ' + lines[ii] + '\n' + } + } + } + err.message = msg + '\n' + return err +} diff --git a/node_modules/@iarna/toml/parse-stream.js b/node_modules/@iarna/toml/parse-stream.js new file mode 100644 index 0000000..fb9a644 --- /dev/null +++ b/node_modules/@iarna/toml/parse-stream.js @@ -0,0 +1,80 @@ +'use strict' +module.exports = parseStream + +const stream = require('stream') +const TOMLParser = require('./lib/toml-parser.js') + +function parseStream (stm) { + if (stm) { + return parseReadable(stm) + } else { + return parseTransform(stm) + } +} + +function parseReadable (stm) { + const parser = new TOMLParser() + stm.setEncoding('utf8') + return new Promise((resolve, reject) => { + let readable + let ended = false + let errored = false + function finish () { + ended = true + if (readable) return + try { + resolve(parser.finish()) + } catch (err) { + reject(err) + } + } + function error (err) { + errored = true + reject(err) + } + stm.once('end', finish) + stm.once('error', error) + readNext() + + function readNext () { + readable = true + let data + while ((data = stm.read()) !== null) { + try { + parser.parse(data) + } catch (err) { + return error(err) + } + } + readable = false + /* istanbul ignore if */ + if (ended) return finish() + /* istanbul ignore if */ + if (errored) return + stm.once('readable', readNext) + } + }) +} + +function parseTransform () { + const parser = new TOMLParser() + return new stream.Transform({ + objectMode: true, + transform (chunk, encoding, cb) { + try { + parser.parse(chunk.toString(encoding)) + } catch (err) { + this.emit('error', err) + } + cb() + }, + flush (cb) { + try { + this.push(parser.finish()) + } catch (err) { + this.emit('error', err) + } + cb() + } + }) +} diff --git a/node_modules/@iarna/toml/parse-string.js b/node_modules/@iarna/toml/parse-string.js new file mode 100644 index 0000000..84ff7d4 --- /dev/null +++ b/node_modules/@iarna/toml/parse-string.js @@ -0,0 +1,18 @@ +'use strict' +module.exports = parseString + +const TOMLParser = require('./lib/toml-parser.js') +const prettyError = require('./parse-pretty-error.js') + +function parseString (str) { + if (global.Buffer && global.Buffer.isBuffer(str)) { + str = str.toString('utf8') + } + const parser = new TOMLParser() + try { + parser.parse(str) + return parser.finish() + } catch (err) { + throw prettyError(err, str) + } +} diff --git a/node_modules/@iarna/toml/parse.js b/node_modules/@iarna/toml/parse.js new file mode 100644 index 0000000..923b9d3 --- /dev/null +++ b/node_modules/@iarna/toml/parse.js @@ -0,0 +1,5 @@ +'use strict' +module.exports = require('./parse-string.js') +module.exports.async = require('./parse-async.js') +module.exports.stream = require('./parse-stream.js') +module.exports.prettyError = require('./parse-pretty-error.js') diff --git a/node_modules/@iarna/toml/stringify.js b/node_modules/@iarna/toml/stringify.js new file mode 100644 index 0000000..958caae --- /dev/null +++ b/node_modules/@iarna/toml/stringify.js @@ -0,0 +1,296 @@ +'use strict' +module.exports = stringify +module.exports.value = stringifyInline + +function stringify (obj) { + if (obj === null) throw typeError('null') + if (obj === void (0)) throw typeError('undefined') + if (typeof obj !== 'object') throw typeError(typeof obj) + + if (typeof obj.toJSON === 'function') obj = obj.toJSON() + if (obj == null) return null + const type = tomlType(obj) + if (type !== 'table') throw typeError(type) + return stringifyObject('', '', obj) +} + +function typeError (type) { + return new Error('Can only stringify objects, not ' + type) +} + +function arrayOneTypeError () { + return new Error("Array values can't have mixed types") +} + +function getInlineKeys (obj) { + return Object.keys(obj).filter(key => isInline(obj[key])) +} +function getComplexKeys (obj) { + return Object.keys(obj).filter(key => !isInline(obj[key])) +} + +function toJSON (obj) { + let nobj = Array.isArray(obj) ? [] : Object.prototype.hasOwnProperty.call(obj, '__proto__') ? {['__proto__']: undefined} : {} + for (let prop of Object.keys(obj)) { + if (obj[prop] && typeof obj[prop].toJSON === 'function' && !('toISOString' in obj[prop])) { + nobj[prop] = obj[prop].toJSON() + } else { + nobj[prop] = obj[prop] + } + } + return nobj +} + +function stringifyObject (prefix, indent, obj) { + obj = toJSON(obj) + var inlineKeys + var complexKeys + inlineKeys = getInlineKeys(obj) + complexKeys = getComplexKeys(obj) + var result = [] + var inlineIndent = indent || '' + inlineKeys.forEach(key => { + var type = tomlType(obj[key]) + if (type !== 'undefined' && type !== 'null') { + result.push(inlineIndent + stringifyKey(key) + ' = ' + stringifyAnyInline(obj[key], true)) + } + }) + if (result.length > 0) result.push('') + var complexIndent = prefix && inlineKeys.length > 0 ? indent + ' ' : '' + complexKeys.forEach(key => { + result.push(stringifyComplex(prefix, complexIndent, key, obj[key])) + }) + return result.join('\n') +} + +function isInline (value) { + switch (tomlType(value)) { + case 'undefined': + case 'null': + case 'integer': + case 'nan': + case 'float': + case 'boolean': + case 'string': + case 'datetime': + return true + case 'array': + return value.length === 0 || tomlType(value[0]) !== 'table' + case 'table': + return Object.keys(value).length === 0 + /* istanbul ignore next */ + default: + return false + } +} + +function tomlType (value) { + if (value === undefined) { + return 'undefined' + } else if (value === null) { + return 'null' + /* eslint-disable valid-typeof */ + } else if (typeof value === 'bigint' || (Number.isInteger(value) && !Object.is(value, -0))) { + return 'integer' + } else if (typeof value === 'number') { + return 'float' + } else if (typeof value === 'boolean') { + return 'boolean' + } else if (typeof value === 'string') { + return 'string' + } else if ('toISOString' in value) { + return isNaN(value) ? 'undefined' : 'datetime' + } else if (Array.isArray(value)) { + return 'array' + } else { + return 'table' + } +} + +function stringifyKey (key) { + var keyStr = String(key) + if (/^[-A-Za-z0-9_]+$/.test(keyStr)) { + return keyStr + } else { + return stringifyBasicString(keyStr) + } +} + +function stringifyBasicString (str) { + return '"' + escapeString(str).replace(/"/g, '\\"') + '"' +} + +function stringifyLiteralString (str) { + return "'" + str + "'" +} + +function numpad (num, str) { + while (str.length < num) str = '0' + str + return str +} + +function escapeString (str) { + return str.replace(/\\/g, '\\\\') + .replace(/[\b]/g, '\\b') + .replace(/\t/g, '\\t') + .replace(/\n/g, '\\n') + .replace(/\f/g, '\\f') + .replace(/\r/g, '\\r') + /* eslint-disable no-control-regex */ + .replace(/([\u0000-\u001f\u007f])/, c => '\\u' + numpad(4, c.codePointAt(0).toString(16))) + /* eslint-enable no-control-regex */ +} + +function stringifyMultilineString (str) { + let escaped = str.split(/\n/).map(str => { + return escapeString(str).replace(/"(?="")/g, '\\"') + }).join('\n') + if (escaped.slice(-1) === '"') escaped += '\\\n' + return '"""\n' + escaped + '"""' +} + +function stringifyAnyInline (value, multilineOk) { + let type = tomlType(value) + if (type === 'string') { + if (multilineOk && /\n/.test(value)) { + type = 'string-multiline' + } else if (!/[\b\t\n\f\r']/.test(value) && /"/.test(value)) { + type = 'string-literal' + } + } + return stringifyInline(value, type) +} + +function stringifyInline (value, type) { + /* istanbul ignore if */ + if (!type) type = tomlType(value) + switch (type) { + case 'string-multiline': + return stringifyMultilineString(value) + case 'string': + return stringifyBasicString(value) + case 'string-literal': + return stringifyLiteralString(value) + case 'integer': + return stringifyInteger(value) + case 'float': + return stringifyFloat(value) + case 'boolean': + return stringifyBoolean(value) + case 'datetime': + return stringifyDatetime(value) + case 'array': + return stringifyInlineArray(value.filter(_ => tomlType(_) !== 'null' && tomlType(_) !== 'undefined' && tomlType(_) !== 'nan')) + case 'table': + return stringifyInlineTable(value) + /* istanbul ignore next */ + default: + throw typeError(type) + } +} + +function stringifyInteger (value) { + /* eslint-disable security/detect-unsafe-regex */ + return String(value).replace(/\B(?=(\d{3})+(?!\d))/g, '_') +} + +function stringifyFloat (value) { + if (value === Infinity) { + return 'inf' + } else if (value === -Infinity) { + return '-inf' + } else if (Object.is(value, NaN)) { + return 'nan' + } else if (Object.is(value, -0)) { + return '-0.0' + } + var chunks = String(value).split('.') + var int = chunks[0] + var dec = chunks[1] || 0 + return stringifyInteger(int) + '.' + dec +} + +function stringifyBoolean (value) { + return String(value) +} + +function stringifyDatetime (value) { + return value.toISOString() +} + +function isNumber (type) { + return type === 'float' || type === 'integer' +} +function arrayType (values) { + var contentType = tomlType(values[0]) + if (values.every(_ => tomlType(_) === contentType)) return contentType + // mixed integer/float, emit as floats + if (values.every(_ => isNumber(tomlType(_)))) return 'float' + return 'mixed' +} +function validateArray (values) { + const type = arrayType(values) + if (type === 'mixed') { + throw arrayOneTypeError() + } + return type +} + +function stringifyInlineArray (values) { + values = toJSON(values) + const type = validateArray(values) + var result = '[' + var stringified = values.map(_ => stringifyInline(_, type)) + if (stringified.join(', ').length > 60 || /\n/.test(stringified)) { + result += '\n ' + stringified.join(',\n ') + '\n' + } else { + result += ' ' + stringified.join(', ') + (stringified.length > 0 ? ' ' : '') + } + return result + ']' +} + +function stringifyInlineTable (value) { + value = toJSON(value) + var result = [] + Object.keys(value).forEach(key => { + result.push(stringifyKey(key) + ' = ' + stringifyAnyInline(value[key], false)) + }) + return '{ ' + result.join(', ') + (result.length > 0 ? ' ' : '') + '}' +} + +function stringifyComplex (prefix, indent, key, value) { + var valueType = tomlType(value) + /* istanbul ignore else */ + if (valueType === 'array') { + return stringifyArrayOfTables(prefix, indent, key, value) + } else if (valueType === 'table') { + return stringifyComplexTable(prefix, indent, key, value) + } else { + throw typeError(valueType) + } +} + +function stringifyArrayOfTables (prefix, indent, key, values) { + values = toJSON(values) + validateArray(values) + var firstValueType = tomlType(values[0]) + /* istanbul ignore if */ + if (firstValueType !== 'table') throw typeError(firstValueType) + var fullKey = prefix + stringifyKey(key) + var result = '' + values.forEach(table => { + if (result.length > 0) result += '\n' + result += indent + '[[' + fullKey + ']]\n' + result += stringifyObject(fullKey + '.', indent, table) + }) + return result +} + +function stringifyComplexTable (prefix, indent, key, value) { + var fullKey = prefix + stringifyKey(key) + var result = '' + if (getInlineKeys(value).length > 0) { + result += indent + '[' + fullKey + ']\n' + } + return result + stringifyObject(fullKey + '.', indent, value) +} diff --git a/node_modules/@iarna/toml/toml.js b/node_modules/@iarna/toml/toml.js new file mode 100644 index 0000000..edca17c --- /dev/null +++ b/node_modules/@iarna/toml/toml.js @@ -0,0 +1,3 @@ +'use strict' +exports.parse = require('./parse.js') +exports.stringify = require('./stringify.js') diff --git a/node_modules/@npmcli/fs/LICENSE.md b/node_modules/@npmcli/fs/LICENSE.md new file mode 100644 index 0000000..5fc208f --- /dev/null +++ b/node_modules/@npmcli/fs/LICENSE.md @@ -0,0 +1,20 @@ + + +ISC License + +Copyright npm, Inc. + +Permission to use, copy, modify, and/or distribute this +software for any purpose with or without fee is hereby +granted, provided that the above copyright notice and this +permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND NPM DISCLAIMS ALL +WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO +EVENT SHALL NPM BE LIABLE FOR ANY SPECIAL, DIRECT, +INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE +USE OR PERFORMANCE OF THIS SOFTWARE. diff --git a/node_modules/@npmcli/fs/README.md b/node_modules/@npmcli/fs/README.md new file mode 100644 index 0000000..0642968 --- /dev/null +++ b/node_modules/@npmcli/fs/README.md @@ -0,0 +1,62 @@ +# @npmcli/fs + +polyfills, and extensions, of the core `fs` module. + +## Features + +- all exposed functions return promises +- `fs.rm` polyfill for node versions < 14.14.0 +- `fs.mkdir` polyfill adding support for the `recursive` and `force` options in node versions < 10.12.0 +- `fs.copyFile` extended to accept an `owner` option +- `fs.mkdir` extended to accept an `owner` option +- `fs.mkdtemp` extended to accept an `owner` option +- `fs.writeFile` extended to accept an `owner` option +- `fs.withTempDir` added +- `fs.withOwner` added +- `fs.withOwnerSync` added +- `fs.cp` polyfill for node < 16.7.0 + +## The `owner` option + +The `copyFile`, `mkdir`, `mkdtemp`, `writeFile`, and `withTempDir` functions +all accept a new `owner` property in their options. It can be used in two ways: + +- `{ owner: { uid: 100, gid: 100 } }` - set the `uid` and `gid` explicitly +- `{ owner: 100 }` - use one value, will set both `uid` and `gid` the same + +The special string `'inherit'` may be passed instead of a number, which will +cause this module to automatically determine the correct `uid` and/or `gid` +from the nearest existing parent directory of the target. + +## `fs.withTempDir(root, fn, options) -> Promise` + +### Parameters + +- `root`: the directory in which to create the temporary directory +- `fn`: a function that will be called with the path to the temporary directory +- `options` + - `tmpPrefix`: a prefix to be used in the generated directory name + +### Usage + +The `withTempDir` function creates a temporary directory, runs the provided +function (`fn`), then removes the temporary directory and resolves or rejects +based on the result of `fn`. + +```js +const fs = require('@npmcli/fs') +const os = require('os') + +// this function will be called with the full path to the temporary directory +// it is called with `await` behind the scenes, so can be async if desired. +const myFunction = async (tempPath) => { + return 'done!' +} + +const main = async () => { + const result = await fs.withTempDir(os.tmpdir(), myFunction) + // result === 'done!' +} + +main() +``` diff --git a/node_modules/@npmcli/fs/lib/common/file-url-to-path/index.js b/node_modules/@npmcli/fs/lib/common/file-url-to-path/index.js new file mode 100644 index 0000000..7755d1c --- /dev/null +++ b/node_modules/@npmcli/fs/lib/common/file-url-to-path/index.js @@ -0,0 +1,17 @@ +const url = require('url') + +const node = require('../node.js') +const polyfill = require('./polyfill.js') + +const useNative = node.satisfies('>=10.12.0') + +const fileURLToPath = (path) => { + // the polyfill is tested separately from this module, no need to hack + // process.version to try to trigger it just for coverage + // istanbul ignore next + return useNative + ? url.fileURLToPath(path) + : polyfill(path) +} + +module.exports = fileURLToPath diff --git a/node_modules/@npmcli/fs/lib/common/file-url-to-path/polyfill.js b/node_modules/@npmcli/fs/lib/common/file-url-to-path/polyfill.js new file mode 100644 index 0000000..6cc90f0 --- /dev/null +++ b/node_modules/@npmcli/fs/lib/common/file-url-to-path/polyfill.js @@ -0,0 +1,121 @@ +const { URL, domainToUnicode } = require('url') + +const CHAR_LOWERCASE_A = 97 +const CHAR_LOWERCASE_Z = 122 + +const isWindows = process.platform === 'win32' + +class ERR_INVALID_FILE_URL_HOST extends TypeError { + constructor (platform) { + super(`File URL host must be "localhost" or empty on ${platform}`) + this.code = 'ERR_INVALID_FILE_URL_HOST' + } + + toString () { + return `${this.name} [${this.code}]: ${this.message}` + } +} + +class ERR_INVALID_FILE_URL_PATH extends TypeError { + constructor (msg) { + super(`File URL path ${msg}`) + this.code = 'ERR_INVALID_FILE_URL_PATH' + } + + toString () { + return `${this.name} [${this.code}]: ${this.message}` + } +} + +class ERR_INVALID_ARG_TYPE extends TypeError { + constructor (name, actual) { + super(`The "${name}" argument must be one of type string or an instance ` + + `of URL. Received type ${typeof actual} ${actual}`) + this.code = 'ERR_INVALID_ARG_TYPE' + } + + toString () { + return `${this.name} [${this.code}]: ${this.message}` + } +} + +class ERR_INVALID_URL_SCHEME extends TypeError { + constructor (expected) { + super(`The URL must be of scheme ${expected}`) + this.code = 'ERR_INVALID_URL_SCHEME' + } + + toString () { + return `${this.name} [${this.code}]: ${this.message}` + } +} + +const isURLInstance = (input) => { + return input != null && input.href && input.origin +} + +const getPathFromURLWin32 = (url) => { + const hostname = url.hostname + let pathname = url.pathname + for (let n = 0; n < pathname.length; n++) { + if (pathname[n] === '%') { + const third = pathname.codePointAt(n + 2) | 0x20 + if ((pathname[n + 1] === '2' && third === 102) || + (pathname[n + 1] === '5' && third === 99)) { + throw new ERR_INVALID_FILE_URL_PATH('must not include encoded \\ or / characters') + } + } + } + + pathname = pathname.replace(/\//g, '\\') + pathname = decodeURIComponent(pathname) + if (hostname !== '') { + return `\\\\${domainToUnicode(hostname)}${pathname}` + } + + const letter = pathname.codePointAt(1) | 0x20 + const sep = pathname[2] + if (letter < CHAR_LOWERCASE_A || letter > CHAR_LOWERCASE_Z || + (sep !== ':')) { + throw new ERR_INVALID_FILE_URL_PATH('must be absolute') + } + + return pathname.slice(1) +} + +const getPathFromURLPosix = (url) => { + if (url.hostname !== '') { + throw new ERR_INVALID_FILE_URL_HOST(process.platform) + } + + const pathname = url.pathname + + for (let n = 0; n < pathname.length; n++) { + if (pathname[n] === '%') { + const third = pathname.codePointAt(n + 2) | 0x20 + if (pathname[n + 1] === '2' && third === 102) { + throw new ERR_INVALID_FILE_URL_PATH('must not include encoded / characters') + } + } + } + + return decodeURIComponent(pathname) +} + +const fileURLToPath = (path) => { + if (typeof path === 'string') { + path = new URL(path) + } else if (!isURLInstance(path)) { + throw new ERR_INVALID_ARG_TYPE('path', ['string', 'URL'], path) + } + + if (path.protocol !== 'file:') { + throw new ERR_INVALID_URL_SCHEME('file') + } + + return isWindows + ? getPathFromURLWin32(path) + : getPathFromURLPosix(path) +} + +module.exports = fileURLToPath diff --git a/node_modules/@npmcli/fs/lib/common/get-options.js b/node_modules/@npmcli/fs/lib/common/get-options.js new file mode 100644 index 0000000..cb5982f --- /dev/null +++ b/node_modules/@npmcli/fs/lib/common/get-options.js @@ -0,0 +1,20 @@ +// given an input that may or may not be an object, return an object that has +// a copy of every defined property listed in 'copy'. if the input is not an +// object, assign it to the property named by 'wrap' +const getOptions = (input, { copy, wrap }) => { + const result = {} + + if (input && typeof input === 'object') { + for (const prop of copy) { + if (input[prop] !== undefined) { + result[prop] = input[prop] + } + } + } else { + result[wrap] = input + } + + return result +} + +module.exports = getOptions diff --git a/node_modules/@npmcli/fs/lib/common/node.js b/node_modules/@npmcli/fs/lib/common/node.js new file mode 100644 index 0000000..4d13bc0 --- /dev/null +++ b/node_modules/@npmcli/fs/lib/common/node.js @@ -0,0 +1,9 @@ +const semver = require('semver') + +const satisfies = (range) => { + return semver.satisfies(process.version, range, { includePrerelease: true }) +} + +module.exports = { + satisfies, +} diff --git a/node_modules/@npmcli/fs/lib/common/owner-sync.js b/node_modules/@npmcli/fs/lib/common/owner-sync.js new file mode 100644 index 0000000..2055c4b --- /dev/null +++ b/node_modules/@npmcli/fs/lib/common/owner-sync.js @@ -0,0 +1,92 @@ +const { dirname, resolve } = require('path') + +const fileURLToPath = require('./file-url-to-path/index.js') +const fs = require('../fs.js') + +// given a path, find the owner of the nearest parent +const find = (path) => { + // if we have no getuid, permissions are irrelevant on this platform + if (!process.getuid) { + return {} + } + + // fs methods accept URL objects with a scheme of file: so we need to unwrap + // those into an actual path string before we can resolve it + const resolved = path != null && path.href && path.origin + ? resolve(fileURLToPath(path)) + : resolve(path) + + let stat + + try { + stat = fs.lstatSync(resolved) + } finally { + // if we got a stat, return its contents + if (stat) { + return { uid: stat.uid, gid: stat.gid } + } + + // try the parent directory + if (resolved !== dirname(resolved)) { + return find(dirname(resolved)) + } + + // no more parents, never got a stat, just return an empty object + return {} + } +} + +// given a path, uid, and gid update the ownership of the path if necessary +const update = (path, uid, gid) => { + // nothing to update, just exit + if (uid === undefined && gid === undefined) { + return + } + + try { + // see if the permissions are already the same, if they are we don't + // need to do anything, so return early + const stat = fs.statSync(path) + if (uid === stat.uid && gid === stat.gid) { + return + } + } catch (err) {} + + try { + fs.chownSync(path, uid, gid) + } catch (err) {} +} + +// accepts a `path` and the `owner` property of an options object and normalizes +// it into an object with numerical `uid` and `gid` +const validate = (path, input) => { + let uid + let gid + + if (typeof input === 'string' || typeof input === 'number') { + uid = input + gid = input + } else if (input && typeof input === 'object') { + uid = input.uid + gid = input.gid + } + + if (uid === 'inherit' || gid === 'inherit') { + const owner = find(path) + if (uid === 'inherit') { + uid = owner.uid + } + + if (gid === 'inherit') { + gid = owner.gid + } + } + + return { uid, gid } +} + +module.exports = { + find, + update, + validate, +} diff --git a/node_modules/@npmcli/fs/lib/common/owner.js b/node_modules/@npmcli/fs/lib/common/owner.js new file mode 100644 index 0000000..e3468b0 --- /dev/null +++ b/node_modules/@npmcli/fs/lib/common/owner.js @@ -0,0 +1,92 @@ +const { dirname, resolve } = require('path') + +const fileURLToPath = require('./file-url-to-path/index.js') +const fs = require('../fs.js') + +// given a path, find the owner of the nearest parent +const find = async (path) => { + // if we have no getuid, permissions are irrelevant on this platform + if (!process.getuid) { + return {} + } + + // fs methods accept URL objects with a scheme of file: so we need to unwrap + // those into an actual path string before we can resolve it + const resolved = path != null && path.href && path.origin + ? resolve(fileURLToPath(path)) + : resolve(path) + + let stat + + try { + stat = await fs.lstat(resolved) + } finally { + // if we got a stat, return its contents + if (stat) { + return { uid: stat.uid, gid: stat.gid } + } + + // try the parent directory + if (resolved !== dirname(resolved)) { + return find(dirname(resolved)) + } + + // no more parents, never got a stat, just return an empty object + return {} + } +} + +// given a path, uid, and gid update the ownership of the path if necessary +const update = async (path, uid, gid) => { + // nothing to update, just exit + if (uid === undefined && gid === undefined) { + return + } + + try { + // see if the permissions are already the same, if they are we don't + // need to do anything, so return early + const stat = await fs.stat(path) + if (uid === stat.uid && gid === stat.gid) { + return + } + } catch (err) {} + + try { + await fs.chown(path, uid, gid) + } catch (err) {} +} + +// accepts a `path` and the `owner` property of an options object and normalizes +// it into an object with numerical `uid` and `gid` +const validate = async (path, input) => { + let uid + let gid + + if (typeof input === 'string' || typeof input === 'number') { + uid = input + gid = input + } else if (input && typeof input === 'object') { + uid = input.uid + gid = input.gid + } + + if (uid === 'inherit' || gid === 'inherit') { + const owner = await find(path) + if (uid === 'inherit') { + uid = owner.uid + } + + if (gid === 'inherit') { + gid = owner.gid + } + } + + return { uid, gid } +} + +module.exports = { + find, + update, + validate, +} diff --git a/node_modules/@npmcli/fs/lib/copy-file.js b/node_modules/@npmcli/fs/lib/copy-file.js new file mode 100644 index 0000000..8888266 --- /dev/null +++ b/node_modules/@npmcli/fs/lib/copy-file.js @@ -0,0 +1,16 @@ +const fs = require('./fs.js') +const getOptions = require('./common/get-options.js') +const withOwner = require('./with-owner.js') + +const copyFile = async (src, dest, opts) => { + const options = getOptions(opts, { + copy: ['mode'], + wrap: 'mode', + }) + + // the node core method as of 16.5.0 does not support the mode being in an + // object, so we have to pass the mode value directly + return withOwner(dest, () => fs.copyFile(src, dest, options.mode), opts) +} + +module.exports = copyFile diff --git a/node_modules/@npmcli/fs/lib/cp/LICENSE b/node_modules/@npmcli/fs/lib/cp/LICENSE new file mode 100644 index 0000000..93546df --- /dev/null +++ b/node_modules/@npmcli/fs/lib/cp/LICENSE @@ -0,0 +1,15 @@ +(The MIT License) + +Copyright (c) 2011-2017 JP Richardson + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files +(the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, + merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE +WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS +OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, + ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/@npmcli/fs/lib/cp/index.js b/node_modules/@npmcli/fs/lib/cp/index.js new file mode 100644 index 0000000..5da4739 --- /dev/null +++ b/node_modules/@npmcli/fs/lib/cp/index.js @@ -0,0 +1,22 @@ +const fs = require('../fs.js') +const getOptions = require('../common/get-options.js') +const node = require('../common/node.js') +const polyfill = require('./polyfill.js') + +// node 16.7.0 added fs.cp +const useNative = node.satisfies('>=16.7.0') + +const cp = async (src, dest, opts) => { + const options = getOptions(opts, { + copy: ['dereference', 'errorOnExist', 'filter', 'force', 'preserveTimestamps', 'recursive'], + }) + + // the polyfill is tested separately from this module, no need to hack + // process.version to try to trigger it just for coverage + // istanbul ignore next + return useNative + ? fs.cp(src, dest, options) + : polyfill(src, dest, options) +} + +module.exports = cp diff --git a/node_modules/@npmcli/fs/lib/cp/polyfill.js b/node_modules/@npmcli/fs/lib/cp/polyfill.js new file mode 100644 index 0000000..f83ccbf --- /dev/null +++ b/node_modules/@npmcli/fs/lib/cp/polyfill.js @@ -0,0 +1,428 @@ +// this file is a modified version of the code in node 17.2.0 +// which is, in turn, a modified version of the fs-extra module on npm +// node core changes: +// - Use of the assert module has been replaced with core's error system. +// - All code related to the glob dependency has been removed. +// - Bring your own custom fs module is not currently supported. +// - Some basic code cleanup. +// changes here: +// - remove all callback related code +// - drop sync support +// - change assertions back to non-internal methods (see options.js) +// - throws ENOTDIR when rmdir gets an ENOENT for a path that exists in Windows +'use strict' + +const { + ERR_FS_CP_DIR_TO_NON_DIR, + ERR_FS_CP_EEXIST, + ERR_FS_CP_EINVAL, + ERR_FS_CP_FIFO_PIPE, + ERR_FS_CP_NON_DIR_TO_DIR, + ERR_FS_CP_SOCKET, + ERR_FS_CP_SYMLINK_TO_SUBDIRECTORY, + ERR_FS_CP_UNKNOWN, + ERR_FS_EISDIR, + ERR_INVALID_ARG_TYPE, +} = require('../errors.js') +const { + constants: { + errno: { + EEXIST, + EISDIR, + EINVAL, + ENOTDIR, + }, + }, +} = require('os') +const { + chmod, + copyFile, + lstat, + mkdir, + readdir, + readlink, + stat, + symlink, + unlink, + utimes, +} = require('../fs.js') +const { + dirname, + isAbsolute, + join, + parse, + resolve, + sep, + toNamespacedPath, +} = require('path') +const { fileURLToPath } = require('url') + +const defaultOptions = { + dereference: false, + errorOnExist: false, + filter: undefined, + force: true, + preserveTimestamps: false, + recursive: false, +} + +async function cp (src, dest, opts) { + if (opts != null && typeof opts !== 'object') { + throw new ERR_INVALID_ARG_TYPE('options', ['Object'], opts) + } + return cpFn( + toNamespacedPath(getValidatedPath(src)), + toNamespacedPath(getValidatedPath(dest)), + { ...defaultOptions, ...opts }) +} + +function getValidatedPath (fileURLOrPath) { + const path = fileURLOrPath != null && fileURLOrPath.href + && fileURLOrPath.origin + ? fileURLToPath(fileURLOrPath) + : fileURLOrPath + return path +} + +async function cpFn (src, dest, opts) { + // Warn about using preserveTimestamps on 32-bit node + // istanbul ignore next + if (opts.preserveTimestamps && process.arch === 'ia32') { + const warning = 'Using the preserveTimestamps option in 32-bit ' + + 'node is not recommended' + process.emitWarning(warning, 'TimestampPrecisionWarning') + } + const stats = await checkPaths(src, dest, opts) + const { srcStat, destStat } = stats + await checkParentPaths(src, srcStat, dest) + if (opts.filter) { + return handleFilter(checkParentDir, destStat, src, dest, opts) + } + return checkParentDir(destStat, src, dest, opts) +} + +async function checkPaths (src, dest, opts) { + const { 0: srcStat, 1: destStat } = await getStats(src, dest, opts) + if (destStat) { + if (areIdentical(srcStat, destStat)) { + throw new ERR_FS_CP_EINVAL({ + message: 'src and dest cannot be the same', + path: dest, + syscall: 'cp', + errno: EINVAL, + }) + } + if (srcStat.isDirectory() && !destStat.isDirectory()) { + throw new ERR_FS_CP_DIR_TO_NON_DIR({ + message: `cannot overwrite directory ${src} ` + + `with non-directory ${dest}`, + path: dest, + syscall: 'cp', + errno: EISDIR, + }) + } + if (!srcStat.isDirectory() && destStat.isDirectory()) { + throw new ERR_FS_CP_NON_DIR_TO_DIR({ + message: `cannot overwrite non-directory ${src} ` + + `with directory ${dest}`, + path: dest, + syscall: 'cp', + errno: ENOTDIR, + }) + } + } + + if (srcStat.isDirectory() && isSrcSubdir(src, dest)) { + throw new ERR_FS_CP_EINVAL({ + message: `cannot copy ${src} to a subdirectory of self ${dest}`, + path: dest, + syscall: 'cp', + errno: EINVAL, + }) + } + return { srcStat, destStat } +} + +function areIdentical (srcStat, destStat) { + return destStat.ino && destStat.dev && destStat.ino === srcStat.ino && + destStat.dev === srcStat.dev +} + +function getStats (src, dest, opts) { + const statFunc = opts.dereference ? + (file) => stat(file, { bigint: true }) : + (file) => lstat(file, { bigint: true }) + return Promise.all([ + statFunc(src), + statFunc(dest).catch((err) => { + // istanbul ignore next: unsure how to cover. + if (err.code === 'ENOENT') { + return null + } + // istanbul ignore next: unsure how to cover. + throw err + }), + ]) +} + +async function checkParentDir (destStat, src, dest, opts) { + const destParent = dirname(dest) + const dirExists = await pathExists(destParent) + if (dirExists) { + return getStatsForCopy(destStat, src, dest, opts) + } + await mkdir(destParent, { recursive: true }) + return getStatsForCopy(destStat, src, dest, opts) +} + +function pathExists (dest) { + return stat(dest).then( + () => true, + // istanbul ignore next: not sure when this would occur + (err) => (err.code === 'ENOENT' ? false : Promise.reject(err))) +} + +// Recursively check if dest parent is a subdirectory of src. +// It works for all file types including symlinks since it +// checks the src and dest inodes. It starts from the deepest +// parent and stops once it reaches the src parent or the root path. +async function checkParentPaths (src, srcStat, dest) { + const srcParent = resolve(dirname(src)) + const destParent = resolve(dirname(dest)) + if (destParent === srcParent || destParent === parse(destParent).root) { + return + } + let destStat + try { + destStat = await stat(destParent, { bigint: true }) + } catch (err) { + // istanbul ignore else: not sure when this would occur + if (err.code === 'ENOENT') { + return + } + // istanbul ignore next: not sure when this would occur + throw err + } + if (areIdentical(srcStat, destStat)) { + throw new ERR_FS_CP_EINVAL({ + message: `cannot copy ${src} to a subdirectory of self ${dest}`, + path: dest, + syscall: 'cp', + errno: EINVAL, + }) + } + return checkParentPaths(src, srcStat, destParent) +} + +const normalizePathToArray = (path) => + resolve(path).split(sep).filter(Boolean) + +// Return true if dest is a subdir of src, otherwise false. +// It only checks the path strings. +function isSrcSubdir (src, dest) { + const srcArr = normalizePathToArray(src) + const destArr = normalizePathToArray(dest) + return srcArr.every((cur, i) => destArr[i] === cur) +} + +async function handleFilter (onInclude, destStat, src, dest, opts, cb) { + const include = await opts.filter(src, dest) + if (include) { + return onInclude(destStat, src, dest, opts, cb) + } +} + +function startCopy (destStat, src, dest, opts) { + if (opts.filter) { + return handleFilter(getStatsForCopy, destStat, src, dest, opts) + } + return getStatsForCopy(destStat, src, dest, opts) +} + +async function getStatsForCopy (destStat, src, dest, opts) { + const statFn = opts.dereference ? stat : lstat + const srcStat = await statFn(src) + // istanbul ignore else: can't portably test FIFO + if (srcStat.isDirectory() && opts.recursive) { + return onDir(srcStat, destStat, src, dest, opts) + } else if (srcStat.isDirectory()) { + throw new ERR_FS_EISDIR({ + message: `${src} is a directory (not copied)`, + path: src, + syscall: 'cp', + errno: EINVAL, + }) + } else if (srcStat.isFile() || + srcStat.isCharacterDevice() || + srcStat.isBlockDevice()) { + return onFile(srcStat, destStat, src, dest, opts) + } else if (srcStat.isSymbolicLink()) { + return onLink(destStat, src, dest) + } else if (srcStat.isSocket()) { + throw new ERR_FS_CP_SOCKET({ + message: `cannot copy a socket file: ${dest}`, + path: dest, + syscall: 'cp', + errno: EINVAL, + }) + } else if (srcStat.isFIFO()) { + throw new ERR_FS_CP_FIFO_PIPE({ + message: `cannot copy a FIFO pipe: ${dest}`, + path: dest, + syscall: 'cp', + errno: EINVAL, + }) + } + // istanbul ignore next: should be unreachable + throw new ERR_FS_CP_UNKNOWN({ + message: `cannot copy an unknown file type: ${dest}`, + path: dest, + syscall: 'cp', + errno: EINVAL, + }) +} + +function onFile (srcStat, destStat, src, dest, opts) { + if (!destStat) { + return _copyFile(srcStat, src, dest, opts) + } + return mayCopyFile(srcStat, src, dest, opts) +} + +async function mayCopyFile (srcStat, src, dest, opts) { + if (opts.force) { + await unlink(dest) + return _copyFile(srcStat, src, dest, opts) + } else if (opts.errorOnExist) { + throw new ERR_FS_CP_EEXIST({ + message: `${dest} already exists`, + path: dest, + syscall: 'cp', + errno: EEXIST, + }) + } +} + +async function _copyFile (srcStat, src, dest, opts) { + await copyFile(src, dest) + if (opts.preserveTimestamps) { + return handleTimestampsAndMode(srcStat.mode, src, dest) + } + return setDestMode(dest, srcStat.mode) +} + +async function handleTimestampsAndMode (srcMode, src, dest) { + // Make sure the file is writable before setting the timestamp + // otherwise open fails with EPERM when invoked with 'r+' + // (through utimes call) + if (fileIsNotWritable(srcMode)) { + await makeFileWritable(dest, srcMode) + return setDestTimestampsAndMode(srcMode, src, dest) + } + return setDestTimestampsAndMode(srcMode, src, dest) +} + +function fileIsNotWritable (srcMode) { + return (srcMode & 0o200) === 0 +} + +function makeFileWritable (dest, srcMode) { + return setDestMode(dest, srcMode | 0o200) +} + +async function setDestTimestampsAndMode (srcMode, src, dest) { + await setDestTimestamps(src, dest) + return setDestMode(dest, srcMode) +} + +function setDestMode (dest, srcMode) { + return chmod(dest, srcMode) +} + +async function setDestTimestamps (src, dest) { + // The initial srcStat.atime cannot be trusted + // because it is modified by the read(2) system call + // (See https://nodejs.org/api/fs.html#fs_stat_time_values) + const updatedSrcStat = await stat(src) + return utimes(dest, updatedSrcStat.atime, updatedSrcStat.mtime) +} + +function onDir (srcStat, destStat, src, dest, opts) { + if (!destStat) { + return mkDirAndCopy(srcStat.mode, src, dest, opts) + } + return copyDir(src, dest, opts) +} + +async function mkDirAndCopy (srcMode, src, dest, opts) { + await mkdir(dest) + await copyDir(src, dest, opts) + return setDestMode(dest, srcMode) +} + +async function copyDir (src, dest, opts) { + const dir = await readdir(src) + for (let i = 0; i < dir.length; i++) { + const item = dir[i] + const srcItem = join(src, item) + const destItem = join(dest, item) + const { destStat } = await checkPaths(srcItem, destItem, opts) + await startCopy(destStat, srcItem, destItem, opts) + } +} + +async function onLink (destStat, src, dest) { + let resolvedSrc = await readlink(src) + if (!isAbsolute(resolvedSrc)) { + resolvedSrc = resolve(dirname(src), resolvedSrc) + } + if (!destStat) { + return symlink(resolvedSrc, dest) + } + let resolvedDest + try { + resolvedDest = await readlink(dest) + } catch (err) { + // Dest exists and is a regular file or directory, + // Windows may throw UNKNOWN error. If dest already exists, + // fs throws error anyway, so no need to guard against it here. + // istanbul ignore next: can only test on windows + if (err.code === 'EINVAL' || err.code === 'UNKNOWN') { + return symlink(resolvedSrc, dest) + } + // istanbul ignore next: should not be possible + throw err + } + if (!isAbsolute(resolvedDest)) { + resolvedDest = resolve(dirname(dest), resolvedDest) + } + if (isSrcSubdir(resolvedSrc, resolvedDest)) { + throw new ERR_FS_CP_EINVAL({ + message: `cannot copy ${resolvedSrc} to a subdirectory of self ` + + `${resolvedDest}`, + path: dest, + syscall: 'cp', + errno: EINVAL, + }) + } + // Do not copy if src is a subdir of dest since unlinking + // dest in this case would result in removing src contents + // and therefore a broken symlink would be created. + const srcStat = await stat(src) + if (srcStat.isDirectory() && isSrcSubdir(resolvedDest, resolvedSrc)) { + throw new ERR_FS_CP_SYMLINK_TO_SUBDIRECTORY({ + message: `cannot overwrite ${resolvedDest} with ${resolvedSrc}`, + path: dest, + syscall: 'cp', + errno: EINVAL, + }) + } + return copyLink(resolvedSrc, dest) +} + +async function copyLink (resolvedSrc, dest) { + await unlink(dest) + return symlink(resolvedSrc, dest) +} + +module.exports = cp diff --git a/node_modules/@npmcli/fs/lib/errors.js b/node_modules/@npmcli/fs/lib/errors.js new file mode 100644 index 0000000..1cd1e05 --- /dev/null +++ b/node_modules/@npmcli/fs/lib/errors.js @@ -0,0 +1,129 @@ +'use strict' +const { inspect } = require('util') + +// adapted from node's internal/errors +// https://github.com/nodejs/node/blob/c8a04049/lib/internal/errors.js + +// close copy of node's internal SystemError class. +class SystemError { + constructor (code, prefix, context) { + // XXX context.code is undefined in all constructors used in cp/polyfill + // that may be a bug copied from node, maybe the constructor should use + // `code` not `errno`? nodejs/node#41104 + let message = `${prefix}: ${context.syscall} returned ` + + `${context.code} (${context.message})` + + if (context.path !== undefined) { + message += ` ${context.path}` + } + if (context.dest !== undefined) { + message += ` => ${context.dest}` + } + + this.code = code + Object.defineProperties(this, { + name: { + value: 'SystemError', + enumerable: false, + writable: true, + configurable: true, + }, + message: { + value: message, + enumerable: false, + writable: true, + configurable: true, + }, + info: { + value: context, + enumerable: true, + configurable: true, + writable: false, + }, + errno: { + get () { + return context.errno + }, + set (value) { + context.errno = value + }, + enumerable: true, + configurable: true, + }, + syscall: { + get () { + return context.syscall + }, + set (value) { + context.syscall = value + }, + enumerable: true, + configurable: true, + }, + }) + + if (context.path !== undefined) { + Object.defineProperty(this, 'path', { + get () { + return context.path + }, + set (value) { + context.path = value + }, + enumerable: true, + configurable: true, + }) + } + + if (context.dest !== undefined) { + Object.defineProperty(this, 'dest', { + get () { + return context.dest + }, + set (value) { + context.dest = value + }, + enumerable: true, + configurable: true, + }) + } + } + + toString () { + return `${this.name} [${this.code}]: ${this.message}` + } + + [Symbol.for('nodejs.util.inspect.custom')] (_recurseTimes, ctx) { + return inspect(this, { + ...ctx, + getters: true, + customInspect: false, + }) + } +} + +function E (code, message) { + module.exports[code] = class NodeError extends SystemError { + constructor (ctx) { + super(code, message, ctx) + } + } +} + +E('ERR_FS_CP_DIR_TO_NON_DIR', 'Cannot overwrite directory with non-directory') +E('ERR_FS_CP_EEXIST', 'Target already exists') +E('ERR_FS_CP_EINVAL', 'Invalid src or dest') +E('ERR_FS_CP_FIFO_PIPE', 'Cannot copy a FIFO pipe') +E('ERR_FS_CP_NON_DIR_TO_DIR', 'Cannot overwrite non-directory with directory') +E('ERR_FS_CP_SOCKET', 'Cannot copy a socket file') +E('ERR_FS_CP_SYMLINK_TO_SUBDIRECTORY', 'Cannot overwrite symlink in subdirectory of self') +E('ERR_FS_CP_UNKNOWN', 'Cannot copy an unknown file type') +E('ERR_FS_EISDIR', 'Path is a directory') + +module.exports.ERR_INVALID_ARG_TYPE = class ERR_INVALID_ARG_TYPE extends Error { + constructor (name, expected, actual) { + super() + this.code = 'ERR_INVALID_ARG_TYPE' + this.message = `The ${name} argument must be ${expected}. Received ${typeof actual}` + } +} diff --git a/node_modules/@npmcli/fs/lib/fs.js b/node_modules/@npmcli/fs/lib/fs.js new file mode 100644 index 0000000..457da10 --- /dev/null +++ b/node_modules/@npmcli/fs/lib/fs.js @@ -0,0 +1,14 @@ +const fs = require('fs') +const promisify = require('@gar/promisify') + +const isLower = (s) => s === s.toLowerCase() && s !== s.toUpperCase() + +const fsSync = Object.fromEntries(Object.entries(fs).filter(([k, v]) => + typeof v === 'function' && (k.endsWith('Sync') || !isLower(k[0])) +)) + +// this module returns the core fs async fns wrapped in a proxy that promisifies +// method calls within the getter. we keep it in a separate module so that the +// overridden methods have a consistent way to get to promisified fs methods +// without creating a circular dependency. the ctors and sync methods are kept untouched +module.exports = { ...promisify(fs), ...fsSync } diff --git a/node_modules/@npmcli/fs/lib/index.js b/node_modules/@npmcli/fs/lib/index.js new file mode 100644 index 0000000..43892df --- /dev/null +++ b/node_modules/@npmcli/fs/lib/index.js @@ -0,0 +1,12 @@ +module.exports = { + ...require('./fs.js'), + copyFile: require('./copy-file.js'), + cp: require('./cp/index.js'), + mkdir: require('./mkdir/index.js'), + mkdtemp: require('./mkdtemp.js'), + rm: require('./rm/index.js'), + withTempDir: require('./with-temp-dir.js'), + withOwner: require('./with-owner.js'), + withOwnerSync: require('./with-owner-sync.js'), + writeFile: require('./write-file.js'), +} diff --git a/node_modules/@npmcli/fs/lib/mkdir/index.js b/node_modules/@npmcli/fs/lib/mkdir/index.js new file mode 100644 index 0000000..e269104 --- /dev/null +++ b/node_modules/@npmcli/fs/lib/mkdir/index.js @@ -0,0 +1,29 @@ +const fs = require('../fs.js') +const getOptions = require('../common/get-options.js') +const node = require('../common/node.js') +const withOwner = require('../with-owner.js') + +const polyfill = require('./polyfill.js') + +// node 10.12.0 added the options parameter, which allows recursive and mode +// properties to be passed +const useNative = node.satisfies('>=10.12.0') + +// extends mkdir with the ability to specify an owner of the new dir +const mkdir = async (path, opts) => { + const options = getOptions(opts, { + copy: ['mode', 'recursive'], + wrap: 'mode', + }) + + // the polyfill is tested separately from this module, no need to hack + // process.version to try to trigger it just for coverage + // istanbul ignore next + return withOwner( + path, + () => useNative ? fs.mkdir(path, options) : polyfill(path, options), + opts + ) +} + +module.exports = mkdir diff --git a/node_modules/@npmcli/fs/lib/mkdir/polyfill.js b/node_modules/@npmcli/fs/lib/mkdir/polyfill.js new file mode 100644 index 0000000..4f8e6f0 --- /dev/null +++ b/node_modules/@npmcli/fs/lib/mkdir/polyfill.js @@ -0,0 +1,81 @@ +const { dirname } = require('path') + +const fileURLToPath = require('../common/file-url-to-path/index.js') +const fs = require('../fs.js') + +const defaultOptions = { + mode: 0o777, + recursive: false, +} + +const mkdir = async (path, opts) => { + const options = { ...defaultOptions, ...opts } + + // if we're not in recursive mode, just call the real mkdir with the path and + // the mode option only + if (!options.recursive) { + return fs.mkdir(path, options.mode) + } + + const makeDirectory = async (dir, mode) => { + // we can't use dirname directly since these functions support URL + // objects with the file: protocol as the path input, so first we get a + // string path, then we can call dirname on that + const parent = dir != null && dir.href && dir.origin + ? dirname(fileURLToPath(dir)) + : dirname(dir) + + // if the parent is the dir itself, try to create it. anything but EISDIR + // should be rethrown + if (parent === dir) { + try { + await fs.mkdir(dir, opts) + } catch (err) { + if (err.code !== 'EISDIR') { + throw err + } + } + return undefined + } + + try { + await fs.mkdir(dir, mode) + return dir + } catch (err) { + // ENOENT means the parent wasn't there, so create that + if (err.code === 'ENOENT') { + const made = await makeDirectory(parent, mode) + await makeDirectory(dir, mode) + // return the shallowest path we created, i.e. the result of creating + // the parent + return made + } + + // an EEXIST means there's already something there + // an EROFS means we have a read-only filesystem and can't create a dir + // any other error is fatal and we should give up now + if (err.code !== 'EEXIST' && err.code !== 'EROFS') { + throw err + } + + // stat the directory, if the result is a directory, then we successfully + // created this one so return its path. otherwise, we reject with the + // original error by ignoring the error in the catch + try { + const stat = await fs.stat(dir) + if (stat.isDirectory()) { + // if it already existed, we didn't create anything so return + // undefined + return undefined + } + } catch (_) {} + + // if the thing that's there isn't a directory, then just re-throw + throw err + } + } + + return makeDirectory(path, options.mode) +} + +module.exports = mkdir diff --git a/node_modules/@npmcli/fs/lib/mkdtemp.js b/node_modules/@npmcli/fs/lib/mkdtemp.js new file mode 100644 index 0000000..60b12a7 --- /dev/null +++ b/node_modules/@npmcli/fs/lib/mkdtemp.js @@ -0,0 +1,23 @@ +const { dirname, sep } = require('path') + +const fs = require('./fs.js') +const getOptions = require('./common/get-options.js') +const withOwner = require('./with-owner.js') + +const mkdtemp = async (prefix, opts) => { + const options = getOptions(opts, { + copy: ['encoding'], + wrap: 'encoding', + }) + + // mkdtemp relies on the trailing path separator to indicate if it should + // create a directory inside of the prefix. if that's the case then the root + // we infer ownership from is the prefix itself, otherwise it's the dirname + // /tmp -> /tmpABCDEF, infers from / + // /tmp/ -> /tmp/ABCDEF, infers from /tmp + const root = prefix.endsWith(sep) ? prefix : dirname(prefix) + + return withOwner(root, () => fs.mkdtemp(prefix, options), opts) +} + +module.exports = mkdtemp diff --git a/node_modules/@npmcli/fs/lib/rm/index.js b/node_modules/@npmcli/fs/lib/rm/index.js new file mode 100644 index 0000000..cb81fbd --- /dev/null +++ b/node_modules/@npmcli/fs/lib/rm/index.js @@ -0,0 +1,22 @@ +const fs = require('../fs.js') +const getOptions = require('../common/get-options.js') +const node = require('../common/node.js') +const polyfill = require('./polyfill.js') + +// node 14.14.0 added fs.rm, which allows both the force and recursive options +const useNative = node.satisfies('>=14.14.0') + +const rm = async (path, opts) => { + const options = getOptions(opts, { + copy: ['retryDelay', 'maxRetries', 'recursive', 'force'], + }) + + // the polyfill is tested separately from this module, no need to hack + // process.version to try to trigger it just for coverage + // istanbul ignore next + return useNative + ? fs.rm(path, options) + : polyfill(path, options) +} + +module.exports = rm diff --git a/node_modules/@npmcli/fs/lib/rm/polyfill.js b/node_modules/@npmcli/fs/lib/rm/polyfill.js new file mode 100644 index 0000000..a25c174 --- /dev/null +++ b/node_modules/@npmcli/fs/lib/rm/polyfill.js @@ -0,0 +1,239 @@ +// this file is a modified version of the code in node core >=14.14.0 +// which is, in turn, a modified version of the rimraf module on npm +// node core changes: +// - Use of the assert module has been replaced with core's error system. +// - All code related to the glob dependency has been removed. +// - Bring your own custom fs module is not currently supported. +// - Some basic code cleanup. +// changes here: +// - remove all callback related code +// - drop sync support +// - change assertions back to non-internal methods (see options.js) +// - throws ENOTDIR when rmdir gets an ENOENT for a path that exists in Windows +const errnos = require('os').constants.errno +const { join } = require('path') +const fs = require('../fs.js') + +// error codes that mean we need to remove contents +const notEmptyCodes = new Set([ + 'ENOTEMPTY', + 'EEXIST', + 'EPERM', +]) + +// error codes we can retry later +const retryCodes = new Set([ + 'EBUSY', + 'EMFILE', + 'ENFILE', + 'ENOTEMPTY', + 'EPERM', +]) + +const isWindows = process.platform === 'win32' + +const defaultOptions = { + retryDelay: 100, + maxRetries: 0, + recursive: false, + force: false, +} + +// this is drastically simplified, but should be roughly equivalent to what +// node core throws +class ERR_FS_EISDIR extends Error { + constructor (path) { + super() + this.info = { + code: 'EISDIR', + message: 'is a directory', + path, + syscall: 'rm', + errno: errnos.EISDIR, + } + this.name = 'SystemError' + this.code = 'ERR_FS_EISDIR' + this.errno = errnos.EISDIR + this.syscall = 'rm' + this.path = path + this.message = `Path is a directory: ${this.syscall} returned ` + + `${this.info.code} (is a directory) ${path}` + } + + toString () { + return `${this.name} [${this.code}]: ${this.message}` + } +} + +class ENOTDIR extends Error { + constructor (path) { + super() + this.name = 'Error' + this.code = 'ENOTDIR' + this.errno = errnos.ENOTDIR + this.syscall = 'rmdir' + this.path = path + this.message = `not a directory, ${this.syscall} '${this.path}'` + } + + toString () { + return `${this.name}: ${this.code}: ${this.message}` + } +} + +// force is passed separately here because we respect it for the first entry +// into rimraf only, any further calls that are spawned as a result (i.e. to +// delete content within the target) will ignore ENOENT errors +const rimraf = async (path, options, isTop = false) => { + const force = isTop ? options.force : true + const stat = await fs.lstat(path) + .catch((err) => { + // we only ignore ENOENT if we're forcing this call + if (err.code === 'ENOENT' && force) { + return + } + + if (isWindows && err.code === 'EPERM') { + return fixEPERM(path, options, err, isTop) + } + + throw err + }) + + // no stat object here means either lstat threw an ENOENT, or lstat threw + // an EPERM and the fixPERM function took care of things. either way, we're + // already done, so return early + if (!stat) { + return + } + + if (stat.isDirectory()) { + return rmdir(path, options, null, isTop) + } + + return fs.unlink(path) + .catch((err) => { + if (err.code === 'ENOENT' && force) { + return + } + + if (err.code === 'EISDIR') { + return rmdir(path, options, err, isTop) + } + + if (err.code === 'EPERM') { + // in windows, we handle this through fixEPERM which will also try to + // delete things again. everywhere else since deleting the target as a + // file didn't work we go ahead and try to delete it as a directory + return isWindows + ? fixEPERM(path, options, err, isTop) + : rmdir(path, options, err, isTop) + } + + throw err + }) +} + +const fixEPERM = async (path, options, originalErr, isTop) => { + const force = isTop ? options.force : true + const targetMissing = await fs.chmod(path, 0o666) + .catch((err) => { + if (err.code === 'ENOENT' && force) { + return true + } + + throw originalErr + }) + + // got an ENOENT above, return now. no file = no problem + if (targetMissing) { + return + } + + // this function does its own lstat rather than calling rimraf again to avoid + // infinite recursion for a repeating EPERM + const stat = await fs.lstat(path) + .catch((err) => { + if (err.code === 'ENOENT' && force) { + return + } + + throw originalErr + }) + + if (!stat) { + return + } + + if (stat.isDirectory()) { + return rmdir(path, options, originalErr, isTop) + } + + return fs.unlink(path) +} + +const rmdir = async (path, options, originalErr, isTop) => { + if (!options.recursive && isTop) { + throw originalErr || new ERR_FS_EISDIR(path) + } + const force = isTop ? options.force : true + + return fs.rmdir(path) + .catch(async (err) => { + // in Windows, calling rmdir on a file path will fail with ENOENT rather + // than ENOTDIR. to determine if that's what happened, we have to do + // another lstat on the path. if the path isn't actually gone, we throw + // away the ENOENT and replace it with our own ENOTDIR + if (isWindows && err.code === 'ENOENT') { + const stillExists = await fs.lstat(path).then(() => true, () => false) + if (stillExists) { + err = new ENOTDIR(path) + } + } + + // not there, not a problem + if (err.code === 'ENOENT' && force) { + return + } + + // we may not have originalErr if lstat tells us our target is a + // directory but that changes before we actually remove it, so + // only throw it here if it's set + if (originalErr && err.code === 'ENOTDIR') { + throw originalErr + } + + // the directory isn't empty, remove the contents and try again + if (notEmptyCodes.has(err.code)) { + const files = await fs.readdir(path) + await Promise.all(files.map((file) => { + const target = join(path, file) + return rimraf(target, options) + })) + return fs.rmdir(path) + } + + throw err + }) +} + +const rm = async (path, opts) => { + const options = { ...defaultOptions, ...opts } + let retries = 0 + + const errHandler = async (err) => { + if (retryCodes.has(err.code) && ++retries < options.maxRetries) { + const delay = retries * options.retryDelay + await promiseTimeout(delay) + return rimraf(path, options, true).catch(errHandler) + } + + throw err + } + + return rimraf(path, options, true).catch(errHandler) +} + +const promiseTimeout = (ms) => new Promise((r) => setTimeout(r, ms)) + +module.exports = rm diff --git a/node_modules/@npmcli/fs/lib/with-owner-sync.js b/node_modules/@npmcli/fs/lib/with-owner-sync.js new file mode 100644 index 0000000..3597d1c --- /dev/null +++ b/node_modules/@npmcli/fs/lib/with-owner-sync.js @@ -0,0 +1,21 @@ +const getOptions = require('./common/get-options.js') +const owner = require('./common/owner-sync.js') + +const withOwnerSync = (path, fn, opts) => { + const options = getOptions(opts, { + copy: ['owner'], + }) + + const { uid, gid } = owner.validate(path, options.owner) + + const result = fn({ uid, gid }) + + owner.update(path, uid, gid) + if (typeof result === 'string') { + owner.update(result, uid, gid) + } + + return result +} + +module.exports = withOwnerSync diff --git a/node_modules/@npmcli/fs/lib/with-owner.js b/node_modules/@npmcli/fs/lib/with-owner.js new file mode 100644 index 0000000..a679102 --- /dev/null +++ b/node_modules/@npmcli/fs/lib/with-owner.js @@ -0,0 +1,21 @@ +const getOptions = require('./common/get-options.js') +const owner = require('./common/owner.js') + +const withOwner = async (path, fn, opts) => { + const options = getOptions(opts, { + copy: ['owner'], + }) + + const { uid, gid } = await owner.validate(path, options.owner) + + const result = await fn({ uid, gid }) + + await Promise.all([ + owner.update(path, uid, gid), + typeof result === 'string' ? owner.update(result, uid, gid) : null, + ]) + + return result +} + +module.exports = withOwner diff --git a/node_modules/@npmcli/fs/lib/with-temp-dir.js b/node_modules/@npmcli/fs/lib/with-temp-dir.js new file mode 100644 index 0000000..ac9ebb7 --- /dev/null +++ b/node_modules/@npmcli/fs/lib/with-temp-dir.js @@ -0,0 +1,39 @@ +const { join, sep } = require('path') + +const getOptions = require('./common/get-options.js') +const mkdir = require('./mkdir/index.js') +const mkdtemp = require('./mkdtemp.js') +const rm = require('./rm/index.js') + +// create a temp directory, ensure its permissions match its parent, then call +// the supplied function passing it the path to the directory. clean up after +// the function finishes, whether it throws or not +const withTempDir = async (root, fn, opts) => { + const options = getOptions(opts, { + copy: ['tmpPrefix'], + }) + // create the directory, and fix its ownership + await mkdir(root, { recursive: true, owner: 'inherit' }) + + const target = await mkdtemp(join(`${root}${sep}`, options.tmpPrefix || ''), { owner: 'inherit' }) + let err + let result + + try { + result = await fn(target) + } catch (_err) { + err = _err + } + + try { + await rm(target, { force: true, recursive: true }) + } catch {} + + if (err) { + throw err + } + + return result +} + +module.exports = withTempDir diff --git a/node_modules/@npmcli/fs/lib/write-file.js b/node_modules/@npmcli/fs/lib/write-file.js new file mode 100644 index 0000000..ff90057 --- /dev/null +++ b/node_modules/@npmcli/fs/lib/write-file.js @@ -0,0 +1,14 @@ +const fs = require('./fs.js') +const getOptions = require('./common/get-options.js') +const withOwner = require('./with-owner.js') + +const writeFile = async (file, data, opts) => { + const options = getOptions(opts, { + copy: ['encoding', 'mode', 'flag', 'signal'], + wrap: 'encoding', + }) + + return withOwner(file, () => fs.writeFile(file, data, options), opts) +} + +module.exports = writeFile diff --git a/node_modules/@npmcli/fs/package.json b/node_modules/@npmcli/fs/package.json new file mode 100644 index 0000000..799bf51 --- /dev/null +++ b/node_modules/@npmcli/fs/package.json @@ -0,0 +1,50 @@ +{ + "name": "@npmcli/fs", + "version": "2.1.0", + "description": "filesystem utilities for the npm cli", + "main": "lib/index.js", + "files": [ + "bin/", + "lib/" + ], + "scripts": { + "preversion": "npm test", + "postversion": "npm publish", + "prepublishOnly": "git push origin --follow-tags", + "snap": "tap", + "test": "tap", + "npmclilint": "npmcli-lint", + "lint": "eslint \"**/*.js\"", + "lintfix": "npm run lint -- --fix", + "posttest": "npm run lint", + "postsnap": "npm run lintfix --", + "postlint": "template-oss-check", + "template-oss-apply": "template-oss-apply --force" + }, + "repository": { + "type": "git", + "url": "https://github.com/npm/fs.git" + }, + "keywords": [ + "npm", + "oss" + ], + "author": "GitHub Inc.", + "license": "ISC", + "devDependencies": { + "@npmcli/eslint-config": "^3.0.1", + "@npmcli/template-oss": "3.1.2", + "tap": "^15.1.6" + }, + "dependencies": { + "@gar/promisify": "^1.1.3", + "semver": "^7.3.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + }, + "templateOSS": { + "//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.", + "version": "3.1.2" + } +} diff --git a/node_modules/@npmcli/move-file/LICENSE.md b/node_modules/@npmcli/move-file/LICENSE.md new file mode 100644 index 0000000..072bf20 --- /dev/null +++ b/node_modules/@npmcli/move-file/LICENSE.md @@ -0,0 +1,22 @@ +MIT License + +Copyright (c) Sindre Sorhus (https://sindresorhus.com) +Copyright (c) npm, Inc. + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and associated documentation files (the "Software"), +to deal in the Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, sublicense, +and/or sell copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. diff --git a/node_modules/@npmcli/move-file/README.md b/node_modules/@npmcli/move-file/README.md new file mode 100644 index 0000000..8a5a57f --- /dev/null +++ b/node_modules/@npmcli/move-file/README.md @@ -0,0 +1,69 @@ +# @npmcli/move-file + +A fork of [move-file](https://github.com/sindresorhus/move-file) with +compatibility with all node 10.x versions. + +> Move a file (or directory) + +The built-in +[`fs.rename()`](https://nodejs.org/api/fs.html#fs_fs_rename_oldpath_newpath_callback) +is just a JavaScript wrapper for the C `rename(2)` function, which doesn't +support moving files across partitions or devices. This module is what you +would have expected `fs.rename()` to be. + +## Highlights + +- Promise API. +- Supports moving a file across partitions and devices. +- Optionally prevent overwriting an existing file. +- Creates non-existent destination directories for you. +- Support for Node versions that lack built-in recursive `fs.mkdir()` +- Automatically recurses when source is a directory. + +## Install + +``` +$ npm install @npmcli/move-file +``` + +## Usage + +```js +const moveFile = require('@npmcli/move-file'); + +(async () => { + await moveFile('source/unicorn.png', 'destination/unicorn.png'); + console.log('The file has been moved'); +})(); +``` + +## API + +### moveFile(source, destination, options?) + +Returns a `Promise` that resolves when the file has been moved. + +### moveFile.sync(source, destination, options?) + +#### source + +Type: `string` + +File, or directory, you want to move. + +#### destination + +Type: `string` + +Where you want the file or directory moved. + +#### options + +Type: `object` + +##### overwrite + +Type: `boolean`\ +Default: `true` + +Overwrite existing destination file(s). diff --git a/node_modules/@npmcli/move-file/lib/index.js b/node_modules/@npmcli/move-file/lib/index.js new file mode 100644 index 0000000..ecc55f0 --- /dev/null +++ b/node_modules/@npmcli/move-file/lib/index.js @@ -0,0 +1,175 @@ +const { dirname, join, resolve, relative, isAbsolute } = require('path') +const rimraf_ = require('rimraf') +const { promisify } = require('util') +const { + access: access_, + accessSync, + copyFile: copyFile_, + copyFileSync, + readdir: readdir_, + readdirSync, + rename: rename_, + renameSync, + stat: stat_, + statSync, + lstat: lstat_, + lstatSync, + symlink: symlink_, + symlinkSync, + readlink: readlink_, + readlinkSync, +} = require('fs') + +const access = promisify(access_) +const copyFile = promisify(copyFile_) +const readdir = promisify(readdir_) +const rename = promisify(rename_) +const stat = promisify(stat_) +const lstat = promisify(lstat_) +const symlink = promisify(symlink_) +const readlink = promisify(readlink_) +const rimraf = promisify(rimraf_) +const rimrafSync = rimraf_.sync + +const mkdirp = require('mkdirp') + +const pathExists = async path => { + try { + await access(path) + return true + } catch (er) { + return er.code !== 'ENOENT' + } +} + +const pathExistsSync = path => { + try { + accessSync(path) + return true + } catch (er) { + return er.code !== 'ENOENT' + } +} + +const moveFile = async (source, destination, options = {}, root = true, symlinks = []) => { + if (!source || !destination) { + throw new TypeError('`source` and `destination` file required') + } + + options = { + overwrite: true, + ...options, + } + + if (!options.overwrite && await pathExists(destination)) { + throw new Error(`The destination file exists: ${destination}`) + } + + await mkdirp(dirname(destination)) + + try { + await rename(source, destination) + } catch (error) { + if (error.code === 'EXDEV' || error.code === 'EPERM') { + const sourceStat = await lstat(source) + if (sourceStat.isDirectory()) { + const files = await readdir(source) + await Promise.all(files.map((file) => + moveFile(join(source, file), join(destination, file), options, false, symlinks) + )) + } else if (sourceStat.isSymbolicLink()) { + symlinks.push({ source, destination }) + } else { + await copyFile(source, destination) + } + } else { + throw error + } + } + + if (root) { + await Promise.all(symlinks.map(async ({ source: symSource, destination: symDestination }) => { + let target = await readlink(symSource) + // junction symlinks in windows will be absolute paths, so we need to + // make sure they point to the symlink destination + if (isAbsolute(target)) { + target = resolve(symDestination, relative(symSource, target)) + } + // try to determine what the actual file is so we can create the correct + // type of symlink in windows + let targetStat + try { + targetStat = await stat(resolve(dirname(symSource), target)) + } catch (err) {} + await symlink( + target, + symDestination, + targetStat && targetStat.isDirectory() ? 'junction' : 'file' + ) + })) + await rimraf(source) + } +} + +const moveFileSync = (source, destination, options = {}, root = true, symlinks = []) => { + if (!source || !destination) { + throw new TypeError('`source` and `destination` file required') + } + + options = { + overwrite: true, + ...options, + } + + if (!options.overwrite && pathExistsSync(destination)) { + throw new Error(`The destination file exists: ${destination}`) + } + + mkdirp.sync(dirname(destination)) + + try { + renameSync(source, destination) + } catch (error) { + if (error.code === 'EXDEV' || error.code === 'EPERM') { + const sourceStat = lstatSync(source) + if (sourceStat.isDirectory()) { + const files = readdirSync(source) + for (const file of files) { + moveFileSync(join(source, file), join(destination, file), options, false, symlinks) + } + } else if (sourceStat.isSymbolicLink()) { + symlinks.push({ source, destination }) + } else { + copyFileSync(source, destination) + } + } else { + throw error + } + } + + if (root) { + for (const { source: symSource, destination: symDestination } of symlinks) { + let target = readlinkSync(symSource) + // junction symlinks in windows will be absolute paths, so we need to + // make sure they point to the symlink destination + if (isAbsolute(target)) { + target = resolve(symDestination, relative(symSource, target)) + } + // try to determine what the actual file is so we can create the correct + // type of symlink in windows + let targetStat + try { + targetStat = statSync(resolve(dirname(symSource), target)) + } catch (err) {} + symlinkSync( + target, + symDestination, + targetStat && targetStat.isDirectory() ? 'junction' : 'file' + ) + } + rimrafSync(source) + } +} + +module.exports = moveFile +module.exports.sync = moveFileSync diff --git a/node_modules/@npmcli/move-file/package.json b/node_modules/@npmcli/move-file/package.json new file mode 100644 index 0000000..1b1d377 --- /dev/null +++ b/node_modules/@npmcli/move-file/package.json @@ -0,0 +1,47 @@ +{ + "name": "@npmcli/move-file", + "version": "2.0.0", + "files": [ + "bin/", + "lib/" + ], + "main": "lib/index.js", + "description": "move a file (fork of move-file)", + "dependencies": { + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" + }, + "devDependencies": { + "@npmcli/eslint-config": "^3.0.1", + "@npmcli/template-oss": "3.2.2", + "tap": "^16.0.1" + }, + "scripts": { + "test": "tap", + "snap": "tap", + "preversion": "npm test", + "postversion": "npm publish", + "prepublishOnly": "git push origin --follow-tags", + "lint": "eslint \"**/*.js\"", + "postlint": "template-oss-check", + "template-oss-apply": "template-oss-apply --force", + "lintfix": "npm run lint -- --fix", + "posttest": "npm run lint" + }, + "repository": { + "type": "git", + "url": "https://github.com/npm/move-file.git" + }, + "tap": { + "check-coverage": true + }, + "license": "MIT", + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + }, + "author": "GitHub Inc.", + "templateOSS": { + "//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.", + "version": "3.2.2" + } +} diff --git a/node_modules/@sindresorhus/is/dist/index.d.ts b/node_modules/@sindresorhus/is/dist/index.d.ts new file mode 100644 index 0000000..e94d30b --- /dev/null +++ b/node_modules/@sindresorhus/is/dist/index.d.ts @@ -0,0 +1,132 @@ +/// +/// +/// +/// +/// +declare type TypedArray = Int8Array | Uint8Array | Uint8ClampedArray | Int16Array | Uint16Array | Int32Array | Uint32Array | Float32Array | Float64Array; +declare type Primitive = null | undefined | string | number | boolean | Symbol; +export interface ArrayLike { + length: number; +} +export interface Class { + new (...args: any[]): T; +} +declare type DomElement = object & { + nodeType: 1; + nodeName: string; +}; +declare type NodeStream = object & { + pipe: Function; +}; +export declare const enum TypeName { + null = "null", + boolean = "boolean", + undefined = "undefined", + string = "string", + number = "number", + symbol = "symbol", + Function = "Function", + GeneratorFunction = "GeneratorFunction", + AsyncFunction = "AsyncFunction", + Observable = "Observable", + Array = "Array", + Buffer = "Buffer", + Object = "Object", + RegExp = "RegExp", + Date = "Date", + Error = "Error", + Map = "Map", + Set = "Set", + WeakMap = "WeakMap", + WeakSet = "WeakSet", + Int8Array = "Int8Array", + Uint8Array = "Uint8Array", + Uint8ClampedArray = "Uint8ClampedArray", + Int16Array = "Int16Array", + Uint16Array = "Uint16Array", + Int32Array = "Int32Array", + Uint32Array = "Uint32Array", + Float32Array = "Float32Array", + Float64Array = "Float64Array", + ArrayBuffer = "ArrayBuffer", + SharedArrayBuffer = "SharedArrayBuffer", + DataView = "DataView", + Promise = "Promise", + URL = "URL" +} +declare function is(value: unknown): TypeName; +declare namespace is { + const undefined: (value: unknown) => value is undefined; + const string: (value: unknown) => value is string; + const number: (value: unknown) => value is number; + const function_: (value: unknown) => value is Function; + const null_: (value: unknown) => value is null; + const class_: (value: unknown) => value is Class; + const boolean: (value: unknown) => value is boolean; + const symbol: (value: unknown) => value is Symbol; + const numericString: (value: unknown) => boolean; + const array: (arg: any) => arg is any[]; + const buffer: (input: unknown) => input is Buffer; + const nullOrUndefined: (value: unknown) => value is null | undefined; + const object: (value: unknown) => value is object; + const iterable: (value: unknown) => value is IterableIterator; + const asyncIterable: (value: unknown) => value is AsyncIterableIterator; + const generator: (value: unknown) => value is Generator; + const nativePromise: (value: unknown) => value is Promise; + const promise: (value: unknown) => value is Promise; + const generatorFunction: (value: unknown) => value is GeneratorFunction; + const asyncFunction: (value: unknown) => value is Function; + const boundFunction: (value: unknown) => value is Function; + const regExp: (value: unknown) => value is RegExp; + const date: (value: unknown) => value is Date; + const error: (value: unknown) => value is Error; + const map: (value: unknown) => value is Map; + const set: (value: unknown) => value is Set; + const weakMap: (value: unknown) => value is WeakMap; + const weakSet: (value: unknown) => value is WeakSet; + const int8Array: (value: unknown) => value is Int8Array; + const uint8Array: (value: unknown) => value is Uint8Array; + const uint8ClampedArray: (value: unknown) => value is Uint8ClampedArray; + const int16Array: (value: unknown) => value is Int16Array; + const uint16Array: (value: unknown) => value is Uint16Array; + const int32Array: (value: unknown) => value is Int32Array; + const uint32Array: (value: unknown) => value is Uint32Array; + const float32Array: (value: unknown) => value is Float32Array; + const float64Array: (value: unknown) => value is Float64Array; + const arrayBuffer: (value: unknown) => value is ArrayBuffer; + const sharedArrayBuffer: (value: unknown) => value is SharedArrayBuffer; + const dataView: (value: unknown) => value is DataView; + const directInstanceOf: (instance: unknown, klass: Class) => instance is T; + const urlInstance: (value: unknown) => value is URL; + const urlString: (value: unknown) => boolean; + const truthy: (value: unknown) => boolean; + const falsy: (value: unknown) => boolean; + const nan: (value: unknown) => boolean; + const primitive: (value: unknown) => value is Primitive; + const integer: (value: unknown) => value is number; + const safeInteger: (value: unknown) => value is number; + const plainObject: (value: unknown) => boolean; + const typedArray: (value: unknown) => value is TypedArray; + const arrayLike: (value: unknown) => value is ArrayLike; + const inRange: (value: number, range: number | number[]) => boolean; + const domElement: (value: unknown) => value is DomElement; + const observable: (value: unknown) => boolean; + const nodeStream: (value: unknown) => value is NodeStream; + const infinite: (value: unknown) => boolean; + const even: (value: number) => boolean; + const odd: (value: number) => boolean; + const emptyArray: (value: unknown) => boolean; + const nonEmptyArray: (value: unknown) => boolean; + const emptyString: (value: unknown) => boolean; + const nonEmptyString: (value: unknown) => boolean; + const emptyStringOrWhitespace: (value: unknown) => boolean; + const emptyObject: (value: unknown) => boolean; + const nonEmptyObject: (value: unknown) => boolean; + const emptySet: (value: unknown) => boolean; + const nonEmptySet: (value: unknown) => boolean; + const emptyMap: (value: unknown) => boolean; + const nonEmptyMap: (value: unknown) => boolean; + const any: (predicate: unknown, ...values: unknown[]) => boolean; + const all: (predicate: unknown, ...values: unknown[]) => boolean; +} +export default is; diff --git a/node_modules/@sindresorhus/is/dist/index.js b/node_modules/@sindresorhus/is/dist/index.js new file mode 100644 index 0000000..3cbafae --- /dev/null +++ b/node_modules/@sindresorhus/is/dist/index.js @@ -0,0 +1,245 @@ +"use strict"; +/// +/// +/// +/// +Object.defineProperty(exports, "__esModule", { value: true }); +// TODO: Use the `URL` global when targeting Node.js 10 +// tslint:disable-next-line +const URLGlobal = typeof URL === 'undefined' ? require('url').URL : URL; +const toString = Object.prototype.toString; +const isOfType = (type) => (value) => typeof value === type; +const isBuffer = (input) => !is.nullOrUndefined(input) && !is.nullOrUndefined(input.constructor) && is.function_(input.constructor.isBuffer) && input.constructor.isBuffer(input); +const getObjectType = (value) => { + const objectName = toString.call(value).slice(8, -1); + if (objectName) { + return objectName; + } + return null; +}; +const isObjectOfType = (type) => (value) => getObjectType(value) === type; +function is(value) { + switch (value) { + case null: + return "null" /* null */; + case true: + case false: + return "boolean" /* boolean */; + default: + } + switch (typeof value) { + case 'undefined': + return "undefined" /* undefined */; + case 'string': + return "string" /* string */; + case 'number': + return "number" /* number */; + case 'symbol': + return "symbol" /* symbol */; + default: + } + if (is.function_(value)) { + return "Function" /* Function */; + } + if (is.observable(value)) { + return "Observable" /* Observable */; + } + if (Array.isArray(value)) { + return "Array" /* Array */; + } + if (isBuffer(value)) { + return "Buffer" /* Buffer */; + } + const tagType = getObjectType(value); + if (tagType) { + return tagType; + } + if (value instanceof String || value instanceof Boolean || value instanceof Number) { + throw new TypeError('Please don\'t use object wrappers for primitive types'); + } + return "Object" /* Object */; +} +(function (is) { + // tslint:disable-next-line:strict-type-predicates + const isObject = (value) => typeof value === 'object'; + // tslint:disable:variable-name + is.undefined = isOfType('undefined'); + is.string = isOfType('string'); + is.number = isOfType('number'); + is.function_ = isOfType('function'); + // tslint:disable-next-line:strict-type-predicates + is.null_ = (value) => value === null; + is.class_ = (value) => is.function_(value) && value.toString().startsWith('class '); + is.boolean = (value) => value === true || value === false; + is.symbol = isOfType('symbol'); + // tslint:enable:variable-name + is.numericString = (value) => is.string(value) && value.length > 0 && !Number.isNaN(Number(value)); + is.array = Array.isArray; + is.buffer = isBuffer; + is.nullOrUndefined = (value) => is.null_(value) || is.undefined(value); + is.object = (value) => !is.nullOrUndefined(value) && (is.function_(value) || isObject(value)); + is.iterable = (value) => !is.nullOrUndefined(value) && is.function_(value[Symbol.iterator]); + is.asyncIterable = (value) => !is.nullOrUndefined(value) && is.function_(value[Symbol.asyncIterator]); + is.generator = (value) => is.iterable(value) && is.function_(value.next) && is.function_(value.throw); + is.nativePromise = (value) => isObjectOfType("Promise" /* Promise */)(value); + const hasPromiseAPI = (value) => !is.null_(value) && + isObject(value) && + is.function_(value.then) && + is.function_(value.catch); + is.promise = (value) => is.nativePromise(value) || hasPromiseAPI(value); + is.generatorFunction = isObjectOfType("GeneratorFunction" /* GeneratorFunction */); + is.asyncFunction = isObjectOfType("AsyncFunction" /* AsyncFunction */); + is.boundFunction = (value) => is.function_(value) && !value.hasOwnProperty('prototype'); + is.regExp = isObjectOfType("RegExp" /* RegExp */); + is.date = isObjectOfType("Date" /* Date */); + is.error = isObjectOfType("Error" /* Error */); + is.map = (value) => isObjectOfType("Map" /* Map */)(value); + is.set = (value) => isObjectOfType("Set" /* Set */)(value); + is.weakMap = (value) => isObjectOfType("WeakMap" /* WeakMap */)(value); + is.weakSet = (value) => isObjectOfType("WeakSet" /* WeakSet */)(value); + is.int8Array = isObjectOfType("Int8Array" /* Int8Array */); + is.uint8Array = isObjectOfType("Uint8Array" /* Uint8Array */); + is.uint8ClampedArray = isObjectOfType("Uint8ClampedArray" /* Uint8ClampedArray */); + is.int16Array = isObjectOfType("Int16Array" /* Int16Array */); + is.uint16Array = isObjectOfType("Uint16Array" /* Uint16Array */); + is.int32Array = isObjectOfType("Int32Array" /* Int32Array */); + is.uint32Array = isObjectOfType("Uint32Array" /* Uint32Array */); + is.float32Array = isObjectOfType("Float32Array" /* Float32Array */); + is.float64Array = isObjectOfType("Float64Array" /* Float64Array */); + is.arrayBuffer = isObjectOfType("ArrayBuffer" /* ArrayBuffer */); + is.sharedArrayBuffer = isObjectOfType("SharedArrayBuffer" /* SharedArrayBuffer */); + is.dataView = isObjectOfType("DataView" /* DataView */); + is.directInstanceOf = (instance, klass) => Object.getPrototypeOf(instance) === klass.prototype; + is.urlInstance = (value) => isObjectOfType("URL" /* URL */)(value); + is.urlString = (value) => { + if (!is.string(value)) { + return false; + } + try { + new URLGlobal(value); // tslint:disable-line no-unused-expression + return true; + } + catch (_a) { + return false; + } + }; + is.truthy = (value) => Boolean(value); + is.falsy = (value) => !value; + is.nan = (value) => Number.isNaN(value); + const primitiveTypes = new Set([ + 'undefined', + 'string', + 'number', + 'boolean', + 'symbol' + ]); + is.primitive = (value) => is.null_(value) || primitiveTypes.has(typeof value); + is.integer = (value) => Number.isInteger(value); + is.safeInteger = (value) => Number.isSafeInteger(value); + is.plainObject = (value) => { + // From: https://github.com/sindresorhus/is-plain-obj/blob/master/index.js + let prototype; + return getObjectType(value) === "Object" /* Object */ && + (prototype = Object.getPrototypeOf(value), prototype === null || // tslint:disable-line:ban-comma-operator + prototype === Object.getPrototypeOf({})); + }; + const typedArrayTypes = new Set([ + "Int8Array" /* Int8Array */, + "Uint8Array" /* Uint8Array */, + "Uint8ClampedArray" /* Uint8ClampedArray */, + "Int16Array" /* Int16Array */, + "Uint16Array" /* Uint16Array */, + "Int32Array" /* Int32Array */, + "Uint32Array" /* Uint32Array */, + "Float32Array" /* Float32Array */, + "Float64Array" /* Float64Array */ + ]); + is.typedArray = (value) => { + const objectType = getObjectType(value); + if (objectType === null) { + return false; + } + return typedArrayTypes.has(objectType); + }; + const isValidLength = (value) => is.safeInteger(value) && value > -1; + is.arrayLike = (value) => !is.nullOrUndefined(value) && !is.function_(value) && isValidLength(value.length); + is.inRange = (value, range) => { + if (is.number(range)) { + return value >= Math.min(0, range) && value <= Math.max(range, 0); + } + if (is.array(range) && range.length === 2) { + return value >= Math.min(...range) && value <= Math.max(...range); + } + throw new TypeError(`Invalid range: ${JSON.stringify(range)}`); + }; + const NODE_TYPE_ELEMENT = 1; + const DOM_PROPERTIES_TO_CHECK = [ + 'innerHTML', + 'ownerDocument', + 'style', + 'attributes', + 'nodeValue' + ]; + is.domElement = (value) => is.object(value) && value.nodeType === NODE_TYPE_ELEMENT && is.string(value.nodeName) && + !is.plainObject(value) && DOM_PROPERTIES_TO_CHECK.every(property => property in value); + is.observable = (value) => { + if (!value) { + return false; + } + if (value[Symbol.observable] && value === value[Symbol.observable]()) { + return true; + } + if (value['@@observable'] && value === value['@@observable']()) { + return true; + } + return false; + }; + is.nodeStream = (value) => !is.nullOrUndefined(value) && isObject(value) && is.function_(value.pipe) && !is.observable(value); + is.infinite = (value) => value === Infinity || value === -Infinity; + const isAbsoluteMod2 = (rem) => (value) => is.integer(value) && Math.abs(value % 2) === rem; + is.even = isAbsoluteMod2(0); + is.odd = isAbsoluteMod2(1); + const isWhiteSpaceString = (value) => is.string(value) && /\S/.test(value) === false; + is.emptyArray = (value) => is.array(value) && value.length === 0; + is.nonEmptyArray = (value) => is.array(value) && value.length > 0; + is.emptyString = (value) => is.string(value) && value.length === 0; + is.nonEmptyString = (value) => is.string(value) && value.length > 0; + is.emptyStringOrWhitespace = (value) => is.emptyString(value) || isWhiteSpaceString(value); + is.emptyObject = (value) => is.object(value) && !is.map(value) && !is.set(value) && Object.keys(value).length === 0; + is.nonEmptyObject = (value) => is.object(value) && !is.map(value) && !is.set(value) && Object.keys(value).length > 0; + is.emptySet = (value) => is.set(value) && value.size === 0; + is.nonEmptySet = (value) => is.set(value) && value.size > 0; + is.emptyMap = (value) => is.map(value) && value.size === 0; + is.nonEmptyMap = (value) => is.map(value) && value.size > 0; + const predicateOnArray = (method, predicate, values) => { + if (is.function_(predicate) === false) { + throw new TypeError(`Invalid predicate: ${JSON.stringify(predicate)}`); + } + if (values.length === 0) { + throw new TypeError('Invalid number of values'); + } + return method.call(values, predicate); + }; + // tslint:disable variable-name + is.any = (predicate, ...values) => predicateOnArray(Array.prototype.some, predicate, values); + is.all = (predicate, ...values) => predicateOnArray(Array.prototype.every, predicate, values); + // tslint:enable variable-name +})(is || (is = {})); +// Some few keywords are reserved, but we'll populate them for Node.js users +// See https://github.com/Microsoft/TypeScript/issues/2536 +Object.defineProperties(is, { + class: { + value: is.class_ + }, + function: { + value: is.function_ + }, + null: { + value: is.null_ + } +}); +exports.default = is; +// For CommonJS default export support +module.exports = is; +module.exports.default = is; +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/node_modules/@sindresorhus/is/dist/index.js.map b/node_modules/@sindresorhus/is/dist/index.js.map new file mode 100644 index 0000000..cd827fc --- /dev/null +++ b/node_modules/@sindresorhus/is/dist/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["../source/index.ts"],"names":[],"mappings":";AAAA,6BAA6B;AAC7B,0CAA0C;AAC1C,2CAA2C;AAC3C,0BAA0B;;AAE1B,uDAAuD;AACvD,2BAA2B;AAC3B,MAAM,SAAS,GAAG,OAAO,GAAG,KAAK,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;AAqDxE,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC;AAC3C,MAAM,QAAQ,GAAG,CAAI,IAAY,EAAE,EAAE,CAAC,CAAC,KAAc,EAAc,EAAE,CAAC,OAAO,KAAK,KAAK,IAAI,CAAC;AAC5F,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAmB,EAAE,CAAC,CAAC,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,eAAe,CAAE,KAAgB,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,SAAS,CAAE,KAAgB,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAK,KAAgB,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAEhP,MAAM,aAAa,GAAG,CAAC,KAAc,EAAmB,EAAE;IACzD,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAErD,IAAI,UAAU,EAAE;QACf,OAAO,UAAsB,CAAC;KAC9B;IAED,OAAO,IAAI,CAAC;AACb,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CAAI,IAAc,EAAE,EAAE,CAAC,CAAC,KAAc,EAAc,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC;AAE5G,SAAS,EAAE,CAAC,KAAc;IACzB,QAAQ,KAAK,EAAE;QACd,KAAK,IAAI;YACR,yBAAqB;QACtB,KAAK,IAAI,CAAC;QACV,KAAK,KAAK;YACT,+BAAwB;QACzB,QAAQ;KACR;IAED,QAAQ,OAAO,KAAK,EAAE;QACrB,KAAK,WAAW;YACf,mCAA0B;QAC3B,KAAK,QAAQ;YACZ,6BAAuB;QACxB,KAAK,QAAQ;YACZ,6BAAuB;QACxB,KAAK,QAAQ;YACZ,6BAAuB;QACxB,QAAQ;KACR;IAED,IAAI,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;QACxB,iCAAyB;KACzB;IAED,IAAI,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE;QACzB,qCAA2B;KAC3B;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACzB,2BAAsB;KACtB;IAED,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE;QACpB,6BAAuB;KACvB;IAED,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACrC,IAAI,OAAO,EAAE;QACZ,OAAO,OAAO,CAAC;KACf;IAED,IAAI,KAAK,YAAY,MAAM,IAAI,KAAK,YAAY,OAAO,IAAI,KAAK,YAAY,MAAM,EAAE;QACnF,MAAM,IAAI,SAAS,CAAC,uDAAuD,CAAC,CAAC;KAC7E;IAED,6BAAuB;AACxB,CAAC;AAED,WAAU,EAAE;IACX,kDAAkD;IAClD,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAmB,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC;IAEhF,+BAA+B;IAClB,YAAS,GAAG,QAAQ,CAAY,WAAW,CAAC,CAAC;IAC7C,SAAM,GAAG,QAAQ,CAAS,QAAQ,CAAC,CAAC;IACpC,SAAM,GAAG,QAAQ,CAAS,QAAQ,CAAC,CAAC;IACpC,YAAS,GAAG,QAAQ,CAAW,UAAU,CAAC,CAAC;IACxD,kDAAkD;IACrC,QAAK,GAAG,CAAC,KAAc,EAAiB,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC;IAC1D,SAAM,GAAG,CAAC,KAAc,EAAkB,EAAE,CAAC,GAAA,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IACvG,UAAO,GAAG,CAAC,KAAc,EAAoB,EAAE,CAAC,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,KAAK,CAAC;IAClF,SAAM,GAAG,QAAQ,CAAS,QAAQ,CAAC,CAAC;IACjD,8BAA8B;IAEjB,gBAAa,GAAG,CAAC,KAAc,EAAW,EAAE,CACxD,GAAA,MAAM,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAEtD,QAAK,GAAG,KAAK,CAAC,OAAO,CAAC;IACtB,SAAM,GAAG,QAAQ,CAAC;IAElB,kBAAe,GAAG,CAAC,KAAc,EAA6B,EAAE,CAAC,GAAA,KAAK,CAAC,KAAK,CAAC,IAAI,GAAA,SAAS,CAAC,KAAK,CAAC,CAAC;IAClG,SAAM,GAAG,CAAC,KAAc,EAAmB,EAAE,CAAC,CAAC,GAAA,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,GAAA,SAAS,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;IAC/G,WAAQ,GAAG,CAAC,KAAc,EAAsC,EAAE,CAAC,CAAC,GAAA,eAAe,CAAC,KAAK,CAAC,IAAI,GAAA,SAAS,CAAE,KAAmC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC/J,gBAAa,GAAG,CAAC,KAAc,EAA2C,EAAE,CAAC,CAAC,GAAA,eAAe,CAAC,KAAK,CAAC,IAAI,GAAA,SAAS,CAAE,KAAwC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC;IACnL,YAAS,GAAG,CAAC,KAAc,EAAsB,EAAE,CAAC,GAAA,QAAQ,CAAC,KAAK,CAAC,IAAI,GAAA,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,GAAA,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAEvH,gBAAa,GAAG,CAAC,KAAc,EAA6B,EAAE,CAC1E,cAAc,yBAAoC,CAAC,KAAK,CAAC,CAAC;IAE3D,MAAM,aAAa,GAAG,CAAC,KAAc,EAA6B,EAAE,CACnE,CAAC,GAAA,KAAK,CAAC,KAAK,CAAC;QACb,QAAQ,CAAC,KAAK,CAAY;QAC1B,GAAA,SAAS,CAAE,KAA0B,CAAC,IAAI,CAAC;QAC3C,GAAA,SAAS,CAAE,KAA0B,CAAC,KAAK,CAAC,CAAC;IAEjC,UAAO,GAAG,CAAC,KAAc,EAA6B,EAAE,CAAC,GAAA,aAAa,CAAC,KAAK,CAAC,IAAI,aAAa,CAAC,KAAK,CAAC,CAAC;IAEtG,oBAAiB,GAAG,cAAc,6CAA+C,CAAC;IAClF,gBAAa,GAAG,cAAc,qCAAkC,CAAC;IACjE,gBAAa,GAAG,CAAC,KAAc,EAAqB,EAAE,CAAC,GAAA,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;IAE9G,SAAM,GAAG,cAAc,uBAAyB,CAAC;IACjD,OAAI,GAAG,cAAc,mBAAqB,CAAC;IAC3C,QAAK,GAAG,cAAc,qBAAuB,CAAC;IAC9C,MAAG,GAAG,CAAC,KAAc,EAAkC,EAAE,CAAC,cAAc,iBAAqC,CAAC,KAAK,CAAC,CAAC;IACrH,MAAG,GAAG,CAAC,KAAc,EAAyB,EAAE,CAAC,cAAc,iBAA4B,CAAC,KAAK,CAAC,CAAC;IACnG,UAAO,GAAG,CAAC,KAAc,EAAqC,EAAE,CAAC,cAAc,yBAA4C,CAAC,KAAK,CAAC,CAAC;IACnI,UAAO,GAAG,CAAC,KAAc,EAA4B,EAAE,CAAC,cAAc,yBAAmC,CAAC,KAAK,CAAC,CAAC;IAEjH,YAAS,GAAG,cAAc,6BAA+B,CAAC;IAC1D,aAAU,GAAG,cAAc,+BAAiC,CAAC;IAC7D,oBAAiB,GAAG,cAAc,6CAA+C,CAAC;IAClF,aAAU,GAAG,cAAc,+BAAiC,CAAC;IAC7D,cAAW,GAAG,cAAc,iCAAmC,CAAC;IAChE,aAAU,GAAG,cAAc,+BAAiC,CAAC;IAC7D,cAAW,GAAG,cAAc,iCAAmC,CAAC;IAChE,eAAY,GAAG,cAAc,mCAAqC,CAAC;IACnE,eAAY,GAAG,cAAc,mCAAqC,CAAC;IAEnE,cAAW,GAAG,cAAc,iCAAmC,CAAC;IAChE,oBAAiB,GAAG,cAAc,6CAA+C,CAAC;IAClF,WAAQ,GAAG,cAAc,2BAA6B,CAAC;IAEvD,mBAAgB,GAAG,CAAI,QAAiB,EAAE,KAAe,EAAiB,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,KAAK,CAAC,SAAS,CAAC;IACjI,cAAW,GAAG,CAAC,KAAc,EAAgB,EAAE,CAAC,cAAc,iBAAmB,CAAC,KAAK,CAAC,CAAC;IAEzF,YAAS,GAAG,CAAC,KAAc,EAAE,EAAE;QAC3C,IAAI,CAAC,GAAA,MAAM,CAAC,KAAK,CAAC,EAAE;YACnB,OAAO,KAAK,CAAC;SACb;QAED,IAAI;YACH,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,2CAA2C;YACjE,OAAO,IAAI,CAAC;SACZ;QAAC,WAAM;YACP,OAAO,KAAK,CAAC;SACb;IACF,CAAC,CAAC;IAEW,SAAM,GAAG,CAAC,KAAc,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC5C,QAAK,GAAG,CAAC,KAAc,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC;IAEnC,MAAG,GAAG,CAAC,KAAc,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,KAAe,CAAC,CAAC;IAErE,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC;QAC9B,WAAW;QACX,QAAQ;QACR,QAAQ;QACR,SAAS;QACT,QAAQ;KACR,CAAC,CAAC;IAEU,YAAS,GAAG,CAAC,KAAc,EAAsB,EAAE,CAAC,GAAA,KAAK,CAAC,KAAK,CAAC,IAAI,cAAc,CAAC,GAAG,CAAC,OAAO,KAAK,CAAC,CAAC;IAErG,UAAO,GAAG,CAAC,KAAc,EAAmB,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,KAAe,CAAC,CAAC;IACjF,cAAW,GAAG,CAAC,KAAc,EAAmB,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,KAAe,CAAC,CAAC;IAEzF,cAAW,GAAG,CAAC,KAAc,EAAE,EAAE;QAC7C,0EAA0E;QAC1E,IAAI,SAAS,CAAC;QAEd,OAAO,aAAa,CAAC,KAAK,CAAC,0BAAoB;YAC9C,CAAC,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,SAAS,KAAK,IAAI,IAAI,yCAAyC;gBACzG,SAAS,KAAK,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5C,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC;;;;;;;;;;KAU/B,CAAC,CAAC;IACU,aAAU,GAAG,CAAC,KAAc,EAAuB,EAAE;QACjE,MAAM,UAAU,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;QAExC,IAAI,UAAU,KAAK,IAAI,EAAE;YACxB,OAAO,KAAK,CAAC;SACb;QAED,OAAO,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACxC,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,CAAC,KAAc,EAAE,EAAE,CAAC,GAAA,WAAW,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC;IAC9D,YAAS,GAAG,CAAC,KAAc,EAAsB,EAAE,CAAC,CAAC,GAAA,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,GAAA,SAAS,CAAC,KAAK,CAAC,IAAI,aAAa,CAAE,KAAmB,CAAC,MAAM,CAAC,CAAC;IAE/I,UAAO,GAAG,CAAC,KAAa,EAAE,KAAwB,EAAE,EAAE;QAClE,IAAI,GAAA,MAAM,CAAC,KAAK,CAAC,EAAE;YAClB,OAAO,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;SAClE;QAED,IAAI,GAAA,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;YACvC,OAAO,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;SAClE;QAED,MAAM,IAAI,SAAS,CAAC,kBAAkB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAChE,CAAC,CAAC;IAEF,MAAM,iBAAiB,GAAG,CAAC,CAAC;IAC5B,MAAM,uBAAuB,GAAG;QAC/B,WAAW;QACX,eAAe;QACf,OAAO;QACP,YAAY;QACZ,WAAW;KACX,CAAC;IAEW,aAAU,GAAG,CAAC,KAAc,EAAuB,EAAE,CAAC,GAAA,MAAM,CAAC,KAAK,CAAC,IAAK,KAAoB,CAAC,QAAQ,KAAK,iBAAiB,IAAI,GAAA,MAAM,CAAE,KAAoB,CAAC,QAAQ,CAAC;QACjL,CAAC,GAAA,WAAW,CAAC,KAAK,CAAC,IAAI,uBAAuB,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,IAAK,KAAoB,CAAC,CAAC;IAExF,aAAU,GAAG,CAAC,KAAc,EAAE,EAAE;QAC5C,IAAI,CAAC,KAAK,EAAE;YACX,OAAO,KAAK,CAAC;SACb;QAED,IAAK,KAAa,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,KAAK,KAAM,KAAa,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,EAAE;YACvF,OAAO,IAAI,CAAC;SACZ;QAED,IAAK,KAAa,CAAC,cAAc,CAAC,IAAI,KAAK,KAAM,KAAa,CAAC,cAAc,CAAC,EAAE,EAAE;YACjF,OAAO,IAAI,CAAC;SACZ;QAED,OAAO,KAAK,CAAC;IACd,CAAC,CAAC;IAEW,aAAU,GAAG,CAAC,KAAc,EAAuB,EAAE,CAAC,CAAC,GAAA,eAAe,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAY,IAAI,GAAA,SAAS,CAAE,KAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAA,UAAU,CAAC,KAAK,CAAC,CAAC;IAE3K,WAAQ,GAAG,CAAC,KAAc,EAAE,EAAE,CAAC,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,CAAC,QAAQ,CAAC;IAEtF,MAAM,cAAc,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,CAAC,KAAa,EAAE,EAAE,CAAC,GAAA,OAAO,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC;IAC5F,OAAI,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;IACzB,MAAG,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;IAErC,MAAM,kBAAkB,GAAG,CAAC,KAAc,EAAE,EAAE,CAAC,GAAA,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC;IAE9E,aAAU,GAAG,CAAC,KAAc,EAAE,EAAE,CAAC,GAAA,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC;IACpE,gBAAa,GAAG,CAAC,KAAc,EAAE,EAAE,CAAC,GAAA,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IAErE,cAAW,GAAG,CAAC,KAAc,EAAE,EAAE,CAAC,GAAA,MAAM,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC;IACtE,iBAAc,GAAG,CAAC,KAAc,EAAE,EAAE,CAAC,GAAA,MAAM,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IACvE,0BAAuB,GAAG,CAAC,KAAc,EAAE,EAAE,CAAC,GAAA,WAAW,CAAC,KAAK,CAAC,IAAI,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAE9F,cAAW,GAAG,CAAC,KAAc,EAAE,EAAE,CAAC,GAAA,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAA,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAA,GAAG,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;IACjH,iBAAc,GAAG,CAAC,KAAc,EAAE,EAAE,CAAC,GAAA,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAA,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAA,GAAG,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IAElH,WAAQ,GAAG,CAAC,KAAc,EAAE,EAAE,CAAC,GAAA,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC;IAC9D,cAAW,GAAG,CAAC,KAAc,EAAE,EAAE,CAAC,GAAA,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;IAE/D,WAAQ,GAAG,CAAC,KAAc,EAAE,EAAE,CAAC,GAAA,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC;IAC9D,cAAW,GAAG,CAAC,KAAc,EAAE,EAAE,CAAC,GAAA,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;IAG5E,MAAM,gBAAgB,GAAG,CAAC,MAAmB,EAAE,SAAkB,EAAE,MAAiB,EAAE,EAAE;QACvF,IAAI,GAAA,SAAS,CAAC,SAAS,CAAC,KAAK,KAAK,EAAE;YACnC,MAAM,IAAI,SAAS,CAAC,sBAAsB,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;SACvE;QAED,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;YACxB,MAAM,IAAI,SAAS,CAAC,0BAA0B,CAAC,CAAC;SAChD;QAED,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,SAAgB,CAAC,CAAC;IAC9C,CAAC,CAAC;IAEF,+BAA+B;IAClB,MAAG,GAAG,CAAC,SAAkB,EAAE,GAAG,MAAiB,EAAE,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IAC9G,MAAG,GAAG,CAAC,SAAkB,EAAE,GAAG,MAAiB,EAAE,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IAC5H,8BAA8B;AAC/B,CAAC,EAvNS,EAAE,KAAF,EAAE,QAuNX;AAED,4EAA4E;AAC5E,0DAA0D;AAC1D,MAAM,CAAC,gBAAgB,CAAC,EAAE,EAAE;IAC3B,KAAK,EAAE;QACN,KAAK,EAAE,EAAE,CAAC,MAAM;KAChB;IACD,QAAQ,EAAE;QACT,KAAK,EAAE,EAAE,CAAC,SAAS;KACnB;IACD,IAAI,EAAE;QACL,KAAK,EAAE,EAAE,CAAC,KAAK;KACf;CACD,CAAC,CAAC;AAEH,kBAAe,EAAE,CAAC;AAElB,sCAAsC;AACtC,MAAM,CAAC,OAAO,GAAG,EAAE,CAAC;AACpB,MAAM,CAAC,OAAO,CAAC,OAAO,GAAG,EAAE,CAAC"} \ No newline at end of file diff --git a/node_modules/@sindresorhus/is/license b/node_modules/@sindresorhus/is/license new file mode 100644 index 0000000..e7af2f7 --- /dev/null +++ b/node_modules/@sindresorhus/is/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/@sindresorhus/is/package.json b/node_modules/@sindresorhus/is/package.json new file mode 100644 index 0000000..bf0d9fe --- /dev/null +++ b/node_modules/@sindresorhus/is/package.json @@ -0,0 +1,63 @@ +{ + "name": "@sindresorhus/is", + "version": "0.14.0", + "description": "Type check values: `is.string('🦄') //=> true`", + "license": "MIT", + "repository": "sindresorhus/is", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "main": "dist/index.js", + "engines": { + "node": ">=6" + }, + "scripts": { + "lint": "tslint --format stylish --project .", + "build": "del dist && tsc", + "test": "npm run lint && npm run build && ava dist/tests", + "prepublish": "npm run build && del dist/tests" + }, + "files": [ + "dist" + ], + "keywords": [ + "type", + "types", + "is", + "check", + "checking", + "validate", + "validation", + "utility", + "util", + "typeof", + "instanceof", + "object", + "assert", + "assertion", + "test", + "kind", + "primitive", + "verify", + "compare" + ], + "devDependencies": { + "@sindresorhus/tsconfig": "^0.1.0", + "@types/jsdom": "^11.12.0", + "@types/node": "^10.12.10", + "@types/tempy": "^0.2.0", + "@types/zen-observable": "^0.8.0", + "ava": "^0.25.0", + "del-cli": "^1.1.0", + "jsdom": "^11.6.2", + "rxjs": "^6.3.3", + "tempy": "^0.2.1", + "tslint": "^5.9.1", + "tslint-xo": "^0.10.0", + "typescript": "^3.2.1", + "zen-observable": "^0.8.8" + }, + "types": "dist/index.d.ts" +} diff --git a/node_modules/@sindresorhus/is/readme.md b/node_modules/@sindresorhus/is/readme.md new file mode 100644 index 0000000..97c023b --- /dev/null +++ b/node_modules/@sindresorhus/is/readme.md @@ -0,0 +1,451 @@ +# is [![Build Status](https://travis-ci.org/sindresorhus/is.svg?branch=master)](https://travis-ci.org/sindresorhus/is) + +> Type check values: `is.string('🦄') //=> true` + + + + +## Install + +``` +$ npm install @sindresorhus/is +``` + + +## Usage + +```js +const is = require('@sindresorhus/is'); + +is('🦄'); +//=> 'string' + +is(new Map()); +//=> 'Map' + +is.number(6); +//=> true +``` + +When using `is` together with TypeScript, [type guards](http://www.typescriptlang.org/docs/handbook/advanced-types.html#type-guards-and-differentiating-types) are being used to infer the correct type inside if-else statements. + +```ts +import is from '@sindresorhus/is'; + +const padLeft = (value: string, padding: string | number) => { + if (is.number(padding)) { + // `padding` is typed as `number` + return Array(padding + 1).join(' ') + value; + } + + if (is.string(padding)) { + // `padding` is typed as `string` + return padding + value; + } + + throw new TypeError(`Expected 'padding' to be of type 'string' or 'number', got '${is(padding)}'.`); +} + +padLeft('🦄', 3); +//=> ' 🦄' + +padLeft('🦄', '🌈'); +//=> '🌈🦄' +``` + + +## API + +### is(value) + +Returns the type of `value`. + +Primitives are lowercase and object types are camelcase. + +Example: + +- `'undefined'` +- `'null'` +- `'string'` +- `'symbol'` +- `'Array'` +- `'Function'` +- `'Object'` + +Note: It will throw an error if you try to feed it object-wrapped primitives, as that's a bad practice. For example `new String('foo')`. + +### is.{method} + +All the below methods accept a value and returns a boolean for whether the value is of the desired type. + +#### Primitives + +##### .undefined(value) +##### .null(value) +##### .string(value) +##### .number(value) +##### .boolean(value) +##### .symbol(value) + +#### Built-in types + +##### .array(value) +##### .function(value) +##### .buffer(value) +##### .object(value) + +Keep in mind that [functions are objects too](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions). + +##### .numericString(value) + +Returns `true` for a string that represents a number. For example, `'42'` and `'-8'`. + +Note: `'NaN'` returns `false`, but `'Infinity'` and `'-Infinity'` return `true`. + +##### .regExp(value) +##### .date(value) +##### .error(value) +##### .nativePromise(value) +##### .promise(value) + +Returns `true` for any object with a `.then()` and `.catch()` method. Prefer this one over `.nativePromise()` as you usually want to allow userland promise implementations too. + +##### .generator(value) + +Returns `true` for any object that implements its own `.next()` and `.throw()` methods and has a function definition for `Symbol.iterator`. + +##### .generatorFunction(value) + +##### .asyncFunction(value) + +Returns `true` for any `async` function that can be called with the `await` operator. + +```js +is.asyncFunction(async () => {}); +// => true + +is.asyncFunction(() => {}); +// => false +``` + +##### .boundFunction(value) + +Returns `true` for any `bound` function. + +```js +is.boundFunction(() => {}); +// => true + +is.boundFunction(function () {}.bind(null)); +// => true + +is.boundFunction(function () {}); +// => false +``` + +##### .map(value) +##### .set(value) +##### .weakMap(value) +##### .weakSet(value) + +#### Typed arrays + +##### .int8Array(value) +##### .uint8Array(value) +##### .uint8ClampedArray(value) +##### .int16Array(value) +##### .uint16Array(value) +##### .int32Array(value) +##### .uint32Array(value) +##### .float32Array(value) +##### .float64Array(value) + +#### Structured data + +##### .arrayBuffer(value) +##### .sharedArrayBuffer(value) +##### .dataView(value) + +#### Emptiness + +##### .emptyString(value) + +Returns `true` if the value is a `string` and the `.length` is 0. + +##### .nonEmptyString(value) + +Returns `true` if the value is a `string` and the `.length` is more than 0. + +##### .emptyStringOrWhitespace(value) + +Returns `true` if `is.emptyString(value)` or if it's a `string` that is all whitespace. + +##### .emptyArray(value) + +Returns `true` if the value is an `Array` and the `.length` is 0. + +##### .nonEmptyArray(value) + +Returns `true` if the value is an `Array` and the `.length` is more than 0. + +##### .emptyObject(value) + +Returns `true` if the value is an `Object` and `Object.keys(value).length` is 0. + +Please note that `Object.keys` returns only own enumerable properties. Hence something like this can happen: + +```js +const object1 = {}; + +Object.defineProperty(object1, 'property1', { + value: 42, + writable: true, + enumerable: false, + configurable: true +}); + +is.emptyObject(object1); +// => true +``` + +##### .nonEmptyObject(value) + +Returns `true` if the value is an `Object` and `Object.keys(value).length` is more than 0. + +##### .emptySet(value) + +Returns `true` if the value is a `Set` and the `.size` is 0. + +##### .nonEmptySet(Value) + +Returns `true` if the value is a `Set` and the `.size` is more than 0. + +##### .emptyMap(value) + +Returns `true` if the value is a `Map` and the `.size` is 0. + +##### .nonEmptyMap(value) + +Returns `true` if the value is a `Map` and the `.size` is more than 0. + +#### Miscellaneous + +##### .directInstanceOf(value, class) + +Returns `true` if `value` is a direct instance of `class`. + +```js +is.directInstanceOf(new Error(), Error); +//=> true + +class UnicornError extends Error {} + +is.directInstanceOf(new UnicornError(), Error); +//=> false +``` + +##### .urlInstance(value) + +Returns `true` if `value` is an instance of the [`URL` class](https://developer.mozilla.org/en-US/docs/Web/API/URL). + +```js +const url = new URL('https://example.com'); + +is.urlInstance(url); +//=> true +``` + +### .url(value) + +Returns `true` if `value` is a URL string. + +Note: this only does basic checking using the [`URL` class](https://developer.mozilla.org/en-US/docs/Web/API/URL) constructor. + +```js +const url = 'https://example.com'; + +is.url(url); +//=> true + +is.url(new URL(url)); +//=> false +``` + +##### .truthy(value) + +Returns `true` for all values that evaluate to true in a boolean context: + +```js +is.truthy('🦄'); +//=> true + +is.truthy(undefined); +//=> false +``` + +##### .falsy(value) + +Returns `true` if `value` is one of: `false`, `0`, `''`, `null`, `undefined`, `NaN`. + +##### .nan(value) +##### .nullOrUndefined(value) +##### .primitive(value) + +JavaScript primitives are as follows: `null`, `undefined`, `string`, `number`, `boolean`, `symbol`. + +##### .integer(value) + +##### .safeInteger(value) + +Returns `true` if `value` is a [safe integer](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/isSafeInteger). + +##### .plainObject(value) + +An object is plain if it's created by either `{}`, `new Object()`, or `Object.create(null)`. + +##### .iterable(value) +##### .asyncIterable(value) +##### .class(value) + +Returns `true` for instances created by a class. + +##### .typedArray(value) + +##### .arrayLike(value) + +A `value` is array-like if it is not a function and has a `value.length` that is a safe integer greater than or equal to 0. + +```js +is.arrayLike(document.forms); +//=> true + +function foo() { + is.arrayLike(arguments); + //=> true +} +foo(); +``` + +##### .inRange(value, range) + +Check if `value` (number) is in the given `range`. The range is an array of two values, lower bound and upper bound, in no specific order. + +```js +is.inRange(3, [0, 5]); +is.inRange(3, [5, 0]); +is.inRange(0, [-2, 2]); +``` + +##### .inRange(value, upperBound) + +Check if `value` (number) is in the range of `0` to `upperBound`. + +```js +is.inRange(3, 10); +``` + +##### .domElement(value) + +Returns `true` if `value` is a DOM Element. + +##### .nodeStream(value) + +Returns `true` if `value` is a Node.js [stream](https://nodejs.org/api/stream.html). + +```js +const fs = require('fs'); + +is.nodeStream(fs.createReadStream('unicorn.png')); +//=> true +``` + +##### .observable(value) + +Returns `true` if `value` is an `Observable`. + +```js +const {Observable} = require('rxjs'); + +is.observable(new Observable()); +//=> true +``` + +##### .infinite(value) + +Check if `value` is `Infinity` or `-Infinity`. + +##### .even(value) + +Returns `true` if `value` is an even integer. + +##### .odd(value) + +Returns `true` if `value` is an odd integer. + +##### .any(predicate, ...values) + +Returns `true` if **any** of the input `values` returns true in the `predicate`: + +```js +is.any(is.string, {}, true, '🦄'); +//=> true + +is.any(is.boolean, 'unicorns', [], new Map()); +//=> false +``` + +##### .all(predicate, ...values) + +Returns `true` if **all** of the input `values` returns true in the `predicate`: + +```js +is.all(is.object, {}, new Map(), new Set()); +//=> true + +is.all(is.string, '🦄', [], 'unicorns'); +//=> false +``` + + +## FAQ + +### Why yet another type checking module? + +There are hundreds of type checking modules on npm, unfortunately, I couldn't find any that fit my needs: + +- Includes both type methods and ability to get the type +- Types of primitives returned as lowercase and object types as camelcase +- Covers all built-ins +- Unsurprising behavior +- Well-maintained +- Comprehensive test suite + +For the ones I found, pick 3 of these. + +The most common mistakes I noticed in these modules was using `instanceof` for type checking, forgetting that functions are objects, and omitting `symbol` as a primitive. + + +## Related + +- [ow](https://github.com/sindresorhus/ow) - Function argument validation for humans +- [is-stream](https://github.com/sindresorhus/is-stream) - Check if something is a Node.js stream +- [is-observable](https://github.com/sindresorhus/is-observable) - Check if a value is an Observable +- [file-type](https://github.com/sindresorhus/file-type) - Detect the file type of a Buffer/Uint8Array +- [is-ip](https://github.com/sindresorhus/is-ip) - Check if a string is an IP address +- [is-array-sorted](https://github.com/sindresorhus/is-array-sorted) - Check if an Array is sorted +- [is-error-constructor](https://github.com/sindresorhus/is-error-constructor) - Check if a value is an error constructor +- [is-empty-iterable](https://github.com/sindresorhus/is-empty-iterable) - Check if an Iterable is empty +- [is-blob](https://github.com/sindresorhus/is-blob) - Check if a value is a Blob - File-like object of immutable, raw data +- [has-emoji](https://github.com/sindresorhus/has-emoji) - Check whether a string has any emoji + + +## Created by + +- [Sindre Sorhus](https://github.com/sindresorhus) +- [Giora Guttsait](https://github.com/gioragutt) +- [Brandon Smith](https://github.com/brandon93s) + + +## License + +MIT diff --git a/node_modules/@szmarczak/http-timer/LICENSE b/node_modules/@szmarczak/http-timer/LICENSE new file mode 100644 index 0000000..15ad2e8 --- /dev/null +++ b/node_modules/@szmarczak/http-timer/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2018 Szymon Marczak + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/node_modules/@szmarczak/http-timer/README.md b/node_modules/@szmarczak/http-timer/README.md new file mode 100644 index 0000000..13279ed --- /dev/null +++ b/node_modules/@szmarczak/http-timer/README.md @@ -0,0 +1,70 @@ +# http-timer +> Timings for HTTP requests + +[![Build Status](https://travis-ci.org/szmarczak/http-timer.svg?branch=master)](https://travis-ci.org/szmarczak/http-timer) +[![Coverage Status](https://coveralls.io/repos/github/szmarczak/http-timer/badge.svg?branch=master)](https://coveralls.io/github/szmarczak/http-timer?branch=master) +[![install size](https://packagephobia.now.sh/badge?p=@szmarczak/http-timer)](https://packagephobia.now.sh/result?p=@szmarczak/http-timer) + +Inspired by the [`request` package](https://github.com/request/request). + +## Usage +```js +'use strict'; +const https = require('https'); +const timer = require('@szmarczak/http-timer'); + +const request = https.get('https://httpbin.org/anything'); +const timings = timer(request); + +request.on('response', response => { + response.on('data', () => {}); // Consume the data somehow + response.on('end', () => { + console.log(timings); + }); +}); + +// { start: 1535708511443, +// socket: 1535708511444, +// lookup: 1535708511444, +// connect: 1535708511582, +// upload: 1535708511887, +// response: 1535708512037, +// end: 1535708512040, +// phases: +// { wait: 1, +// dns: 0, +// tcp: 138, +// request: 305, +// firstByte: 150, +// download: 3, +// total: 597 } } +``` + +## API + +### timer(request) + +Returns: `Object` + +- `start` - Time when the request started. +- `socket` - Time when a socket was assigned to the request. +- `lookup` - Time when the DNS lookup finished. +- `connect` - Time when the socket successfully connected. +- `upload` - Time when the request finished uploading. +- `response` - Time when the request fired the `response` event. +- `end` - Time when the response fired the `end` event. +- `error` - Time when the request fired the `error` event. +- `phases` + - `wait` - `timings.socket - timings.start` + - `dns` - `timings.lookup - timings.socket` + - `tcp` - `timings.connect - timings.lookup` + - `request` - `timings.upload - timings.connect` + - `firstByte` - `timings.response - timings.upload` + - `download` - `timings.end - timings.response` + - `total` - `timings.end - timings.start` or `timings.error - timings.start` + +**Note**: The time is a `number` representing the milliseconds elapsed since the UNIX epoch. + +## License + +MIT diff --git a/node_modules/@szmarczak/http-timer/package.json b/node_modules/@szmarczak/http-timer/package.json new file mode 100644 index 0000000..9346648 --- /dev/null +++ b/node_modules/@szmarczak/http-timer/package.json @@ -0,0 +1,47 @@ +{ + "name": "@szmarczak/http-timer", + "version": "1.1.2", + "description": "Timings for HTTP requests", + "main": "source", + "engines": { + "node": ">=6" + }, + "scripts": { + "test": "xo && nyc ava", + "coveralls": "nyc report --reporter=text-lcov | coveralls" + }, + "files": [ + "source" + ], + "keywords": [ + "http", + "https", + "timer", + "timings" + ], + "repository": { + "type": "git", + "url": "git+https://github.com/szmarczak/http-timer.git" + }, + "author": "Szymon Marczak", + "license": "MIT", + "bugs": { + "url": "https://github.com/szmarczak/http-timer/issues" + }, + "homepage": "https://github.com/szmarczak/http-timer#readme", + "xo": { + "rules": { + "unicorn/filename-case": "camelCase" + } + }, + "devDependencies": { + "ava": "^0.25.0", + "coveralls": "^3.0.2", + "p-event": "^2.1.0", + "nyc": "^12.0.2", + "xo": "^0.22.0" + }, + "dependencies": { + "defer-to-connect": "^1.0.1" + } +} diff --git a/node_modules/@szmarczak/http-timer/source/index.js b/node_modules/@szmarczak/http-timer/source/index.js new file mode 100644 index 0000000..e294580 --- /dev/null +++ b/node_modules/@szmarczak/http-timer/source/index.js @@ -0,0 +1,99 @@ +'use strict'; +const deferToConnect = require('defer-to-connect'); + +module.exports = request => { + const timings = { + start: Date.now(), + socket: null, + lookup: null, + connect: null, + upload: null, + response: null, + end: null, + error: null, + phases: { + wait: null, + dns: null, + tcp: null, + request: null, + firstByte: null, + download: null, + total: null + } + }; + + const handleError = origin => { + const emit = origin.emit.bind(origin); + origin.emit = (event, ...args) => { + // Catches the `error` event + if (event === 'error') { + timings.error = Date.now(); + timings.phases.total = timings.error - timings.start; + + origin.emit = emit; + } + + // Saves the original behavior + return emit(event, ...args); + }; + }; + + let uploadFinished = false; + const onUpload = () => { + timings.upload = Date.now(); + timings.phases.request = timings.upload - timings.connect; + }; + + handleError(request); + + request.once('socket', socket => { + timings.socket = Date.now(); + timings.phases.wait = timings.socket - timings.start; + + const lookupListener = () => { + timings.lookup = Date.now(); + timings.phases.dns = timings.lookup - timings.socket; + }; + + socket.once('lookup', lookupListener); + + deferToConnect(socket, () => { + timings.connect = Date.now(); + + if (timings.lookup === null) { + socket.removeListener('lookup', lookupListener); + timings.lookup = timings.connect; + timings.phases.dns = timings.lookup - timings.socket; + } + + timings.phases.tcp = timings.connect - timings.lookup; + + if (uploadFinished && !timings.upload) { + onUpload(); + } + }); + }); + + request.once('finish', () => { + uploadFinished = true; + + if (timings.connect) { + onUpload(); + } + }); + + request.once('response', response => { + timings.response = Date.now(); + timings.phases.firstByte = timings.response - timings.upload; + + handleError(response); + + response.once('end', () => { + timings.end = Date.now(); + timings.phases.download = timings.end - timings.response; + timings.phases.total = timings.end - timings.start; + }); + }); + + return timings; +}; diff --git a/node_modules/@tootallnate/once/LICENSE b/node_modules/@tootallnate/once/LICENSE new file mode 100644 index 0000000..c4c56a2 --- /dev/null +++ b/node_modules/@tootallnate/once/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2020 Nathan Rajlich + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/node_modules/@tootallnate/once/README.md b/node_modules/@tootallnate/once/README.md new file mode 100644 index 0000000..bc980fd --- /dev/null +++ b/node_modules/@tootallnate/once/README.md @@ -0,0 +1,93 @@ +# @tootallnate/once + +### Creates a Promise that waits for a single event + +## Installation + +Install with `npm`: + +```bash +$ npm install @tootallnate/once +``` + +## API + +### once(emitter: EventEmitter, name: string, opts?: OnceOptions): Promise<[...Args]> + +Creates a Promise that waits for event `name` to occur on `emitter`, and resolves +the promise with an array of the values provided to the event handler. If an +`error` event occurs before the event specified by `name`, then the Promise is +rejected with the error argument. + +```typescript +import once from '@tootallnate/once'; +import { EventEmitter } from 'events'; + +const emitter = new EventEmitter(); + +setTimeout(() => { + emitter.emit('foo', 'bar'); +}, 100); + +const [result] = await once(emitter, 'foo'); +console.log({ result }); +// { result: 'bar' } +``` + +#### Promise Strong Typing + +The main feature that this module provides over other "once" implementations is that +the Promise that is returned is _**strongly typed**_ based on the type of `emitter` +and the `name` of the event. Some examples are shown below. + +_The process "exit" event contains a single number for exit code:_ + +```typescript +const [code] = await once(process, 'exit'); +// ^ number +``` +_A child process "exit" event contains either an exit code or a signal:_ + +```typescript +const child = spawn('echo', []); +const [code, signal] = await once(child, 'exit'); +// ^ number | null +// ^ string | null +``` + +_A forked child process "message" event is type `any`, so you can cast the Promise directly:_ + +```typescript +const child = fork('file.js'); + +// With `await` +const [message, _]: [WorkerPayload, unknown] = await once(child, 'message'); + +// With Promise +const messagePromise: Promise<[WorkerPayload, unknown]> = once(child, 'message'); + +// Better yet would be to leave it as `any`, and validate the payload +// at runtime with i.e. `ajv` + `json-schema-to-typescript` +``` + +_If the TypeScript definition does not contain an overload for the specified event name, then the Promise will have type `unknown[]` and your code will need to narrow the result manually:_ + +```typescript +interface CustomEmitter extends EventEmitter { + on(name: 'foo', listener: (a: string, b: number) => void): this; +} + +const emitter: CustomEmitter = new EventEmitter(); + +// "foo" event is a defined overload, so it's properly typed +const fooPromise = once(emitter, 'foo'); +// ^ Promise<[a: string, b: number]> + +// "bar" event in not a defined overload, so it gets `unknown[]` +const barPromise = once(emitter, 'bar'); +// ^ Promise +``` + +### OnceOptions + +- `signal` - `AbortSignal` instance to unbind event handlers before the Promise has been fulfilled. diff --git a/node_modules/@tootallnate/once/dist/index.d.ts b/node_modules/@tootallnate/once/dist/index.d.ts new file mode 100644 index 0000000..93d02a9 --- /dev/null +++ b/node_modules/@tootallnate/once/dist/index.d.ts @@ -0,0 +1,7 @@ +/// +import { EventEmitter } from 'events'; +import { EventNames, EventListenerParameters, AbortSignal } from './types'; +export interface OnceOptions { + signal?: AbortSignal; +} +export default function once>(emitter: Emitter, name: Event, { signal }?: OnceOptions): Promise>; diff --git a/node_modules/@tootallnate/once/dist/index.js b/node_modules/@tootallnate/once/dist/index.js new file mode 100644 index 0000000..ca6385b --- /dev/null +++ b/node_modules/@tootallnate/once/dist/index.js @@ -0,0 +1,24 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +function once(emitter, name, { signal } = {}) { + return new Promise((resolve, reject) => { + function cleanup() { + signal === null || signal === void 0 ? void 0 : signal.removeEventListener('abort', cleanup); + emitter.removeListener(name, onEvent); + emitter.removeListener('error', onError); + } + function onEvent(...args) { + cleanup(); + resolve(args); + } + function onError(err) { + cleanup(); + reject(err); + } + signal === null || signal === void 0 ? void 0 : signal.addEventListener('abort', cleanup); + emitter.on(name, onEvent); + emitter.on('error', onError); + }); +} +exports.default = once; +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/node_modules/@tootallnate/once/dist/index.js.map b/node_modules/@tootallnate/once/dist/index.js.map new file mode 100644 index 0000000..61708ca --- /dev/null +++ b/node_modules/@tootallnate/once/dist/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;AAOA,SAAwB,IAAI,CAI3B,OAAgB,EAChB,IAAW,EACX,EAAE,MAAM,KAAkB,EAAE;IAE5B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACtC,SAAS,OAAO;YACf,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC9C,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YACtC,OAAO,CAAC,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC1C,CAAC;QACD,SAAS,OAAO,CAAC,GAAG,IAAW;YAC9B,OAAO,EAAE,CAAC;YACV,OAAO,CAAC,IAA+C,CAAC,CAAC;QAC1D,CAAC;QACD,SAAS,OAAO,CAAC,GAAU;YAC1B,OAAO,EAAE,CAAC;YACV,MAAM,CAAC,GAAG,CAAC,CAAC;QACb,CAAC;QACD,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC3C,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC1B,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC;AACJ,CAAC;AA1BD,uBA0BC"} \ No newline at end of file diff --git a/node_modules/@tootallnate/once/dist/overloaded-parameters.d.ts b/node_modules/@tootallnate/once/dist/overloaded-parameters.d.ts new file mode 100644 index 0000000..eb2bbc6 --- /dev/null +++ b/node_modules/@tootallnate/once/dist/overloaded-parameters.d.ts @@ -0,0 +1,231 @@ +export declare type OverloadedParameters = T extends { + (...args: infer A1): any; + (...args: infer A2): any; + (...args: infer A3): any; + (...args: infer A4): any; + (...args: infer A5): any; + (...args: infer A6): any; + (...args: infer A7): any; + (...args: infer A8): any; + (...args: infer A9): any; + (...args: infer A10): any; + (...args: infer A11): any; + (...args: infer A12): any; + (...args: infer A13): any; + (...args: infer A14): any; + (...args: infer A15): any; + (...args: infer A16): any; + (...args: infer A17): any; + (...args: infer A18): any; + (...args: infer A19): any; + (...args: infer A20): any; +} ? A1 | A2 | A3 | A4 | A5 | A6 | A7 | A8 | A9 | A10 | A11 | A12 | A13 | A14 | A15 | A16 | A17 | A18 | A19 | A20 : T extends { + (...args: infer A1): any; + (...args: infer A2): any; + (...args: infer A3): any; + (...args: infer A4): any; + (...args: infer A5): any; + (...args: infer A6): any; + (...args: infer A7): any; + (...args: infer A8): any; + (...args: infer A9): any; + (...args: infer A10): any; + (...args: infer A11): any; + (...args: infer A12): any; + (...args: infer A13): any; + (...args: infer A14): any; + (...args: infer A15): any; + (...args: infer A16): any; + (...args: infer A17): any; + (...args: infer A18): any; + (...args: infer A19): any; +} ? A1 | A2 | A3 | A4 | A5 | A6 | A7 | A8 | A9 | A10 | A11 | A12 | A13 | A14 | A15 | A16 | A17 | A18 | A19 : T extends { + (...args: infer A1): any; + (...args: infer A2): any; + (...args: infer A3): any; + (...args: infer A4): any; + (...args: infer A5): any; + (...args: infer A6): any; + (...args: infer A7): any; + (...args: infer A8): any; + (...args: infer A9): any; + (...args: infer A10): any; + (...args: infer A11): any; + (...args: infer A12): any; + (...args: infer A13): any; + (...args: infer A14): any; + (...args: infer A15): any; + (...args: infer A16): any; + (...args: infer A17): any; + (...args: infer A18): any; +} ? A1 | A2 | A3 | A4 | A5 | A6 | A7 | A8 | A9 | A10 | A11 | A12 | A13 | A14 | A15 | A16 | A17 | A18 : T extends { + (...args: infer A1): any; + (...args: infer A2): any; + (...args: infer A3): any; + (...args: infer A4): any; + (...args: infer A5): any; + (...args: infer A6): any; + (...args: infer A7): any; + (...args: infer A8): any; + (...args: infer A9): any; + (...args: infer A10): any; + (...args: infer A11): any; + (...args: infer A12): any; + (...args: infer A13): any; + (...args: infer A14): any; + (...args: infer A15): any; + (...args: infer A16): any; + (...args: infer A17): any; +} ? A1 | A2 | A3 | A4 | A5 | A6 | A7 | A8 | A9 | A10 | A11 | A12 | A13 | A14 | A15 | A16 | A17 : T extends { + (...args: infer A1): any; + (...args: infer A2): any; + (...args: infer A3): any; + (...args: infer A4): any; + (...args: infer A5): any; + (...args: infer A6): any; + (...args: infer A7): any; + (...args: infer A8): any; + (...args: infer A9): any; + (...args: infer A10): any; + (...args: infer A11): any; + (...args: infer A12): any; + (...args: infer A13): any; + (...args: infer A14): any; + (...args: infer A15): any; + (...args: infer A16): any; +} ? A1 | A2 | A3 | A4 | A5 | A6 | A7 | A8 | A9 | A10 | A11 | A12 | A13 | A14 | A15 | A16 : T extends { + (...args: infer A1): any; + (...args: infer A2): any; + (...args: infer A3): any; + (...args: infer A4): any; + (...args: infer A5): any; + (...args: infer A6): any; + (...args: infer A7): any; + (...args: infer A8): any; + (...args: infer A9): any; + (...args: infer A10): any; + (...args: infer A11): any; + (...args: infer A12): any; + (...args: infer A13): any; + (...args: infer A14): any; + (...args: infer A15): any; +} ? A1 | A2 | A3 | A4 | A5 | A6 | A7 | A8 | A9 | A10 | A11 | A12 | A13 | A14 | A15 : T extends { + (...args: infer A1): any; + (...args: infer A2): any; + (...args: infer A3): any; + (...args: infer A4): any; + (...args: infer A5): any; + (...args: infer A6): any; + (...args: infer A7): any; + (...args: infer A8): any; + (...args: infer A9): any; + (...args: infer A10): any; + (...args: infer A11): any; + (...args: infer A12): any; + (...args: infer A13): any; + (...args: infer A14): any; +} ? A1 | A2 | A3 | A4 | A5 | A6 | A7 | A8 | A9 | A10 | A11 | A12 | A13 | A14 : T extends { + (...args: infer A1): any; + (...args: infer A2): any; + (...args: infer A3): any; + (...args: infer A4): any; + (...args: infer A5): any; + (...args: infer A6): any; + (...args: infer A7): any; + (...args: infer A8): any; + (...args: infer A9): any; + (...args: infer A10): any; + (...args: infer A11): any; + (...args: infer A12): any; + (...args: infer A13): any; +} ? A1 | A2 | A3 | A4 | A5 | A6 | A7 | A8 | A9 | A10 | A11 | A12 | A13 : T extends { + (...args: infer A1): any; + (...args: infer A2): any; + (...args: infer A3): any; + (...args: infer A4): any; + (...args: infer A5): any; + (...args: infer A6): any; + (...args: infer A7): any; + (...args: infer A8): any; + (...args: infer A9): any; + (...args: infer A10): any; + (...args: infer A11): any; + (...args: infer A12): any; +} ? A1 | A2 | A3 | A4 | A5 | A6 | A7 | A8 | A9 | A10 | A11 | A12 : T extends { + (...args: infer A1): any; + (...args: infer A2): any; + (...args: infer A3): any; + (...args: infer A4): any; + (...args: infer A5): any; + (...args: infer A6): any; + (...args: infer A7): any; + (...args: infer A8): any; + (...args: infer A9): any; + (...args: infer A10): any; + (...args: infer A11): any; +} ? A1 | A2 | A3 | A4 | A5 | A6 | A7 | A8 | A9 | A10 | A11 : T extends { + (...args: infer A1): any; + (...args: infer A2): any; + (...args: infer A3): any; + (...args: infer A4): any; + (...args: infer A5): any; + (...args: infer A6): any; + (...args: infer A7): any; + (...args: infer A8): any; + (...args: infer A9): any; + (...args: infer A10): any; +} ? A1 | A2 | A3 | A4 | A5 | A6 | A7 | A8 | A9 | A10 : T extends { + (...args: infer A1): any; + (...args: infer A2): any; + (...args: infer A3): any; + (...args: infer A4): any; + (...args: infer A5): any; + (...args: infer A6): any; + (...args: infer A7): any; + (...args: infer A8): any; + (...args: infer A9): any; +} ? A1 | A2 | A3 | A4 | A5 | A6 | A7 | A8 | A9 : T extends { + (...args: infer A1): any; + (...args: infer A2): any; + (...args: infer A3): any; + (...args: infer A4): any; + (...args: infer A5): any; + (...args: infer A6): any; + (...args: infer A7): any; + (...args: infer A8): any; +} ? A1 | A2 | A3 | A4 | A5 | A6 | A7 | A8 : T extends { + (...args: infer A1): any; + (...args: infer A2): any; + (...args: infer A3): any; + (...args: infer A4): any; + (...args: infer A5): any; + (...args: infer A6): any; + (...args: infer A7): any; +} ? A1 | A2 | A3 | A4 | A5 | A6 | A7 : T extends { + (...args: infer A1): any; + (...args: infer A2): any; + (...args: infer A3): any; + (...args: infer A4): any; + (...args: infer A5): any; + (...args: infer A6): any; +} ? A1 | A2 | A3 | A4 | A5 | A6 : T extends { + (...args: infer A1): any; + (...args: infer A2): any; + (...args: infer A3): any; + (...args: infer A4): any; + (...args: infer A5): any; +} ? A1 | A2 | A3 | A4 | A5 : T extends { + (...args: infer A1): any; + (...args: infer A2): any; + (...args: infer A3): any; + (...args: infer A4): any; +} ? A1 | A2 | A3 | A4 : T extends { + (...args: infer A1): any; + (...args: infer A2): any; + (...args: infer A3): any; +} ? A1 | A2 | A3 : T extends { + (...args: infer A1): any; + (...args: infer A2): any; +} ? A1 | A2 : T extends { + (...args: infer A1): any; +} ? A1 : any; diff --git a/node_modules/@tootallnate/once/dist/overloaded-parameters.js b/node_modules/@tootallnate/once/dist/overloaded-parameters.js new file mode 100644 index 0000000..207186d --- /dev/null +++ b/node_modules/@tootallnate/once/dist/overloaded-parameters.js @@ -0,0 +1,3 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +//# sourceMappingURL=overloaded-parameters.js.map \ No newline at end of file diff --git a/node_modules/@tootallnate/once/dist/overloaded-parameters.js.map b/node_modules/@tootallnate/once/dist/overloaded-parameters.js.map new file mode 100644 index 0000000..863f146 --- /dev/null +++ b/node_modules/@tootallnate/once/dist/overloaded-parameters.js.map @@ -0,0 +1 @@ +{"version":3,"file":"overloaded-parameters.js","sourceRoot":"","sources":["../src/overloaded-parameters.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/node_modules/@tootallnate/once/dist/types.d.ts b/node_modules/@tootallnate/once/dist/types.d.ts new file mode 100644 index 0000000..58be828 --- /dev/null +++ b/node_modules/@tootallnate/once/dist/types.d.ts @@ -0,0 +1,17 @@ +/// +import { EventEmitter } from 'events'; +import { OverloadedParameters } from './overloaded-parameters'; +export declare type FirstParameter = T extends [infer R, ...any[]] ? R : never; +export declare type EventListener = F extends [ + T, + infer R, + ...any[] +] ? R : never; +export declare type EventParameters = OverloadedParameters; +export declare type EventNames = FirstParameter>; +export declare type EventListenerParameters> = WithDefault, Event>>, unknown[]>; +export declare type WithDefault = [T] extends [never] ? D : T; +export interface AbortSignal { + addEventListener: (name: string, listener: (...args: any[]) => any) => void; + removeEventListener: (name: string, listener: (...args: any[]) => any) => void; +} diff --git a/node_modules/@tootallnate/once/dist/types.js b/node_modules/@tootallnate/once/dist/types.js new file mode 100644 index 0000000..11e638d --- /dev/null +++ b/node_modules/@tootallnate/once/dist/types.js @@ -0,0 +1,3 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/node_modules/@tootallnate/once/dist/types.js.map b/node_modules/@tootallnate/once/dist/types.js.map new file mode 100644 index 0000000..c768b79 --- /dev/null +++ b/node_modules/@tootallnate/once/dist/types.js.map @@ -0,0 +1 @@ +{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/node_modules/@tootallnate/once/package.json b/node_modules/@tootallnate/once/package.json new file mode 100644 index 0000000..69ce947 --- /dev/null +++ b/node_modules/@tootallnate/once/package.json @@ -0,0 +1,52 @@ +{ + "name": "@tootallnate/once", + "version": "2.0.0", + "description": "Creates a Promise that waits for a single event", + "main": "./dist/index.js", + "types": "./dist/index.d.ts", + "files": [ + "dist" + ], + "scripts": { + "prebuild": "rimraf dist", + "build": "tsc", + "test": "jest", + "prepublishOnly": "npm run build" + }, + "repository": { + "type": "git", + "url": "git://github.com/TooTallNate/once.git" + }, + "keywords": [], + "author": "Nathan Rajlich (http://n8.io/)", + "license": "MIT", + "bugs": { + "url": "https://github.com/TooTallNate/once/issues" + }, + "devDependencies": { + "@types/jest": "^27.0.2", + "@types/node": "^12.12.11", + "abort-controller": "^3.0.0", + "jest": "^27.2.1", + "rimraf": "^3.0.0", + "ts-jest": "^27.0.5", + "typescript": "^4.4.3" + }, + "engines": { + "node": ">= 10" + }, + "jest": { + "preset": "ts-jest", + "globals": { + "ts-jest": { + "diagnostics": false, + "isolatedModules": true + } + }, + "verbose": false, + "testEnvironment": "node", + "testMatch": [ + "/test/**/*.test.ts" + ] + } +} diff --git a/node_modules/agent-base/README.md b/node_modules/agent-base/README.md new file mode 100644 index 0000000..256f1f3 --- /dev/null +++ b/node_modules/agent-base/README.md @@ -0,0 +1,145 @@ +agent-base +========== +### Turn a function into an [`http.Agent`][http.Agent] instance +[![Build Status](https://github.com/TooTallNate/node-agent-base/workflows/Node%20CI/badge.svg)](https://github.com/TooTallNate/node-agent-base/actions?workflow=Node+CI) + +This module provides an `http.Agent` generator. That is, you pass it an async +callback function, and it returns a new `http.Agent` instance that will invoke the +given callback function when sending outbound HTTP requests. + +#### Some subclasses: + +Here's some more interesting uses of `agent-base`. +Send a pull request to list yours! + + * [`http-proxy-agent`][http-proxy-agent]: An HTTP(s) proxy `http.Agent` implementation for HTTP endpoints + * [`https-proxy-agent`][https-proxy-agent]: An HTTP(s) proxy `http.Agent` implementation for HTTPS endpoints + * [`pac-proxy-agent`][pac-proxy-agent]: A PAC file proxy `http.Agent` implementation for HTTP and HTTPS + * [`socks-proxy-agent`][socks-proxy-agent]: A SOCKS proxy `http.Agent` implementation for HTTP and HTTPS + + +Installation +------------ + +Install with `npm`: + +``` bash +$ npm install agent-base +``` + + +Example +------- + +Here's a minimal example that creates a new `net.Socket` connection to the server +for every HTTP request (i.e. the equivalent of `agent: false` option): + +```js +var net = require('net'); +var tls = require('tls'); +var url = require('url'); +var http = require('http'); +var agent = require('agent-base'); + +var endpoint = 'http://nodejs.org/api/'; +var parsed = url.parse(endpoint); + +// This is the important part! +parsed.agent = agent(function (req, opts) { + var socket; + // `secureEndpoint` is true when using the https module + if (opts.secureEndpoint) { + socket = tls.connect(opts); + } else { + socket = net.connect(opts); + } + return socket; +}); + +// Everything else works just like normal... +http.get(parsed, function (res) { + console.log('"response" event!', res.headers); + res.pipe(process.stdout); +}); +``` + +Returning a Promise or using an `async` function is also supported: + +```js +agent(async function (req, opts) { + await sleep(1000); + // etc… +}); +``` + +Return another `http.Agent` instance to "pass through" the responsibility +for that HTTP request to that agent: + +```js +agent(function (req, opts) { + return opts.secureEndpoint ? https.globalAgent : http.globalAgent; +}); +``` + + +API +--- + +## Agent(Function callback[, Object options]) → [http.Agent][] + +Creates a base `http.Agent` that will execute the callback function `callback` +for every HTTP request that it is used as the `agent` for. The callback function +is responsible for creating a `stream.Duplex` instance of some kind that will be +used as the underlying socket in the HTTP request. + +The `options` object accepts the following properties: + + * `timeout` - Number - Timeout for the `callback()` function in milliseconds. Defaults to Infinity (optional). + +The callback function should have the following signature: + +### callback(http.ClientRequest req, Object options, Function cb) → undefined + +The ClientRequest `req` can be accessed to read request headers and +and the path, etc. The `options` object contains the options passed +to the `http.request()`/`https.request()` function call, and is formatted +to be directly passed to `net.connect()`/`tls.connect()`, or however +else you want a Socket to be created. Pass the created socket to +the callback function `cb` once created, and the HTTP request will +continue to proceed. + +If the `https` module is used to invoke the HTTP request, then the +`secureEndpoint` property on `options` _will be set to `true`_. + + +License +------- + +(The MIT License) + +Copyright (c) 2013 Nathan Rajlich <nathan@tootallnate.net> + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +[http-proxy-agent]: https://github.com/TooTallNate/node-http-proxy-agent +[https-proxy-agent]: https://github.com/TooTallNate/node-https-proxy-agent +[pac-proxy-agent]: https://github.com/TooTallNate/node-pac-proxy-agent +[socks-proxy-agent]: https://github.com/TooTallNate/node-socks-proxy-agent +[http.Agent]: https://nodejs.org/api/http.html#http_class_http_agent diff --git a/node_modules/agent-base/dist/src/index.d.ts b/node_modules/agent-base/dist/src/index.d.ts new file mode 100644 index 0000000..bc4ab74 --- /dev/null +++ b/node_modules/agent-base/dist/src/index.d.ts @@ -0,0 +1,78 @@ +/// +import net from 'net'; +import http from 'http'; +import https from 'https'; +import { Duplex } from 'stream'; +import { EventEmitter } from 'events'; +declare function createAgent(opts?: createAgent.AgentOptions): createAgent.Agent; +declare function createAgent(callback: createAgent.AgentCallback, opts?: createAgent.AgentOptions): createAgent.Agent; +declare namespace createAgent { + interface ClientRequest extends http.ClientRequest { + _last?: boolean; + _hadError?: boolean; + method: string; + } + interface AgentRequestOptions { + host?: string; + path?: string; + port: number; + } + interface HttpRequestOptions extends AgentRequestOptions, Omit { + secureEndpoint: false; + } + interface HttpsRequestOptions extends AgentRequestOptions, Omit { + secureEndpoint: true; + } + type RequestOptions = HttpRequestOptions | HttpsRequestOptions; + type AgentLike = Pick | http.Agent; + type AgentCallbackReturn = Duplex | AgentLike; + type AgentCallbackCallback = (err?: Error | null, socket?: createAgent.AgentCallbackReturn) => void; + type AgentCallbackPromise = (req: createAgent.ClientRequest, opts: createAgent.RequestOptions) => createAgent.AgentCallbackReturn | Promise; + type AgentCallback = typeof Agent.prototype.callback; + type AgentOptions = { + timeout?: number; + }; + /** + * Base `http.Agent` implementation. + * No pooling/keep-alive is implemented by default. + * + * @param {Function} callback + * @api public + */ + class Agent extends EventEmitter { + timeout: number | null; + maxFreeSockets: number; + maxTotalSockets: number; + maxSockets: number; + sockets: { + [key: string]: net.Socket[]; + }; + freeSockets: { + [key: string]: net.Socket[]; + }; + requests: { + [key: string]: http.IncomingMessage[]; + }; + options: https.AgentOptions; + private promisifiedCallback?; + private explicitDefaultPort?; + private explicitProtocol?; + constructor(callback?: createAgent.AgentCallback | createAgent.AgentOptions, _opts?: createAgent.AgentOptions); + get defaultPort(): number; + set defaultPort(v: number); + get protocol(): string; + set protocol(v: string); + callback(req: createAgent.ClientRequest, opts: createAgent.RequestOptions, fn: createAgent.AgentCallbackCallback): void; + callback(req: createAgent.ClientRequest, opts: createAgent.RequestOptions): createAgent.AgentCallbackReturn | Promise; + /** + * Called by node-core's "_http_client.js" module when creating + * a new HTTP request with this Agent instance. + * + * @api public + */ + addRequest(req: ClientRequest, _opts: RequestOptions): void; + freeSocket(socket: net.Socket, opts: AgentOptions): void; + destroy(): void; + } +} +export = createAgent; diff --git a/node_modules/agent-base/dist/src/index.js b/node_modules/agent-base/dist/src/index.js new file mode 100644 index 0000000..bfd9e22 --- /dev/null +++ b/node_modules/agent-base/dist/src/index.js @@ -0,0 +1,203 @@ +"use strict"; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +const events_1 = require("events"); +const debug_1 = __importDefault(require("debug")); +const promisify_1 = __importDefault(require("./promisify")); +const debug = debug_1.default('agent-base'); +function isAgent(v) { + return Boolean(v) && typeof v.addRequest === 'function'; +} +function isSecureEndpoint() { + const { stack } = new Error(); + if (typeof stack !== 'string') + return false; + return stack.split('\n').some(l => l.indexOf('(https.js:') !== -1 || l.indexOf('node:https:') !== -1); +} +function createAgent(callback, opts) { + return new createAgent.Agent(callback, opts); +} +(function (createAgent) { + /** + * Base `http.Agent` implementation. + * No pooling/keep-alive is implemented by default. + * + * @param {Function} callback + * @api public + */ + class Agent extends events_1.EventEmitter { + constructor(callback, _opts) { + super(); + let opts = _opts; + if (typeof callback === 'function') { + this.callback = callback; + } + else if (callback) { + opts = callback; + } + // Timeout for the socket to be returned from the callback + this.timeout = null; + if (opts && typeof opts.timeout === 'number') { + this.timeout = opts.timeout; + } + // These aren't actually used by `agent-base`, but are required + // for the TypeScript definition files in `@types/node` :/ + this.maxFreeSockets = 1; + this.maxSockets = 1; + this.maxTotalSockets = Infinity; + this.sockets = {}; + this.freeSockets = {}; + this.requests = {}; + this.options = {}; + } + get defaultPort() { + if (typeof this.explicitDefaultPort === 'number') { + return this.explicitDefaultPort; + } + return isSecureEndpoint() ? 443 : 80; + } + set defaultPort(v) { + this.explicitDefaultPort = v; + } + get protocol() { + if (typeof this.explicitProtocol === 'string') { + return this.explicitProtocol; + } + return isSecureEndpoint() ? 'https:' : 'http:'; + } + set protocol(v) { + this.explicitProtocol = v; + } + callback(req, opts, fn) { + throw new Error('"agent-base" has no default implementation, you must subclass and override `callback()`'); + } + /** + * Called by node-core's "_http_client.js" module when creating + * a new HTTP request with this Agent instance. + * + * @api public + */ + addRequest(req, _opts) { + const opts = Object.assign({}, _opts); + if (typeof opts.secureEndpoint !== 'boolean') { + opts.secureEndpoint = isSecureEndpoint(); + } + if (opts.host == null) { + opts.host = 'localhost'; + } + if (opts.port == null) { + opts.port = opts.secureEndpoint ? 443 : 80; + } + if (opts.protocol == null) { + opts.protocol = opts.secureEndpoint ? 'https:' : 'http:'; + } + if (opts.host && opts.path) { + // If both a `host` and `path` are specified then it's most + // likely the result of a `url.parse()` call... we need to + // remove the `path` portion so that `net.connect()` doesn't + // attempt to open that as a unix socket file. + delete opts.path; + } + delete opts.agent; + delete opts.hostname; + delete opts._defaultAgent; + delete opts.defaultPort; + delete opts.createConnection; + // Hint to use "Connection: close" + // XXX: non-documented `http` module API :( + req._last = true; + req.shouldKeepAlive = false; + let timedOut = false; + let timeoutId = null; + const timeoutMs = opts.timeout || this.timeout; + const onerror = (err) => { + if (req._hadError) + return; + req.emit('error', err); + // For Safety. Some additional errors might fire later on + // and we need to make sure we don't double-fire the error event. + req._hadError = true; + }; + const ontimeout = () => { + timeoutId = null; + timedOut = true; + const err = new Error(`A "socket" was not created for HTTP request before ${timeoutMs}ms`); + err.code = 'ETIMEOUT'; + onerror(err); + }; + const callbackError = (err) => { + if (timedOut) + return; + if (timeoutId !== null) { + clearTimeout(timeoutId); + timeoutId = null; + } + onerror(err); + }; + const onsocket = (socket) => { + if (timedOut) + return; + if (timeoutId != null) { + clearTimeout(timeoutId); + timeoutId = null; + } + if (isAgent(socket)) { + // `socket` is actually an `http.Agent` instance, so + // relinquish responsibility for this `req` to the Agent + // from here on + debug('Callback returned another Agent instance %o', socket.constructor.name); + socket.addRequest(req, opts); + return; + } + if (socket) { + socket.once('free', () => { + this.freeSocket(socket, opts); + }); + req.onSocket(socket); + return; + } + const err = new Error(`no Duplex stream was returned to agent-base for \`${req.method} ${req.path}\``); + onerror(err); + }; + if (typeof this.callback !== 'function') { + onerror(new Error('`callback` is not defined')); + return; + } + if (!this.promisifiedCallback) { + if (this.callback.length >= 3) { + debug('Converting legacy callback function to promise'); + this.promisifiedCallback = promisify_1.default(this.callback); + } + else { + this.promisifiedCallback = this.callback; + } + } + if (typeof timeoutMs === 'number' && timeoutMs > 0) { + timeoutId = setTimeout(ontimeout, timeoutMs); + } + if ('port' in opts && typeof opts.port !== 'number') { + opts.port = Number(opts.port); + } + try { + debug('Resolving socket for %o request: %o', opts.protocol, `${req.method} ${req.path}`); + Promise.resolve(this.promisifiedCallback(req, opts)).then(onsocket, callbackError); + } + catch (err) { + Promise.reject(err).catch(callbackError); + } + } + freeSocket(socket, opts) { + debug('Freeing socket %o %o', socket.constructor.name, opts); + socket.destroy(); + } + destroy() { + debug('Destroying agent %o', this.constructor.name); + } + } + createAgent.Agent = Agent; + // So that `instanceof` works correctly + createAgent.prototype = createAgent.Agent.prototype; +})(createAgent || (createAgent = {})); +module.exports = createAgent; +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/node_modules/agent-base/dist/src/index.js.map b/node_modules/agent-base/dist/src/index.js.map new file mode 100644 index 0000000..bd118ab --- /dev/null +++ b/node_modules/agent-base/dist/src/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;AAIA,mCAAsC;AACtC,kDAAgC;AAChC,4DAAoC;AAEpC,MAAM,KAAK,GAAG,eAAW,CAAC,YAAY,CAAC,CAAC;AAExC,SAAS,OAAO,CAAC,CAAM;IACtB,OAAO,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,UAAU,KAAK,UAAU,CAAC;AACzD,CAAC;AAED,SAAS,gBAAgB;IACxB,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,KAAK,EAAE,CAAC;IAC9B,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,IAAK,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACxG,CAAC;AAOD,SAAS,WAAW,CACnB,QAA+D,EAC/D,IAA+B;IAE/B,OAAO,IAAI,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;AAC9C,CAAC;AAED,WAAU,WAAW;IAmDpB;;;;;;OAMG;IACH,MAAa,KAAM,SAAQ,qBAAY;QAmBtC,YACC,QAA+D,EAC/D,KAAgC;YAEhC,KAAK,EAAE,CAAC;YAER,IAAI,IAAI,GAAG,KAAK,CAAC;YACjB,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE;gBACnC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;aACzB;iBAAM,IAAI,QAAQ,EAAE;gBACpB,IAAI,GAAG,QAAQ,CAAC;aAChB;YAED,0DAA0D;YAC1D,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,IAAI,IAAI,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAE;gBAC7C,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;aAC5B;YAED,+DAA+D;YAC/D,0DAA0D;YAC1D,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;YACxB,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;YACpB,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC;YAChC,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;YAClB,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;YACtB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;YACnB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QACnB,CAAC;QAED,IAAI,WAAW;YACd,IAAI,OAAO,IAAI,CAAC,mBAAmB,KAAK,QAAQ,EAAE;gBACjD,OAAO,IAAI,CAAC,mBAAmB,CAAC;aAChC;YACD,OAAO,gBAAgB,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACtC,CAAC;QAED,IAAI,WAAW,CAAC,CAAS;YACxB,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;QAC9B,CAAC;QAED,IAAI,QAAQ;YACX,IAAI,OAAO,IAAI,CAAC,gBAAgB,KAAK,QAAQ,EAAE;gBAC9C,OAAO,IAAI,CAAC,gBAAgB,CAAC;aAC7B;YACD,OAAO,gBAAgB,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC;QAChD,CAAC;QAED,IAAI,QAAQ,CAAC,CAAS;YACrB,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;QAC3B,CAAC;QAaD,QAAQ,CACP,GAA8B,EAC9B,IAA8B,EAC9B,EAAsC;YAKtC,MAAM,IAAI,KAAK,CACd,yFAAyF,CACzF,CAAC;QACH,CAAC;QAED;;;;;WAKG;QACH,UAAU,CAAC,GAAkB,EAAE,KAAqB;YACnD,MAAM,IAAI,qBAAwB,KAAK,CAAE,CAAC;YAE1C,IAAI,OAAO,IAAI,CAAC,cAAc,KAAK,SAAS,EAAE;gBAC7C,IAAI,CAAC,cAAc,GAAG,gBAAgB,EAAE,CAAC;aACzC;YAED,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE;gBACtB,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC;aACxB;YAED,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE;gBACtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;aAC3C;YAED,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,EAAE;gBAC1B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC;aACzD;YAED,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE;gBAC3B,2DAA2D;gBAC3D,0DAA0D;gBAC1D,4DAA4D;gBAC5D,8CAA8C;gBAC9C,OAAO,IAAI,CAAC,IAAI,CAAC;aACjB;YAED,OAAO,IAAI,CAAC,KAAK,CAAC;YAClB,OAAO,IAAI,CAAC,QAAQ,CAAC;YACrB,OAAO,IAAI,CAAC,aAAa,CAAC;YAC1B,OAAO,IAAI,CAAC,WAAW,CAAC;YACxB,OAAO,IAAI,CAAC,gBAAgB,CAAC;YAE7B,kCAAkC;YAClC,2CAA2C;YAC3C,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC;YACjB,GAAG,CAAC,eAAe,GAAG,KAAK,CAAC;YAE5B,IAAI,QAAQ,GAAG,KAAK,CAAC;YACrB,IAAI,SAAS,GAAyC,IAAI,CAAC;YAC3D,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;YAE/C,MAAM,OAAO,GAAG,CAAC,GAA0B,EAAE,EAAE;gBAC9C,IAAI,GAAG,CAAC,SAAS;oBAAE,OAAO;gBAC1B,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;gBACvB,yDAAyD;gBACzD,iEAAiE;gBACjE,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC;YACtB,CAAC,CAAC;YAEF,MAAM,SAAS,GAAG,GAAG,EAAE;gBACtB,SAAS,GAAG,IAAI,CAAC;gBACjB,QAAQ,GAAG,IAAI,CAAC;gBAChB,MAAM,GAAG,GAA0B,IAAI,KAAK,CAC3C,sDAAsD,SAAS,IAAI,CACnE,CAAC;gBACF,GAAG,CAAC,IAAI,GAAG,UAAU,CAAC;gBACtB,OAAO,CAAC,GAAG,CAAC,CAAC;YACd,CAAC,CAAC;YAEF,MAAM,aAAa,GAAG,CAAC,GAA0B,EAAE,EAAE;gBACpD,IAAI,QAAQ;oBAAE,OAAO;gBACrB,IAAI,SAAS,KAAK,IAAI,EAAE;oBACvB,YAAY,CAAC,SAAS,CAAC,CAAC;oBACxB,SAAS,GAAG,IAAI,CAAC;iBACjB;gBACD,OAAO,CAAC,GAAG,CAAC,CAAC;YACd,CAAC,CAAC;YAEF,MAAM,QAAQ,GAAG,CAAC,MAA2B,EAAE,EAAE;gBAChD,IAAI,QAAQ;oBAAE,OAAO;gBACrB,IAAI,SAAS,IAAI,IAAI,EAAE;oBACtB,YAAY,CAAC,SAAS,CAAC,CAAC;oBACxB,SAAS,GAAG,IAAI,CAAC;iBACjB;gBAED,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE;oBACpB,oDAAoD;oBACpD,wDAAwD;oBACxD,eAAe;oBACf,KAAK,CACJ,6CAA6C,EAC7C,MAAM,CAAC,WAAW,CAAC,IAAI,CACvB,CAAC;oBACD,MAA4B,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;oBACpD,OAAO;iBACP;gBAED,IAAI,MAAM,EAAE;oBACX,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE;wBACxB,IAAI,CAAC,UAAU,CAAC,MAAoB,EAAE,IAAI,CAAC,CAAC;oBAC7C,CAAC,CAAC,CAAC;oBACH,GAAG,CAAC,QAAQ,CAAC,MAAoB,CAAC,CAAC;oBACnC,OAAO;iBACP;gBAED,MAAM,GAAG,GAAG,IAAI,KAAK,CACpB,qDAAqD,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,IAAI,IAAI,CAC/E,CAAC;gBACF,OAAO,CAAC,GAAG,CAAC,CAAC;YACd,CAAC,CAAC;YAEF,IAAI,OAAO,IAAI,CAAC,QAAQ,KAAK,UAAU,EAAE;gBACxC,OAAO,CAAC,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC,CAAC;gBAChD,OAAO;aACP;YAED,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE;gBAC9B,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,EAAE;oBAC9B,KAAK,CAAC,gDAAgD,CAAC,CAAC;oBACxD,IAAI,CAAC,mBAAmB,GAAG,mBAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;iBACpD;qBAAM;oBACN,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,QAAQ,CAAC;iBACzC;aACD;YAED,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,GAAG,CAAC,EAAE;gBACnD,SAAS,GAAG,UAAU,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;aAC7C;YAED,IAAI,MAAM,IAAI,IAAI,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE;gBACpD,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC9B;YAED,IAAI;gBACH,KAAK,CACJ,qCAAqC,EACrC,IAAI,CAAC,QAAQ,EACb,GAAG,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,CAC3B,CAAC;gBACF,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CACxD,QAAQ,EACR,aAAa,CACb,CAAC;aACF;YAAC,OAAO,GAAG,EAAE;gBACb,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;aACzC;QACF,CAAC;QAED,UAAU,CAAC,MAAkB,EAAE,IAAkB;YAChD,KAAK,CAAC,sBAAsB,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAC7D,MAAM,CAAC,OAAO,EAAE,CAAC;QAClB,CAAC;QAED,OAAO;YACN,KAAK,CAAC,qBAAqB,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACrD,CAAC;KACD;IAxPY,iBAAK,QAwPjB,CAAA;IAED,uCAAuC;IACvC,WAAW,CAAC,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,SAAS,CAAC;AACrD,CAAC,EAtTS,WAAW,KAAX,WAAW,QAsTpB;AAED,iBAAS,WAAW,CAAC"} \ No newline at end of file diff --git a/node_modules/agent-base/dist/src/promisify.d.ts b/node_modules/agent-base/dist/src/promisify.d.ts new file mode 100644 index 0000000..0268869 --- /dev/null +++ b/node_modules/agent-base/dist/src/promisify.d.ts @@ -0,0 +1,4 @@ +import { ClientRequest, RequestOptions, AgentCallbackCallback, AgentCallbackPromise } from './index'; +declare type LegacyCallback = (req: ClientRequest, opts: RequestOptions, fn: AgentCallbackCallback) => void; +export default function promisify(fn: LegacyCallback): AgentCallbackPromise; +export {}; diff --git a/node_modules/agent-base/dist/src/promisify.js b/node_modules/agent-base/dist/src/promisify.js new file mode 100644 index 0000000..b2f6132 --- /dev/null +++ b/node_modules/agent-base/dist/src/promisify.js @@ -0,0 +1,18 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +function promisify(fn) { + return function (req, opts) { + return new Promise((resolve, reject) => { + fn.call(this, req, opts, (err, rtn) => { + if (err) { + reject(err); + } + else { + resolve(rtn); + } + }); + }); + }; +} +exports.default = promisify; +//# sourceMappingURL=promisify.js.map \ No newline at end of file diff --git a/node_modules/agent-base/dist/src/promisify.js.map b/node_modules/agent-base/dist/src/promisify.js.map new file mode 100644 index 0000000..4bff9bf --- /dev/null +++ b/node_modules/agent-base/dist/src/promisify.js.map @@ -0,0 +1 @@ +{"version":3,"file":"promisify.js","sourceRoot":"","sources":["../../src/promisify.ts"],"names":[],"mappings":";;AAeA,SAAwB,SAAS,CAAC,EAAkB;IACnD,OAAO,UAAsB,GAAkB,EAAE,IAAoB;QACpE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACtC,EAAE,CAAC,IAAI,CACN,IAAI,EACJ,GAAG,EACH,IAAI,EACJ,CAAC,GAA6B,EAAE,GAAyB,EAAE,EAAE;gBAC5D,IAAI,GAAG,EAAE;oBACR,MAAM,CAAC,GAAG,CAAC,CAAC;iBACZ;qBAAM;oBACN,OAAO,CAAC,GAAG,CAAC,CAAC;iBACb;YACF,CAAC,CACD,CAAC;QACH,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC;AACH,CAAC;AAjBD,4BAiBC"} \ No newline at end of file diff --git a/node_modules/agent-base/package.json b/node_modules/agent-base/package.json new file mode 100644 index 0000000..fadce3a --- /dev/null +++ b/node_modules/agent-base/package.json @@ -0,0 +1,64 @@ +{ + "name": "agent-base", + "version": "6.0.2", + "description": "Turn a function into an `http.Agent` instance", + "main": "dist/src/index", + "typings": "dist/src/index", + "files": [ + "dist/src", + "src" + ], + "scripts": { + "prebuild": "rimraf dist", + "build": "tsc", + "postbuild": "cpy --parents src test '!**/*.ts' dist", + "test": "mocha --reporter spec dist/test/*.js", + "test-lint": "eslint src --ext .js,.ts", + "prepublishOnly": "npm run build" + }, + "repository": { + "type": "git", + "url": "git://github.com/TooTallNate/node-agent-base.git" + }, + "keywords": [ + "http", + "agent", + "base", + "barebones", + "https" + ], + "author": "Nathan Rajlich (http://n8.io/)", + "license": "MIT", + "bugs": { + "url": "https://github.com/TooTallNate/node-agent-base/issues" + }, + "dependencies": { + "debug": "4" + }, + "devDependencies": { + "@types/debug": "4", + "@types/mocha": "^5.2.7", + "@types/node": "^14.0.20", + "@types/semver": "^7.1.0", + "@types/ws": "^6.0.3", + "@typescript-eslint/eslint-plugin": "1.6.0", + "@typescript-eslint/parser": "1.1.0", + "async-listen": "^1.2.0", + "cpy-cli": "^2.0.0", + "eslint": "5.16.0", + "eslint-config-airbnb": "17.1.0", + "eslint-config-prettier": "4.1.0", + "eslint-import-resolver-typescript": "1.1.1", + "eslint-plugin-import": "2.16.0", + "eslint-plugin-jsx-a11y": "6.2.1", + "eslint-plugin-react": "7.12.4", + "mocha": "^6.2.0", + "rimraf": "^3.0.0", + "semver": "^7.1.2", + "typescript": "^3.5.3", + "ws": "^3.0.0" + }, + "engines": { + "node": ">= 6.0.0" + } +} diff --git a/node_modules/agent-base/src/index.ts b/node_modules/agent-base/src/index.ts new file mode 100644 index 0000000..a47ccd4 --- /dev/null +++ b/node_modules/agent-base/src/index.ts @@ -0,0 +1,345 @@ +import net from 'net'; +import http from 'http'; +import https from 'https'; +import { Duplex } from 'stream'; +import { EventEmitter } from 'events'; +import createDebug from 'debug'; +import promisify from './promisify'; + +const debug = createDebug('agent-base'); + +function isAgent(v: any): v is createAgent.AgentLike { + return Boolean(v) && typeof v.addRequest === 'function'; +} + +function isSecureEndpoint(): boolean { + const { stack } = new Error(); + if (typeof stack !== 'string') return false; + return stack.split('\n').some(l => l.indexOf('(https.js:') !== -1 || l.indexOf('node:https:') !== -1); +} + +function createAgent(opts?: createAgent.AgentOptions): createAgent.Agent; +function createAgent( + callback: createAgent.AgentCallback, + opts?: createAgent.AgentOptions +): createAgent.Agent; +function createAgent( + callback?: createAgent.AgentCallback | createAgent.AgentOptions, + opts?: createAgent.AgentOptions +) { + return new createAgent.Agent(callback, opts); +} + +namespace createAgent { + export interface ClientRequest extends http.ClientRequest { + _last?: boolean; + _hadError?: boolean; + method: string; + } + + export interface AgentRequestOptions { + host?: string; + path?: string; + // `port` on `http.RequestOptions` can be a string or undefined, + // but `net.TcpNetConnectOpts` expects only a number + port: number; + } + + export interface HttpRequestOptions + extends AgentRequestOptions, + Omit { + secureEndpoint: false; + } + + export interface HttpsRequestOptions + extends AgentRequestOptions, + Omit { + secureEndpoint: true; + } + + export type RequestOptions = HttpRequestOptions | HttpsRequestOptions; + + export type AgentLike = Pick | http.Agent; + + export type AgentCallbackReturn = Duplex | AgentLike; + + export type AgentCallbackCallback = ( + err?: Error | null, + socket?: createAgent.AgentCallbackReturn + ) => void; + + export type AgentCallbackPromise = ( + req: createAgent.ClientRequest, + opts: createAgent.RequestOptions + ) => + | createAgent.AgentCallbackReturn + | Promise; + + export type AgentCallback = typeof Agent.prototype.callback; + + export type AgentOptions = { + timeout?: number; + }; + + /** + * Base `http.Agent` implementation. + * No pooling/keep-alive is implemented by default. + * + * @param {Function} callback + * @api public + */ + export class Agent extends EventEmitter { + public timeout: number | null; + public maxFreeSockets: number; + public maxTotalSockets: number; + public maxSockets: number; + public sockets: { + [key: string]: net.Socket[]; + }; + public freeSockets: { + [key: string]: net.Socket[]; + }; + public requests: { + [key: string]: http.IncomingMessage[]; + }; + public options: https.AgentOptions; + private promisifiedCallback?: createAgent.AgentCallbackPromise; + private explicitDefaultPort?: number; + private explicitProtocol?: string; + + constructor( + callback?: createAgent.AgentCallback | createAgent.AgentOptions, + _opts?: createAgent.AgentOptions + ) { + super(); + + let opts = _opts; + if (typeof callback === 'function') { + this.callback = callback; + } else if (callback) { + opts = callback; + } + + // Timeout for the socket to be returned from the callback + this.timeout = null; + if (opts && typeof opts.timeout === 'number') { + this.timeout = opts.timeout; + } + + // These aren't actually used by `agent-base`, but are required + // for the TypeScript definition files in `@types/node` :/ + this.maxFreeSockets = 1; + this.maxSockets = 1; + this.maxTotalSockets = Infinity; + this.sockets = {}; + this.freeSockets = {}; + this.requests = {}; + this.options = {}; + } + + get defaultPort(): number { + if (typeof this.explicitDefaultPort === 'number') { + return this.explicitDefaultPort; + } + return isSecureEndpoint() ? 443 : 80; + } + + set defaultPort(v: number) { + this.explicitDefaultPort = v; + } + + get protocol(): string { + if (typeof this.explicitProtocol === 'string') { + return this.explicitProtocol; + } + return isSecureEndpoint() ? 'https:' : 'http:'; + } + + set protocol(v: string) { + this.explicitProtocol = v; + } + + callback( + req: createAgent.ClientRequest, + opts: createAgent.RequestOptions, + fn: createAgent.AgentCallbackCallback + ): void; + callback( + req: createAgent.ClientRequest, + opts: createAgent.RequestOptions + ): + | createAgent.AgentCallbackReturn + | Promise; + callback( + req: createAgent.ClientRequest, + opts: createAgent.AgentOptions, + fn?: createAgent.AgentCallbackCallback + ): + | createAgent.AgentCallbackReturn + | Promise + | void { + throw new Error( + '"agent-base" has no default implementation, you must subclass and override `callback()`' + ); + } + + /** + * Called by node-core's "_http_client.js" module when creating + * a new HTTP request with this Agent instance. + * + * @api public + */ + addRequest(req: ClientRequest, _opts: RequestOptions): void { + const opts: RequestOptions = { ..._opts }; + + if (typeof opts.secureEndpoint !== 'boolean') { + opts.secureEndpoint = isSecureEndpoint(); + } + + if (opts.host == null) { + opts.host = 'localhost'; + } + + if (opts.port == null) { + opts.port = opts.secureEndpoint ? 443 : 80; + } + + if (opts.protocol == null) { + opts.protocol = opts.secureEndpoint ? 'https:' : 'http:'; + } + + if (opts.host && opts.path) { + // If both a `host` and `path` are specified then it's most + // likely the result of a `url.parse()` call... we need to + // remove the `path` portion so that `net.connect()` doesn't + // attempt to open that as a unix socket file. + delete opts.path; + } + + delete opts.agent; + delete opts.hostname; + delete opts._defaultAgent; + delete opts.defaultPort; + delete opts.createConnection; + + // Hint to use "Connection: close" + // XXX: non-documented `http` module API :( + req._last = true; + req.shouldKeepAlive = false; + + let timedOut = false; + let timeoutId: ReturnType | null = null; + const timeoutMs = opts.timeout || this.timeout; + + const onerror = (err: NodeJS.ErrnoException) => { + if (req._hadError) return; + req.emit('error', err); + // For Safety. Some additional errors might fire later on + // and we need to make sure we don't double-fire the error event. + req._hadError = true; + }; + + const ontimeout = () => { + timeoutId = null; + timedOut = true; + const err: NodeJS.ErrnoException = new Error( + `A "socket" was not created for HTTP request before ${timeoutMs}ms` + ); + err.code = 'ETIMEOUT'; + onerror(err); + }; + + const callbackError = (err: NodeJS.ErrnoException) => { + if (timedOut) return; + if (timeoutId !== null) { + clearTimeout(timeoutId); + timeoutId = null; + } + onerror(err); + }; + + const onsocket = (socket: AgentCallbackReturn) => { + if (timedOut) return; + if (timeoutId != null) { + clearTimeout(timeoutId); + timeoutId = null; + } + + if (isAgent(socket)) { + // `socket` is actually an `http.Agent` instance, so + // relinquish responsibility for this `req` to the Agent + // from here on + debug( + 'Callback returned another Agent instance %o', + socket.constructor.name + ); + (socket as createAgent.Agent).addRequest(req, opts); + return; + } + + if (socket) { + socket.once('free', () => { + this.freeSocket(socket as net.Socket, opts); + }); + req.onSocket(socket as net.Socket); + return; + } + + const err = new Error( + `no Duplex stream was returned to agent-base for \`${req.method} ${req.path}\`` + ); + onerror(err); + }; + + if (typeof this.callback !== 'function') { + onerror(new Error('`callback` is not defined')); + return; + } + + if (!this.promisifiedCallback) { + if (this.callback.length >= 3) { + debug('Converting legacy callback function to promise'); + this.promisifiedCallback = promisify(this.callback); + } else { + this.promisifiedCallback = this.callback; + } + } + + if (typeof timeoutMs === 'number' && timeoutMs > 0) { + timeoutId = setTimeout(ontimeout, timeoutMs); + } + + if ('port' in opts && typeof opts.port !== 'number') { + opts.port = Number(opts.port); + } + + try { + debug( + 'Resolving socket for %o request: %o', + opts.protocol, + `${req.method} ${req.path}` + ); + Promise.resolve(this.promisifiedCallback(req, opts)).then( + onsocket, + callbackError + ); + } catch (err) { + Promise.reject(err).catch(callbackError); + } + } + + freeSocket(socket: net.Socket, opts: AgentOptions) { + debug('Freeing socket %o %o', socket.constructor.name, opts); + socket.destroy(); + } + + destroy() { + debug('Destroying agent %o', this.constructor.name); + } + } + + // So that `instanceof` works correctly + createAgent.prototype = createAgent.Agent.prototype; +} + +export = createAgent; diff --git a/node_modules/agent-base/src/promisify.ts b/node_modules/agent-base/src/promisify.ts new file mode 100644 index 0000000..60cc662 --- /dev/null +++ b/node_modules/agent-base/src/promisify.ts @@ -0,0 +1,33 @@ +import { + Agent, + ClientRequest, + RequestOptions, + AgentCallbackCallback, + AgentCallbackPromise, + AgentCallbackReturn +} from './index'; + +type LegacyCallback = ( + req: ClientRequest, + opts: RequestOptions, + fn: AgentCallbackCallback +) => void; + +export default function promisify(fn: LegacyCallback): AgentCallbackPromise { + return function(this: Agent, req: ClientRequest, opts: RequestOptions) { + return new Promise((resolve, reject) => { + fn.call( + this, + req, + opts, + (err: Error | null | undefined, rtn?: AgentCallbackReturn) => { + if (err) { + reject(err); + } else { + resolve(rtn); + } + } + ); + }); + }; +} diff --git a/node_modules/agentkeepalive/History.md b/node_modules/agentkeepalive/History.md new file mode 100644 index 0000000..9db6e55 --- /dev/null +++ b/node_modules/agentkeepalive/History.md @@ -0,0 +1,248 @@ + +4.2.1 / 2022-02-21 +================== + +**fixes** + * [[`8b13b5c`](http://github.com/node-modules/agentkeepalive/commit/8b13b5ca797f4779a0a8d393ad8ecb622cd27987)] - fix: explicitly set `| undefined` in type definitions (#99) (Benoit Lemoine <>) + +4.2.0 / 2021-12-31 +================== + +**fixes** + * [[`f418c67`](http://github.com/node-modules/agentkeepalive/commit/f418c67a63c061c7261592d4553bc455e0b0d306)] - fix: change `freeSocketTimeout` default value to 4000 (#102) (fengmk2 <>) + +**others** + * [[`bc2a1ce`](http://github.com/node-modules/agentkeepalive/commit/bc2a1cea0884b4d18b0d244bf00006d9107963df)] - doc(readme): making `timeout`'s default clear (#100) (Aaron <>) + +4.1.4 / 2021-02-05 +================== + +**fixes** + * [[`4d04794`](http://github.com/node-modules/agentkeepalive/commit/4d047946b1547b4edff92ea40205aee4f0c8aa46)] - fix(types): correct `Https` constructor argument (#89) (Simen Bekkhus <>) + +4.1.3 / 2020-06-15 +================== + +**fixes** + * [[`4ba9f9c`](http://github.com/node-modules/agentkeepalive/commit/4ba9f9c844f2a6b8037ce56599d25c69ef054d91)] - fix: compatible with node v12.16.3 (#91) (killa <>) + +4.1.2 / 2020-04-25 +================== + +**fixes** + * [[`de66b02`](http://github.com/node-modules/agentkeepalive/commit/de66b0206d064a97129c2c31bcdabd4d64557b91)] - fix: detect http request timeout handler (#88) (fengmk2 <>) + +4.1.1 / 2020-04-25 +================== + +**fixes** + * [[`bbd20c0`](http://github.com/node-modules/agentkeepalive/commit/bbd20c03b8cf7dfb00b3aad1ada26d4ab90d2d6e)] - fix: definition error (#87) (吖猩 <>) + +**others** + * [[`3b01699`](http://github.com/node-modules/agentkeepalive/commit/3b01699b8e90022d5f56898dd709e4fe7ee7cdaa)] - test: run test on node 12 (#84) (Igor Savin <>) + +4.1.0 / 2019-10-12 +================== + +**features** + * [[`fe33b80`](http://github.com/node-modules/agentkeepalive/commit/fe33b800acc09109388bfe65107550952b6fc7b0)] - feat: Add `reusedSocket` property on client request (#82) (Weijia Wang <>) + +**others** + * [[`77ba744`](http://github.com/node-modules/agentkeepalive/commit/77ba744667bb6b9e5986a53e5222f62094db12b9)] - docs: fix grammar in readme (#81) (Herrington Darkholme <<2883231+HerringtonDarkholme@users.noreply.github.com>>) + +4.0.2 / 2019-02-19 +================== + +**fixes** + * [[`56d4a9b`](http://github.com/node-modules/agentkeepalive/commit/56d4a9b2a4499ea28943ddb590358d7831a02cb1)] - fix: HttpAgent export = internal (#74) (Andrew Leedham <>) + +4.0.1 / 2019-02-19 +================== + +**fixes** + * [[`bad1ac0`](http://github.com/node-modules/agentkeepalive/commit/bad1ac0e710fbc486717e14e68c59266d35df6a8)] - fix: HttpsAgent Type Definition (#71) (#72) (Andrew Leedham <>) + * [[`f48a4a7`](http://github.com/node-modules/agentkeepalive/commit/f48a4a701ea6fbe43781c91e1c0aaad6e328ac7f)] - fix: export interface (#70) (Vinay <>) + +**others** + * [[`9124343`](http://github.com/node-modules/agentkeepalive/commit/91243437cfdd324cb97f39dee76746d5e5f4cd72)] - chore: add agent.options.keepAlive instead agent.keepAlive (fengmk2 <>) + * [[`d177d40`](http://github.com/node-modules/agentkeepalive/commit/d177d40422fe7296990b4e270cf498e3f33c18fa)] - test: add request timeout bigger than agent timeout cases (fengmk2 <>) + +4.0.0 / 2018-10-23 +================== + +**features** + * [[`5c9f3bb`](http://github.com/node-modules/agentkeepalive/commit/5c9f3bbd60555744edcf777105b148982a1a42b6)] - feat: impl the new Agent extend http.Agent (fengmk2 <>) + +**others** + * [[`498c8f1`](http://github.com/node-modules/agentkeepalive/commit/498c8f13cf76600d3dd6e1c91cdf2d8292355dff)] - chore: move LICENSE from readme to file (fengmk2 <>) + * [[`4f39894`](http://github.com/node-modules/agentkeepalive/commit/4f398942ba2f90cf4501239e56ac4e6344931a01)] - bugfix: support agent.options.timeout on https agent (fengmk2 <>) + +3.5.2 / 2018-10-19 +================== + +**fixes** + * [[`5751fc1`](http://github.com/node-modules/agentkeepalive/commit/5751fc1180ed6544602c681ffbd08ca66a0cb12c)] - fix: sockLen being miscalculated when removing sockets (#60) (Ehden Sinai <>) + +3.5.1 / 2018-07-31 +================== + +**fixes** + * [[`495f1ab`](http://github.com/node-modules/agentkeepalive/commit/495f1ab625d43945d72f68096b97db723d4f0657)] - fix: add the lost npm files (#66) (Henry Zhuang <>) + +3.5.0 / 2018-07-31 +================== + +**features** + * [[`16f5aea`](http://github.com/node-modules/agentkeepalive/commit/16f5aeadfda57f1c602652f1472a63cc83cd05bf)] - feat: add typing define. (#65) (Henry Zhuang <>) + +**others** + * [[`28fa062`](http://github.com/node-modules/agentkeepalive/commit/28fa06246fb5103f88ebeeb8563757a9078b8157)] - docs: add "per host" to description of maxFreeSockets (tony-gutierrez <>) + * [[`7df2577`](http://github.com/node-modules/agentkeepalive/commit/7df25774f00a1031ca4daad2878a17e0539072a2)] - test: run test on node 10 (#63) (fengmk2 <>) + +3.4.1 / 2018-03-08 +================== + +**fixes** + * [[`4d3a3b1`](http://github.com/node-modules/agentkeepalive/commit/4d3a3b1f7b16595febbbd39eeed72b2663549014)] - fix: Handle ipv6 addresses in host-header correctly with TLS (#53) (Mattias Holmlund <>) + +**others** + * [[`55a7a5c`](http://github.com/node-modules/agentkeepalive/commit/55a7a5cd33e97f9a8370083dcb041c5552f10ac9)] - test: stop timer after test end (fengmk2 <>) + +3.4.0 / 2018-02-27 +================== + +**features** + * [[`bc7cadb`](http://github.com/node-modules/agentkeepalive/commit/bc7cadb30ecd2071e2b341ac53ae1a2b8155c43d)] - feat: use socket custom freeSocketKeepAliveTimeout first (#59) (fengmk2 <>) + +**others** + * [[`138eda8`](http://github.com/node-modules/agentkeepalive/commit/138eda81e10b632aaa87bea0cb66d8667124c4e8)] - doc: fix `keepAliveMsecs` params description (#55) (Hongcai Deng <>) + +3.3.0 / 2017-06-20 +================== + + * feat: add statusChanged getter (#51) + * chore: format License + +3.2.0 / 2017-06-10 +================== + + * feat: add expiring active sockets + * test: add node 8 (#49) + +3.1.0 / 2017-02-20 +================== + + * feat: timeout support humanize ms (#48) + +3.0.0 / 2016-12-20 +================== + + * fix: emit agent socket close event + * test: add remove excess calls to removeSocket + * test: use egg-ci + * test: refactor test with eslint rules + * feat: merge _http_agent.js from 7.2.1 + +2.2.0 / 2016-06-26 +================== + + * feat: Add browser shim (noop) for isomorphic use. (#39) + * chore: add security check badge + +2.1.1 / 2016-04-06 +================== + + * https: fix ssl socket leak when keepalive is used + * chore: remove circle ci image + +2.1.0 / 2016-04-02 +================== + + * fix: opened sockets number overflow maxSockets + +2.0.5 / 2016-03-16 +================== + + * fix: pick _evictSession to httpsAgent + +2.0.4 / 2016-03-13 +================== + + * test: add Circle ci + * test: add appveyor ci build + * refactor: make sure only one error listener + * chore: use codecov + * fix: handle idle socket error + * test: run on more node versions + +2.0.3 / 2015-08-03 +================== + + * fix: add default error handler to avoid Unhandled error event throw + +2.0.2 / 2015-04-25 +================== + + * fix: remove socket from freeSockets on 'timeout' (@pmalouin) + +2.0.1 / 2015-04-19 +================== + + * fix: add timeoutSocketCount to getCurrentStatus() + * feat(getCurrentStatus): add getCurrentStatus + +2.0.0 / 2015-04-01 +================== + + * fix: socket.destroyed always be undefined on 0.10.x + * Make it compatible with node v0.10.x (@lattmann) + +1.2.1 / 2015-03-23 +================== + + * patch from iojs: don't overwrite servername option + * patch commits from joyent/node + * add max sockets test case + * add nagle algorithm delayed link + +1.2.0 / 2014-09-02 +================== + + * allow set keepAliveTimeout = 0 + * support timeout on working socket. fixed #6 + +1.1.0 / 2014-08-28 +================== + + * add some socket counter for deep monitor + +1.0.0 / 2014-08-13 +================== + + * update _http_agent, only support 0.11+, only support node 0.11.0+ + +0.2.2 / 2013-11-19 +================== + + * support node 0.8 and node 0.10 + +0.2.1 / 2013-11-08 +================== + + * fix socket does not timeout bug, it will hang on life, must use 0.2.x on node 0.11 + +0.2.0 / 2013-11-06 +================== + + * use keepalive agent on node 0.11+ impl + +0.1.5 / 2013-06-24 +================== + + * support coveralls + * add node 0.10 test + * add 0.8.22 original https.js + * add original http.js module to diff + * update jscover + * mv pem to fixtures + * add https agent usage diff --git a/node_modules/agentkeepalive/LICENSE b/node_modules/agentkeepalive/LICENSE new file mode 100644 index 0000000..941258c --- /dev/null +++ b/node_modules/agentkeepalive/LICENSE @@ -0,0 +1,23 @@ +The MIT License + +Copyright(c) node-modules and other contributors. +Copyright(c) 2012 - 2015 fengmk2 + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/agentkeepalive/README.md b/node_modules/agentkeepalive/README.md new file mode 100644 index 0000000..137935c --- /dev/null +++ b/node_modules/agentkeepalive/README.md @@ -0,0 +1,246 @@ +# agentkeepalive + +[![NPM version][npm-image]][npm-url] +[![Known Vulnerabilities][snyk-image]][snyk-url] +[![Node.js CI](https://github.com/node-modules/agentkeepalive/actions/workflows/nodejs.yml/badge.svg)](https://github.com/node-modules/agentkeepalive/actions/workflows/nodejs.yml) +[![npm download][download-image]][download-url] + +[npm-image]: https://img.shields.io/npm/v/agentkeepalive.svg?style=flat +[npm-url]: https://npmjs.org/package/agentkeepalive +[snyk-image]: https://snyk.io/test/npm/agentkeepalive/badge.svg?style=flat-square +[snyk-url]: https://snyk.io/test/npm/agentkeepalive +[download-image]: https://img.shields.io/npm/dm/agentkeepalive.svg?style=flat-square +[download-url]: https://npmjs.org/package/agentkeepalive + +The enhancement features `keep alive` `http.Agent`. Support `http` and `https`. + +## What's different from original `http.Agent`? + +- `keepAlive=true` by default +- Disable Nagle's algorithm: `socket.setNoDelay(true)` +- Add free socket timeout: avoid long time inactivity socket leak in the free-sockets queue. +- Add active socket timeout: avoid long time inactivity socket leak in the active-sockets queue. +- TTL for active socket. + +## Node.js version required + +Support Node.js >= `8.0.0` + +## Install + +```bash +$ npm install agentkeepalive --save +``` + +## new Agent([options]) + +* `options` {Object} Set of configurable options to set on the agent. + Can have the following fields: + * `keepAlive` {Boolean} Keep sockets around in a pool to be used by + other requests in the future. Default = `true`. + * `keepAliveMsecs` {Number} When using the keepAlive option, specifies the initial delay + for TCP Keep-Alive packets. Ignored when the keepAlive option is false or undefined. Defaults to 1000. + Default = `1000`. Only relevant if `keepAlive` is set to `true`. + * `freeSocketTimeout`: {Number} Sets the free socket to timeout + after `freeSocketTimeout` milliseconds of inactivity on the free socket. + The default [server-side timeout](https://nodejs.org/api/http.html#serverkeepalivetimeout) is 5000 milliseconds, to [avoid ECONNRESET exceptions](https://medium.com/ssense-tech/reduce-networking-errors-in-nodejs-23b4eb9f2d83), we set the default value to `4000` milliseconds. + Only relevant if `keepAlive` is set to `true`. + * `timeout`: {Number} Sets the working socket to timeout + after `timeout` milliseconds of inactivity on the working socket. + Default is `freeSocketTimeout * 2` so long as that value is greater than or equal to 8 seconds, otherwise the default is 8 seconds. + * `maxSockets` {Number} Maximum number of sockets to allow per + host. Default = `Infinity`. + * `maxFreeSockets` {Number} Maximum number of sockets (per host) to leave open + in a free state. Only relevant if `keepAlive` is set to `true`. + Default = `256`. + * `socketActiveTTL` {Number} Sets the socket active time to live, even if it's in use. + If not set, the behaviour keeps the same (the socket will be released only when free) + Default = `null`. + +## Usage + +```js +const http = require('http'); +const Agent = require('agentkeepalive'); + +const keepaliveAgent = new Agent({ + maxSockets: 100, + maxFreeSockets: 10, + timeout: 60000, // active socket keepalive for 60 seconds + freeSocketTimeout: 30000, // free socket keepalive for 30 seconds +}); + +const options = { + host: 'cnodejs.org', + port: 80, + path: '/', + method: 'GET', + agent: keepaliveAgent, +}; + +const req = http.request(options, res => { + console.log('STATUS: ' + res.statusCode); + console.log('HEADERS: ' + JSON.stringify(res.headers)); + res.setEncoding('utf8'); + res.on('data', function (chunk) { + console.log('BODY: ' + chunk); + }); +}); +req.on('error', e => { + console.log('problem with request: ' + e.message); +}); +req.end(); + +setTimeout(() => { + if (keepaliveAgent.statusChanged) { + console.log('[%s] agent status changed: %j', Date(), keepaliveAgent.getCurrentStatus()); + } +}, 2000); + +``` + +### `getter agent.statusChanged` + +counters have change or not after last checkpoint. + +### `agent.getCurrentStatus()` + +`agent.getCurrentStatus()` will return a object to show the status of this agent: + +```js +{ + createSocketCount: 10, + closeSocketCount: 5, + timeoutSocketCount: 0, + requestCount: 5, + freeSockets: { 'localhost:57479:': 3 }, + sockets: { 'localhost:57479:': 5 }, + requests: {} +} +``` + +### Support `https` + +```js +const https = require('https'); +const HttpsAgent = require('agentkeepalive').HttpsAgent; + +const keepaliveAgent = new HttpsAgent(); +// https://www.google.com/search?q=nodejs&sugexp=chrome,mod=12&sourceid=chrome&ie=UTF-8 +const options = { + host: 'www.google.com', + port: 443, + path: '/search?q=nodejs&sugexp=chrome,mod=12&sourceid=chrome&ie=UTF-8', + method: 'GET', + agent: keepaliveAgent, +}; + +const req = https.request(options, res => { + console.log('STATUS: ' + res.statusCode); + console.log('HEADERS: ' + JSON.stringify(res.headers)); + res.setEncoding('utf8'); + res.on('data', chunk => { + console.log('BODY: ' + chunk); + }); +}); + +req.on('error', e => { + console.log('problem with request: ' + e.message); +}); +req.end(); + +setTimeout(() => { + console.log('agent status: %j', keepaliveAgent.getCurrentStatus()); +}, 2000); +``` + +### Support `req.reusedSocket` + +This agent implements the `req.reusedSocket` to determine whether a request is send through a reused socket. + +When server closes connection at unfortunate time ([keep-alive race](https://code-examples.net/en/q/28a8069)), the http client will throw a `ECONNRESET` error. Under this circumstance, `req.reusedSocket` is useful when we want to retry the request automatically. + +```js +const http = require('http'); +const Agent = require('agentkeepalive'); +const agent = new Agent(); + +const req = http + .get('http://localhost:3000', { agent }, (res) => { + // ... + }) + .on('error', (err) => { + if (req.reusedSocket && err.code === 'ECONNRESET') { + // retry the request or anything else... + } + }) +``` + +This behavior is consistent with Node.js core. But through `agentkeepalive`, you can use this feature in older Node.js version. + +## [Benchmark](https://github.com/node-modules/agentkeepalive/tree/master/benchmark) + +run the benchmark: + +```bash +cd benchmark +sh start.sh +``` + +Intel(R) Core(TM)2 Duo CPU P8600 @ 2.40GHz + +node@v0.8.9 + +50 maxSockets, 60 concurrent, 1000 requests per concurrent, 5ms delay + +Keep alive agent (30 seconds): + +```js +Transactions: 60000 hits +Availability: 100.00 % +Elapsed time: 29.70 secs +Data transferred: 14.88 MB +Response time: 0.03 secs +Transaction rate: 2020.20 trans/sec +Throughput: 0.50 MB/sec +Concurrency: 59.84 +Successful transactions: 60000 +Failed transactions: 0 +Longest transaction: 0.15 +Shortest transaction: 0.01 +``` + +Normal agent: + +```js +Transactions: 60000 hits +Availability: 100.00 % +Elapsed time: 46.53 secs +Data transferred: 14.88 MB +Response time: 0.05 secs +Transaction rate: 1289.49 trans/sec +Throughput: 0.32 MB/sec +Concurrency: 59.81 +Successful transactions: 60000 +Failed transactions: 0 +Longest transaction: 0.45 +Shortest transaction: 0.00 +``` + +Socket created: + +```bash +[proxy.js:120000] keepalive, 50 created, 60000 requestFinished, 1200 req/socket, 0 requests, 0 sockets, 0 unusedSockets, 50 timeout +{" <10ms":662," <15ms":17825," <20ms":20552," <30ms":17646," <40ms":2315," <50ms":567," <100ms":377," <150ms":56," <200ms":0," >=200ms+":0} +---------------------------------------------------------------- +[proxy.js:120000] normal , 53866 created, 84260 requestFinished, 1.56 req/socket, 0 requests, 0 sockets +{" <10ms":75," <15ms":1112," <20ms":10947," <30ms":32130," <40ms":8228," <50ms":3002," <100ms":4274," <150ms":181," <200ms":18," >=200ms+":33} +``` + +## License + +[MIT](LICENSE) + +## Contributors + +[![](https://ergatejs.implements.io/badges/contributors/node-modules/agentkeepalive.svg?size=96)](https://github.com/node-modules/agentkeepalive/graphs/contributors) diff --git a/node_modules/agentkeepalive/browser.js b/node_modules/agentkeepalive/browser.js new file mode 100644 index 0000000..29c9398 --- /dev/null +++ b/node_modules/agentkeepalive/browser.js @@ -0,0 +1,5 @@ +module.exports = noop; +module.exports.HttpsAgent = noop; + +// Noop function for browser since native api's don't use agents. +function noop () {} diff --git a/node_modules/agentkeepalive/index.d.ts b/node_modules/agentkeepalive/index.d.ts new file mode 100644 index 0000000..c2ce7d2 --- /dev/null +++ b/node_modules/agentkeepalive/index.d.ts @@ -0,0 +1,62 @@ +import * as http from 'http'; +import * as https from 'https'; + +interface PlainObject { + [key: string]: any; +} + +declare class HttpAgent extends http.Agent { + constructor(opts?: AgentKeepAlive.HttpOptions); + readonly statusChanged: boolean; + createSocket(req: http.IncomingMessage, options: http.RequestOptions, cb: Function): void; + getCurrentStatus(): AgentKeepAlive.AgentStatus; +} + +interface Constants { + CURRENT_ID: Symbol; + CREATE_ID: Symbol; + INIT_SOCKET: Symbol; + CREATE_HTTPS_CONNECTION: Symbol; + SOCKET_CREATED_TIME: Symbol; + SOCKET_NAME: Symbol; + SOCKET_REQUEST_COUNT: Symbol; + SOCKET_REQUEST_FINISHED_COUNT: Symbol; +} + +declare class AgentKeepAlive extends HttpAgent {} + +declare namespace AgentKeepAlive { + export interface AgentStatus { + createSocketCount: number; + createSocketErrorCount: number; + closeSocketCount: number; + errorSocketCount: number; + timeoutSocketCount: number; + requestCount: number; + freeSockets: PlainObject; + sockets: PlainObject; + requests: PlainObject; + } + + interface CommonHttpOption { + keepAlive?: boolean | undefined; + freeSocketTimeout?: number | undefined; + freeSocketKeepAliveTimeout?: number | undefined; + timeout?: number | undefined; + socketActiveTTL?: number | undefined; + } + + export interface HttpOptions extends http.AgentOptions, CommonHttpOption { } + export interface HttpsOptions extends https.AgentOptions, CommonHttpOption { } + + export class HttpsAgent extends https.Agent { + constructor(opts?: HttpsOptions); + readonly statusChanged: boolean; + createSocket(req: http.IncomingMessage, options: http.RequestOptions, cb: Function): void; + getCurrentStatus(): AgentStatus; + } + + export const constants: Constants; +} + +export = AgentKeepAlive; diff --git a/node_modules/agentkeepalive/index.js b/node_modules/agentkeepalive/index.js new file mode 100644 index 0000000..6ca1513 --- /dev/null +++ b/node_modules/agentkeepalive/index.js @@ -0,0 +1,5 @@ +'use strict'; + +module.exports = require('./lib/agent'); +module.exports.HttpsAgent = require('./lib/https_agent'); +module.exports.constants = require('./lib/constants'); diff --git a/node_modules/agentkeepalive/lib/agent.js b/node_modules/agentkeepalive/lib/agent.js new file mode 100644 index 0000000..a7065b5 --- /dev/null +++ b/node_modules/agentkeepalive/lib/agent.js @@ -0,0 +1,398 @@ +'use strict'; + +const OriginalAgent = require('http').Agent; +const ms = require('humanize-ms'); +const debug = require('debug')('agentkeepalive'); +const deprecate = require('depd')('agentkeepalive'); +const { + INIT_SOCKET, + CURRENT_ID, + CREATE_ID, + SOCKET_CREATED_TIME, + SOCKET_NAME, + SOCKET_REQUEST_COUNT, + SOCKET_REQUEST_FINISHED_COUNT, +} = require('./constants'); + +// OriginalAgent come from +// - https://github.com/nodejs/node/blob/v8.12.0/lib/_http_agent.js +// - https://github.com/nodejs/node/blob/v10.12.0/lib/_http_agent.js + +// node <= 10 +let defaultTimeoutListenerCount = 1; +const majorVersion = parseInt(process.version.split('.', 1)[0].substring(1)); +if (majorVersion >= 11 && majorVersion <= 12) { + defaultTimeoutListenerCount = 2; +} else if (majorVersion >= 13) { + defaultTimeoutListenerCount = 3; +} + +class Agent extends OriginalAgent { + constructor(options) { + options = options || {}; + options.keepAlive = options.keepAlive !== false; + // default is keep-alive and 4s free socket timeout + // see https://medium.com/ssense-tech/reduce-networking-errors-in-nodejs-23b4eb9f2d83 + if (options.freeSocketTimeout === undefined) { + options.freeSocketTimeout = 4000; + } + // Legacy API: keepAliveTimeout should be rename to `freeSocketTimeout` + if (options.keepAliveTimeout) { + deprecate('options.keepAliveTimeout is deprecated, please use options.freeSocketTimeout instead'); + options.freeSocketTimeout = options.keepAliveTimeout; + delete options.keepAliveTimeout; + } + // Legacy API: freeSocketKeepAliveTimeout should be rename to `freeSocketTimeout` + if (options.freeSocketKeepAliveTimeout) { + deprecate('options.freeSocketKeepAliveTimeout is deprecated, please use options.freeSocketTimeout instead'); + options.freeSocketTimeout = options.freeSocketKeepAliveTimeout; + delete options.freeSocketKeepAliveTimeout; + } + + // Sets the socket to timeout after timeout milliseconds of inactivity on the socket. + // By default is double free socket timeout. + if (options.timeout === undefined) { + // make sure socket default inactivity timeout >= 8s + options.timeout = Math.max(options.freeSocketTimeout * 2, 8000); + } + + // support humanize format + options.timeout = ms(options.timeout); + options.freeSocketTimeout = ms(options.freeSocketTimeout); + options.socketActiveTTL = options.socketActiveTTL ? ms(options.socketActiveTTL) : 0; + + super(options); + + this[CURRENT_ID] = 0; + + // create socket success counter + this.createSocketCount = 0; + this.createSocketCountLastCheck = 0; + + this.createSocketErrorCount = 0; + this.createSocketErrorCountLastCheck = 0; + + this.closeSocketCount = 0; + this.closeSocketCountLastCheck = 0; + + // socket error event count + this.errorSocketCount = 0; + this.errorSocketCountLastCheck = 0; + + // request finished counter + this.requestCount = 0; + this.requestCountLastCheck = 0; + + // including free socket timeout counter + this.timeoutSocketCount = 0; + this.timeoutSocketCountLastCheck = 0; + + this.on('free', socket => { + // https://github.com/nodejs/node/pull/32000 + // Node.js native agent will check socket timeout eqs agent.options.timeout. + // Use the ttl or freeSocketTimeout to overwrite. + const timeout = this.calcSocketTimeout(socket); + if (timeout > 0 && socket.timeout !== timeout) { + socket.setTimeout(timeout); + } + }); + } + + get freeSocketKeepAliveTimeout() { + deprecate('agent.freeSocketKeepAliveTimeout is deprecated, please use agent.options.freeSocketTimeout instead'); + return this.options.freeSocketTimeout; + } + + get timeout() { + deprecate('agent.timeout is deprecated, please use agent.options.timeout instead'); + return this.options.timeout; + } + + get socketActiveTTL() { + deprecate('agent.socketActiveTTL is deprecated, please use agent.options.socketActiveTTL instead'); + return this.options.socketActiveTTL; + } + + calcSocketTimeout(socket) { + /** + * return <= 0: should free socket + * return > 0: should update socket timeout + * return undefined: not find custom timeout + */ + let freeSocketTimeout = this.options.freeSocketTimeout; + const socketActiveTTL = this.options.socketActiveTTL; + if (socketActiveTTL) { + // check socketActiveTTL + const aliveTime = Date.now() - socket[SOCKET_CREATED_TIME]; + const diff = socketActiveTTL - aliveTime; + if (diff <= 0) { + return diff; + } + if (freeSocketTimeout && diff < freeSocketTimeout) { + freeSocketTimeout = diff; + } + } + // set freeSocketTimeout + if (freeSocketTimeout) { + // set free keepalive timer + // try to use socket custom freeSocketTimeout first, support headers['keep-alive'] + // https://github.com/node-modules/urllib/blob/b76053020923f4d99a1c93cf2e16e0c5ba10bacf/lib/urllib.js#L498 + const customFreeSocketTimeout = socket.freeSocketTimeout || socket.freeSocketKeepAliveTimeout; + return customFreeSocketTimeout || freeSocketTimeout; + } + } + + keepSocketAlive(socket) { + const result = super.keepSocketAlive(socket); + // should not keepAlive, do nothing + if (!result) return result; + + const customTimeout = this.calcSocketTimeout(socket); + if (typeof customTimeout === 'undefined') { + return true; + } + if (customTimeout <= 0) { + debug('%s(requests: %s, finished: %s) free but need to destroy by TTL, request count %s, diff is %s', + socket[SOCKET_NAME], socket[SOCKET_REQUEST_COUNT], socket[SOCKET_REQUEST_FINISHED_COUNT], customTimeout); + return false; + } + if (socket.timeout !== customTimeout) { + socket.setTimeout(customTimeout); + } + return true; + } + + // only call on addRequest + reuseSocket(...args) { + // reuseSocket(socket, req) + super.reuseSocket(...args); + const socket = args[0]; + const req = args[1]; + req.reusedSocket = true; + const agentTimeout = this.options.timeout; + if (getSocketTimeout(socket) !== agentTimeout) { + // reset timeout before use + socket.setTimeout(agentTimeout); + debug('%s reset timeout to %sms', socket[SOCKET_NAME], agentTimeout); + } + socket[SOCKET_REQUEST_COUNT]++; + debug('%s(requests: %s, finished: %s) reuse on addRequest, timeout %sms', + socket[SOCKET_NAME], socket[SOCKET_REQUEST_COUNT], socket[SOCKET_REQUEST_FINISHED_COUNT], + getSocketTimeout(socket)); + } + + [CREATE_ID]() { + const id = this[CURRENT_ID]++; + if (this[CURRENT_ID] === Number.MAX_SAFE_INTEGER) this[CURRENT_ID] = 0; + return id; + } + + [INIT_SOCKET](socket, options) { + // bugfix here. + // https on node 8, 10 won't set agent.options.timeout by default + // TODO: need to fix on node itself + if (options.timeout) { + const timeout = getSocketTimeout(socket); + if (!timeout) { + socket.setTimeout(options.timeout); + } + } + + if (this.options.keepAlive) { + // Disable Nagle's algorithm: http://blog.caustik.com/2012/04/08/scaling-node-js-to-100k-concurrent-connections/ + // https://fengmk2.com/benchmark/nagle-algorithm-delayed-ack-mock.html + socket.setNoDelay(true); + } + this.createSocketCount++; + if (this.options.socketActiveTTL) { + socket[SOCKET_CREATED_TIME] = Date.now(); + } + // don't show the hole '-----BEGIN CERTIFICATE----' key string + socket[SOCKET_NAME] = `sock[${this[CREATE_ID]()}#${options._agentKey}]`.split('-----BEGIN', 1)[0]; + socket[SOCKET_REQUEST_COUNT] = 1; + socket[SOCKET_REQUEST_FINISHED_COUNT] = 0; + installListeners(this, socket, options); + } + + createConnection(options, oncreate) { + let called = false; + const onNewCreate = (err, socket) => { + if (called) return; + called = true; + + if (err) { + this.createSocketErrorCount++; + return oncreate(err); + } + this[INIT_SOCKET](socket, options); + oncreate(err, socket); + }; + + const newSocket = super.createConnection(options, onNewCreate); + if (newSocket) onNewCreate(null, newSocket); + } + + get statusChanged() { + const changed = this.createSocketCount !== this.createSocketCountLastCheck || + this.createSocketErrorCount !== this.createSocketErrorCountLastCheck || + this.closeSocketCount !== this.closeSocketCountLastCheck || + this.errorSocketCount !== this.errorSocketCountLastCheck || + this.timeoutSocketCount !== this.timeoutSocketCountLastCheck || + this.requestCount !== this.requestCountLastCheck; + if (changed) { + this.createSocketCountLastCheck = this.createSocketCount; + this.createSocketErrorCountLastCheck = this.createSocketErrorCount; + this.closeSocketCountLastCheck = this.closeSocketCount; + this.errorSocketCountLastCheck = this.errorSocketCount; + this.timeoutSocketCountLastCheck = this.timeoutSocketCount; + this.requestCountLastCheck = this.requestCount; + } + return changed; + } + + getCurrentStatus() { + return { + createSocketCount: this.createSocketCount, + createSocketErrorCount: this.createSocketErrorCount, + closeSocketCount: this.closeSocketCount, + errorSocketCount: this.errorSocketCount, + timeoutSocketCount: this.timeoutSocketCount, + requestCount: this.requestCount, + freeSockets: inspect(this.freeSockets), + sockets: inspect(this.sockets), + requests: inspect(this.requests), + }; + } +} + +// node 8 don't has timeout attribute on socket +// https://github.com/nodejs/node/pull/21204/files#diff-e6ef024c3775d787c38487a6309e491dR408 +function getSocketTimeout(socket) { + return socket.timeout || socket._idleTimeout; +} + +function installListeners(agent, socket, options) { + debug('%s create, timeout %sms', socket[SOCKET_NAME], getSocketTimeout(socket)); + + // listener socket events: close, timeout, error, free + function onFree() { + // create and socket.emit('free') logic + // https://github.com/nodejs/node/blob/master/lib/_http_agent.js#L311 + // no req on the socket, it should be the new socket + if (!socket._httpMessage && socket[SOCKET_REQUEST_COUNT] === 1) return; + + socket[SOCKET_REQUEST_FINISHED_COUNT]++; + agent.requestCount++; + debug('%s(requests: %s, finished: %s) free', + socket[SOCKET_NAME], socket[SOCKET_REQUEST_COUNT], socket[SOCKET_REQUEST_FINISHED_COUNT]); + + // should reuse on pedding requests? + const name = agent.getName(options); + if (socket.writable && agent.requests[name] && agent.requests[name].length) { + // will be reuse on agent free listener + socket[SOCKET_REQUEST_COUNT]++; + debug('%s(requests: %s, finished: %s) will be reuse on agent free event', + socket[SOCKET_NAME], socket[SOCKET_REQUEST_COUNT], socket[SOCKET_REQUEST_FINISHED_COUNT]); + } + } + socket.on('free', onFree); + + function onClose(isError) { + debug('%s(requests: %s, finished: %s) close, isError: %s', + socket[SOCKET_NAME], socket[SOCKET_REQUEST_COUNT], socket[SOCKET_REQUEST_FINISHED_COUNT], isError); + agent.closeSocketCount++; + } + socket.on('close', onClose); + + // start socket timeout handler + function onTimeout() { + // onTimeout and emitRequestTimeout(_http_client.js) + // https://github.com/nodejs/node/blob/v12.x/lib/_http_client.js#L711 + const listenerCount = socket.listeners('timeout').length; + // node <= 10, default listenerCount is 1, onTimeout + // 11 < node <= 12, default listenerCount is 2, onTimeout and emitRequestTimeout + // node >= 13, default listenerCount is 3, onTimeout, + // onTimeout(https://github.com/nodejs/node/pull/32000/files#diff-5f7fb0850412c6be189faeddea6c5359R333) + // and emitRequestTimeout + const timeout = getSocketTimeout(socket); + const req = socket._httpMessage; + const reqTimeoutListenerCount = req && req.listeners('timeout').length || 0; + debug('%s(requests: %s, finished: %s) timeout after %sms, listeners %s, defaultTimeoutListenerCount %s, hasHttpRequest %s, HttpRequest timeoutListenerCount %s', + socket[SOCKET_NAME], socket[SOCKET_REQUEST_COUNT], socket[SOCKET_REQUEST_FINISHED_COUNT], + timeout, listenerCount, defaultTimeoutListenerCount, !!req, reqTimeoutListenerCount); + if (debug.enabled) { + debug('timeout listeners: %s', socket.listeners('timeout').map(f => f.name).join(', ')); + } + agent.timeoutSocketCount++; + const name = agent.getName(options); + if (agent.freeSockets[name] && agent.freeSockets[name].indexOf(socket) !== -1) { + // free socket timeout, destroy quietly + socket.destroy(); + // Remove it from freeSockets list immediately to prevent new requests + // from being sent through this socket. + agent.removeSocket(socket, options); + debug('%s is free, destroy quietly', socket[SOCKET_NAME]); + } else { + // if there is no any request socket timeout handler, + // agent need to handle socket timeout itself. + // + // custom request socket timeout handle logic must follow these rules: + // 1. Destroy socket first + // 2. Must emit socket 'agentRemove' event tell agent remove socket + // from freeSockets list immediately. + // Otherise you may be get 'socket hang up' error when reuse + // free socket and timeout happen in the same time. + if (reqTimeoutListenerCount === 0) { + const error = new Error('Socket timeout'); + error.code = 'ERR_SOCKET_TIMEOUT'; + error.timeout = timeout; + // must manually call socket.end() or socket.destroy() to end the connection. + // https://nodejs.org/dist/latest-v10.x/docs/api/net.html#net_socket_settimeout_timeout_callback + socket.destroy(error); + agent.removeSocket(socket, options); + debug('%s destroy with timeout error', socket[SOCKET_NAME]); + } + } + } + socket.on('timeout', onTimeout); + + function onError(err) { + const listenerCount = socket.listeners('error').length; + debug('%s(requests: %s, finished: %s) error: %s, listenerCount: %s', + socket[SOCKET_NAME], socket[SOCKET_REQUEST_COUNT], socket[SOCKET_REQUEST_FINISHED_COUNT], + err, listenerCount); + agent.errorSocketCount++; + if (listenerCount === 1) { + // if socket don't contain error event handler, don't catch it, emit it again + debug('%s emit uncaught error event', socket[SOCKET_NAME]); + socket.removeListener('error', onError); + socket.emit('error', err); + } + } + socket.on('error', onError); + + function onRemove() { + debug('%s(requests: %s, finished: %s) agentRemove', + socket[SOCKET_NAME], + socket[SOCKET_REQUEST_COUNT], socket[SOCKET_REQUEST_FINISHED_COUNT]); + // We need this function for cases like HTTP 'upgrade' + // (defined by WebSockets) where we need to remove a socket from the + // pool because it'll be locked up indefinitely + socket.removeListener('close', onClose); + socket.removeListener('error', onError); + socket.removeListener('free', onFree); + socket.removeListener('timeout', onTimeout); + socket.removeListener('agentRemove', onRemove); + } + socket.on('agentRemove', onRemove); +} + +module.exports = Agent; + +function inspect(obj) { + const res = {}; + for (const key in obj) { + res[key] = obj[key].length; + } + return res; +} diff --git a/node_modules/agentkeepalive/lib/constants.js b/node_modules/agentkeepalive/lib/constants.js new file mode 100644 index 0000000..ca7ab97 --- /dev/null +++ b/node_modules/agentkeepalive/lib/constants.js @@ -0,0 +1,14 @@ +'use strict'; + +module.exports = { + // agent + CURRENT_ID: Symbol('agentkeepalive#currentId'), + CREATE_ID: Symbol('agentkeepalive#createId'), + INIT_SOCKET: Symbol('agentkeepalive#initSocket'), + CREATE_HTTPS_CONNECTION: Symbol('agentkeepalive#createHttpsConnection'), + // socket + SOCKET_CREATED_TIME: Symbol('agentkeepalive#socketCreatedTime'), + SOCKET_NAME: Symbol('agentkeepalive#socketName'), + SOCKET_REQUEST_COUNT: Symbol('agentkeepalive#socketRequestCount'), + SOCKET_REQUEST_FINISHED_COUNT: Symbol('agentkeepalive#socketRequestFinishedCount'), +}; diff --git a/node_modules/agentkeepalive/lib/https_agent.js b/node_modules/agentkeepalive/lib/https_agent.js new file mode 100644 index 0000000..73f529d --- /dev/null +++ b/node_modules/agentkeepalive/lib/https_agent.js @@ -0,0 +1,51 @@ +'use strict'; + +const OriginalHttpsAgent = require('https').Agent; +const HttpAgent = require('./agent'); +const { + INIT_SOCKET, + CREATE_HTTPS_CONNECTION, +} = require('./constants'); + +class HttpsAgent extends HttpAgent { + constructor(options) { + super(options); + + this.defaultPort = 443; + this.protocol = 'https:'; + this.maxCachedSessions = this.options.maxCachedSessions; + /* istanbul ignore next */ + if (this.maxCachedSessions === undefined) { + this.maxCachedSessions = 100; + } + + this._sessionCache = { + map: {}, + list: [], + }; + } + + createConnection(options) { + const socket = this[CREATE_HTTPS_CONNECTION](options); + this[INIT_SOCKET](socket, options); + return socket; + } +} + +// https://github.com/nodejs/node/blob/master/lib/https.js#L89 +HttpsAgent.prototype[CREATE_HTTPS_CONNECTION] = OriginalHttpsAgent.prototype.createConnection; + +[ + 'getName', + '_getSession', + '_cacheSession', + // https://github.com/nodejs/node/pull/4982 + '_evictSession', +].forEach(function(method) { + /* istanbul ignore next */ + if (typeof OriginalHttpsAgent.prototype[method] === 'function') { + HttpsAgent.prototype[method] = OriginalHttpsAgent.prototype[method]; + } +}); + +module.exports = HttpsAgent; diff --git a/node_modules/agentkeepalive/package.json b/node_modules/agentkeepalive/package.json new file mode 100644 index 0000000..efa561d --- /dev/null +++ b/node_modules/agentkeepalive/package.json @@ -0,0 +1,66 @@ +{ + "name": "agentkeepalive", + "version": "4.2.1", + "description": "Missing keepalive http.Agent", + "main": "index.js", + "browser": "browser.js", + "files": [ + "index.js", + "index.d.ts", + "browser.js", + "lib" + ], + "scripts": { + "test": "npm run lint && egg-bin test --full-trace", + "test-local": "egg-bin test --full-trace", + "cov": "cross-env DEBUG=agentkeepalive egg-bin cov --full-trace", + "ci": "npm run lint && npm run cov", + "lint": "eslint lib test index.js", + "autod": "autod" + }, + "repository": { + "type": "git", + "url": "git://github.com/node-modules/agentkeepalive.git" + }, + "bugs": { + "url": "https://github.com/node-modules/agentkeepalive/issues" + }, + "keywords": [ + "http", + "https", + "agent", + "keepalive", + "agentkeepalive", + "HttpAgent", + "HttpsAgent" + ], + "dependencies": { + "debug": "^4.1.0", + "depd": "^1.1.2", + "humanize-ms": "^1.2.1" + }, + "devDependencies": { + "autod": "^3.0.1", + "coffee": "^5.3.0", + "cross-env": "^6.0.3", + "egg-bin": "^4.9.0", + "egg-ci": "^1.10.0", + "eslint": "^5.7.0", + "eslint-config-egg": "^7.1.0", + "mm": "^2.4.1", + "pedding": "^1.1.0", + "typescript": "^3.8.3" + }, + "engines": { + "node": ">= 8.0.0" + }, + "ci": { + "type": "github", + "os": { + "github": "linux" + }, + "version": "8, 10, 12, 14, 16" + }, + "author": "fengmk2 (https://fengmk2.com)", + "license": "MIT" +} diff --git a/node_modules/aggregate-error/index.d.ts b/node_modules/aggregate-error/index.d.ts new file mode 100644 index 0000000..502bf7a --- /dev/null +++ b/node_modules/aggregate-error/index.d.ts @@ -0,0 +1,51 @@ +/** +Create an error from multiple errors. +*/ +declare class AggregateError extends Error implements Iterable { + readonly name: 'AggregateError'; + + /** + @param errors - If a string, a new `Error` is created with the string as the error message. If a non-Error object, a new `Error` is created with all properties from the object copied over. + @returns An Error that is also an [`Iterable`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Iterators_and_Generators#Iterables) for the individual errors. + + @example + ``` + import AggregateError = require('aggregate-error'); + + const error = new AggregateError([new Error('foo'), 'bar', {message: 'baz'}]); + + throw error; + + // AggregateError: + // Error: foo + // at Object. (/Users/sindresorhus/dev/aggregate-error/example.js:3:33) + // Error: bar + // at Object. (/Users/sindresorhus/dev/aggregate-error/example.js:3:13) + // Error: baz + // at Object. (/Users/sindresorhus/dev/aggregate-error/example.js:3:13) + // at AggregateError (/Users/sindresorhus/dev/aggregate-error/index.js:19:3) + // at Object. (/Users/sindresorhus/dev/aggregate-error/example.js:3:13) + // at Module._compile (module.js:556:32) + // at Object.Module._extensions..js (module.js:565:10) + // at Module.load (module.js:473:32) + // at tryModuleLoad (module.js:432:12) + // at Function.Module._load (module.js:424:3) + // at Module.runMain (module.js:590:10) + // at run (bootstrap_node.js:394:7) + // at startup (bootstrap_node.js:149:9) + + + for (const individualError of error) { + console.log(individualError); + } + //=> [Error: foo] + //=> [Error: bar] + //=> [Error: baz] + ``` + */ + constructor(errors: ReadonlyArray); + + [Symbol.iterator](): IterableIterator; +} + +export = AggregateError; diff --git a/node_modules/aggregate-error/index.js b/node_modules/aggregate-error/index.js new file mode 100644 index 0000000..ba5bf02 --- /dev/null +++ b/node_modules/aggregate-error/index.js @@ -0,0 +1,47 @@ +'use strict'; +const indentString = require('indent-string'); +const cleanStack = require('clean-stack'); + +const cleanInternalStack = stack => stack.replace(/\s+at .*aggregate-error\/index.js:\d+:\d+\)?/g, ''); + +class AggregateError extends Error { + constructor(errors) { + if (!Array.isArray(errors)) { + throw new TypeError(`Expected input to be an Array, got ${typeof errors}`); + } + + errors = [...errors].map(error => { + if (error instanceof Error) { + return error; + } + + if (error !== null && typeof error === 'object') { + // Handle plain error objects with message property and/or possibly other metadata + return Object.assign(new Error(error.message), error); + } + + return new Error(error); + }); + + let message = errors + .map(error => { + // The `stack` property is not standardized, so we can't assume it exists + return typeof error.stack === 'string' ? cleanInternalStack(cleanStack(error.stack)) : String(error); + }) + .join('\n'); + message = '\n' + indentString(message, 4); + super(message); + + this.name = 'AggregateError'; + + Object.defineProperty(this, '_errors', {value: errors}); + } + + * [Symbol.iterator]() { + for (const error of this._errors) { + yield error; + } + } +} + +module.exports = AggregateError; diff --git a/node_modules/aggregate-error/license b/node_modules/aggregate-error/license new file mode 100644 index 0000000..e7af2f7 --- /dev/null +++ b/node_modules/aggregate-error/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/aggregate-error/package.json b/node_modules/aggregate-error/package.json new file mode 100644 index 0000000..74fcc37 --- /dev/null +++ b/node_modules/aggregate-error/package.json @@ -0,0 +1,41 @@ +{ + "name": "aggregate-error", + "version": "3.1.0", + "description": "Create an error from multiple errors", + "license": "MIT", + "repository": "sindresorhus/aggregate-error", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "aggregate", + "error", + "combine", + "multiple", + "many", + "collection", + "iterable", + "iterator" + ], + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "devDependencies": { + "ava": "^2.4.0", + "tsd": "^0.7.1", + "xo": "^0.25.3" + } +} diff --git a/node_modules/aggregate-error/readme.md b/node_modules/aggregate-error/readme.md new file mode 100644 index 0000000..850de98 --- /dev/null +++ b/node_modules/aggregate-error/readme.md @@ -0,0 +1,61 @@ +# aggregate-error [![Build Status](https://travis-ci.org/sindresorhus/aggregate-error.svg?branch=master)](https://travis-ci.org/sindresorhus/aggregate-error) + +> Create an error from multiple errors + + +## Install + +``` +$ npm install aggregate-error +``` + + +## Usage + +```js +const AggregateError = require('aggregate-error'); + +const error = new AggregateError([new Error('foo'), 'bar', {message: 'baz'}]); + +throw error; +/* +AggregateError: + Error: foo + at Object. (/Users/sindresorhus/dev/aggregate-error/example.js:3:33) + Error: bar + at Object. (/Users/sindresorhus/dev/aggregate-error/example.js:3:13) + Error: baz + at Object. (/Users/sindresorhus/dev/aggregate-error/example.js:3:13) + at AggregateError (/Users/sindresorhus/dev/aggregate-error/index.js:19:3) + at Object. (/Users/sindresorhus/dev/aggregate-error/example.js:3:13) + at Module._compile (module.js:556:32) + at Object.Module._extensions..js (module.js:565:10) + at Module.load (module.js:473:32) + at tryModuleLoad (module.js:432:12) + at Function.Module._load (module.js:424:3) + at Module.runMain (module.js:590:10) + at run (bootstrap_node.js:394:7) + at startup (bootstrap_node.js:149:9) +*/ + +for (const individualError of error) { + console.log(individualError); +} +//=> [Error: foo] +//=> [Error: bar] +//=> [Error: baz] +``` + + +## API + +### AggregateError(errors) + +Returns an `Error` that is also an [`Iterable`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Iterators_and_Generators#Iterables) for the individual errors. + +#### errors + +Type: `Array` + +If a string, a new `Error` is created with the string as the error message.
+If a non-Error object, a new `Error` is created with all properties from the object copied over. diff --git a/node_modules/ajv/.tonic_example.js b/node_modules/ajv/.tonic_example.js new file mode 100644 index 0000000..aa11812 --- /dev/null +++ b/node_modules/ajv/.tonic_example.js @@ -0,0 +1,20 @@ +var Ajv = require('ajv'); +var ajv = new Ajv({allErrors: true}); + +var schema = { + "properties": { + "foo": { "type": "string" }, + "bar": { "type": "number", "maximum": 3 } + } +}; + +var validate = ajv.compile(schema); + +test({"foo": "abc", "bar": 2}); +test({"foo": 2, "bar": 4}); + +function test(data) { + var valid = validate(data); + if (valid) console.log('Valid!'); + else console.log('Invalid: ' + ajv.errorsText(validate.errors)); +} \ No newline at end of file diff --git a/node_modules/ajv/LICENSE b/node_modules/ajv/LICENSE new file mode 100644 index 0000000..96ee719 --- /dev/null +++ b/node_modules/ajv/LICENSE @@ -0,0 +1,22 @@ +The MIT License (MIT) + +Copyright (c) 2015-2017 Evgeny Poberezkin + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + diff --git a/node_modules/ajv/README.md b/node_modules/ajv/README.md new file mode 100644 index 0000000..5aa2078 --- /dev/null +++ b/node_modules/ajv/README.md @@ -0,0 +1,1497 @@ +Ajv logo + +# Ajv: Another JSON Schema Validator + +The fastest JSON Schema validator for Node.js and browser. Supports draft-04/06/07. + +[![Build Status](https://travis-ci.org/ajv-validator/ajv.svg?branch=master)](https://travis-ci.org/ajv-validator/ajv) +[![npm](https://img.shields.io/npm/v/ajv.svg)](https://www.npmjs.com/package/ajv) +[![npm (beta)](https://img.shields.io/npm/v/ajv/beta)](https://www.npmjs.com/package/ajv/v/7.0.0-beta.0) +[![npm downloads](https://img.shields.io/npm/dm/ajv.svg)](https://www.npmjs.com/package/ajv) +[![Coverage Status](https://coveralls.io/repos/github/ajv-validator/ajv/badge.svg?branch=master)](https://coveralls.io/github/ajv-validator/ajv?branch=master) +[![Gitter](https://img.shields.io/gitter/room/ajv-validator/ajv.svg)](https://gitter.im/ajv-validator/ajv) +[![GitHub Sponsors](https://img.shields.io/badge/$-sponsors-brightgreen)](https://github.com/sponsors/epoberezkin) + + +## Ajv v7 beta is released + +[Ajv version 7.0.0-beta.0](https://github.com/ajv-validator/ajv/tree/v7-beta) is released with these changes: + +- to reduce the mistakes in JSON schemas and unexpected validation results, [strict mode](./docs/strict-mode.md) is added - it prohibits ignored or ambiguous JSON Schema elements. +- to make code injection from untrusted schemas impossible, [code generation](./docs/codegen.md) is fully re-written to be safe. +- to simplify Ajv extensions, the new keyword API that is used by pre-defined keywords is available to user-defined keywords - it is much easier to define any keywords now, especially with subschemas. +- schemas are compiled to ES6 code (ES5 code generation is supported with an option). +- to improve reliability and maintainability the code is migrated to TypeScript. + +**Please note**: + +- the support for JSON-Schema draft-04 is removed - if you have schemas using "id" attributes you have to replace them with "\$id" (or continue using version 6 that will be supported until 02/28/2021). +- all formats are separated to ajv-formats package - they have to be explicitely added if you use them. + +See [release notes](https://github.com/ajv-validator/ajv/releases/tag/v7.0.0-beta.0) for the details. + +To install the new version: + +```bash +npm install ajv@beta +``` + +See [Getting started with v7](https://github.com/ajv-validator/ajv/tree/v7-beta#usage) for code example. + + +## Mozilla MOSS grant and OpenJS Foundation + +[](https://www.mozilla.org/en-US/moss/)     [](https://openjsf.org/blog/2020/08/14/ajv-joins-openjs-foundation-as-an-incubation-project/) + +Ajv has been awarded a grant from Mozilla’s [Open Source Support (MOSS) program](https://www.mozilla.org/en-US/moss/) in the “Foundational Technology” track! It will sponsor the development of Ajv support of [JSON Schema version 2019-09](https://tools.ietf.org/html/draft-handrews-json-schema-02) and of [JSON Type Definition](https://tools.ietf.org/html/draft-ucarion-json-type-definition-04). + +Ajv also joined [OpenJS Foundation](https://openjsf.org/) – having this support will help ensure the longevity and stability of Ajv for all its users. + +This [blog post](https://www.poberezkin.com/posts/2020-08-14-ajv-json-validator-mozilla-open-source-grant-openjs-foundation.html) has more details. + +I am looking for the long term maintainers of Ajv – working with [ReadySet](https://www.thereadyset.co/), also sponsored by Mozilla, to establish clear guidelines for the role of a "maintainer" and the contribution standards, and to encourage a wider, more inclusive, contribution from the community. + + +## Please [sponsor Ajv development](https://github.com/sponsors/epoberezkin) + +Since I asked to support Ajv development 40 people and 6 organizations contributed via GitHub and OpenCollective - this support helped receiving the MOSS grant! + +Your continuing support is very important - the funds will be used to develop and maintain Ajv once the next major version is released. + +Please sponsor Ajv via: +- [GitHub sponsors page](https://github.com/sponsors/epoberezkin) (GitHub will match it) +- [Ajv Open Collective️](https://opencollective.com/ajv) + +Thank you. + + +#### Open Collective sponsors + + + + + + + + + + + + + + + +## Using version 6 + +[JSON Schema draft-07](http://json-schema.org/latest/json-schema-validation.html) is published. + +[Ajv version 6.0.0](https://github.com/ajv-validator/ajv/releases/tag/v6.0.0) that supports draft-07 is released. It may require either migrating your schemas or updating your code (to continue using draft-04 and v5 schemas, draft-06 schemas will be supported without changes). + +__Please note__: To use Ajv with draft-06 schemas you need to explicitly add the meta-schema to the validator instance: + +```javascript +ajv.addMetaSchema(require('ajv/lib/refs/json-schema-draft-06.json')); +``` + +To use Ajv with draft-04 schemas in addition to explicitly adding meta-schema you also need to use option schemaId: + +```javascript +var ajv = new Ajv({schemaId: 'id'}); +// If you want to use both draft-04 and draft-06/07 schemas: +// var ajv = new Ajv({schemaId: 'auto'}); +ajv.addMetaSchema(require('ajv/lib/refs/json-schema-draft-04.json')); +``` + + +## Contents + +- [Performance](#performance) +- [Features](#features) +- [Getting started](#getting-started) +- [Frequently Asked Questions](https://github.com/ajv-validator/ajv/blob/master/FAQ.md) +- [Using in browser](#using-in-browser) + - [Ajv and Content Security Policies (CSP)](#ajv-and-content-security-policies-csp) +- [Command line interface](#command-line-interface) +- Validation + - [Keywords](#validation-keywords) + - [Annotation keywords](#annotation-keywords) + - [Formats](#formats) + - [Combining schemas with $ref](#ref) + - [$data reference](#data-reference) + - NEW: [$merge and $patch keywords](#merge-and-patch-keywords) + - [Defining custom keywords](#defining-custom-keywords) + - [Asynchronous schema compilation](#asynchronous-schema-compilation) + - [Asynchronous validation](#asynchronous-validation) +- [Security considerations](#security-considerations) + - [Security contact](#security-contact) + - [Untrusted schemas](#untrusted-schemas) + - [Circular references in objects](#circular-references-in-javascript-objects) + - [Trusted schemas](#security-risks-of-trusted-schemas) + - [ReDoS attack](#redos-attack) +- Modifying data during validation + - [Filtering data](#filtering-data) + - [Assigning defaults](#assigning-defaults) + - [Coercing data types](#coercing-data-types) +- API + - [Methods](#api) + - [Options](#options) + - [Validation errors](#validation-errors) +- [Plugins](#plugins) +- [Related packages](#related-packages) +- [Some packages using Ajv](#some-packages-using-ajv) +- [Tests, Contributing, Changes history](#tests) +- [Support, Code of conduct, License](#open-source-software-support) + + +## Performance + +Ajv generates code using [doT templates](https://github.com/olado/doT) to turn JSON Schemas into super-fast validation functions that are efficient for v8 optimization. + +Currently Ajv is the fastest and the most standard compliant validator according to these benchmarks: + +- [json-schema-benchmark](https://github.com/ebdrup/json-schema-benchmark) - 50% faster than the second place +- [jsck benchmark](https://github.com/pandastrike/jsck#benchmarks) - 20-190% faster +- [z-schema benchmark](https://rawgit.com/zaggino/z-schema/master/benchmark/results.html) +- [themis benchmark](https://cdn.rawgit.com/playlyfe/themis/master/benchmark/results.html) + + +Performance of different validators by [json-schema-benchmark](https://github.com/ebdrup/json-schema-benchmark): + +[![performance](https://chart.googleapis.com/chart?chxt=x,y&cht=bhs&chco=76A4FB&chls=2.0&chbh=32,4,1&chs=600x416&chxl=-1:|djv|ajv|json-schema-validator-generator|jsen|is-my-json-valid|themis|z-schema|jsck|skeemas|json-schema-library|tv4&chd=t:100,98,72.1,66.8,50.1,15.1,6.1,3.8,1.2,0.7,0.2)](https://github.com/ebdrup/json-schema-benchmark/blob/master/README.md#performance) + + +## Features + +- Ajv implements full JSON Schema [draft-06/07](http://json-schema.org/) and draft-04 standards: + - all validation keywords (see [JSON Schema validation keywords](https://github.com/ajv-validator/ajv/blob/master/KEYWORDS.md)) + - full support of remote refs (remote schemas have to be added with `addSchema` or compiled to be available) + - support of circular references between schemas + - correct string lengths for strings with unicode pairs (can be turned off) + - [formats](#formats) defined by JSON Schema draft-07 standard and custom formats (can be turned off) + - [validates schemas against meta-schema](#api-validateschema) +- supports [browsers](#using-in-browser) and Node.js 0.10-14.x +- [asynchronous loading](#asynchronous-schema-compilation) of referenced schemas during compilation +- "All errors" validation mode with [option allErrors](#options) +- [error messages with parameters](#validation-errors) describing error reasons to allow creating custom error messages +- i18n error messages support with [ajv-i18n](https://github.com/ajv-validator/ajv-i18n) package +- [filtering data](#filtering-data) from additional properties +- [assigning defaults](#assigning-defaults) to missing properties and items +- [coercing data](#coercing-data-types) to the types specified in `type` keywords +- [custom keywords](#defining-custom-keywords) +- draft-06/07 keywords `const`, `contains`, `propertyNames` and `if/then/else` +- draft-06 boolean schemas (`true`/`false` as a schema to always pass/fail). +- keywords `switch`, `patternRequired`, `formatMaximum` / `formatMinimum` and `formatExclusiveMaximum` / `formatExclusiveMinimum` from [JSON Schema extension proposals](https://github.com/json-schema/json-schema/wiki/v5-Proposals) with [ajv-keywords](https://github.com/ajv-validator/ajv-keywords) package +- [$data reference](#data-reference) to use values from the validated data as values for the schema keywords +- [asynchronous validation](#asynchronous-validation) of custom formats and keywords + + +## Install + +``` +npm install ajv +``` + + +## Getting started + +Try it in the Node.js REPL: https://tonicdev.com/npm/ajv + + +The fastest validation call: + +```javascript +// Node.js require: +var Ajv = require('ajv'); +// or ESM/TypeScript import +import Ajv from 'ajv'; + +var ajv = new Ajv(); // options can be passed, e.g. {allErrors: true} +var validate = ajv.compile(schema); +var valid = validate(data); +if (!valid) console.log(validate.errors); +``` + +or with less code + +```javascript +// ... +var valid = ajv.validate(schema, data); +if (!valid) console.log(ajv.errors); +// ... +``` + +or + +```javascript +// ... +var valid = ajv.addSchema(schema, 'mySchema') + .validate('mySchema', data); +if (!valid) console.log(ajv.errorsText()); +// ... +``` + +See [API](#api) and [Options](#options) for more details. + +Ajv compiles schemas to functions and caches them in all cases (using schema serialized with [fast-json-stable-stringify](https://github.com/epoberezkin/fast-json-stable-stringify) or a custom function as a key), so that the next time the same schema is used (not necessarily the same object instance) it won't be compiled again. + +The best performance is achieved when using compiled functions returned by `compile` or `getSchema` methods (there is no additional function call). + +__Please note__: every time a validation function or `ajv.validate` are called `errors` property is overwritten. You need to copy `errors` array reference to another variable if you want to use it later (e.g., in the callback). See [Validation errors](#validation-errors) + +__Note for TypeScript users__: `ajv` provides its own TypeScript declarations +out of the box, so you don't need to install the deprecated `@types/ajv` +module. + + +## Using in browser + +You can require Ajv directly from the code you browserify - in this case Ajv will be a part of your bundle. + +If you need to use Ajv in several bundles you can create a separate UMD bundle using `npm run bundle` script (thanks to [siddo420](https://github.com/siddo420)). + +Then you need to load Ajv in the browser: +```html + +``` + +This bundle can be used with different module systems; it creates global `Ajv` if no module system is found. + +The browser bundle is available on [cdnjs](https://cdnjs.com/libraries/ajv). + +Ajv is tested with these browsers: + +[![Sauce Test Status](https://saucelabs.com/browser-matrix/epoberezkin.svg)](https://saucelabs.com/u/epoberezkin) + +__Please note__: some frameworks, e.g. Dojo, may redefine global require in such way that is not compatible with CommonJS module format. In such case Ajv bundle has to be loaded before the framework and then you can use global Ajv (see issue [#234](https://github.com/ajv-validator/ajv/issues/234)). + + +### Ajv and Content Security Policies (CSP) + +If you're using Ajv to compile a schema (the typical use) in a browser document that is loaded with a Content Security Policy (CSP), that policy will require a `script-src` directive that includes the value `'unsafe-eval'`. +:warning: NOTE, however, that `unsafe-eval` is NOT recommended in a secure CSP[[1]](https://developer.chrome.com/extensions/contentSecurityPolicy#relaxing-eval), as it has the potential to open the document to cross-site scripting (XSS) attacks. + +In order to make use of Ajv without easing your CSP, you can [pre-compile a schema using the CLI](https://github.com/ajv-validator/ajv-cli#compile-schemas). This will transpile the schema JSON into a JavaScript file that exports a `validate` function that works simlarly to a schema compiled at runtime. + +Note that pre-compilation of schemas is performed using [ajv-pack](https://github.com/ajv-validator/ajv-pack) and there are [some limitations to the schema features it can compile](https://github.com/ajv-validator/ajv-pack#limitations). A successfully pre-compiled schema is equivalent to the same schema compiled at runtime. + + +## Command line interface + +CLI is available as a separate npm package [ajv-cli](https://github.com/ajv-validator/ajv-cli). It supports: + +- compiling JSON Schemas to test their validity +- BETA: generating standalone module exporting a validation function to be used without Ajv (using [ajv-pack](https://github.com/ajv-validator/ajv-pack)) +- migrate schemas to draft-07 (using [json-schema-migrate](https://github.com/epoberezkin/json-schema-migrate)) +- validating data file(s) against JSON Schema +- testing expected validity of data against JSON Schema +- referenced schemas +- custom meta-schemas +- files in JSON, JSON5, YAML, and JavaScript format +- all Ajv options +- reporting changes in data after validation in [JSON-patch](https://tools.ietf.org/html/rfc6902) format + + +## Validation keywords + +Ajv supports all validation keywords from draft-07 of JSON Schema standard: + +- [type](https://github.com/ajv-validator/ajv/blob/master/KEYWORDS.md#type) +- [for numbers](https://github.com/ajv-validator/ajv/blob/master/KEYWORDS.md#keywords-for-numbers) - maximum, minimum, exclusiveMaximum, exclusiveMinimum, multipleOf +- [for strings](https://github.com/ajv-validator/ajv/blob/master/KEYWORDS.md#keywords-for-strings) - maxLength, minLength, pattern, format +- [for arrays](https://github.com/ajv-validator/ajv/blob/master/KEYWORDS.md#keywords-for-arrays) - maxItems, minItems, uniqueItems, items, additionalItems, [contains](https://github.com/ajv-validator/ajv/blob/master/KEYWORDS.md#contains) +- [for objects](https://github.com/ajv-validator/ajv/blob/master/KEYWORDS.md#keywords-for-objects) - maxProperties, minProperties, required, properties, patternProperties, additionalProperties, dependencies, [propertyNames](https://github.com/ajv-validator/ajv/blob/master/KEYWORDS.md#propertynames) +- [for all types](https://github.com/ajv-validator/ajv/blob/master/KEYWORDS.md#keywords-for-all-types) - enum, [const](https://github.com/ajv-validator/ajv/blob/master/KEYWORDS.md#const) +- [compound keywords](https://github.com/ajv-validator/ajv/blob/master/KEYWORDS.md#compound-keywords) - not, oneOf, anyOf, allOf, [if/then/else](https://github.com/ajv-validator/ajv/blob/master/KEYWORDS.md#ifthenelse) + +With [ajv-keywords](https://github.com/ajv-validator/ajv-keywords) package Ajv also supports validation keywords from [JSON Schema extension proposals](https://github.com/json-schema/json-schema/wiki/v5-Proposals) for JSON Schema standard: + +- [patternRequired](https://github.com/ajv-validator/ajv/blob/master/KEYWORDS.md#patternrequired-proposed) - like `required` but with patterns that some property should match. +- [formatMaximum, formatMinimum, formatExclusiveMaximum, formatExclusiveMinimum](https://github.com/ajv-validator/ajv/blob/master/KEYWORDS.md#formatmaximum--formatminimum-and-exclusiveformatmaximum--exclusiveformatminimum-proposed) - setting limits for date, time, etc. + +See [JSON Schema validation keywords](https://github.com/ajv-validator/ajv/blob/master/KEYWORDS.md) for more details. + + +## Annotation keywords + +JSON Schema specification defines several annotation keywords that describe schema itself but do not perform any validation. + +- `title` and `description`: information about the data represented by that schema +- `$comment` (NEW in draft-07): information for developers. With option `$comment` Ajv logs or passes the comment string to the user-supplied function. See [Options](#options). +- `default`: a default value of the data instance, see [Assigning defaults](#assigning-defaults). +- `examples` (NEW in draft-06): an array of data instances. Ajv does not check the validity of these instances against the schema. +- `readOnly` and `writeOnly` (NEW in draft-07): marks data-instance as read-only or write-only in relation to the source of the data (database, api, etc.). +- `contentEncoding`: [RFC 2045](https://tools.ietf.org/html/rfc2045#section-6.1 ), e.g., "base64". +- `contentMediaType`: [RFC 2046](https://tools.ietf.org/html/rfc2046), e.g., "image/png". + +__Please note__: Ajv does not implement validation of the keywords `examples`, `contentEncoding` and `contentMediaType` but it reserves them. If you want to create a plugin that implements some of them, it should remove these keywords from the instance. + + +## Formats + +Ajv implements formats defined by JSON Schema specification and several other formats. It is recommended NOT to use "format" keyword implementations with untrusted data, as they use potentially unsafe regular expressions - see [ReDoS attack](#redos-attack). + +__Please note__: if you need to use "format" keyword to validate untrusted data, you MUST assess their suitability and safety for your validation scenarios. + +The following formats are implemented for string validation with "format" keyword: + +- _date_: full-date according to [RFC3339](http://tools.ietf.org/html/rfc3339#section-5.6). +- _time_: time with optional time-zone. +- _date-time_: date-time from the same source (time-zone is mandatory). `date`, `time` and `date-time` validate ranges in `full` mode and only regexp in `fast` mode (see [options](#options)). +- _uri_: full URI. +- _uri-reference_: URI reference, including full and relative URIs. +- _uri-template_: URI template according to [RFC6570](https://tools.ietf.org/html/rfc6570) +- _url_ (deprecated): [URL record](https://url.spec.whatwg.org/#concept-url). +- _email_: email address. +- _hostname_: host name according to [RFC1034](http://tools.ietf.org/html/rfc1034#section-3.5). +- _ipv4_: IP address v4. +- _ipv6_: IP address v6. +- _regex_: tests whether a string is a valid regular expression by passing it to RegExp constructor. +- _uuid_: Universally Unique IDentifier according to [RFC4122](http://tools.ietf.org/html/rfc4122). +- _json-pointer_: JSON-pointer according to [RFC6901](https://tools.ietf.org/html/rfc6901). +- _relative-json-pointer_: relative JSON-pointer according to [this draft](http://tools.ietf.org/html/draft-luff-relative-json-pointer-00). + +__Please note__: JSON Schema draft-07 also defines formats `iri`, `iri-reference`, `idn-hostname` and `idn-email` for URLs, hostnames and emails with international characters. Ajv does not implement these formats. If you create Ajv plugin that implements them please make a PR to mention this plugin here. + +There are two modes of format validation: `fast` and `full`. This mode affects formats `date`, `time`, `date-time`, `uri`, `uri-reference`, and `email`. See [Options](#options) for details. + +You can add additional formats and replace any of the formats above using [addFormat](#api-addformat) method. + +The option `unknownFormats` allows changing the default behaviour when an unknown format is encountered. In this case Ajv can either fail schema compilation (default) or ignore it (default in versions before 5.0.0). You also can allow specific format(s) that will be ignored. See [Options](#options) for details. + +You can find regular expressions used for format validation and the sources that were used in [formats.js](https://github.com/ajv-validator/ajv/blob/master/lib/compile/formats.js). + + +## Combining schemas with $ref + +You can structure your validation logic across multiple schema files and have schemas reference each other using `$ref` keyword. + +Example: + +```javascript +var schema = { + "$id": "http://example.com/schemas/schema.json", + "type": "object", + "properties": { + "foo": { "$ref": "defs.json#/definitions/int" }, + "bar": { "$ref": "defs.json#/definitions/str" } + } +}; + +var defsSchema = { + "$id": "http://example.com/schemas/defs.json", + "definitions": { + "int": { "type": "integer" }, + "str": { "type": "string" } + } +}; +``` + +Now to compile your schema you can either pass all schemas to Ajv instance: + +```javascript +var ajv = new Ajv({schemas: [schema, defsSchema]}); +var validate = ajv.getSchema('http://example.com/schemas/schema.json'); +``` + +or use `addSchema` method: + +```javascript +var ajv = new Ajv; +var validate = ajv.addSchema(defsSchema) + .compile(schema); +``` + +See [Options](#options) and [addSchema](#api) method. + +__Please note__: +- `$ref` is resolved as the uri-reference using schema $id as the base URI (see the example). +- References can be recursive (and mutually recursive) to implement the schemas for different data structures (such as linked lists, trees, graphs, etc.). +- You don't have to host your schema files at the URIs that you use as schema $id. These URIs are only used to identify the schemas, and according to JSON Schema specification validators should not expect to be able to download the schemas from these URIs. +- The actual location of the schema file in the file system is not used. +- You can pass the identifier of the schema as the second parameter of `addSchema` method or as a property name in `schemas` option. This identifier can be used instead of (or in addition to) schema $id. +- You cannot have the same $id (or the schema identifier) used for more than one schema - the exception will be thrown. +- You can implement dynamic resolution of the referenced schemas using `compileAsync` method. In this way you can store schemas in any system (files, web, database, etc.) and reference them without explicitly adding to Ajv instance. See [Asynchronous schema compilation](#asynchronous-schema-compilation). + + +## $data reference + +With `$data` option you can use values from the validated data as the values for the schema keywords. See [proposal](https://github.com/json-schema-org/json-schema-spec/issues/51) for more information about how it works. + +`$data` reference is supported in the keywords: const, enum, format, maximum/minimum, exclusiveMaximum / exclusiveMinimum, maxLength / minLength, maxItems / minItems, maxProperties / minProperties, formatMaximum / formatMinimum, formatExclusiveMaximum / formatExclusiveMinimum, multipleOf, pattern, required, uniqueItems. + +The value of "$data" should be a [JSON-pointer](https://tools.ietf.org/html/rfc6901) to the data (the root is always the top level data object, even if the $data reference is inside a referenced subschema) or a [relative JSON-pointer](http://tools.ietf.org/html/draft-luff-relative-json-pointer-00) (it is relative to the current point in data; if the $data reference is inside a referenced subschema it cannot point to the data outside of the root level for this subschema). + +Examples. + +This schema requires that the value in property `smaller` is less or equal than the value in the property larger: + +```javascript +var ajv = new Ajv({$data: true}); + +var schema = { + "properties": { + "smaller": { + "type": "number", + "maximum": { "$data": "1/larger" } + }, + "larger": { "type": "number" } + } +}; + +var validData = { + smaller: 5, + larger: 7 +}; + +ajv.validate(schema, validData); // true +``` + +This schema requires that the properties have the same format as their field names: + +```javascript +var schema = { + "additionalProperties": { + "type": "string", + "format": { "$data": "0#" } + } +}; + +var validData = { + 'date-time': '1963-06-19T08:30:06.283185Z', + email: 'joe.bloggs@example.com' +} +``` + +`$data` reference is resolved safely - it won't throw even if some property is undefined. If `$data` resolves to `undefined` the validation succeeds (with the exclusion of `const` keyword). If `$data` resolves to incorrect type (e.g. not "number" for maximum keyword) the validation fails. + + +## $merge and $patch keywords + +With the package [ajv-merge-patch](https://github.com/ajv-validator/ajv-merge-patch) you can use the keywords `$merge` and `$patch` that allow extending JSON Schemas with patches using formats [JSON Merge Patch (RFC 7396)](https://tools.ietf.org/html/rfc7396) and [JSON Patch (RFC 6902)](https://tools.ietf.org/html/rfc6902). + +To add keywords `$merge` and `$patch` to Ajv instance use this code: + +```javascript +require('ajv-merge-patch')(ajv); +``` + +Examples. + +Using `$merge`: + +```json +{ + "$merge": { + "source": { + "type": "object", + "properties": { "p": { "type": "string" } }, + "additionalProperties": false + }, + "with": { + "properties": { "q": { "type": "number" } } + } + } +} +``` + +Using `$patch`: + +```json +{ + "$patch": { + "source": { + "type": "object", + "properties": { "p": { "type": "string" } }, + "additionalProperties": false + }, + "with": [ + { "op": "add", "path": "/properties/q", "value": { "type": "number" } } + ] + } +} +``` + +The schemas above are equivalent to this schema: + +```json +{ + "type": "object", + "properties": { + "p": { "type": "string" }, + "q": { "type": "number" } + }, + "additionalProperties": false +} +``` + +The properties `source` and `with` in the keywords `$merge` and `$patch` can use absolute or relative `$ref` to point to other schemas previously added to the Ajv instance or to the fragments of the current schema. + +See the package [ajv-merge-patch](https://github.com/ajv-validator/ajv-merge-patch) for more information. + + +## Defining custom keywords + +The advantages of using custom keywords are: + +- allow creating validation scenarios that cannot be expressed using JSON Schema +- simplify your schemas +- help bringing a bigger part of the validation logic to your schemas +- make your schemas more expressive, less verbose and closer to your application domain +- implement custom data processors that modify your data (`modifying` option MUST be used in keyword definition) and/or create side effects while the data is being validated + +If a keyword is used only for side-effects and its validation result is pre-defined, use option `valid: true/false` in keyword definition to simplify both generated code (no error handling in case of `valid: true`) and your keyword functions (no need to return any validation result). + +The concerns you have to be aware of when extending JSON Schema standard with custom keywords are the portability and understanding of your schemas. You will have to support these custom keywords on other platforms and to properly document these keywords so that everybody can understand them in your schemas. + +You can define custom keywords with [addKeyword](#api-addkeyword) method. Keywords are defined on the `ajv` instance level - new instances will not have previously defined keywords. + +Ajv allows defining keywords with: +- validation function +- compilation function +- macro function +- inline compilation function that should return code (as string) that will be inlined in the currently compiled schema. + +Example. `range` and `exclusiveRange` keywords using compiled schema: + +```javascript +ajv.addKeyword('range', { + type: 'number', + compile: function (sch, parentSchema) { + var min = sch[0]; + var max = sch[1]; + + return parentSchema.exclusiveRange === true + ? function (data) { return data > min && data < max; } + : function (data) { return data >= min && data <= max; } + } +}); + +var schema = { "range": [2, 4], "exclusiveRange": true }; +var validate = ajv.compile(schema); +console.log(validate(2.01)); // true +console.log(validate(3.99)); // true +console.log(validate(2)); // false +console.log(validate(4)); // false +``` + +Several custom keywords (typeof, instanceof, range and propertyNames) are defined in [ajv-keywords](https://github.com/ajv-validator/ajv-keywords) package - they can be used for your schemas and as a starting point for your own custom keywords. + +See [Defining custom keywords](https://github.com/ajv-validator/ajv/blob/master/CUSTOM.md) for more details. + + +## Asynchronous schema compilation + +During asynchronous compilation remote references are loaded using supplied function. See `compileAsync` [method](#api-compileAsync) and `loadSchema` [option](#options). + +Example: + +```javascript +var ajv = new Ajv({ loadSchema: loadSchema }); + +ajv.compileAsync(schema).then(function (validate) { + var valid = validate(data); + // ... +}); + +function loadSchema(uri) { + return request.json(uri).then(function (res) { + if (res.statusCode >= 400) + throw new Error('Loading error: ' + res.statusCode); + return res.body; + }); +} +``` + +__Please note__: [Option](#options) `missingRefs` should NOT be set to `"ignore"` or `"fail"` for asynchronous compilation to work. + + +## Asynchronous validation + +Example in Node.js REPL: https://tonicdev.com/esp/ajv-asynchronous-validation + +You can define custom formats and keywords that perform validation asynchronously by accessing database or some other service. You should add `async: true` in the keyword or format definition (see [addFormat](#api-addformat), [addKeyword](#api-addkeyword) and [Defining custom keywords](#defining-custom-keywords)). + +If your schema uses asynchronous formats/keywords or refers to some schema that contains them it should have `"$async": true` keyword so that Ajv can compile it correctly. If asynchronous format/keyword or reference to asynchronous schema is used in the schema without `$async` keyword Ajv will throw an exception during schema compilation. + +__Please note__: all asynchronous subschemas that are referenced from the current or other schemas should have `"$async": true` keyword as well, otherwise the schema compilation will fail. + +Validation function for an asynchronous custom format/keyword should return a promise that resolves with `true` or `false` (or rejects with `new Ajv.ValidationError(errors)` if you want to return custom errors from the keyword function). + +Ajv compiles asynchronous schemas to [es7 async functions](http://tc39.github.io/ecmascript-asyncawait/) that can optionally be transpiled with [nodent](https://github.com/MatAtBread/nodent). Async functions are supported in Node.js 7+ and all modern browsers. You can also supply any other transpiler as a function via `processCode` option. See [Options](#options). + +The compiled validation function has `$async: true` property (if the schema is asynchronous), so you can differentiate these functions if you are using both synchronous and asynchronous schemas. + +Validation result will be a promise that resolves with validated data or rejects with an exception `Ajv.ValidationError` that contains the array of validation errors in `errors` property. + + +Example: + +```javascript +var ajv = new Ajv; +// require('ajv-async')(ajv); + +ajv.addKeyword('idExists', { + async: true, + type: 'number', + validate: checkIdExists +}); + + +function checkIdExists(schema, data) { + return knex(schema.table) + .select('id') + .where('id', data) + .then(function (rows) { + return !!rows.length; // true if record is found + }); +} + +var schema = { + "$async": true, + "properties": { + "userId": { + "type": "integer", + "idExists": { "table": "users" } + }, + "postId": { + "type": "integer", + "idExists": { "table": "posts" } + } + } +}; + +var validate = ajv.compile(schema); + +validate({ userId: 1, postId: 19 }) +.then(function (data) { + console.log('Data is valid', data); // { userId: 1, postId: 19 } +}) +.catch(function (err) { + if (!(err instanceof Ajv.ValidationError)) throw err; + // data is invalid + console.log('Validation errors:', err.errors); +}); +``` + +### Using transpilers with asynchronous validation functions. + +[ajv-async](https://github.com/ajv-validator/ajv-async) uses [nodent](https://github.com/MatAtBread/nodent) to transpile async functions. To use another transpiler you should separately install it (or load its bundle in the browser). + + +#### Using nodent + +```javascript +var ajv = new Ajv; +require('ajv-async')(ajv); +// in the browser if you want to load ajv-async bundle separately you can: +// window.ajvAsync(ajv); +var validate = ajv.compile(schema); // transpiled es7 async function +validate(data).then(successFunc).catch(errorFunc); +``` + + +#### Using other transpilers + +```javascript +var ajv = new Ajv({ processCode: transpileFunc }); +var validate = ajv.compile(schema); // transpiled es7 async function +validate(data).then(successFunc).catch(errorFunc); +``` + +See [Options](#options). + + +## Security considerations + +JSON Schema, if properly used, can replace data sanitisation. It doesn't replace other API security considerations. It also introduces additional security aspects to consider. + + +##### Security contact + +To report a security vulnerability, please use the +[Tidelift security contact](https://tidelift.com/security). +Tidelift will coordinate the fix and disclosure. Please do NOT report security vulnerabilities via GitHub issues. + + +##### Untrusted schemas + +Ajv treats JSON schemas as trusted as your application code. This security model is based on the most common use case, when the schemas are static and bundled together with the application. + +If your schemas are received from untrusted sources (or generated from untrusted data) there are several scenarios you need to prevent: +- compiling schemas can cause stack overflow (if they are too deep) +- compiling schemas can be slow (e.g. [#557](https://github.com/ajv-validator/ajv/issues/557)) +- validating certain data can be slow + +It is difficult to predict all the scenarios, but at the very least it may help to limit the size of untrusted schemas (e.g. limit JSON string length) and also the maximum schema object depth (that can be high for relatively small JSON strings). You also may want to mitigate slow regular expressions in `pattern` and `patternProperties` keywords. + +Regardless the measures you take, using untrusted schemas increases security risks. + + +##### Circular references in JavaScript objects + +Ajv does not support schemas and validated data that have circular references in objects. See [issue #802](https://github.com/ajv-validator/ajv/issues/802). + +An attempt to compile such schemas or validate such data would cause stack overflow (or will not complete in case of asynchronous validation). Depending on the parser you use, untrusted data can lead to circular references. + + +##### Security risks of trusted schemas + +Some keywords in JSON Schemas can lead to very slow validation for certain data. These keywords include (but may be not limited to): + +- `pattern` and `format` for large strings - in some cases using `maxLength` can help mitigate it, but certain regular expressions can lead to exponential validation time even with relatively short strings (see [ReDoS attack](#redos-attack)). +- `patternProperties` for large property names - use `propertyNames` to mitigate, but some regular expressions can have exponential evaluation time as well. +- `uniqueItems` for large non-scalar arrays - use `maxItems` to mitigate + +__Please note__: The suggestions above to prevent slow validation would only work if you do NOT use `allErrors: true` in production code (using it would continue validation after validation errors). + +You can validate your JSON schemas against [this meta-schema](https://github.com/ajv-validator/ajv/blob/master/lib/refs/json-schema-secure.json) to check that these recommendations are followed: + +```javascript +const isSchemaSecure = ajv.compile(require('ajv/lib/refs/json-schema-secure.json')); + +const schema1 = {format: 'email'}; +isSchemaSecure(schema1); // false + +const schema2 = {format: 'email', maxLength: MAX_LENGTH}; +isSchemaSecure(schema2); // true +``` + +__Please note__: following all these recommendation is not a guarantee that validation of untrusted data is safe - it can still lead to some undesirable results. + + +##### Content Security Policies (CSP) +See [Ajv and Content Security Policies (CSP)](#ajv-and-content-security-policies-csp) + + +## ReDoS attack + +Certain regular expressions can lead to the exponential evaluation time even with relatively short strings. + +Please assess the regular expressions you use in the schemas on their vulnerability to this attack - see [safe-regex](https://github.com/substack/safe-regex), for example. + +__Please note__: some formats that Ajv implements use [regular expressions](https://github.com/ajv-validator/ajv/blob/master/lib/compile/formats.js) that can be vulnerable to ReDoS attack, so if you use Ajv to validate data from untrusted sources __it is strongly recommended__ to consider the following: + +- making assessment of "format" implementations in Ajv. +- using `format: 'fast'` option that simplifies some of the regular expressions (although it does not guarantee that they are safe). +- replacing format implementations provided by Ajv with your own implementations of "format" keyword that either uses different regular expressions or another approach to format validation. Please see [addFormat](#api-addformat) method. +- disabling format validation by ignoring "format" keyword with option `format: false` + +Whatever mitigation you choose, please assume all formats provided by Ajv as potentially unsafe and make your own assessment of their suitability for your validation scenarios. + + +## Filtering data + +With [option `removeAdditional`](#options) (added by [andyscott](https://github.com/andyscott)) you can filter data during the validation. + +This option modifies original data. + +Example: + +```javascript +var ajv = new Ajv({ removeAdditional: true }); +var schema = { + "additionalProperties": false, + "properties": { + "foo": { "type": "number" }, + "bar": { + "additionalProperties": { "type": "number" }, + "properties": { + "baz": { "type": "string" } + } + } + } +} + +var data = { + "foo": 0, + "additional1": 1, // will be removed; `additionalProperties` == false + "bar": { + "baz": "abc", + "additional2": 2 // will NOT be removed; `additionalProperties` != false + }, +} + +var validate = ajv.compile(schema); + +console.log(validate(data)); // true +console.log(data); // { "foo": 0, "bar": { "baz": "abc", "additional2": 2 } +``` + +If `removeAdditional` option in the example above were `"all"` then both `additional1` and `additional2` properties would have been removed. + +If the option were `"failing"` then property `additional1` would have been removed regardless of its value and property `additional2` would have been removed only if its value were failing the schema in the inner `additionalProperties` (so in the example above it would have stayed because it passes the schema, but any non-number would have been removed). + +__Please note__: If you use `removeAdditional` option with `additionalProperties` keyword inside `anyOf`/`oneOf` keywords your validation can fail with this schema, for example: + +```json +{ + "type": "object", + "oneOf": [ + { + "properties": { + "foo": { "type": "string" } + }, + "required": [ "foo" ], + "additionalProperties": false + }, + { + "properties": { + "bar": { "type": "integer" } + }, + "required": [ "bar" ], + "additionalProperties": false + } + ] +} +``` + +The intention of the schema above is to allow objects with either the string property "foo" or the integer property "bar", but not with both and not with any other properties. + +With the option `removeAdditional: true` the validation will pass for the object `{ "foo": "abc"}` but will fail for the object `{"bar": 1}`. It happens because while the first subschema in `oneOf` is validated, the property `bar` is removed because it is an additional property according to the standard (because it is not included in `properties` keyword in the same schema). + +While this behaviour is unexpected (issues [#129](https://github.com/ajv-validator/ajv/issues/129), [#134](https://github.com/ajv-validator/ajv/issues/134)), it is correct. To have the expected behaviour (both objects are allowed and additional properties are removed) the schema has to be refactored in this way: + +```json +{ + "type": "object", + "properties": { + "foo": { "type": "string" }, + "bar": { "type": "integer" } + }, + "additionalProperties": false, + "oneOf": [ + { "required": [ "foo" ] }, + { "required": [ "bar" ] } + ] +} +``` + +The schema above is also more efficient - it will compile into a faster function. + + +## Assigning defaults + +With [option `useDefaults`](#options) Ajv will assign values from `default` keyword in the schemas of `properties` and `items` (when it is the array of schemas) to the missing properties and items. + +With the option value `"empty"` properties and items equal to `null` or `""` (empty string) will be considered missing and assigned defaults. + +This option modifies original data. + +__Please note__: the default value is inserted in the generated validation code as a literal, so the value inserted in the data will be the deep clone of the default in the schema. + + +Example 1 (`default` in `properties`): + +```javascript +var ajv = new Ajv({ useDefaults: true }); +var schema = { + "type": "object", + "properties": { + "foo": { "type": "number" }, + "bar": { "type": "string", "default": "baz" } + }, + "required": [ "foo", "bar" ] +}; + +var data = { "foo": 1 }; + +var validate = ajv.compile(schema); + +console.log(validate(data)); // true +console.log(data); // { "foo": 1, "bar": "baz" } +``` + +Example 2 (`default` in `items`): + +```javascript +var schema = { + "type": "array", + "items": [ + { "type": "number" }, + { "type": "string", "default": "foo" } + ] +} + +var data = [ 1 ]; + +var validate = ajv.compile(schema); + +console.log(validate(data)); // true +console.log(data); // [ 1, "foo" ] +``` + +`default` keywords in other cases are ignored: + +- not in `properties` or `items` subschemas +- in schemas inside `anyOf`, `oneOf` and `not` (see [#42](https://github.com/ajv-validator/ajv/issues/42)) +- in `if` subschema of `switch` keyword +- in schemas generated by custom macro keywords + +The [`strictDefaults` option](#options) customizes Ajv's behavior for the defaults that Ajv ignores (`true` raises an error, and `"log"` outputs a warning). + + +## Coercing data types + +When you are validating user inputs all your data properties are usually strings. The option `coerceTypes` allows you to have your data types coerced to the types specified in your schema `type` keywords, both to pass the validation and to use the correctly typed data afterwards. + +This option modifies original data. + +__Please note__: if you pass a scalar value to the validating function its type will be coerced and it will pass the validation, but the value of the variable you pass won't be updated because scalars are passed by value. + + +Example 1: + +```javascript +var ajv = new Ajv({ coerceTypes: true }); +var schema = { + "type": "object", + "properties": { + "foo": { "type": "number" }, + "bar": { "type": "boolean" } + }, + "required": [ "foo", "bar" ] +}; + +var data = { "foo": "1", "bar": "false" }; + +var validate = ajv.compile(schema); + +console.log(validate(data)); // true +console.log(data); // { "foo": 1, "bar": false } +``` + +Example 2 (array coercions): + +```javascript +var ajv = new Ajv({ coerceTypes: 'array' }); +var schema = { + "properties": { + "foo": { "type": "array", "items": { "type": "number" } }, + "bar": { "type": "boolean" } + } +}; + +var data = { "foo": "1", "bar": ["false"] }; + +var validate = ajv.compile(schema); + +console.log(validate(data)); // true +console.log(data); // { "foo": [1], "bar": false } +``` + +The coercion rules, as you can see from the example, are different from JavaScript both to validate user input as expected and to have the coercion reversible (to correctly validate cases where different types are defined in subschemas of "anyOf" and other compound keywords). + +See [Coercion rules](https://github.com/ajv-validator/ajv/blob/master/COERCION.md) for details. + + +## API + +##### new Ajv(Object options) -> Object + +Create Ajv instance. + + +##### .compile(Object schema) -> Function<Object data> + +Generate validating function and cache the compiled schema for future use. + +Validating function returns a boolean value. This function has properties `errors` and `schema`. Errors encountered during the last validation are assigned to `errors` property (it is assigned `null` if there was no errors). `schema` property contains the reference to the original schema. + +The schema passed to this method will be validated against meta-schema unless `validateSchema` option is false. If schema is invalid, an error will be thrown. See [options](#options). + + +##### .compileAsync(Object schema [, Boolean meta] [, Function callback]) -> Promise + +Asynchronous version of `compile` method that loads missing remote schemas using asynchronous function in `options.loadSchema`. This function returns a Promise that resolves to a validation function. An optional callback passed to `compileAsync` will be called with 2 parameters: error (or null) and validating function. The returned promise will reject (and the callback will be called with an error) when: + +- missing schema can't be loaded (`loadSchema` returns a Promise that rejects). +- a schema containing a missing reference is loaded, but the reference cannot be resolved. +- schema (or some loaded/referenced schema) is invalid. + +The function compiles schema and loads the first missing schema (or meta-schema) until all missing schemas are loaded. + +You can asynchronously compile meta-schema by passing `true` as the second parameter. + +See example in [Asynchronous compilation](#asynchronous-schema-compilation). + + +##### .validate(Object schema|String key|String ref, data) -> Boolean + +Validate data using passed schema (it will be compiled and cached). + +Instead of the schema you can use the key that was previously passed to `addSchema`, the schema id if it was present in the schema or any previously resolved reference. + +Validation errors will be available in the `errors` property of Ajv instance (`null` if there were no errors). + +__Please note__: every time this method is called the errors are overwritten so you need to copy them to another variable if you want to use them later. + +If the schema is asynchronous (has `$async` keyword on the top level) this method returns a Promise. See [Asynchronous validation](#asynchronous-validation). + + +##### .addSchema(Array<Object>|Object schema [, String key]) -> Ajv + +Add schema(s) to validator instance. This method does not compile schemas (but it still validates them). Because of that dependencies can be added in any order and circular dependencies are supported. It also prevents unnecessary compilation of schemas that are containers for other schemas but not used as a whole. + +Array of schemas can be passed (schemas should have ids), the second parameter will be ignored. + +Key can be passed that can be used to reference the schema and will be used as the schema id if there is no id inside the schema. If the key is not passed, the schema id will be used as the key. + + +Once the schema is added, it (and all the references inside it) can be referenced in other schemas and used to validate data. + +Although `addSchema` does not compile schemas, explicit compilation is not required - the schema will be compiled when it is used first time. + +By default the schema is validated against meta-schema before it is added, and if the schema does not pass validation the exception is thrown. This behaviour is controlled by `validateSchema` option. + +__Please note__: Ajv uses the [method chaining syntax](https://en.wikipedia.org/wiki/Method_chaining) for all methods with the prefix `add*` and `remove*`. +This allows you to do nice things like the following. + +```javascript +var validate = new Ajv().addSchema(schema).addFormat(name, regex).getSchema(uri); +``` + +##### .addMetaSchema(Array<Object>|Object schema [, String key]) -> Ajv + +Adds meta schema(s) that can be used to validate other schemas. That function should be used instead of `addSchema` because there may be instance options that would compile a meta schema incorrectly (at the moment it is `removeAdditional` option). + +There is no need to explicitly add draft-07 meta schema (http://json-schema.org/draft-07/schema) - it is added by default, unless option `meta` is set to `false`. You only need to use it if you have a changed meta-schema that you want to use to validate your schemas. See `validateSchema`. + + +##### .validateSchema(Object schema) -> Boolean + +Validates schema. This method should be used to validate schemas rather than `validate` due to the inconsistency of `uri` format in JSON Schema standard. + +By default this method is called automatically when the schema is added, so you rarely need to use it directly. + +If schema doesn't have `$schema` property, it is validated against draft 6 meta-schema (option `meta` should not be false). + +If schema has `$schema` property, then the schema with this id (that should be previously added) is used to validate passed schema. + +Errors will be available at `ajv.errors`. + + +##### .getSchema(String key) -> Function<Object data> + +Retrieve compiled schema previously added with `addSchema` by the key passed to `addSchema` or by its full reference (id). The returned validating function has `schema` property with the reference to the original schema. + + +##### .removeSchema([Object schema|String key|String ref|RegExp pattern]) -> Ajv + +Remove added/cached schema. Even if schema is referenced by other schemas it can be safely removed as dependent schemas have local references. + +Schema can be removed using: +- key passed to `addSchema` +- it's full reference (id) +- RegExp that should match schema id or key (meta-schemas won't be removed) +- actual schema object that will be stable-stringified to remove schema from cache + +If no parameter is passed all schemas but meta-schemas will be removed and the cache will be cleared. + + +##### .addFormat(String name, String|RegExp|Function|Object format) -> Ajv + +Add custom format to validate strings or numbers. It can also be used to replace pre-defined formats for Ajv instance. + +Strings are converted to RegExp. + +Function should return validation result as `true` or `false`. + +If object is passed it should have properties `validate`, `compare` and `async`: + +- _validate_: a string, RegExp or a function as described above. +- _compare_: an optional comparison function that accepts two strings and compares them according to the format meaning. This function is used with keywords `formatMaximum`/`formatMinimum` (defined in [ajv-keywords](https://github.com/ajv-validator/ajv-keywords) package). It should return `1` if the first value is bigger than the second value, `-1` if it is smaller and `0` if it is equal. +- _async_: an optional `true` value if `validate` is an asynchronous function; in this case it should return a promise that resolves with a value `true` or `false`. +- _type_: an optional type of data that the format applies to. It can be `"string"` (default) or `"number"` (see https://github.com/ajv-validator/ajv/issues/291#issuecomment-259923858). If the type of data is different, the validation will pass. + +Custom formats can be also added via `formats` option. + + +##### .addKeyword(String keyword, Object definition) -> Ajv + +Add custom validation keyword to Ajv instance. + +Keyword should be different from all standard JSON Schema keywords and different from previously defined keywords. There is no way to redefine keywords or to remove keyword definition from the instance. + +Keyword must start with a letter, `_` or `$`, and may continue with letters, numbers, `_`, `$`, or `-`. +It is recommended to use an application-specific prefix for keywords to avoid current and future name collisions. + +Example Keywords: +- `"xyz-example"`: valid, and uses prefix for the xyz project to avoid name collisions. +- `"example"`: valid, but not recommended as it could collide with future versions of JSON Schema etc. +- `"3-example"`: invalid as numbers are not allowed to be the first character in a keyword + +Keyword definition is an object with the following properties: + +- _type_: optional string or array of strings with data type(s) that the keyword applies to. If not present, the keyword will apply to all types. +- _validate_: validating function +- _compile_: compiling function +- _macro_: macro function +- _inline_: compiling function that returns code (as string) +- _schema_: an optional `false` value used with "validate" keyword to not pass schema +- _metaSchema_: an optional meta-schema for keyword schema +- _dependencies_: an optional list of properties that must be present in the parent schema - it will be checked during schema compilation +- _modifying_: `true` MUST be passed if keyword modifies data +- _statements_: `true` can be passed in case inline keyword generates statements (as opposed to expression) +- _valid_: pass `true`/`false` to pre-define validation result, the result returned from validation function will be ignored. This option cannot be used with macro keywords. +- _$data_: an optional `true` value to support [$data reference](#data-reference) as the value of custom keyword. The reference will be resolved at validation time. If the keyword has meta-schema it would be extended to allow $data and it will be used to validate the resolved value. Supporting $data reference requires that keyword has validating function (as the only option or in addition to compile, macro or inline function). +- _async_: an optional `true` value if the validation function is asynchronous (whether it is compiled or passed in _validate_ property); in this case it should return a promise that resolves with a value `true` or `false`. This option is ignored in case of "macro" and "inline" keywords. +- _errors_: an optional boolean or string `"full"` indicating whether keyword returns errors. If this property is not set Ajv will determine if the errors were set in case of failed validation. + +_compile_, _macro_ and _inline_ are mutually exclusive, only one should be used at a time. _validate_ can be used separately or in addition to them to support $data reference. + +__Please note__: If the keyword is validating data type that is different from the type(s) in its definition, the validation function will not be called (and expanded macro will not be used), so there is no need to check for data type inside validation function or inside schema returned by macro function (unless you want to enforce a specific type and for some reason do not want to use a separate `type` keyword for that). In the same way as standard keywords work, if the keyword does not apply to the data type being validated, the validation of this keyword will succeed. + +See [Defining custom keywords](#defining-custom-keywords) for more details. + + +##### .getKeyword(String keyword) -> Object|Boolean + +Returns custom keyword definition, `true` for pre-defined keywords and `false` if the keyword is unknown. + + +##### .removeKeyword(String keyword) -> Ajv + +Removes custom or pre-defined keyword so you can redefine them. + +While this method can be used to extend pre-defined keywords, it can also be used to completely change their meaning - it may lead to unexpected results. + +__Please note__: schemas compiled before the keyword is removed will continue to work without changes. To recompile schemas use `removeSchema` method and compile them again. + + +##### .errorsText([Array<Object> errors [, Object options]]) -> String + +Returns the text with all errors in a String. + +Options can have properties `separator` (string used to separate errors, ", " by default) and `dataVar` (the variable name that dataPaths are prefixed with, "data" by default). + + +## Options + +Defaults: + +```javascript +{ + // validation and reporting options: + $data: false, + allErrors: false, + verbose: false, + $comment: false, // NEW in Ajv version 6.0 + jsonPointers: false, + uniqueItems: true, + unicode: true, + nullable: false, + format: 'fast', + formats: {}, + unknownFormats: true, + schemas: {}, + logger: undefined, + // referenced schema options: + schemaId: '$id', + missingRefs: true, + extendRefs: 'ignore', // recommended 'fail' + loadSchema: undefined, // function(uri: string): Promise {} + // options to modify validated data: + removeAdditional: false, + useDefaults: false, + coerceTypes: false, + // strict mode options + strictDefaults: false, + strictKeywords: false, + strictNumbers: false, + // asynchronous validation options: + transpile: undefined, // requires ajv-async package + // advanced options: + meta: true, + validateSchema: true, + addUsedSchema: true, + inlineRefs: true, + passContext: false, + loopRequired: Infinity, + ownProperties: false, + multipleOfPrecision: false, + errorDataPath: 'object', // deprecated + messages: true, + sourceCode: false, + processCode: undefined, // function (str: string, schema: object): string {} + cache: new Cache, + serialize: undefined +} +``` + +##### Validation and reporting options + +- _$data_: support [$data references](#data-reference). Draft 6 meta-schema that is added by default will be extended to allow them. If you want to use another meta-schema you need to use $dataMetaSchema method to add support for $data reference. See [API](#api). +- _allErrors_: check all rules collecting all errors. Default is to return after the first error. +- _verbose_: include the reference to the part of the schema (`schema` and `parentSchema`) and validated data in errors (false by default). +- _$comment_ (NEW in Ajv version 6.0): log or pass the value of `$comment` keyword to a function. Option values: + - `false` (default): ignore $comment keyword. + - `true`: log the keyword value to console. + - function: pass the keyword value, its schema path and root schema to the specified function +- _jsonPointers_: set `dataPath` property of errors using [JSON Pointers](https://tools.ietf.org/html/rfc6901) instead of JavaScript property access notation. +- _uniqueItems_: validate `uniqueItems` keyword (true by default). +- _unicode_: calculate correct length of strings with unicode pairs (true by default). Pass `false` to use `.length` of strings that is faster, but gives "incorrect" lengths of strings with unicode pairs - each unicode pair is counted as two characters. +- _nullable_: support keyword "nullable" from [Open API 3 specification](https://swagger.io/docs/specification/data-models/data-types/). +- _format_: formats validation mode. Option values: + - `"fast"` (default) - simplified and fast validation (see [Formats](#formats) for details of which formats are available and affected by this option). + - `"full"` - more restrictive and slow validation. E.g., 25:00:00 and 2015/14/33 will be invalid time and date in 'full' mode but it will be valid in 'fast' mode. + - `false` - ignore all format keywords. +- _formats_: an object with custom formats. Keys and values will be passed to `addFormat` method. +- _keywords_: an object with custom keywords. Keys and values will be passed to `addKeyword` method. +- _unknownFormats_: handling of unknown formats. Option values: + - `true` (default) - if an unknown format is encountered the exception is thrown during schema compilation. If `format` keyword value is [$data reference](#data-reference) and it is unknown the validation will fail. + - `[String]` - an array of unknown format names that will be ignored. This option can be used to allow usage of third party schemas with format(s) for which you don't have definitions, but still fail if another unknown format is used. If `format` keyword value is [$data reference](#data-reference) and it is not in this array the validation will fail. + - `"ignore"` - to log warning during schema compilation and always pass validation (the default behaviour in versions before 5.0.0). This option is not recommended, as it allows to mistype format name and it won't be validated without any error message. This behaviour is required by JSON Schema specification. +- _schemas_: an array or object of schemas that will be added to the instance. In case you pass the array the schemas must have IDs in them. When the object is passed the method `addSchema(value, key)` will be called for each schema in this object. +- _logger_: sets the logging method. Default is the global `console` object that should have methods `log`, `warn` and `error`. See [Error logging](#error-logging). Option values: + - custom logger - it should have methods `log`, `warn` and `error`. If any of these methods is missing an exception will be thrown. + - `false` - logging is disabled. + + +##### Referenced schema options + +- _schemaId_: this option defines which keywords are used as schema URI. Option value: + - `"$id"` (default) - only use `$id` keyword as schema URI (as specified in JSON Schema draft-06/07), ignore `id` keyword (if it is present a warning will be logged). + - `"id"` - only use `id` keyword as schema URI (as specified in JSON Schema draft-04), ignore `$id` keyword (if it is present a warning will be logged). + - `"auto"` - use both `$id` and `id` keywords as schema URI. If both are present (in the same schema object) and different the exception will be thrown during schema compilation. +- _missingRefs_: handling of missing referenced schemas. Option values: + - `true` (default) - if the reference cannot be resolved during compilation the exception is thrown. The thrown error has properties `missingRef` (with hash fragment) and `missingSchema` (without it). Both properties are resolved relative to the current base id (usually schema id, unless it was substituted). + - `"ignore"` - to log error during compilation and always pass validation. + - `"fail"` - to log error and successfully compile schema but fail validation if this rule is checked. +- _extendRefs_: validation of other keywords when `$ref` is present in the schema. Option values: + - `"ignore"` (default) - when `$ref` is used other keywords are ignored (as per [JSON Reference](https://tools.ietf.org/html/draft-pbryan-zyp-json-ref-03#section-3) standard). A warning will be logged during the schema compilation. + - `"fail"` (recommended) - if other validation keywords are used together with `$ref` the exception will be thrown when the schema is compiled. This option is recommended to make sure schema has no keywords that are ignored, which can be confusing. + - `true` - validate all keywords in the schemas with `$ref` (the default behaviour in versions before 5.0.0). +- _loadSchema_: asynchronous function that will be used to load remote schemas when `compileAsync` [method](#api-compileAsync) is used and some reference is missing (option `missingRefs` should NOT be 'fail' or 'ignore'). This function should accept remote schema uri as a parameter and return a Promise that resolves to a schema. See example in [Asynchronous compilation](#asynchronous-schema-compilation). + + +##### Options to modify validated data + +- _removeAdditional_: remove additional properties - see example in [Filtering data](#filtering-data). This option is not used if schema is added with `addMetaSchema` method. Option values: + - `false` (default) - not to remove additional properties + - `"all"` - all additional properties are removed, regardless of `additionalProperties` keyword in schema (and no validation is made for them). + - `true` - only additional properties with `additionalProperties` keyword equal to `false` are removed. + - `"failing"` - additional properties that fail schema validation will be removed (where `additionalProperties` keyword is `false` or schema). +- _useDefaults_: replace missing or undefined properties and items with the values from corresponding `default` keywords. Default behaviour is to ignore `default` keywords. This option is not used if schema is added with `addMetaSchema` method. See examples in [Assigning defaults](#assigning-defaults). Option values: + - `false` (default) - do not use defaults + - `true` - insert defaults by value (object literal is used). + - `"empty"` - in addition to missing or undefined, use defaults for properties and items that are equal to `null` or `""` (an empty string). + - `"shared"` (deprecated) - insert defaults by reference. If the default is an object, it will be shared by all instances of validated data. If you modify the inserted default in the validated data, it will be modified in the schema as well. +- _coerceTypes_: change data type of data to match `type` keyword. See the example in [Coercing data types](#coercing-data-types) and [coercion rules](https://github.com/ajv-validator/ajv/blob/master/COERCION.md). Option values: + - `false` (default) - no type coercion. + - `true` - coerce scalar data types. + - `"array"` - in addition to coercions between scalar types, coerce scalar data to an array with one element and vice versa (as required by the schema). + + +##### Strict mode options + +- _strictDefaults_: report ignored `default` keywords in schemas. Option values: + - `false` (default) - ignored defaults are not reported + - `true` - if an ignored default is present, throw an error + - `"log"` - if an ignored default is present, log warning +- _strictKeywords_: report unknown keywords in schemas. Option values: + - `false` (default) - unknown keywords are not reported + - `true` - if an unknown keyword is present, throw an error + - `"log"` - if an unknown keyword is present, log warning +- _strictNumbers_: validate numbers strictly, failing validation for NaN and Infinity. Option values: + - `false` (default) - NaN or Infinity will pass validation for numeric types + - `true` - NaN or Infinity will not pass validation for numeric types + +##### Asynchronous validation options + +- _transpile_: Requires [ajv-async](https://github.com/ajv-validator/ajv-async) package. It determines whether Ajv transpiles compiled asynchronous validation function. Option values: + - `undefined` (default) - transpile with [nodent](https://github.com/MatAtBread/nodent) if async functions are not supported. + - `true` - always transpile with nodent. + - `false` - do not transpile; if async functions are not supported an exception will be thrown. + + +##### Advanced options + +- _meta_: add [meta-schema](http://json-schema.org/documentation.html) so it can be used by other schemas (true by default). If an object is passed, it will be used as the default meta-schema for schemas that have no `$schema` keyword. This default meta-schema MUST have `$schema` keyword. +- _validateSchema_: validate added/compiled schemas against meta-schema (true by default). `$schema` property in the schema can be http://json-schema.org/draft-07/schema or absent (draft-07 meta-schema will be used) or can be a reference to the schema previously added with `addMetaSchema` method. Option values: + - `true` (default) - if the validation fails, throw the exception. + - `"log"` - if the validation fails, log error. + - `false` - skip schema validation. +- _addUsedSchema_: by default methods `compile` and `validate` add schemas to the instance if they have `$id` (or `id`) property that doesn't start with "#". If `$id` is present and it is not unique the exception will be thrown. Set this option to `false` to skip adding schemas to the instance and the `$id` uniqueness check when these methods are used. This option does not affect `addSchema` method. +- _inlineRefs_: Affects compilation of referenced schemas. Option values: + - `true` (default) - the referenced schemas that don't have refs in them are inlined, regardless of their size - that substantially improves performance at the cost of the bigger size of compiled schema functions. + - `false` - to not inline referenced schemas (they will be compiled as separate functions). + - integer number - to limit the maximum number of keywords of the schema that will be inlined. +- _passContext_: pass validation context to custom keyword functions. If this option is `true` and you pass some context to the compiled validation function with `validate.call(context, data)`, the `context` will be available as `this` in your custom keywords. By default `this` is Ajv instance. +- _loopRequired_: by default `required` keyword is compiled into a single expression (or a sequence of statements in `allErrors` mode). In case of a very large number of properties in this keyword it may result in a very big validation function. Pass integer to set the number of properties above which `required` keyword will be validated in a loop - smaller validation function size but also worse performance. +- _ownProperties_: by default Ajv iterates over all enumerable object properties; when this option is `true` only own enumerable object properties (i.e. found directly on the object rather than on its prototype) are iterated. Contributed by @mbroadst. +- _multipleOfPrecision_: by default `multipleOf` keyword is validated by comparing the result of division with parseInt() of that result. It works for dividers that are bigger than 1. For small dividers such as 0.01 the result of the division is usually not integer (even when it should be integer, see issue [#84](https://github.com/ajv-validator/ajv/issues/84)). If you need to use fractional dividers set this option to some positive integer N to have `multipleOf` validated using this formula: `Math.abs(Math.round(division) - division) < 1e-N` (it is slower but allows for float arithmetics deviations). +- _errorDataPath_ (deprecated): set `dataPath` to point to 'object' (default) or to 'property' when validating keywords `required`, `additionalProperties` and `dependencies`. +- _messages_: Include human-readable messages in errors. `true` by default. `false` can be passed when custom messages are used (e.g. with [ajv-i18n](https://github.com/ajv-validator/ajv-i18n)). +- _sourceCode_: add `sourceCode` property to validating function (for debugging; this code can be different from the result of toString call). +- _processCode_: an optional function to process generated code before it is passed to Function constructor. It can be used to either beautify (the validating function is generated without line-breaks) or to transpile code. Starting from version 5.0.0 this option replaced options: + - `beautify` that formatted the generated function using [js-beautify](https://github.com/beautify-web/js-beautify). If you want to beautify the generated code pass a function calling `require('js-beautify').js_beautify` as `processCode: code => js_beautify(code)`. + - `transpile` that transpiled asynchronous validation function. You can still use `transpile` option with [ajv-async](https://github.com/ajv-validator/ajv-async) package. See [Asynchronous validation](#asynchronous-validation) for more information. +- _cache_: an optional instance of cache to store compiled schemas using stable-stringified schema as a key. For example, set-associative cache [sacjs](https://github.com/epoberezkin/sacjs) can be used. If not passed then a simple hash is used which is good enough for the common use case (a limited number of statically defined schemas). Cache should have methods `put(key, value)`, `get(key)`, `del(key)` and `clear()`. +- _serialize_: an optional function to serialize schema to cache key. Pass `false` to use schema itself as a key (e.g., if WeakMap used as a cache). By default [fast-json-stable-stringify](https://github.com/epoberezkin/fast-json-stable-stringify) is used. + + +## Validation errors + +In case of validation failure, Ajv assigns the array of errors to `errors` property of validation function (or to `errors` property of Ajv instance when `validate` or `validateSchema` methods were called). In case of [asynchronous validation](#asynchronous-validation), the returned promise is rejected with exception `Ajv.ValidationError` that has `errors` property. + + +### Error objects + +Each error is an object with the following properties: + +- _keyword_: validation keyword. +- _dataPath_: the path to the part of the data that was validated. By default `dataPath` uses JavaScript property access notation (e.g., `".prop[1].subProp"`). When the option `jsonPointers` is true (see [Options](#options)) `dataPath` will be set using JSON pointer standard (e.g., `"/prop/1/subProp"`). +- _schemaPath_: the path (JSON-pointer as a URI fragment) to the schema of the keyword that failed validation. +- _params_: the object with the additional information about error that can be used to create custom error messages (e.g., using [ajv-i18n](https://github.com/ajv-validator/ajv-i18n) package). See below for parameters set by all keywords. +- _message_: the standard error message (can be excluded with option `messages` set to false). +- _schema_: the schema of the keyword (added with `verbose` option). +- _parentSchema_: the schema containing the keyword (added with `verbose` option) +- _data_: the data validated by the keyword (added with `verbose` option). + +__Please note__: `propertyNames` keyword schema validation errors have an additional property `propertyName`, `dataPath` points to the object. After schema validation for each property name, if it is invalid an additional error is added with the property `keyword` equal to `"propertyNames"`. + + +### Error parameters + +Properties of `params` object in errors depend on the keyword that failed validation. + +- `maxItems`, `minItems`, `maxLength`, `minLength`, `maxProperties`, `minProperties` - property `limit` (number, the schema of the keyword). +- `additionalItems` - property `limit` (the maximum number of allowed items in case when `items` keyword is an array of schemas and `additionalItems` is false). +- `additionalProperties` - property `additionalProperty` (the property not used in `properties` and `patternProperties` keywords). +- `dependencies` - properties: + - `property` (dependent property), + - `missingProperty` (required missing dependency - only the first one is reported currently) + - `deps` (required dependencies, comma separated list as a string), + - `depsCount` (the number of required dependencies). +- `format` - property `format` (the schema of the keyword). +- `maximum`, `minimum` - properties: + - `limit` (number, the schema of the keyword), + - `exclusive` (boolean, the schema of `exclusiveMaximum` or `exclusiveMinimum`), + - `comparison` (string, comparison operation to compare the data to the limit, with the data on the left and the limit on the right; can be "<", "<=", ">", ">=") +- `multipleOf` - property `multipleOf` (the schema of the keyword) +- `pattern` - property `pattern` (the schema of the keyword) +- `required` - property `missingProperty` (required property that is missing). +- `propertyNames` - property `propertyName` (an invalid property name). +- `patternRequired` (in ajv-keywords) - property `missingPattern` (required pattern that did not match any property). +- `type` - property `type` (required type(s), a string, can be a comma-separated list) +- `uniqueItems` - properties `i` and `j` (indices of duplicate items). +- `const` - property `allowedValue` pointing to the value (the schema of the keyword). +- `enum` - property `allowedValues` pointing to the array of values (the schema of the keyword). +- `$ref` - property `ref` with the referenced schema URI. +- `oneOf` - property `passingSchemas` (array of indices of passing schemas, null if no schema passes). +- custom keywords (in case keyword definition doesn't create errors) - property `keyword` (the keyword name). + + +### Error logging + +Using the `logger` option when initiallizing Ajv will allow you to define custom logging. Here you can build upon the exisiting logging. The use of other logging packages is supported as long as the package or its associated wrapper exposes the required methods. If any of the required methods are missing an exception will be thrown. +- **Required Methods**: `log`, `warn`, `error` + +```javascript +var otherLogger = new OtherLogger(); +var ajv = new Ajv({ + logger: { + log: console.log.bind(console), + warn: function warn() { + otherLogger.logWarn.apply(otherLogger, arguments); + }, + error: function error() { + otherLogger.logError.apply(otherLogger, arguments); + console.error.apply(console, arguments); + } + } +}); +``` + + +## Plugins + +Ajv can be extended with plugins that add custom keywords, formats or functions to process generated code. When such plugin is published as npm package it is recommended that it follows these conventions: + +- it exports a function +- this function accepts ajv instance as the first parameter and returns the same instance to allow chaining +- this function can accept an optional configuration as the second parameter + +If you have published a useful plugin please submit a PR to add it to the next section. + + +## Related packages + +- [ajv-async](https://github.com/ajv-validator/ajv-async) - plugin to configure async validation mode +- [ajv-bsontype](https://github.com/BoLaMN/ajv-bsontype) - plugin to validate mongodb's bsonType formats +- [ajv-cli](https://github.com/jessedc/ajv-cli) - command line interface +- [ajv-errors](https://github.com/ajv-validator/ajv-errors) - plugin for custom error messages +- [ajv-i18n](https://github.com/ajv-validator/ajv-i18n) - internationalised error messages +- [ajv-istanbul](https://github.com/ajv-validator/ajv-istanbul) - plugin to instrument generated validation code to measure test coverage of your schemas +- [ajv-keywords](https://github.com/ajv-validator/ajv-keywords) - plugin with custom validation keywords (select, typeof, etc.) +- [ajv-merge-patch](https://github.com/ajv-validator/ajv-merge-patch) - plugin with keywords $merge and $patch +- [ajv-pack](https://github.com/ajv-validator/ajv-pack) - produces a compact module exporting validation functions +- [ajv-formats-draft2019](https://github.com/luzlab/ajv-formats-draft2019) - format validators for draft2019 that aren't already included in ajv (ie. `idn-hostname`, `idn-email`, `iri`, `iri-reference` and `duration`). + +## Some packages using Ajv + +- [webpack](https://github.com/webpack/webpack) - a module bundler. Its main purpose is to bundle JavaScript files for usage in a browser +- [jsonscript-js](https://github.com/JSONScript/jsonscript-js) - the interpreter for [JSONScript](http://www.jsonscript.org) - scripted processing of existing endpoints and services +- [osprey-method-handler](https://github.com/mulesoft-labs/osprey-method-handler) - Express middleware for validating requests and responses based on a RAML method object, used in [osprey](https://github.com/mulesoft/osprey) - validating API proxy generated from a RAML definition +- [har-validator](https://github.com/ahmadnassri/har-validator) - HTTP Archive (HAR) validator +- [jsoneditor](https://github.com/josdejong/jsoneditor) - a web-based tool to view, edit, format, and validate JSON http://jsoneditoronline.org +- [JSON Schema Lint](https://github.com/nickcmaynard/jsonschemalint) - a web tool to validate JSON/YAML document against a single JSON Schema http://jsonschemalint.com +- [objection](https://github.com/vincit/objection.js) - SQL-friendly ORM for Node.js +- [table](https://github.com/gajus/table) - formats data into a string table +- [ripple-lib](https://github.com/ripple/ripple-lib) - a JavaScript API for interacting with [Ripple](https://ripple.com) in Node.js and the browser +- [restbase](https://github.com/wikimedia/restbase) - distributed storage with REST API & dispatcher for backend services built to provide a low-latency & high-throughput API for Wikipedia / Wikimedia content +- [hippie-swagger](https://github.com/CacheControl/hippie-swagger) - [Hippie](https://github.com/vesln/hippie) wrapper that provides end to end API testing with swagger validation +- [react-form-controlled](https://github.com/seeden/react-form-controlled) - React controlled form components with validation +- [rabbitmq-schema](https://github.com/tjmehta/rabbitmq-schema) - a schema definition module for RabbitMQ graphs and messages +- [@query/schema](https://www.npmjs.com/package/@query/schema) - stream filtering with a URI-safe query syntax parsing to JSON Schema +- [chai-ajv-json-schema](https://github.com/peon374/chai-ajv-json-schema) - chai plugin to us JSON Schema with expect in mocha tests +- [grunt-jsonschema-ajv](https://github.com/SignpostMarv/grunt-jsonschema-ajv) - Grunt plugin for validating files against JSON Schema +- [extract-text-webpack-plugin](https://github.com/webpack-contrib/extract-text-webpack-plugin) - extract text from bundle into a file +- [electron-builder](https://github.com/electron-userland/electron-builder) - a solution to package and build a ready for distribution Electron app +- [addons-linter](https://github.com/mozilla/addons-linter) - Mozilla Add-ons Linter +- [gh-pages-generator](https://github.com/epoberezkin/gh-pages-generator) - multi-page site generator converting markdown files to GitHub pages +- [ESLint](https://github.com/eslint/eslint) - the pluggable linting utility for JavaScript and JSX + + +## Tests + +``` +npm install +git submodule update --init +npm test +``` + +## Contributing + +All validation functions are generated using doT templates in [dot](https://github.com/ajv-validator/ajv/tree/master/lib/dot) folder. Templates are precompiled so doT is not a run-time dependency. + +`npm run build` - compiles templates to [dotjs](https://github.com/ajv-validator/ajv/tree/master/lib/dotjs) folder. + +`npm run watch` - automatically compiles templates when files in dot folder change + +Please see [Contributing guidelines](https://github.com/ajv-validator/ajv/blob/master/CONTRIBUTING.md) + + +## Changes history + +See https://github.com/ajv-validator/ajv/releases + +__Please note__: [Changes in version 7.0.0-beta](https://github.com/ajv-validator/ajv/releases/tag/v7.0.0-beta.0) + +[Version 6.0.0](https://github.com/ajv-validator/ajv/releases/tag/v6.0.0). + +## Code of conduct + +Please review and follow the [Code of conduct](https://github.com/ajv-validator/ajv/blob/master/CODE_OF_CONDUCT.md). + +Please report any unacceptable behaviour to ajv.validator@gmail.com - it will be reviewed by the project team. + + +## Open-source software support + +Ajv is a part of [Tidelift subscription](https://tidelift.com/subscription/pkg/npm-ajv?utm_source=npm-ajv&utm_medium=referral&utm_campaign=readme) - it provides a centralised support to open-source software users, in addition to the support provided by software maintainers. + + +## License + +[MIT](https://github.com/ajv-validator/ajv/blob/master/LICENSE) diff --git a/node_modules/ajv/dist/ajv.bundle.js b/node_modules/ajv/dist/ajv.bundle.js new file mode 100644 index 0000000..e4d9d15 --- /dev/null +++ b/node_modules/ajv/dist/ajv.bundle.js @@ -0,0 +1,7189 @@ +(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.Ajv = f()}})(function(){var define,module,exports;return (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i; +// For the source: https://gist.github.com/dperini/729294 +// For test cases: https://mathiasbynens.be/demo/url-regex +// @todo Delete current URL in favour of the commented out URL rule when this issue is fixed https://github.com/eslint/eslint/issues/7983. +// var URL = /^(?:(?:https?|ftp):\/\/)(?:\S+(?::\S*)?@)?(?:(?!10(?:\.\d{1,3}){3})(?!127(?:\.\d{1,3}){3})(?!169\.254(?:\.\d{1,3}){2})(?!192\.168(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u{00a1}-\u{ffff}0-9]+-)*[a-z\u{00a1}-\u{ffff}0-9]+)(?:\.(?:[a-z\u{00a1}-\u{ffff}0-9]+-)*[a-z\u{00a1}-\u{ffff}0-9]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu; +var URL = /^(?:(?:http[s\u017F]?|ftp):\/\/)(?:(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+(?::(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*)?@)?(?:(?!10(?:\.[0-9]{1,3}){3})(?!127(?:\.[0-9]{1,3}){3})(?!169\.254(?:\.[0-9]{1,3}){2})(?!192\.168(?:\.[0-9]{1,3}){2})(?!172\.(?:1[6-9]|2[0-9]|3[01])(?:\.[0-9]{1,3}){2})(?:[1-9][0-9]?|1[0-9][0-9]|2[01][0-9]|22[0-3])(?:\.(?:1?[0-9]{1,2}|2[0-4][0-9]|25[0-5])){2}(?:\.(?:[1-9][0-9]?|1[0-9][0-9]|2[0-4][0-9]|25[0-4]))|(?:(?:(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+-)*(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+)(?:\.(?:(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+-)*(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+)*(?:\.(?:(?:[a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]){2,})))(?::[0-9]{2,5})?(?:\/(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*)?$/i; +var UUID = /^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i; +var JSON_POINTER = /^(?:\/(?:[^~/]|~0|~1)*)*$/; +var JSON_POINTER_URI_FRAGMENT = /^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i; +var RELATIVE_JSON_POINTER = /^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/; + + +module.exports = formats; + +function formats(mode) { + mode = mode == 'full' ? 'full' : 'fast'; + return util.copy(formats[mode]); +} + + +formats.fast = { + // date: http://tools.ietf.org/html/rfc3339#section-5.6 + date: /^\d\d\d\d-[0-1]\d-[0-3]\d$/, + // date-time: http://tools.ietf.org/html/rfc3339#section-5.6 + time: /^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i, + 'date-time': /^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i, + // uri: https://github.com/mafintosh/is-my-json-valid/blob/master/formats.js + uri: /^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i, + 'uri-reference': /^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i, + 'uri-template': URITEMPLATE, + url: URL, + // email (sources from jsen validator): + // http://stackoverflow.com/questions/201323/using-a-regular-expression-to-validate-an-email-address#answer-8829363 + // http://www.w3.org/TR/html5/forms.html#valid-e-mail-address (search for 'willful violation') + email: /^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i, + hostname: HOSTNAME, + // optimized https://www.safaribooksonline.com/library/view/regular-expressions-cookbook/9780596802837/ch07s16.html + ipv4: /^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/, + // optimized http://stackoverflow.com/questions/53497/regular-expression-that-matches-valid-ipv6-addresses + ipv6: /^\s*(?:(?:(?:[0-9a-f]{1,4}:){7}(?:[0-9a-f]{1,4}|:))|(?:(?:[0-9a-f]{1,4}:){6}(?::[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){5}(?:(?:(?::[0-9a-f]{1,4}){1,2})|:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){4}(?:(?:(?::[0-9a-f]{1,4}){1,3})|(?:(?::[0-9a-f]{1,4})?:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){3}(?:(?:(?::[0-9a-f]{1,4}){1,4})|(?:(?::[0-9a-f]{1,4}){0,2}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){2}(?:(?:(?::[0-9a-f]{1,4}){1,5})|(?:(?::[0-9a-f]{1,4}){0,3}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){1}(?:(?:(?::[0-9a-f]{1,4}){1,6})|(?:(?::[0-9a-f]{1,4}){0,4}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?::(?:(?:(?::[0-9a-f]{1,4}){1,7})|(?:(?::[0-9a-f]{1,4}){0,5}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(?:%.+)?\s*$/i, + regex: regex, + // uuid: http://tools.ietf.org/html/rfc4122 + uuid: UUID, + // JSON-pointer: https://tools.ietf.org/html/rfc6901 + // uri fragment: https://tools.ietf.org/html/rfc3986#appendix-A + 'json-pointer': JSON_POINTER, + 'json-pointer-uri-fragment': JSON_POINTER_URI_FRAGMENT, + // relative JSON-pointer: http://tools.ietf.org/html/draft-luff-relative-json-pointer-00 + 'relative-json-pointer': RELATIVE_JSON_POINTER +}; + + +formats.full = { + date: date, + time: time, + 'date-time': date_time, + uri: uri, + 'uri-reference': URIREF, + 'uri-template': URITEMPLATE, + url: URL, + email: /^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i, + hostname: HOSTNAME, + ipv4: /^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/, + ipv6: /^\s*(?:(?:(?:[0-9a-f]{1,4}:){7}(?:[0-9a-f]{1,4}|:))|(?:(?:[0-9a-f]{1,4}:){6}(?::[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){5}(?:(?:(?::[0-9a-f]{1,4}){1,2})|:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){4}(?:(?:(?::[0-9a-f]{1,4}){1,3})|(?:(?::[0-9a-f]{1,4})?:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){3}(?:(?:(?::[0-9a-f]{1,4}){1,4})|(?:(?::[0-9a-f]{1,4}){0,2}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){2}(?:(?:(?::[0-9a-f]{1,4}){1,5})|(?:(?::[0-9a-f]{1,4}){0,3}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){1}(?:(?:(?::[0-9a-f]{1,4}){1,6})|(?:(?::[0-9a-f]{1,4}){0,4}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?::(?:(?:(?::[0-9a-f]{1,4}){1,7})|(?:(?::[0-9a-f]{1,4}){0,5}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(?:%.+)?\s*$/i, + regex: regex, + uuid: UUID, + 'json-pointer': JSON_POINTER, + 'json-pointer-uri-fragment': JSON_POINTER_URI_FRAGMENT, + 'relative-json-pointer': RELATIVE_JSON_POINTER +}; + + +function isLeapYear(year) { + // https://tools.ietf.org/html/rfc3339#appendix-C + return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0); +} + + +function date(str) { + // full-date from http://tools.ietf.org/html/rfc3339#section-5.6 + var matches = str.match(DATE); + if (!matches) return false; + + var year = +matches[1]; + var month = +matches[2]; + var day = +matches[3]; + + return month >= 1 && month <= 12 && day >= 1 && + day <= (month == 2 && isLeapYear(year) ? 29 : DAYS[month]); +} + + +function time(str, full) { + var matches = str.match(TIME); + if (!matches) return false; + + var hour = matches[1]; + var minute = matches[2]; + var second = matches[3]; + var timeZone = matches[5]; + return ((hour <= 23 && minute <= 59 && second <= 59) || + (hour == 23 && minute == 59 && second == 60)) && + (!full || timeZone); +} + + +var DATE_TIME_SEPARATOR = /t|\s/i; +function date_time(str) { + // http://tools.ietf.org/html/rfc3339#section-5.6 + var dateTime = str.split(DATE_TIME_SEPARATOR); + return dateTime.length == 2 && date(dateTime[0]) && time(dateTime[1], true); +} + + +var NOT_URI_FRAGMENT = /\/|:/; +function uri(str) { + // http://jmrware.com/articles/2009/uri_regexp/URI_regex.html + optional protocol + required "." + return NOT_URI_FRAGMENT.test(str) && URI.test(str); +} + + +var Z_ANCHOR = /[^\\]\\Z/; +function regex(str) { + if (Z_ANCHOR.test(str)) return false; + try { + new RegExp(str); + return true; + } catch(e) { + return false; + } +} + +},{"./util":10}],5:[function(require,module,exports){ +'use strict'; + +var resolve = require('./resolve') + , util = require('./util') + , errorClasses = require('./error_classes') + , stableStringify = require('fast-json-stable-stringify'); + +var validateGenerator = require('../dotjs/validate'); + +/** + * Functions below are used inside compiled validations function + */ + +var ucs2length = util.ucs2length; +var equal = require('fast-deep-equal'); + +// this error is thrown by async schemas to return validation errors via exception +var ValidationError = errorClasses.Validation; + +module.exports = compile; + + +/** + * Compiles schema to validation function + * @this Ajv + * @param {Object} schema schema object + * @param {Object} root object with information about the root schema for this schema + * @param {Object} localRefs the hash of local references inside the schema (created by resolve.id), used for inline resolution + * @param {String} baseId base ID for IDs in the schema + * @return {Function} validation function + */ +function compile(schema, root, localRefs, baseId) { + /* jshint validthis: true, evil: true */ + /* eslint no-shadow: 0 */ + var self = this + , opts = this._opts + , refVal = [ undefined ] + , refs = {} + , patterns = [] + , patternsHash = {} + , defaults = [] + , defaultsHash = {} + , customRules = []; + + root = root || { schema: schema, refVal: refVal, refs: refs }; + + var c = checkCompiling.call(this, schema, root, baseId); + var compilation = this._compilations[c.index]; + if (c.compiling) return (compilation.callValidate = callValidate); + + var formats = this._formats; + var RULES = this.RULES; + + try { + var v = localCompile(schema, root, localRefs, baseId); + compilation.validate = v; + var cv = compilation.callValidate; + if (cv) { + cv.schema = v.schema; + cv.errors = null; + cv.refs = v.refs; + cv.refVal = v.refVal; + cv.root = v.root; + cv.$async = v.$async; + if (opts.sourceCode) cv.source = v.source; + } + return v; + } finally { + endCompiling.call(this, schema, root, baseId); + } + + /* @this {*} - custom context, see passContext option */ + function callValidate() { + /* jshint validthis: true */ + var validate = compilation.validate; + var result = validate.apply(this, arguments); + callValidate.errors = validate.errors; + return result; + } + + function localCompile(_schema, _root, localRefs, baseId) { + var isRoot = !_root || (_root && _root.schema == _schema); + if (_root.schema != root.schema) + return compile.call(self, _schema, _root, localRefs, baseId); + + var $async = _schema.$async === true; + + var sourceCode = validateGenerator({ + isTop: true, + schema: _schema, + isRoot: isRoot, + baseId: baseId, + root: _root, + schemaPath: '', + errSchemaPath: '#', + errorPath: '""', + MissingRefError: errorClasses.MissingRef, + RULES: RULES, + validate: validateGenerator, + util: util, + resolve: resolve, + resolveRef: resolveRef, + usePattern: usePattern, + useDefault: useDefault, + useCustomRule: useCustomRule, + opts: opts, + formats: formats, + logger: self.logger, + self: self + }); + + sourceCode = vars(refVal, refValCode) + vars(patterns, patternCode) + + vars(defaults, defaultCode) + vars(customRules, customRuleCode) + + sourceCode; + + if (opts.processCode) sourceCode = opts.processCode(sourceCode, _schema); + // console.log('\n\n\n *** \n', JSON.stringify(sourceCode)); + var validate; + try { + var makeValidate = new Function( + 'self', + 'RULES', + 'formats', + 'root', + 'refVal', + 'defaults', + 'customRules', + 'equal', + 'ucs2length', + 'ValidationError', + sourceCode + ); + + validate = makeValidate( + self, + RULES, + formats, + root, + refVal, + defaults, + customRules, + equal, + ucs2length, + ValidationError + ); + + refVal[0] = validate; + } catch(e) { + self.logger.error('Error compiling schema, function code:', sourceCode); + throw e; + } + + validate.schema = _schema; + validate.errors = null; + validate.refs = refs; + validate.refVal = refVal; + validate.root = isRoot ? validate : _root; + if ($async) validate.$async = true; + if (opts.sourceCode === true) { + validate.source = { + code: sourceCode, + patterns: patterns, + defaults: defaults + }; + } + + return validate; + } + + function resolveRef(baseId, ref, isRoot) { + ref = resolve.url(baseId, ref); + var refIndex = refs[ref]; + var _refVal, refCode; + if (refIndex !== undefined) { + _refVal = refVal[refIndex]; + refCode = 'refVal[' + refIndex + ']'; + return resolvedRef(_refVal, refCode); + } + if (!isRoot && root.refs) { + var rootRefId = root.refs[ref]; + if (rootRefId !== undefined) { + _refVal = root.refVal[rootRefId]; + refCode = addLocalRef(ref, _refVal); + return resolvedRef(_refVal, refCode); + } + } + + refCode = addLocalRef(ref); + var v = resolve.call(self, localCompile, root, ref); + if (v === undefined) { + var localSchema = localRefs && localRefs[ref]; + if (localSchema) { + v = resolve.inlineRef(localSchema, opts.inlineRefs) + ? localSchema + : compile.call(self, localSchema, root, localRefs, baseId); + } + } + + if (v === undefined) { + removeLocalRef(ref); + } else { + replaceLocalRef(ref, v); + return resolvedRef(v, refCode); + } + } + + function addLocalRef(ref, v) { + var refId = refVal.length; + refVal[refId] = v; + refs[ref] = refId; + return 'refVal' + refId; + } + + function removeLocalRef(ref) { + delete refs[ref]; + } + + function replaceLocalRef(ref, v) { + var refId = refs[ref]; + refVal[refId] = v; + } + + function resolvedRef(refVal, code) { + return typeof refVal == 'object' || typeof refVal == 'boolean' + ? { code: code, schema: refVal, inline: true } + : { code: code, $async: refVal && !!refVal.$async }; + } + + function usePattern(regexStr) { + var index = patternsHash[regexStr]; + if (index === undefined) { + index = patternsHash[regexStr] = patterns.length; + patterns[index] = regexStr; + } + return 'pattern' + index; + } + + function useDefault(value) { + switch (typeof value) { + case 'boolean': + case 'number': + return '' + value; + case 'string': + return util.toQuotedString(value); + case 'object': + if (value === null) return 'null'; + var valueStr = stableStringify(value); + var index = defaultsHash[valueStr]; + if (index === undefined) { + index = defaultsHash[valueStr] = defaults.length; + defaults[index] = value; + } + return 'default' + index; + } + } + + function useCustomRule(rule, schema, parentSchema, it) { + if (self._opts.validateSchema !== false) { + var deps = rule.definition.dependencies; + if (deps && !deps.every(function(keyword) { + return Object.prototype.hasOwnProperty.call(parentSchema, keyword); + })) + throw new Error('parent schema must have all required keywords: ' + deps.join(',')); + + var validateSchema = rule.definition.validateSchema; + if (validateSchema) { + var valid = validateSchema(schema); + if (!valid) { + var message = 'keyword schema is invalid: ' + self.errorsText(validateSchema.errors); + if (self._opts.validateSchema == 'log') self.logger.error(message); + else throw new Error(message); + } + } + } + + var compile = rule.definition.compile + , inline = rule.definition.inline + , macro = rule.definition.macro; + + var validate; + if (compile) { + validate = compile.call(self, schema, parentSchema, it); + } else if (macro) { + validate = macro.call(self, schema, parentSchema, it); + if (opts.validateSchema !== false) self.validateSchema(validate, true); + } else if (inline) { + validate = inline.call(self, it, rule.keyword, schema, parentSchema); + } else { + validate = rule.definition.validate; + if (!validate) return; + } + + if (validate === undefined) + throw new Error('custom keyword "' + rule.keyword + '"failed to compile'); + + var index = customRules.length; + customRules[index] = validate; + + return { + code: 'customRule' + index, + validate: validate + }; + } +} + + +/** + * Checks if the schema is currently compiled + * @this Ajv + * @param {Object} schema schema to compile + * @param {Object} root root object + * @param {String} baseId base schema ID + * @return {Object} object with properties "index" (compilation index) and "compiling" (boolean) + */ +function checkCompiling(schema, root, baseId) { + /* jshint validthis: true */ + var index = compIndex.call(this, schema, root, baseId); + if (index >= 0) return { index: index, compiling: true }; + index = this._compilations.length; + this._compilations[index] = { + schema: schema, + root: root, + baseId: baseId + }; + return { index: index, compiling: false }; +} + + +/** + * Removes the schema from the currently compiled list + * @this Ajv + * @param {Object} schema schema to compile + * @param {Object} root root object + * @param {String} baseId base schema ID + */ +function endCompiling(schema, root, baseId) { + /* jshint validthis: true */ + var i = compIndex.call(this, schema, root, baseId); + if (i >= 0) this._compilations.splice(i, 1); +} + + +/** + * Index of schema compilation in the currently compiled list + * @this Ajv + * @param {Object} schema schema to compile + * @param {Object} root root object + * @param {String} baseId base schema ID + * @return {Integer} compilation index + */ +function compIndex(schema, root, baseId) { + /* jshint validthis: true */ + for (var i=0; i= 0xD800 && value <= 0xDBFF && pos < len) { + // high surrogate, and there is a next character + value = str.charCodeAt(pos); + if ((value & 0xFC00) == 0xDC00) pos++; // low surrogate + } + } + return length; +}; + +},{}],10:[function(require,module,exports){ +'use strict'; + + +module.exports = { + copy: copy, + checkDataType: checkDataType, + checkDataTypes: checkDataTypes, + coerceToTypes: coerceToTypes, + toHash: toHash, + getProperty: getProperty, + escapeQuotes: escapeQuotes, + equal: require('fast-deep-equal'), + ucs2length: require('./ucs2length'), + varOccurences: varOccurences, + varReplace: varReplace, + schemaHasRules: schemaHasRules, + schemaHasRulesExcept: schemaHasRulesExcept, + schemaUnknownRules: schemaUnknownRules, + toQuotedString: toQuotedString, + getPathExpr: getPathExpr, + getPath: getPath, + getData: getData, + unescapeFragment: unescapeFragment, + unescapeJsonPointer: unescapeJsonPointer, + escapeFragment: escapeFragment, + escapeJsonPointer: escapeJsonPointer +}; + + +function copy(o, to) { + to = to || {}; + for (var key in o) to[key] = o[key]; + return to; +} + + +function checkDataType(dataType, data, strictNumbers, negate) { + var EQUAL = negate ? ' !== ' : ' === ' + , AND = negate ? ' || ' : ' && ' + , OK = negate ? '!' : '' + , NOT = negate ? '' : '!'; + switch (dataType) { + case 'null': return data + EQUAL + 'null'; + case 'array': return OK + 'Array.isArray(' + data + ')'; + case 'object': return '(' + OK + data + AND + + 'typeof ' + data + EQUAL + '"object"' + AND + + NOT + 'Array.isArray(' + data + '))'; + case 'integer': return '(typeof ' + data + EQUAL + '"number"' + AND + + NOT + '(' + data + ' % 1)' + + AND + data + EQUAL + data + + (strictNumbers ? (AND + OK + 'isFinite(' + data + ')') : '') + ')'; + case 'number': return '(typeof ' + data + EQUAL + '"' + dataType + '"' + + (strictNumbers ? (AND + OK + 'isFinite(' + data + ')') : '') + ')'; + default: return 'typeof ' + data + EQUAL + '"' + dataType + '"'; + } +} + + +function checkDataTypes(dataTypes, data, strictNumbers) { + switch (dataTypes.length) { + case 1: return checkDataType(dataTypes[0], data, strictNumbers, true); + default: + var code = ''; + var types = toHash(dataTypes); + if (types.array && types.object) { + code = types.null ? '(': '(!' + data + ' || '; + code += 'typeof ' + data + ' !== "object")'; + delete types.null; + delete types.array; + delete types.object; + } + if (types.number) delete types.integer; + for (var t in types) + code += (code ? ' && ' : '' ) + checkDataType(t, data, strictNumbers, true); + + return code; + } +} + + +var COERCE_TO_TYPES = toHash([ 'string', 'number', 'integer', 'boolean', 'null' ]); +function coerceToTypes(optionCoerceTypes, dataTypes) { + if (Array.isArray(dataTypes)) { + var types = []; + for (var i=0; i= lvl) throw new Error('Cannot access property/index ' + up + ' levels up, current level is ' + lvl); + return paths[lvl - up]; + } + + if (up > lvl) throw new Error('Cannot access data ' + up + ' levels up, current level is ' + lvl); + data = 'data' + ((lvl - up) || ''); + if (!jsonPointer) return data; + } + + var expr = data; + var segments = jsonPointer.split('/'); + for (var i=0; i', + $notOp = $isMax ? '>' : '<', + $errorKeyword = undefined; + if (!($isData || typeof $schema == 'number' || $schema === undefined)) { + throw new Error($keyword + ' must be number'); + } + if (!($isDataExcl || $schemaExcl === undefined || typeof $schemaExcl == 'number' || typeof $schemaExcl == 'boolean')) { + throw new Error($exclusiveKeyword + ' must be number or boolean'); + } + if ($isDataExcl) { + var $schemaValueExcl = it.util.getData($schemaExcl.$data, $dataLvl, it.dataPathArr), + $exclusive = 'exclusive' + $lvl, + $exclType = 'exclType' + $lvl, + $exclIsNumber = 'exclIsNumber' + $lvl, + $opExpr = 'op' + $lvl, + $opStr = '\' + ' + $opExpr + ' + \''; + out += ' var schemaExcl' + ($lvl) + ' = ' + ($schemaValueExcl) + '; '; + $schemaValueExcl = 'schemaExcl' + $lvl; + out += ' var ' + ($exclusive) + '; var ' + ($exclType) + ' = typeof ' + ($schemaValueExcl) + '; if (' + ($exclType) + ' != \'boolean\' && ' + ($exclType) + ' != \'undefined\' && ' + ($exclType) + ' != \'number\') { '; + var $errorKeyword = $exclusiveKeyword; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ($errorKeyword || '_exclusiveLimit') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: {} '; + if (it.opts.messages !== false) { + out += ' , message: \'' + ($exclusiveKeyword) + ' should be boolean\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += ' } else if ( '; + if ($isData) { + out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \'number\') || '; + } + out += ' ' + ($exclType) + ' == \'number\' ? ( (' + ($exclusive) + ' = ' + ($schemaValue) + ' === undefined || ' + ($schemaValueExcl) + ' ' + ($op) + '= ' + ($schemaValue) + ') ? ' + ($data) + ' ' + ($notOp) + '= ' + ($schemaValueExcl) + ' : ' + ($data) + ' ' + ($notOp) + ' ' + ($schemaValue) + ' ) : ( (' + ($exclusive) + ' = ' + ($schemaValueExcl) + ' === true) ? ' + ($data) + ' ' + ($notOp) + '= ' + ($schemaValue) + ' : ' + ($data) + ' ' + ($notOp) + ' ' + ($schemaValue) + ' ) || ' + ($data) + ' !== ' + ($data) + ') { var op' + ($lvl) + ' = ' + ($exclusive) + ' ? \'' + ($op) + '\' : \'' + ($op) + '=\'; '; + if ($schema === undefined) { + $errorKeyword = $exclusiveKeyword; + $errSchemaPath = it.errSchemaPath + '/' + $exclusiveKeyword; + $schemaValue = $schemaValueExcl; + $isData = $isDataExcl; + } + } else { + var $exclIsNumber = typeof $schemaExcl == 'number', + $opStr = $op; + if ($exclIsNumber && $isData) { + var $opExpr = '\'' + $opStr + '\''; + out += ' if ( '; + if ($isData) { + out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \'number\') || '; + } + out += ' ( ' + ($schemaValue) + ' === undefined || ' + ($schemaExcl) + ' ' + ($op) + '= ' + ($schemaValue) + ' ? ' + ($data) + ' ' + ($notOp) + '= ' + ($schemaExcl) + ' : ' + ($data) + ' ' + ($notOp) + ' ' + ($schemaValue) + ' ) || ' + ($data) + ' !== ' + ($data) + ') { '; + } else { + if ($exclIsNumber && $schema === undefined) { + $exclusive = true; + $errorKeyword = $exclusiveKeyword; + $errSchemaPath = it.errSchemaPath + '/' + $exclusiveKeyword; + $schemaValue = $schemaExcl; + $notOp += '='; + } else { + if ($exclIsNumber) $schemaValue = Math[$isMax ? 'min' : 'max']($schemaExcl, $schema); + if ($schemaExcl === ($exclIsNumber ? $schemaValue : true)) { + $exclusive = true; + $errorKeyword = $exclusiveKeyword; + $errSchemaPath = it.errSchemaPath + '/' + $exclusiveKeyword; + $notOp += '='; + } else { + $exclusive = false; + $opStr += '='; + } + } + var $opExpr = '\'' + $opStr + '\''; + out += ' if ( '; + if ($isData) { + out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \'number\') || '; + } + out += ' ' + ($data) + ' ' + ($notOp) + ' ' + ($schemaValue) + ' || ' + ($data) + ' !== ' + ($data) + ') { '; + } + } + $errorKeyword = $errorKeyword || $keyword; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ($errorKeyword || '_limit') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { comparison: ' + ($opExpr) + ', limit: ' + ($schemaValue) + ', exclusive: ' + ($exclusive) + ' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should be ' + ($opStr) + ' '; + if ($isData) { + out += '\' + ' + ($schemaValue); + } else { + out += '' + ($schemaValue) + '\''; + } + } + if (it.opts.verbose) { + out += ' , schema: '; + if ($isData) { + out += 'validate.schema' + ($schemaPath); + } else { + out += '' + ($schema); + } + out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += ' } '; + if ($breakOnError) { + out += ' else { '; + } + return out; +} + +},{}],14:[function(require,module,exports){ +'use strict'; +module.exports = function generate__limitItems(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $errorKeyword; + var $data = 'data' + ($dataLvl || ''); + var $isData = it.opts.$data && $schema && $schema.$data, + $schemaValue; + if ($isData) { + out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; '; + $schemaValue = 'schema' + $lvl; + } else { + $schemaValue = $schema; + } + if (!($isData || typeof $schema == 'number')) { + throw new Error($keyword + ' must be number'); + } + var $op = $keyword == 'maxItems' ? '>' : '<'; + out += 'if ( '; + if ($isData) { + out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \'number\') || '; + } + out += ' ' + ($data) + '.length ' + ($op) + ' ' + ($schemaValue) + ') { '; + var $errorKeyword = $keyword; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ($errorKeyword || '_limitItems') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { limit: ' + ($schemaValue) + ' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should NOT have '; + if ($keyword == 'maxItems') { + out += 'more'; + } else { + out += 'fewer'; + } + out += ' than '; + if ($isData) { + out += '\' + ' + ($schemaValue) + ' + \''; + } else { + out += '' + ($schema); + } + out += ' items\' '; + } + if (it.opts.verbose) { + out += ' , schema: '; + if ($isData) { + out += 'validate.schema' + ($schemaPath); + } else { + out += '' + ($schema); + } + out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += '} '; + if ($breakOnError) { + out += ' else { '; + } + return out; +} + +},{}],15:[function(require,module,exports){ +'use strict'; +module.exports = function generate__limitLength(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $errorKeyword; + var $data = 'data' + ($dataLvl || ''); + var $isData = it.opts.$data && $schema && $schema.$data, + $schemaValue; + if ($isData) { + out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; '; + $schemaValue = 'schema' + $lvl; + } else { + $schemaValue = $schema; + } + if (!($isData || typeof $schema == 'number')) { + throw new Error($keyword + ' must be number'); + } + var $op = $keyword == 'maxLength' ? '>' : '<'; + out += 'if ( '; + if ($isData) { + out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \'number\') || '; + } + if (it.opts.unicode === false) { + out += ' ' + ($data) + '.length '; + } else { + out += ' ucs2length(' + ($data) + ') '; + } + out += ' ' + ($op) + ' ' + ($schemaValue) + ') { '; + var $errorKeyword = $keyword; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ($errorKeyword || '_limitLength') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { limit: ' + ($schemaValue) + ' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should NOT be '; + if ($keyword == 'maxLength') { + out += 'longer'; + } else { + out += 'shorter'; + } + out += ' than '; + if ($isData) { + out += '\' + ' + ($schemaValue) + ' + \''; + } else { + out += '' + ($schema); + } + out += ' characters\' '; + } + if (it.opts.verbose) { + out += ' , schema: '; + if ($isData) { + out += 'validate.schema' + ($schemaPath); + } else { + out += '' + ($schema); + } + out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += '} '; + if ($breakOnError) { + out += ' else { '; + } + return out; +} + +},{}],16:[function(require,module,exports){ +'use strict'; +module.exports = function generate__limitProperties(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $errorKeyword; + var $data = 'data' + ($dataLvl || ''); + var $isData = it.opts.$data && $schema && $schema.$data, + $schemaValue; + if ($isData) { + out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; '; + $schemaValue = 'schema' + $lvl; + } else { + $schemaValue = $schema; + } + if (!($isData || typeof $schema == 'number')) { + throw new Error($keyword + ' must be number'); + } + var $op = $keyword == 'maxProperties' ? '>' : '<'; + out += 'if ( '; + if ($isData) { + out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \'number\') || '; + } + out += ' Object.keys(' + ($data) + ').length ' + ($op) + ' ' + ($schemaValue) + ') { '; + var $errorKeyword = $keyword; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ($errorKeyword || '_limitProperties') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { limit: ' + ($schemaValue) + ' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should NOT have '; + if ($keyword == 'maxProperties') { + out += 'more'; + } else { + out += 'fewer'; + } + out += ' than '; + if ($isData) { + out += '\' + ' + ($schemaValue) + ' + \''; + } else { + out += '' + ($schema); + } + out += ' properties\' '; + } + if (it.opts.verbose) { + out += ' , schema: '; + if ($isData) { + out += 'validate.schema' + ($schemaPath); + } else { + out += '' + ($schema); + } + out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += '} '; + if ($breakOnError) { + out += ' else { '; + } + return out; +} + +},{}],17:[function(require,module,exports){ +'use strict'; +module.exports = function generate_allOf(it, $keyword, $ruleType) { + var out = ' '; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $it = it.util.copy(it); + var $closingBraces = ''; + $it.level++; + var $nextValid = 'valid' + $it.level; + var $currentBaseId = $it.baseId, + $allSchemasEmpty = true; + var arr1 = $schema; + if (arr1) { + var $sch, $i = -1, + l1 = arr1.length - 1; + while ($i < l1) { + $sch = arr1[$i += 1]; + if ((it.opts.strictKeywords ? (typeof $sch == 'object' && Object.keys($sch).length > 0) || $sch === false : it.util.schemaHasRules($sch, it.RULES.all))) { + $allSchemasEmpty = false; + $it.schema = $sch; + $it.schemaPath = $schemaPath + '[' + $i + ']'; + $it.errSchemaPath = $errSchemaPath + '/' + $i; + out += ' ' + (it.validate($it)) + ' '; + $it.baseId = $currentBaseId; + if ($breakOnError) { + out += ' if (' + ($nextValid) + ') { '; + $closingBraces += '}'; + } + } + } + } + if ($breakOnError) { + if ($allSchemasEmpty) { + out += ' if (true) { '; + } else { + out += ' ' + ($closingBraces.slice(0, -1)) + ' '; + } + } + return out; +} + +},{}],18:[function(require,module,exports){ +'use strict'; +module.exports = function generate_anyOf(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $data = 'data' + ($dataLvl || ''); + var $valid = 'valid' + $lvl; + var $errs = 'errs__' + $lvl; + var $it = it.util.copy(it); + var $closingBraces = ''; + $it.level++; + var $nextValid = 'valid' + $it.level; + var $noEmptySchema = $schema.every(function($sch) { + return (it.opts.strictKeywords ? (typeof $sch == 'object' && Object.keys($sch).length > 0) || $sch === false : it.util.schemaHasRules($sch, it.RULES.all)); + }); + if ($noEmptySchema) { + var $currentBaseId = $it.baseId; + out += ' var ' + ($errs) + ' = errors; var ' + ($valid) + ' = false; '; + var $wasComposite = it.compositeRule; + it.compositeRule = $it.compositeRule = true; + var arr1 = $schema; + if (arr1) { + var $sch, $i = -1, + l1 = arr1.length - 1; + while ($i < l1) { + $sch = arr1[$i += 1]; + $it.schema = $sch; + $it.schemaPath = $schemaPath + '[' + $i + ']'; + $it.errSchemaPath = $errSchemaPath + '/' + $i; + out += ' ' + (it.validate($it)) + ' '; + $it.baseId = $currentBaseId; + out += ' ' + ($valid) + ' = ' + ($valid) + ' || ' + ($nextValid) + '; if (!' + ($valid) + ') { '; + $closingBraces += '}'; + } + } + it.compositeRule = $it.compositeRule = $wasComposite; + out += ' ' + ($closingBraces) + ' if (!' + ($valid) + ') { var err = '; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('anyOf') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: {} '; + if (it.opts.messages !== false) { + out += ' , message: \'should match some schema in anyOf\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + out += '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError(vErrors); '; + } else { + out += ' validate.errors = vErrors; return false; '; + } + } + out += ' } else { errors = ' + ($errs) + '; if (vErrors !== null) { if (' + ($errs) + ') vErrors.length = ' + ($errs) + '; else vErrors = null; } '; + if (it.opts.allErrors) { + out += ' } '; + } + } else { + if ($breakOnError) { + out += ' if (true) { '; + } + } + return out; +} + +},{}],19:[function(require,module,exports){ +'use strict'; +module.exports = function generate_comment(it, $keyword, $ruleType) { + var out = ' '; + var $schema = it.schema[$keyword]; + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $comment = it.util.toQuotedString($schema); + if (it.opts.$comment === true) { + out += ' console.log(' + ($comment) + ');'; + } else if (typeof it.opts.$comment == 'function') { + out += ' self._opts.$comment(' + ($comment) + ', ' + (it.util.toQuotedString($errSchemaPath)) + ', validate.root.schema);'; + } + return out; +} + +},{}],20:[function(require,module,exports){ +'use strict'; +module.exports = function generate_const(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $data = 'data' + ($dataLvl || ''); + var $valid = 'valid' + $lvl; + var $isData = it.opts.$data && $schema && $schema.$data, + $schemaValue; + if ($isData) { + out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; '; + $schemaValue = 'schema' + $lvl; + } else { + $schemaValue = $schema; + } + if (!$isData) { + out += ' var schema' + ($lvl) + ' = validate.schema' + ($schemaPath) + ';'; + } + out += 'var ' + ($valid) + ' = equal(' + ($data) + ', schema' + ($lvl) + '); if (!' + ($valid) + ') { '; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('const') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { allowedValue: schema' + ($lvl) + ' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should be equal to constant\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += ' }'; + if ($breakOnError) { + out += ' else { '; + } + return out; +} + +},{}],21:[function(require,module,exports){ +'use strict'; +module.exports = function generate_contains(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $data = 'data' + ($dataLvl || ''); + var $valid = 'valid' + $lvl; + var $errs = 'errs__' + $lvl; + var $it = it.util.copy(it); + var $closingBraces = ''; + $it.level++; + var $nextValid = 'valid' + $it.level; + var $idx = 'i' + $lvl, + $dataNxt = $it.dataLevel = it.dataLevel + 1, + $nextData = 'data' + $dataNxt, + $currentBaseId = it.baseId, + $nonEmptySchema = (it.opts.strictKeywords ? (typeof $schema == 'object' && Object.keys($schema).length > 0) || $schema === false : it.util.schemaHasRules($schema, it.RULES.all)); + out += 'var ' + ($errs) + ' = errors;var ' + ($valid) + ';'; + if ($nonEmptySchema) { + var $wasComposite = it.compositeRule; + it.compositeRule = $it.compositeRule = true; + $it.schema = $schema; + $it.schemaPath = $schemaPath; + $it.errSchemaPath = $errSchemaPath; + out += ' var ' + ($nextValid) + ' = false; for (var ' + ($idx) + ' = 0; ' + ($idx) + ' < ' + ($data) + '.length; ' + ($idx) + '++) { '; + $it.errorPath = it.util.getPathExpr(it.errorPath, $idx, it.opts.jsonPointers, true); + var $passData = $data + '[' + $idx + ']'; + $it.dataPathArr[$dataNxt] = $idx; + var $code = it.validate($it); + $it.baseId = $currentBaseId; + if (it.util.varOccurences($code, $nextData) < 2) { + out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' '; + } else { + out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' '; + } + out += ' if (' + ($nextValid) + ') break; } '; + it.compositeRule = $it.compositeRule = $wasComposite; + out += ' ' + ($closingBraces) + ' if (!' + ($nextValid) + ') {'; + } else { + out += ' if (' + ($data) + '.length == 0) {'; + } + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('contains') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: {} '; + if (it.opts.messages !== false) { + out += ' , message: \'should contain a valid item\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += ' } else { '; + if ($nonEmptySchema) { + out += ' errors = ' + ($errs) + '; if (vErrors !== null) { if (' + ($errs) + ') vErrors.length = ' + ($errs) + '; else vErrors = null; } '; + } + if (it.opts.allErrors) { + out += ' } '; + } + return out; +} + +},{}],22:[function(require,module,exports){ +'use strict'; +module.exports = function generate_custom(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $errorKeyword; + var $data = 'data' + ($dataLvl || ''); + var $valid = 'valid' + $lvl; + var $errs = 'errs__' + $lvl; + var $isData = it.opts.$data && $schema && $schema.$data, + $schemaValue; + if ($isData) { + out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; '; + $schemaValue = 'schema' + $lvl; + } else { + $schemaValue = $schema; + } + var $rule = this, + $definition = 'definition' + $lvl, + $rDef = $rule.definition, + $closingBraces = ''; + var $compile, $inline, $macro, $ruleValidate, $validateCode; + if ($isData && $rDef.$data) { + $validateCode = 'keywordValidate' + $lvl; + var $validateSchema = $rDef.validateSchema; + out += ' var ' + ($definition) + ' = RULES.custom[\'' + ($keyword) + '\'].definition; var ' + ($validateCode) + ' = ' + ($definition) + '.validate;'; + } else { + $ruleValidate = it.useCustomRule($rule, $schema, it.schema, it); + if (!$ruleValidate) return; + $schemaValue = 'validate.schema' + $schemaPath; + $validateCode = $ruleValidate.code; + $compile = $rDef.compile; + $inline = $rDef.inline; + $macro = $rDef.macro; + } + var $ruleErrs = $validateCode + '.errors', + $i = 'i' + $lvl, + $ruleErr = 'ruleErr' + $lvl, + $asyncKeyword = $rDef.async; + if ($asyncKeyword && !it.async) throw new Error('async keyword in sync schema'); + if (!($inline || $macro)) { + out += '' + ($ruleErrs) + ' = null;'; + } + out += 'var ' + ($errs) + ' = errors;var ' + ($valid) + ';'; + if ($isData && $rDef.$data) { + $closingBraces += '}'; + out += ' if (' + ($schemaValue) + ' === undefined) { ' + ($valid) + ' = true; } else { '; + if ($validateSchema) { + $closingBraces += '}'; + out += ' ' + ($valid) + ' = ' + ($definition) + '.validateSchema(' + ($schemaValue) + '); if (' + ($valid) + ') { '; + } + } + if ($inline) { + if ($rDef.statements) { + out += ' ' + ($ruleValidate.validate) + ' '; + } else { + out += ' ' + ($valid) + ' = ' + ($ruleValidate.validate) + '; '; + } + } else if ($macro) { + var $it = it.util.copy(it); + var $closingBraces = ''; + $it.level++; + var $nextValid = 'valid' + $it.level; + $it.schema = $ruleValidate.validate; + $it.schemaPath = ''; + var $wasComposite = it.compositeRule; + it.compositeRule = $it.compositeRule = true; + var $code = it.validate($it).replace(/validate\.schema/g, $validateCode); + it.compositeRule = $it.compositeRule = $wasComposite; + out += ' ' + ($code); + } else { + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; + out += ' ' + ($validateCode) + '.call( '; + if (it.opts.passContext) { + out += 'this'; + } else { + out += 'self'; + } + if ($compile || $rDef.schema === false) { + out += ' , ' + ($data) + ' '; + } else { + out += ' , ' + ($schemaValue) + ' , ' + ($data) + ' , validate.schema' + (it.schemaPath) + ' '; + } + out += ' , (dataPath || \'\')'; + if (it.errorPath != '""') { + out += ' + ' + (it.errorPath); + } + var $parentData = $dataLvl ? 'data' + (($dataLvl - 1) || '') : 'parentData', + $parentDataProperty = $dataLvl ? it.dataPathArr[$dataLvl] : 'parentDataProperty'; + out += ' , ' + ($parentData) + ' , ' + ($parentDataProperty) + ' , rootData ) '; + var def_callRuleValidate = out; + out = $$outStack.pop(); + if ($rDef.errors === false) { + out += ' ' + ($valid) + ' = '; + if ($asyncKeyword) { + out += 'await '; + } + out += '' + (def_callRuleValidate) + '; '; + } else { + if ($asyncKeyword) { + $ruleErrs = 'customErrors' + $lvl; + out += ' var ' + ($ruleErrs) + ' = null; try { ' + ($valid) + ' = await ' + (def_callRuleValidate) + '; } catch (e) { ' + ($valid) + ' = false; if (e instanceof ValidationError) ' + ($ruleErrs) + ' = e.errors; else throw e; } '; + } else { + out += ' ' + ($ruleErrs) + ' = null; ' + ($valid) + ' = ' + (def_callRuleValidate) + '; '; + } + } + } + if ($rDef.modifying) { + out += ' if (' + ($parentData) + ') ' + ($data) + ' = ' + ($parentData) + '[' + ($parentDataProperty) + '];'; + } + out += '' + ($closingBraces); + if ($rDef.valid) { + if ($breakOnError) { + out += ' if (true) { '; + } + } else { + out += ' if ( '; + if ($rDef.valid === undefined) { + out += ' !'; + if ($macro) { + out += '' + ($nextValid); + } else { + out += '' + ($valid); + } + } else { + out += ' ' + (!$rDef.valid) + ' '; + } + out += ') { '; + $errorKeyword = $rule.keyword; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ($errorKeyword || 'custom') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { keyword: \'' + ($rule.keyword) + '\' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should pass "' + ($rule.keyword) + '" keyword validation\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + var def_customError = out; + out = $$outStack.pop(); + if ($inline) { + if ($rDef.errors) { + if ($rDef.errors != 'full') { + out += ' for (var ' + ($i) + '=' + ($errs) + '; ' + ($i) + ' 0) || $sch === false : it.util.schemaHasRules($sch, it.RULES.all))) { + out += ' ' + ($nextValid) + ' = true; if ( ' + ($data) + (it.util.getProperty($property)) + ' !== undefined '; + if ($ownProperties) { + out += ' && Object.prototype.hasOwnProperty.call(' + ($data) + ', \'' + (it.util.escapeQuotes($property)) + '\') '; + } + out += ') { '; + $it.schema = $sch; + $it.schemaPath = $schemaPath + it.util.getProperty($property); + $it.errSchemaPath = $errSchemaPath + '/' + it.util.escapeFragment($property); + out += ' ' + (it.validate($it)) + ' '; + $it.baseId = $currentBaseId; + out += ' } '; + if ($breakOnError) { + out += ' if (' + ($nextValid) + ') { '; + $closingBraces += '}'; + } + } + } + if ($breakOnError) { + out += ' ' + ($closingBraces) + ' if (' + ($errs) + ' == errors) {'; + } + return out; +} + +},{}],24:[function(require,module,exports){ +'use strict'; +module.exports = function generate_enum(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $data = 'data' + ($dataLvl || ''); + var $valid = 'valid' + $lvl; + var $isData = it.opts.$data && $schema && $schema.$data, + $schemaValue; + if ($isData) { + out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; '; + $schemaValue = 'schema' + $lvl; + } else { + $schemaValue = $schema; + } + var $i = 'i' + $lvl, + $vSchema = 'schema' + $lvl; + if (!$isData) { + out += ' var ' + ($vSchema) + ' = validate.schema' + ($schemaPath) + ';'; + } + out += 'var ' + ($valid) + ';'; + if ($isData) { + out += ' if (schema' + ($lvl) + ' === undefined) ' + ($valid) + ' = true; else if (!Array.isArray(schema' + ($lvl) + ')) ' + ($valid) + ' = false; else {'; + } + out += '' + ($valid) + ' = false;for (var ' + ($i) + '=0; ' + ($i) + '<' + ($vSchema) + '.length; ' + ($i) + '++) if (equal(' + ($data) + ', ' + ($vSchema) + '[' + ($i) + '])) { ' + ($valid) + ' = true; break; }'; + if ($isData) { + out += ' } '; + } + out += ' if (!' + ($valid) + ') { '; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('enum') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { allowedValues: schema' + ($lvl) + ' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should be equal to one of the allowed values\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += ' }'; + if ($breakOnError) { + out += ' else { '; + } + return out; +} + +},{}],25:[function(require,module,exports){ +'use strict'; +module.exports = function generate_format(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $data = 'data' + ($dataLvl || ''); + if (it.opts.format === false) { + if ($breakOnError) { + out += ' if (true) { '; + } + return out; + } + var $isData = it.opts.$data && $schema && $schema.$data, + $schemaValue; + if ($isData) { + out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; '; + $schemaValue = 'schema' + $lvl; + } else { + $schemaValue = $schema; + } + var $unknownFormats = it.opts.unknownFormats, + $allowUnknown = Array.isArray($unknownFormats); + if ($isData) { + var $format = 'format' + $lvl, + $isObject = 'isObject' + $lvl, + $formatType = 'formatType' + $lvl; + out += ' var ' + ($format) + ' = formats[' + ($schemaValue) + ']; var ' + ($isObject) + ' = typeof ' + ($format) + ' == \'object\' && !(' + ($format) + ' instanceof RegExp) && ' + ($format) + '.validate; var ' + ($formatType) + ' = ' + ($isObject) + ' && ' + ($format) + '.type || \'string\'; if (' + ($isObject) + ') { '; + if (it.async) { + out += ' var async' + ($lvl) + ' = ' + ($format) + '.async; '; + } + out += ' ' + ($format) + ' = ' + ($format) + '.validate; } if ( '; + if ($isData) { + out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \'string\') || '; + } + out += ' ('; + if ($unknownFormats != 'ignore') { + out += ' (' + ($schemaValue) + ' && !' + ($format) + ' '; + if ($allowUnknown) { + out += ' && self._opts.unknownFormats.indexOf(' + ($schemaValue) + ') == -1 '; + } + out += ') || '; + } + out += ' (' + ($format) + ' && ' + ($formatType) + ' == \'' + ($ruleType) + '\' && !(typeof ' + ($format) + ' == \'function\' ? '; + if (it.async) { + out += ' (async' + ($lvl) + ' ? await ' + ($format) + '(' + ($data) + ') : ' + ($format) + '(' + ($data) + ')) '; + } else { + out += ' ' + ($format) + '(' + ($data) + ') '; + } + out += ' : ' + ($format) + '.test(' + ($data) + '))))) {'; + } else { + var $format = it.formats[$schema]; + if (!$format) { + if ($unknownFormats == 'ignore') { + it.logger.warn('unknown format "' + $schema + '" ignored in schema at path "' + it.errSchemaPath + '"'); + if ($breakOnError) { + out += ' if (true) { '; + } + return out; + } else if ($allowUnknown && $unknownFormats.indexOf($schema) >= 0) { + if ($breakOnError) { + out += ' if (true) { '; + } + return out; + } else { + throw new Error('unknown format "' + $schema + '" is used in schema at path "' + it.errSchemaPath + '"'); + } + } + var $isObject = typeof $format == 'object' && !($format instanceof RegExp) && $format.validate; + var $formatType = $isObject && $format.type || 'string'; + if ($isObject) { + var $async = $format.async === true; + $format = $format.validate; + } + if ($formatType != $ruleType) { + if ($breakOnError) { + out += ' if (true) { '; + } + return out; + } + if ($async) { + if (!it.async) throw new Error('async format in sync schema'); + var $formatRef = 'formats' + it.util.getProperty($schema) + '.validate'; + out += ' if (!(await ' + ($formatRef) + '(' + ($data) + '))) { '; + } else { + out += ' if (! '; + var $formatRef = 'formats' + it.util.getProperty($schema); + if ($isObject) $formatRef += '.validate'; + if (typeof $format == 'function') { + out += ' ' + ($formatRef) + '(' + ($data) + ') '; + } else { + out += ' ' + ($formatRef) + '.test(' + ($data) + ') '; + } + out += ') { '; + } + } + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('format') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { format: '; + if ($isData) { + out += '' + ($schemaValue); + } else { + out += '' + (it.util.toQuotedString($schema)); + } + out += ' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should match format "'; + if ($isData) { + out += '\' + ' + ($schemaValue) + ' + \''; + } else { + out += '' + (it.util.escapeQuotes($schema)); + } + out += '"\' '; + } + if (it.opts.verbose) { + out += ' , schema: '; + if ($isData) { + out += 'validate.schema' + ($schemaPath); + } else { + out += '' + (it.util.toQuotedString($schema)); + } + out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += ' } '; + if ($breakOnError) { + out += ' else { '; + } + return out; +} + +},{}],26:[function(require,module,exports){ +'use strict'; +module.exports = function generate_if(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $data = 'data' + ($dataLvl || ''); + var $valid = 'valid' + $lvl; + var $errs = 'errs__' + $lvl; + var $it = it.util.copy(it); + $it.level++; + var $nextValid = 'valid' + $it.level; + var $thenSch = it.schema['then'], + $elseSch = it.schema['else'], + $thenPresent = $thenSch !== undefined && (it.opts.strictKeywords ? (typeof $thenSch == 'object' && Object.keys($thenSch).length > 0) || $thenSch === false : it.util.schemaHasRules($thenSch, it.RULES.all)), + $elsePresent = $elseSch !== undefined && (it.opts.strictKeywords ? (typeof $elseSch == 'object' && Object.keys($elseSch).length > 0) || $elseSch === false : it.util.schemaHasRules($elseSch, it.RULES.all)), + $currentBaseId = $it.baseId; + if ($thenPresent || $elsePresent) { + var $ifClause; + $it.createErrors = false; + $it.schema = $schema; + $it.schemaPath = $schemaPath; + $it.errSchemaPath = $errSchemaPath; + out += ' var ' + ($errs) + ' = errors; var ' + ($valid) + ' = true; '; + var $wasComposite = it.compositeRule; + it.compositeRule = $it.compositeRule = true; + out += ' ' + (it.validate($it)) + ' '; + $it.baseId = $currentBaseId; + $it.createErrors = true; + out += ' errors = ' + ($errs) + '; if (vErrors !== null) { if (' + ($errs) + ') vErrors.length = ' + ($errs) + '; else vErrors = null; } '; + it.compositeRule = $it.compositeRule = $wasComposite; + if ($thenPresent) { + out += ' if (' + ($nextValid) + ') { '; + $it.schema = it.schema['then']; + $it.schemaPath = it.schemaPath + '.then'; + $it.errSchemaPath = it.errSchemaPath + '/then'; + out += ' ' + (it.validate($it)) + ' '; + $it.baseId = $currentBaseId; + out += ' ' + ($valid) + ' = ' + ($nextValid) + '; '; + if ($thenPresent && $elsePresent) { + $ifClause = 'ifClause' + $lvl; + out += ' var ' + ($ifClause) + ' = \'then\'; '; + } else { + $ifClause = '\'then\''; + } + out += ' } '; + if ($elsePresent) { + out += ' else { '; + } + } else { + out += ' if (!' + ($nextValid) + ') { '; + } + if ($elsePresent) { + $it.schema = it.schema['else']; + $it.schemaPath = it.schemaPath + '.else'; + $it.errSchemaPath = it.errSchemaPath + '/else'; + out += ' ' + (it.validate($it)) + ' '; + $it.baseId = $currentBaseId; + out += ' ' + ($valid) + ' = ' + ($nextValid) + '; '; + if ($thenPresent && $elsePresent) { + $ifClause = 'ifClause' + $lvl; + out += ' var ' + ($ifClause) + ' = \'else\'; '; + } else { + $ifClause = '\'else\''; + } + out += ' } '; + } + out += ' if (!' + ($valid) + ') { var err = '; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('if') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { failingKeyword: ' + ($ifClause) + ' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should match "\' + ' + ($ifClause) + ' + \'" schema\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + out += '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError(vErrors); '; + } else { + out += ' validate.errors = vErrors; return false; '; + } + } + out += ' } '; + if ($breakOnError) { + out += ' else { '; + } + } else { + if ($breakOnError) { + out += ' if (true) { '; + } + } + return out; +} + +},{}],27:[function(require,module,exports){ +'use strict'; + +//all requires must be explicit because browserify won't work with dynamic requires +module.exports = { + '$ref': require('./ref'), + allOf: require('./allOf'), + anyOf: require('./anyOf'), + '$comment': require('./comment'), + const: require('./const'), + contains: require('./contains'), + dependencies: require('./dependencies'), + 'enum': require('./enum'), + format: require('./format'), + 'if': require('./if'), + items: require('./items'), + maximum: require('./_limit'), + minimum: require('./_limit'), + maxItems: require('./_limitItems'), + minItems: require('./_limitItems'), + maxLength: require('./_limitLength'), + minLength: require('./_limitLength'), + maxProperties: require('./_limitProperties'), + minProperties: require('./_limitProperties'), + multipleOf: require('./multipleOf'), + not: require('./not'), + oneOf: require('./oneOf'), + pattern: require('./pattern'), + properties: require('./properties'), + propertyNames: require('./propertyNames'), + required: require('./required'), + uniqueItems: require('./uniqueItems'), + validate: require('./validate') +}; + +},{"./_limit":13,"./_limitItems":14,"./_limitLength":15,"./_limitProperties":16,"./allOf":17,"./anyOf":18,"./comment":19,"./const":20,"./contains":21,"./dependencies":23,"./enum":24,"./format":25,"./if":26,"./items":28,"./multipleOf":29,"./not":30,"./oneOf":31,"./pattern":32,"./properties":33,"./propertyNames":34,"./ref":35,"./required":36,"./uniqueItems":37,"./validate":38}],28:[function(require,module,exports){ +'use strict'; +module.exports = function generate_items(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $data = 'data' + ($dataLvl || ''); + var $valid = 'valid' + $lvl; + var $errs = 'errs__' + $lvl; + var $it = it.util.copy(it); + var $closingBraces = ''; + $it.level++; + var $nextValid = 'valid' + $it.level; + var $idx = 'i' + $lvl, + $dataNxt = $it.dataLevel = it.dataLevel + 1, + $nextData = 'data' + $dataNxt, + $currentBaseId = it.baseId; + out += 'var ' + ($errs) + ' = errors;var ' + ($valid) + ';'; + if (Array.isArray($schema)) { + var $additionalItems = it.schema.additionalItems; + if ($additionalItems === false) { + out += ' ' + ($valid) + ' = ' + ($data) + '.length <= ' + ($schema.length) + '; '; + var $currErrSchemaPath = $errSchemaPath; + $errSchemaPath = it.errSchemaPath + '/additionalItems'; + out += ' if (!' + ($valid) + ') { '; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('additionalItems') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { limit: ' + ($schema.length) + ' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should NOT have more than ' + ($schema.length) + ' items\' '; + } + if (it.opts.verbose) { + out += ' , schema: false , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += ' } '; + $errSchemaPath = $currErrSchemaPath; + if ($breakOnError) { + $closingBraces += '}'; + out += ' else { '; + } + } + var arr1 = $schema; + if (arr1) { + var $sch, $i = -1, + l1 = arr1.length - 1; + while ($i < l1) { + $sch = arr1[$i += 1]; + if ((it.opts.strictKeywords ? (typeof $sch == 'object' && Object.keys($sch).length > 0) || $sch === false : it.util.schemaHasRules($sch, it.RULES.all))) { + out += ' ' + ($nextValid) + ' = true; if (' + ($data) + '.length > ' + ($i) + ') { '; + var $passData = $data + '[' + $i + ']'; + $it.schema = $sch; + $it.schemaPath = $schemaPath + '[' + $i + ']'; + $it.errSchemaPath = $errSchemaPath + '/' + $i; + $it.errorPath = it.util.getPathExpr(it.errorPath, $i, it.opts.jsonPointers, true); + $it.dataPathArr[$dataNxt] = $i; + var $code = it.validate($it); + $it.baseId = $currentBaseId; + if (it.util.varOccurences($code, $nextData) < 2) { + out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' '; + } else { + out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' '; + } + out += ' } '; + if ($breakOnError) { + out += ' if (' + ($nextValid) + ') { '; + $closingBraces += '}'; + } + } + } + } + if (typeof $additionalItems == 'object' && (it.opts.strictKeywords ? (typeof $additionalItems == 'object' && Object.keys($additionalItems).length > 0) || $additionalItems === false : it.util.schemaHasRules($additionalItems, it.RULES.all))) { + $it.schema = $additionalItems; + $it.schemaPath = it.schemaPath + '.additionalItems'; + $it.errSchemaPath = it.errSchemaPath + '/additionalItems'; + out += ' ' + ($nextValid) + ' = true; if (' + ($data) + '.length > ' + ($schema.length) + ') { for (var ' + ($idx) + ' = ' + ($schema.length) + '; ' + ($idx) + ' < ' + ($data) + '.length; ' + ($idx) + '++) { '; + $it.errorPath = it.util.getPathExpr(it.errorPath, $idx, it.opts.jsonPointers, true); + var $passData = $data + '[' + $idx + ']'; + $it.dataPathArr[$dataNxt] = $idx; + var $code = it.validate($it); + $it.baseId = $currentBaseId; + if (it.util.varOccurences($code, $nextData) < 2) { + out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' '; + } else { + out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' '; + } + if ($breakOnError) { + out += ' if (!' + ($nextValid) + ') break; '; + } + out += ' } } '; + if ($breakOnError) { + out += ' if (' + ($nextValid) + ') { '; + $closingBraces += '}'; + } + } + } else if ((it.opts.strictKeywords ? (typeof $schema == 'object' && Object.keys($schema).length > 0) || $schema === false : it.util.schemaHasRules($schema, it.RULES.all))) { + $it.schema = $schema; + $it.schemaPath = $schemaPath; + $it.errSchemaPath = $errSchemaPath; + out += ' for (var ' + ($idx) + ' = ' + (0) + '; ' + ($idx) + ' < ' + ($data) + '.length; ' + ($idx) + '++) { '; + $it.errorPath = it.util.getPathExpr(it.errorPath, $idx, it.opts.jsonPointers, true); + var $passData = $data + '[' + $idx + ']'; + $it.dataPathArr[$dataNxt] = $idx; + var $code = it.validate($it); + $it.baseId = $currentBaseId; + if (it.util.varOccurences($code, $nextData) < 2) { + out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' '; + } else { + out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' '; + } + if ($breakOnError) { + out += ' if (!' + ($nextValid) + ') break; '; + } + out += ' }'; + } + if ($breakOnError) { + out += ' ' + ($closingBraces) + ' if (' + ($errs) + ' == errors) {'; + } + return out; +} + +},{}],29:[function(require,module,exports){ +'use strict'; +module.exports = function generate_multipleOf(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $data = 'data' + ($dataLvl || ''); + var $isData = it.opts.$data && $schema && $schema.$data, + $schemaValue; + if ($isData) { + out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; '; + $schemaValue = 'schema' + $lvl; + } else { + $schemaValue = $schema; + } + if (!($isData || typeof $schema == 'number')) { + throw new Error($keyword + ' must be number'); + } + out += 'var division' + ($lvl) + ';if ('; + if ($isData) { + out += ' ' + ($schemaValue) + ' !== undefined && ( typeof ' + ($schemaValue) + ' != \'number\' || '; + } + out += ' (division' + ($lvl) + ' = ' + ($data) + ' / ' + ($schemaValue) + ', '; + if (it.opts.multipleOfPrecision) { + out += ' Math.abs(Math.round(division' + ($lvl) + ') - division' + ($lvl) + ') > 1e-' + (it.opts.multipleOfPrecision) + ' '; + } else { + out += ' division' + ($lvl) + ' !== parseInt(division' + ($lvl) + ') '; + } + out += ' ) '; + if ($isData) { + out += ' ) '; + } + out += ' ) { '; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('multipleOf') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { multipleOf: ' + ($schemaValue) + ' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should be multiple of '; + if ($isData) { + out += '\' + ' + ($schemaValue); + } else { + out += '' + ($schemaValue) + '\''; + } + } + if (it.opts.verbose) { + out += ' , schema: '; + if ($isData) { + out += 'validate.schema' + ($schemaPath); + } else { + out += '' + ($schema); + } + out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += '} '; + if ($breakOnError) { + out += ' else { '; + } + return out; +} + +},{}],30:[function(require,module,exports){ +'use strict'; +module.exports = function generate_not(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $data = 'data' + ($dataLvl || ''); + var $errs = 'errs__' + $lvl; + var $it = it.util.copy(it); + $it.level++; + var $nextValid = 'valid' + $it.level; + if ((it.opts.strictKeywords ? (typeof $schema == 'object' && Object.keys($schema).length > 0) || $schema === false : it.util.schemaHasRules($schema, it.RULES.all))) { + $it.schema = $schema; + $it.schemaPath = $schemaPath; + $it.errSchemaPath = $errSchemaPath; + out += ' var ' + ($errs) + ' = errors; '; + var $wasComposite = it.compositeRule; + it.compositeRule = $it.compositeRule = true; + $it.createErrors = false; + var $allErrorsOption; + if ($it.opts.allErrors) { + $allErrorsOption = $it.opts.allErrors; + $it.opts.allErrors = false; + } + out += ' ' + (it.validate($it)) + ' '; + $it.createErrors = true; + if ($allErrorsOption) $it.opts.allErrors = $allErrorsOption; + it.compositeRule = $it.compositeRule = $wasComposite; + out += ' if (' + ($nextValid) + ') { '; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('not') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: {} '; + if (it.opts.messages !== false) { + out += ' , message: \'should NOT be valid\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += ' } else { errors = ' + ($errs) + '; if (vErrors !== null) { if (' + ($errs) + ') vErrors.length = ' + ($errs) + '; else vErrors = null; } '; + if (it.opts.allErrors) { + out += ' } '; + } + } else { + out += ' var err = '; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('not') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: {} '; + if (it.opts.messages !== false) { + out += ' , message: \'should NOT be valid\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + out += '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + if ($breakOnError) { + out += ' if (false) { '; + } + } + return out; +} + +},{}],31:[function(require,module,exports){ +'use strict'; +module.exports = function generate_oneOf(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $data = 'data' + ($dataLvl || ''); + var $valid = 'valid' + $lvl; + var $errs = 'errs__' + $lvl; + var $it = it.util.copy(it); + var $closingBraces = ''; + $it.level++; + var $nextValid = 'valid' + $it.level; + var $currentBaseId = $it.baseId, + $prevValid = 'prevValid' + $lvl, + $passingSchemas = 'passingSchemas' + $lvl; + out += 'var ' + ($errs) + ' = errors , ' + ($prevValid) + ' = false , ' + ($valid) + ' = false , ' + ($passingSchemas) + ' = null; '; + var $wasComposite = it.compositeRule; + it.compositeRule = $it.compositeRule = true; + var arr1 = $schema; + if (arr1) { + var $sch, $i = -1, + l1 = arr1.length - 1; + while ($i < l1) { + $sch = arr1[$i += 1]; + if ((it.opts.strictKeywords ? (typeof $sch == 'object' && Object.keys($sch).length > 0) || $sch === false : it.util.schemaHasRules($sch, it.RULES.all))) { + $it.schema = $sch; + $it.schemaPath = $schemaPath + '[' + $i + ']'; + $it.errSchemaPath = $errSchemaPath + '/' + $i; + out += ' ' + (it.validate($it)) + ' '; + $it.baseId = $currentBaseId; + } else { + out += ' var ' + ($nextValid) + ' = true; '; + } + if ($i) { + out += ' if (' + ($nextValid) + ' && ' + ($prevValid) + ') { ' + ($valid) + ' = false; ' + ($passingSchemas) + ' = [' + ($passingSchemas) + ', ' + ($i) + ']; } else { '; + $closingBraces += '}'; + } + out += ' if (' + ($nextValid) + ') { ' + ($valid) + ' = ' + ($prevValid) + ' = true; ' + ($passingSchemas) + ' = ' + ($i) + '; }'; + } + } + it.compositeRule = $it.compositeRule = $wasComposite; + out += '' + ($closingBraces) + 'if (!' + ($valid) + ') { var err = '; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('oneOf') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { passingSchemas: ' + ($passingSchemas) + ' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should match exactly one schema in oneOf\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + out += '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError(vErrors); '; + } else { + out += ' validate.errors = vErrors; return false; '; + } + } + out += '} else { errors = ' + ($errs) + '; if (vErrors !== null) { if (' + ($errs) + ') vErrors.length = ' + ($errs) + '; else vErrors = null; }'; + if (it.opts.allErrors) { + out += ' } '; + } + return out; +} + +},{}],32:[function(require,module,exports){ +'use strict'; +module.exports = function generate_pattern(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $data = 'data' + ($dataLvl || ''); + var $isData = it.opts.$data && $schema && $schema.$data, + $schemaValue; + if ($isData) { + out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; '; + $schemaValue = 'schema' + $lvl; + } else { + $schemaValue = $schema; + } + var $regexp = $isData ? '(new RegExp(' + $schemaValue + '))' : it.usePattern($schema); + out += 'if ( '; + if ($isData) { + out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \'string\') || '; + } + out += ' !' + ($regexp) + '.test(' + ($data) + ') ) { '; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('pattern') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { pattern: '; + if ($isData) { + out += '' + ($schemaValue); + } else { + out += '' + (it.util.toQuotedString($schema)); + } + out += ' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should match pattern "'; + if ($isData) { + out += '\' + ' + ($schemaValue) + ' + \''; + } else { + out += '' + (it.util.escapeQuotes($schema)); + } + out += '"\' '; + } + if (it.opts.verbose) { + out += ' , schema: '; + if ($isData) { + out += 'validate.schema' + ($schemaPath); + } else { + out += '' + (it.util.toQuotedString($schema)); + } + out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += '} '; + if ($breakOnError) { + out += ' else { '; + } + return out; +} + +},{}],33:[function(require,module,exports){ +'use strict'; +module.exports = function generate_properties(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $data = 'data' + ($dataLvl || ''); + var $errs = 'errs__' + $lvl; + var $it = it.util.copy(it); + var $closingBraces = ''; + $it.level++; + var $nextValid = 'valid' + $it.level; + var $key = 'key' + $lvl, + $idx = 'idx' + $lvl, + $dataNxt = $it.dataLevel = it.dataLevel + 1, + $nextData = 'data' + $dataNxt, + $dataProperties = 'dataProperties' + $lvl; + var $schemaKeys = Object.keys($schema || {}).filter(notProto), + $pProperties = it.schema.patternProperties || {}, + $pPropertyKeys = Object.keys($pProperties).filter(notProto), + $aProperties = it.schema.additionalProperties, + $someProperties = $schemaKeys.length || $pPropertyKeys.length, + $noAdditional = $aProperties === false, + $additionalIsSchema = typeof $aProperties == 'object' && Object.keys($aProperties).length, + $removeAdditional = it.opts.removeAdditional, + $checkAdditional = $noAdditional || $additionalIsSchema || $removeAdditional, + $ownProperties = it.opts.ownProperties, + $currentBaseId = it.baseId; + var $required = it.schema.required; + if ($required && !(it.opts.$data && $required.$data) && $required.length < it.opts.loopRequired) { + var $requiredHash = it.util.toHash($required); + } + + function notProto(p) { + return p !== '__proto__'; + } + out += 'var ' + ($errs) + ' = errors;var ' + ($nextValid) + ' = true;'; + if ($ownProperties) { + out += ' var ' + ($dataProperties) + ' = undefined;'; + } + if ($checkAdditional) { + if ($ownProperties) { + out += ' ' + ($dataProperties) + ' = ' + ($dataProperties) + ' || Object.keys(' + ($data) + '); for (var ' + ($idx) + '=0; ' + ($idx) + '<' + ($dataProperties) + '.length; ' + ($idx) + '++) { var ' + ($key) + ' = ' + ($dataProperties) + '[' + ($idx) + ']; '; + } else { + out += ' for (var ' + ($key) + ' in ' + ($data) + ') { '; + } + if ($someProperties) { + out += ' var isAdditional' + ($lvl) + ' = !(false '; + if ($schemaKeys.length) { + if ($schemaKeys.length > 8) { + out += ' || validate.schema' + ($schemaPath) + '.hasOwnProperty(' + ($key) + ') '; + } else { + var arr1 = $schemaKeys; + if (arr1) { + var $propertyKey, i1 = -1, + l1 = arr1.length - 1; + while (i1 < l1) { + $propertyKey = arr1[i1 += 1]; + out += ' || ' + ($key) + ' == ' + (it.util.toQuotedString($propertyKey)) + ' '; + } + } + } + } + if ($pPropertyKeys.length) { + var arr2 = $pPropertyKeys; + if (arr2) { + var $pProperty, $i = -1, + l2 = arr2.length - 1; + while ($i < l2) { + $pProperty = arr2[$i += 1]; + out += ' || ' + (it.usePattern($pProperty)) + '.test(' + ($key) + ') '; + } + } + } + out += ' ); if (isAdditional' + ($lvl) + ') { '; + } + if ($removeAdditional == 'all') { + out += ' delete ' + ($data) + '[' + ($key) + ']; '; + } else { + var $currentErrorPath = it.errorPath; + var $additionalProperty = '\' + ' + $key + ' + \''; + if (it.opts._errorDataPathProperty) { + it.errorPath = it.util.getPathExpr(it.errorPath, $key, it.opts.jsonPointers); + } + if ($noAdditional) { + if ($removeAdditional) { + out += ' delete ' + ($data) + '[' + ($key) + ']; '; + } else { + out += ' ' + ($nextValid) + ' = false; '; + var $currErrSchemaPath = $errSchemaPath; + $errSchemaPath = it.errSchemaPath + '/additionalProperties'; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('additionalProperties') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { additionalProperty: \'' + ($additionalProperty) + '\' } '; + if (it.opts.messages !== false) { + out += ' , message: \''; + if (it.opts._errorDataPathProperty) { + out += 'is an invalid additional property'; + } else { + out += 'should NOT have additional properties'; + } + out += '\' '; + } + if (it.opts.verbose) { + out += ' , schema: false , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + $errSchemaPath = $currErrSchemaPath; + if ($breakOnError) { + out += ' break; '; + } + } + } else if ($additionalIsSchema) { + if ($removeAdditional == 'failing') { + out += ' var ' + ($errs) + ' = errors; '; + var $wasComposite = it.compositeRule; + it.compositeRule = $it.compositeRule = true; + $it.schema = $aProperties; + $it.schemaPath = it.schemaPath + '.additionalProperties'; + $it.errSchemaPath = it.errSchemaPath + '/additionalProperties'; + $it.errorPath = it.opts._errorDataPathProperty ? it.errorPath : it.util.getPathExpr(it.errorPath, $key, it.opts.jsonPointers); + var $passData = $data + '[' + $key + ']'; + $it.dataPathArr[$dataNxt] = $key; + var $code = it.validate($it); + $it.baseId = $currentBaseId; + if (it.util.varOccurences($code, $nextData) < 2) { + out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' '; + } else { + out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' '; + } + out += ' if (!' + ($nextValid) + ') { errors = ' + ($errs) + '; if (validate.errors !== null) { if (errors) validate.errors.length = errors; else validate.errors = null; } delete ' + ($data) + '[' + ($key) + ']; } '; + it.compositeRule = $it.compositeRule = $wasComposite; + } else { + $it.schema = $aProperties; + $it.schemaPath = it.schemaPath + '.additionalProperties'; + $it.errSchemaPath = it.errSchemaPath + '/additionalProperties'; + $it.errorPath = it.opts._errorDataPathProperty ? it.errorPath : it.util.getPathExpr(it.errorPath, $key, it.opts.jsonPointers); + var $passData = $data + '[' + $key + ']'; + $it.dataPathArr[$dataNxt] = $key; + var $code = it.validate($it); + $it.baseId = $currentBaseId; + if (it.util.varOccurences($code, $nextData) < 2) { + out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' '; + } else { + out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' '; + } + if ($breakOnError) { + out += ' if (!' + ($nextValid) + ') break; '; + } + } + } + it.errorPath = $currentErrorPath; + } + if ($someProperties) { + out += ' } '; + } + out += ' } '; + if ($breakOnError) { + out += ' if (' + ($nextValid) + ') { '; + $closingBraces += '}'; + } + } + var $useDefaults = it.opts.useDefaults && !it.compositeRule; + if ($schemaKeys.length) { + var arr3 = $schemaKeys; + if (arr3) { + var $propertyKey, i3 = -1, + l3 = arr3.length - 1; + while (i3 < l3) { + $propertyKey = arr3[i3 += 1]; + var $sch = $schema[$propertyKey]; + if ((it.opts.strictKeywords ? (typeof $sch == 'object' && Object.keys($sch).length > 0) || $sch === false : it.util.schemaHasRules($sch, it.RULES.all))) { + var $prop = it.util.getProperty($propertyKey), + $passData = $data + $prop, + $hasDefault = $useDefaults && $sch.default !== undefined; + $it.schema = $sch; + $it.schemaPath = $schemaPath + $prop; + $it.errSchemaPath = $errSchemaPath + '/' + it.util.escapeFragment($propertyKey); + $it.errorPath = it.util.getPath(it.errorPath, $propertyKey, it.opts.jsonPointers); + $it.dataPathArr[$dataNxt] = it.util.toQuotedString($propertyKey); + var $code = it.validate($it); + $it.baseId = $currentBaseId; + if (it.util.varOccurences($code, $nextData) < 2) { + $code = it.util.varReplace($code, $nextData, $passData); + var $useData = $passData; + } else { + var $useData = $nextData; + out += ' var ' + ($nextData) + ' = ' + ($passData) + '; '; + } + if ($hasDefault) { + out += ' ' + ($code) + ' '; + } else { + if ($requiredHash && $requiredHash[$propertyKey]) { + out += ' if ( ' + ($useData) + ' === undefined '; + if ($ownProperties) { + out += ' || ! Object.prototype.hasOwnProperty.call(' + ($data) + ', \'' + (it.util.escapeQuotes($propertyKey)) + '\') '; + } + out += ') { ' + ($nextValid) + ' = false; '; + var $currentErrorPath = it.errorPath, + $currErrSchemaPath = $errSchemaPath, + $missingProperty = it.util.escapeQuotes($propertyKey); + if (it.opts._errorDataPathProperty) { + it.errorPath = it.util.getPath($currentErrorPath, $propertyKey, it.opts.jsonPointers); + } + $errSchemaPath = it.errSchemaPath + '/required'; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('required') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { missingProperty: \'' + ($missingProperty) + '\' } '; + if (it.opts.messages !== false) { + out += ' , message: \''; + if (it.opts._errorDataPathProperty) { + out += 'is a required property'; + } else { + out += 'should have required property \\\'' + ($missingProperty) + '\\\''; + } + out += '\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + $errSchemaPath = $currErrSchemaPath; + it.errorPath = $currentErrorPath; + out += ' } else { '; + } else { + if ($breakOnError) { + out += ' if ( ' + ($useData) + ' === undefined '; + if ($ownProperties) { + out += ' || ! Object.prototype.hasOwnProperty.call(' + ($data) + ', \'' + (it.util.escapeQuotes($propertyKey)) + '\') '; + } + out += ') { ' + ($nextValid) + ' = true; } else { '; + } else { + out += ' if (' + ($useData) + ' !== undefined '; + if ($ownProperties) { + out += ' && Object.prototype.hasOwnProperty.call(' + ($data) + ', \'' + (it.util.escapeQuotes($propertyKey)) + '\') '; + } + out += ' ) { '; + } + } + out += ' ' + ($code) + ' } '; + } + } + if ($breakOnError) { + out += ' if (' + ($nextValid) + ') { '; + $closingBraces += '}'; + } + } + } + } + if ($pPropertyKeys.length) { + var arr4 = $pPropertyKeys; + if (arr4) { + var $pProperty, i4 = -1, + l4 = arr4.length - 1; + while (i4 < l4) { + $pProperty = arr4[i4 += 1]; + var $sch = $pProperties[$pProperty]; + if ((it.opts.strictKeywords ? (typeof $sch == 'object' && Object.keys($sch).length > 0) || $sch === false : it.util.schemaHasRules($sch, it.RULES.all))) { + $it.schema = $sch; + $it.schemaPath = it.schemaPath + '.patternProperties' + it.util.getProperty($pProperty); + $it.errSchemaPath = it.errSchemaPath + '/patternProperties/' + it.util.escapeFragment($pProperty); + if ($ownProperties) { + out += ' ' + ($dataProperties) + ' = ' + ($dataProperties) + ' || Object.keys(' + ($data) + '); for (var ' + ($idx) + '=0; ' + ($idx) + '<' + ($dataProperties) + '.length; ' + ($idx) + '++) { var ' + ($key) + ' = ' + ($dataProperties) + '[' + ($idx) + ']; '; + } else { + out += ' for (var ' + ($key) + ' in ' + ($data) + ') { '; + } + out += ' if (' + (it.usePattern($pProperty)) + '.test(' + ($key) + ')) { '; + $it.errorPath = it.util.getPathExpr(it.errorPath, $key, it.opts.jsonPointers); + var $passData = $data + '[' + $key + ']'; + $it.dataPathArr[$dataNxt] = $key; + var $code = it.validate($it); + $it.baseId = $currentBaseId; + if (it.util.varOccurences($code, $nextData) < 2) { + out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' '; + } else { + out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' '; + } + if ($breakOnError) { + out += ' if (!' + ($nextValid) + ') break; '; + } + out += ' } '; + if ($breakOnError) { + out += ' else ' + ($nextValid) + ' = true; '; + } + out += ' } '; + if ($breakOnError) { + out += ' if (' + ($nextValid) + ') { '; + $closingBraces += '}'; + } + } + } + } + } + if ($breakOnError) { + out += ' ' + ($closingBraces) + ' if (' + ($errs) + ' == errors) {'; + } + return out; +} + +},{}],34:[function(require,module,exports){ +'use strict'; +module.exports = function generate_propertyNames(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $data = 'data' + ($dataLvl || ''); + var $errs = 'errs__' + $lvl; + var $it = it.util.copy(it); + var $closingBraces = ''; + $it.level++; + var $nextValid = 'valid' + $it.level; + out += 'var ' + ($errs) + ' = errors;'; + if ((it.opts.strictKeywords ? (typeof $schema == 'object' && Object.keys($schema).length > 0) || $schema === false : it.util.schemaHasRules($schema, it.RULES.all))) { + $it.schema = $schema; + $it.schemaPath = $schemaPath; + $it.errSchemaPath = $errSchemaPath; + var $key = 'key' + $lvl, + $idx = 'idx' + $lvl, + $i = 'i' + $lvl, + $invalidName = '\' + ' + $key + ' + \'', + $dataNxt = $it.dataLevel = it.dataLevel + 1, + $nextData = 'data' + $dataNxt, + $dataProperties = 'dataProperties' + $lvl, + $ownProperties = it.opts.ownProperties, + $currentBaseId = it.baseId; + if ($ownProperties) { + out += ' var ' + ($dataProperties) + ' = undefined; '; + } + if ($ownProperties) { + out += ' ' + ($dataProperties) + ' = ' + ($dataProperties) + ' || Object.keys(' + ($data) + '); for (var ' + ($idx) + '=0; ' + ($idx) + '<' + ($dataProperties) + '.length; ' + ($idx) + '++) { var ' + ($key) + ' = ' + ($dataProperties) + '[' + ($idx) + ']; '; + } else { + out += ' for (var ' + ($key) + ' in ' + ($data) + ') { '; + } + out += ' var startErrs' + ($lvl) + ' = errors; '; + var $passData = $key; + var $wasComposite = it.compositeRule; + it.compositeRule = $it.compositeRule = true; + var $code = it.validate($it); + $it.baseId = $currentBaseId; + if (it.util.varOccurences($code, $nextData) < 2) { + out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' '; + } else { + out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' '; + } + it.compositeRule = $it.compositeRule = $wasComposite; + out += ' if (!' + ($nextValid) + ') { for (var ' + ($i) + '=startErrs' + ($lvl) + '; ' + ($i) + ' 0) || $propertySch === false : it.util.schemaHasRules($propertySch, it.RULES.all)))) { + $required[$required.length] = $property; + } + } + } + } else { + var $required = $schema; + } + } + if ($isData || $required.length) { + var $currentErrorPath = it.errorPath, + $loopRequired = $isData || $required.length >= it.opts.loopRequired, + $ownProperties = it.opts.ownProperties; + if ($breakOnError) { + out += ' var missing' + ($lvl) + '; '; + if ($loopRequired) { + if (!$isData) { + out += ' var ' + ($vSchema) + ' = validate.schema' + ($schemaPath) + '; '; + } + var $i = 'i' + $lvl, + $propertyPath = 'schema' + $lvl + '[' + $i + ']', + $missingProperty = '\' + ' + $propertyPath + ' + \''; + if (it.opts._errorDataPathProperty) { + it.errorPath = it.util.getPathExpr($currentErrorPath, $propertyPath, it.opts.jsonPointers); + } + out += ' var ' + ($valid) + ' = true; '; + if ($isData) { + out += ' if (schema' + ($lvl) + ' === undefined) ' + ($valid) + ' = true; else if (!Array.isArray(schema' + ($lvl) + ')) ' + ($valid) + ' = false; else {'; + } + out += ' for (var ' + ($i) + ' = 0; ' + ($i) + ' < ' + ($vSchema) + '.length; ' + ($i) + '++) { ' + ($valid) + ' = ' + ($data) + '[' + ($vSchema) + '[' + ($i) + ']] !== undefined '; + if ($ownProperties) { + out += ' && Object.prototype.hasOwnProperty.call(' + ($data) + ', ' + ($vSchema) + '[' + ($i) + ']) '; + } + out += '; if (!' + ($valid) + ') break; } '; + if ($isData) { + out += ' } '; + } + out += ' if (!' + ($valid) + ') { '; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('required') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { missingProperty: \'' + ($missingProperty) + '\' } '; + if (it.opts.messages !== false) { + out += ' , message: \''; + if (it.opts._errorDataPathProperty) { + out += 'is a required property'; + } else { + out += 'should have required property \\\'' + ($missingProperty) + '\\\''; + } + out += '\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += ' } else { '; + } else { + out += ' if ( '; + var arr2 = $required; + if (arr2) { + var $propertyKey, $i = -1, + l2 = arr2.length - 1; + while ($i < l2) { + $propertyKey = arr2[$i += 1]; + if ($i) { + out += ' || '; + } + var $prop = it.util.getProperty($propertyKey), + $useData = $data + $prop; + out += ' ( ( ' + ($useData) + ' === undefined '; + if ($ownProperties) { + out += ' || ! Object.prototype.hasOwnProperty.call(' + ($data) + ', \'' + (it.util.escapeQuotes($propertyKey)) + '\') '; + } + out += ') && (missing' + ($lvl) + ' = ' + (it.util.toQuotedString(it.opts.jsonPointers ? $propertyKey : $prop)) + ') ) '; + } + } + out += ') { '; + var $propertyPath = 'missing' + $lvl, + $missingProperty = '\' + ' + $propertyPath + ' + \''; + if (it.opts._errorDataPathProperty) { + it.errorPath = it.opts.jsonPointers ? it.util.getPathExpr($currentErrorPath, $propertyPath, true) : $currentErrorPath + ' + ' + $propertyPath; + } + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('required') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { missingProperty: \'' + ($missingProperty) + '\' } '; + if (it.opts.messages !== false) { + out += ' , message: \''; + if (it.opts._errorDataPathProperty) { + out += 'is a required property'; + } else { + out += 'should have required property \\\'' + ($missingProperty) + '\\\''; + } + out += '\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += ' } else { '; + } + } else { + if ($loopRequired) { + if (!$isData) { + out += ' var ' + ($vSchema) + ' = validate.schema' + ($schemaPath) + '; '; + } + var $i = 'i' + $lvl, + $propertyPath = 'schema' + $lvl + '[' + $i + ']', + $missingProperty = '\' + ' + $propertyPath + ' + \''; + if (it.opts._errorDataPathProperty) { + it.errorPath = it.util.getPathExpr($currentErrorPath, $propertyPath, it.opts.jsonPointers); + } + if ($isData) { + out += ' if (' + ($vSchema) + ' && !Array.isArray(' + ($vSchema) + ')) { var err = '; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('required') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { missingProperty: \'' + ($missingProperty) + '\' } '; + if (it.opts.messages !== false) { + out += ' , message: \''; + if (it.opts._errorDataPathProperty) { + out += 'is a required property'; + } else { + out += 'should have required property \\\'' + ($missingProperty) + '\\\''; + } + out += '\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + out += '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } else if (' + ($vSchema) + ' !== undefined) { '; + } + out += ' for (var ' + ($i) + ' = 0; ' + ($i) + ' < ' + ($vSchema) + '.length; ' + ($i) + '++) { if (' + ($data) + '[' + ($vSchema) + '[' + ($i) + ']] === undefined '; + if ($ownProperties) { + out += ' || ! Object.prototype.hasOwnProperty.call(' + ($data) + ', ' + ($vSchema) + '[' + ($i) + ']) '; + } + out += ') { var err = '; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('required') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { missingProperty: \'' + ($missingProperty) + '\' } '; + if (it.opts.messages !== false) { + out += ' , message: \''; + if (it.opts._errorDataPathProperty) { + out += 'is a required property'; + } else { + out += 'should have required property \\\'' + ($missingProperty) + '\\\''; + } + out += '\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + out += '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } } '; + if ($isData) { + out += ' } '; + } + } else { + var arr3 = $required; + if (arr3) { + var $propertyKey, i3 = -1, + l3 = arr3.length - 1; + while (i3 < l3) { + $propertyKey = arr3[i3 += 1]; + var $prop = it.util.getProperty($propertyKey), + $missingProperty = it.util.escapeQuotes($propertyKey), + $useData = $data + $prop; + if (it.opts._errorDataPathProperty) { + it.errorPath = it.util.getPath($currentErrorPath, $propertyKey, it.opts.jsonPointers); + } + out += ' if ( ' + ($useData) + ' === undefined '; + if ($ownProperties) { + out += ' || ! Object.prototype.hasOwnProperty.call(' + ($data) + ', \'' + (it.util.escapeQuotes($propertyKey)) + '\') '; + } + out += ') { var err = '; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('required') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { missingProperty: \'' + ($missingProperty) + '\' } '; + if (it.opts.messages !== false) { + out += ' , message: \''; + if (it.opts._errorDataPathProperty) { + out += 'is a required property'; + } else { + out += 'should have required property \\\'' + ($missingProperty) + '\\\''; + } + out += '\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + out += '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } '; + } + } + } + } + it.errorPath = $currentErrorPath; + } else if ($breakOnError) { + out += ' if (true) {'; + } + return out; +} + +},{}],37:[function(require,module,exports){ +'use strict'; +module.exports = function generate_uniqueItems(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $data = 'data' + ($dataLvl || ''); + var $valid = 'valid' + $lvl; + var $isData = it.opts.$data && $schema && $schema.$data, + $schemaValue; + if ($isData) { + out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; '; + $schemaValue = 'schema' + $lvl; + } else { + $schemaValue = $schema; + } + if (($schema || $isData) && it.opts.uniqueItems !== false) { + if ($isData) { + out += ' var ' + ($valid) + '; if (' + ($schemaValue) + ' === false || ' + ($schemaValue) + ' === undefined) ' + ($valid) + ' = true; else if (typeof ' + ($schemaValue) + ' != \'boolean\') ' + ($valid) + ' = false; else { '; + } + out += ' var i = ' + ($data) + '.length , ' + ($valid) + ' = true , j; if (i > 1) { '; + var $itemType = it.schema.items && it.schema.items.type, + $typeIsArray = Array.isArray($itemType); + if (!$itemType || $itemType == 'object' || $itemType == 'array' || ($typeIsArray && ($itemType.indexOf('object') >= 0 || $itemType.indexOf('array') >= 0))) { + out += ' outer: for (;i--;) { for (j = i; j--;) { if (equal(' + ($data) + '[i], ' + ($data) + '[j])) { ' + ($valid) + ' = false; break outer; } } } '; + } else { + out += ' var itemIndices = {}, item; for (;i--;) { var item = ' + ($data) + '[i]; '; + var $method = 'checkDataType' + ($typeIsArray ? 's' : ''); + out += ' if (' + (it.util[$method]($itemType, 'item', it.opts.strictNumbers, true)) + ') continue; '; + if ($typeIsArray) { + out += ' if (typeof item == \'string\') item = \'"\' + item; '; + } + out += ' if (typeof itemIndices[item] == \'number\') { ' + ($valid) + ' = false; j = itemIndices[item]; break; } itemIndices[item] = i; } '; + } + out += ' } '; + if ($isData) { + out += ' } '; + } + out += ' if (!' + ($valid) + ') { '; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('uniqueItems') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { i: i, j: j } '; + if (it.opts.messages !== false) { + out += ' , message: \'should NOT have duplicate items (items ## \' + j + \' and \' + i + \' are identical)\' '; + } + if (it.opts.verbose) { + out += ' , schema: '; + if ($isData) { + out += 'validate.schema' + ($schemaPath); + } else { + out += '' + ($schema); + } + out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += ' } '; + if ($breakOnError) { + out += ' else { '; + } + } else { + if ($breakOnError) { + out += ' if (true) { '; + } + } + return out; +} + +},{}],38:[function(require,module,exports){ +'use strict'; +module.exports = function generate_validate(it, $keyword, $ruleType) { + var out = ''; + var $async = it.schema.$async === true, + $refKeywords = it.util.schemaHasRulesExcept(it.schema, it.RULES.all, '$ref'), + $id = it.self._getId(it.schema); + if (it.opts.strictKeywords) { + var $unknownKwd = it.util.schemaUnknownRules(it.schema, it.RULES.keywords); + if ($unknownKwd) { + var $keywordsMsg = 'unknown keyword: ' + $unknownKwd; + if (it.opts.strictKeywords === 'log') it.logger.warn($keywordsMsg); + else throw new Error($keywordsMsg); + } + } + if (it.isTop) { + out += ' var validate = '; + if ($async) { + it.async = true; + out += 'async '; + } + out += 'function(data, dataPath, parentData, parentDataProperty, rootData) { \'use strict\'; '; + if ($id && (it.opts.sourceCode || it.opts.processCode)) { + out += ' ' + ('/\*# sourceURL=' + $id + ' */') + ' '; + } + } + if (typeof it.schema == 'boolean' || !($refKeywords || it.schema.$ref)) { + var $keyword = 'false schema'; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $errorKeyword; + var $data = 'data' + ($dataLvl || ''); + var $valid = 'valid' + $lvl; + if (it.schema === false) { + if (it.isTop) { + $breakOnError = true; + } else { + out += ' var ' + ($valid) + ' = false; '; + } + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ($errorKeyword || 'false schema') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: {} '; + if (it.opts.messages !== false) { + out += ' , message: \'boolean schema is false\' '; + } + if (it.opts.verbose) { + out += ' , schema: false , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + } else { + if (it.isTop) { + if ($async) { + out += ' return data; '; + } else { + out += ' validate.errors = null; return true; '; + } + } else { + out += ' var ' + ($valid) + ' = true; '; + } + } + if (it.isTop) { + out += ' }; return validate; '; + } + return out; + } + if (it.isTop) { + var $top = it.isTop, + $lvl = it.level = 0, + $dataLvl = it.dataLevel = 0, + $data = 'data'; + it.rootId = it.resolve.fullPath(it.self._getId(it.root.schema)); + it.baseId = it.baseId || it.rootId; + delete it.isTop; + it.dataPathArr = [""]; + if (it.schema.default !== undefined && it.opts.useDefaults && it.opts.strictDefaults) { + var $defaultMsg = 'default is ignored in the schema root'; + if (it.opts.strictDefaults === 'log') it.logger.warn($defaultMsg); + else throw new Error($defaultMsg); + } + out += ' var vErrors = null; '; + out += ' var errors = 0; '; + out += ' if (rootData === undefined) rootData = data; '; + } else { + var $lvl = it.level, + $dataLvl = it.dataLevel, + $data = 'data' + ($dataLvl || ''); + if ($id) it.baseId = it.resolve.url(it.baseId, $id); + if ($async && !it.async) throw new Error('async schema in sync schema'); + out += ' var errs_' + ($lvl) + ' = errors;'; + } + var $valid = 'valid' + $lvl, + $breakOnError = !it.opts.allErrors, + $closingBraces1 = '', + $closingBraces2 = ''; + var $errorKeyword; + var $typeSchema = it.schema.type, + $typeIsArray = Array.isArray($typeSchema); + if ($typeSchema && it.opts.nullable && it.schema.nullable === true) { + if ($typeIsArray) { + if ($typeSchema.indexOf('null') == -1) $typeSchema = $typeSchema.concat('null'); + } else if ($typeSchema != 'null') { + $typeSchema = [$typeSchema, 'null']; + $typeIsArray = true; + } + } + if ($typeIsArray && $typeSchema.length == 1) { + $typeSchema = $typeSchema[0]; + $typeIsArray = false; + } + if (it.schema.$ref && $refKeywords) { + if (it.opts.extendRefs == 'fail') { + throw new Error('$ref: validation keywords used in schema at path "' + it.errSchemaPath + '" (see option extendRefs)'); + } else if (it.opts.extendRefs !== true) { + $refKeywords = false; + it.logger.warn('$ref: keywords ignored in schema at path "' + it.errSchemaPath + '"'); + } + } + if (it.schema.$comment && it.opts.$comment) { + out += ' ' + (it.RULES.all.$comment.code(it, '$comment')); + } + if ($typeSchema) { + if (it.opts.coerceTypes) { + var $coerceToTypes = it.util.coerceToTypes(it.opts.coerceTypes, $typeSchema); + } + var $rulesGroup = it.RULES.types[$typeSchema]; + if ($coerceToTypes || $typeIsArray || $rulesGroup === true || ($rulesGroup && !$shouldUseGroup($rulesGroup))) { + var $schemaPath = it.schemaPath + '.type', + $errSchemaPath = it.errSchemaPath + '/type'; + var $schemaPath = it.schemaPath + '.type', + $errSchemaPath = it.errSchemaPath + '/type', + $method = $typeIsArray ? 'checkDataTypes' : 'checkDataType'; + out += ' if (' + (it.util[$method]($typeSchema, $data, it.opts.strictNumbers, true)) + ') { '; + if ($coerceToTypes) { + var $dataType = 'dataType' + $lvl, + $coerced = 'coerced' + $lvl; + out += ' var ' + ($dataType) + ' = typeof ' + ($data) + '; var ' + ($coerced) + ' = undefined; '; + if (it.opts.coerceTypes == 'array') { + out += ' if (' + ($dataType) + ' == \'object\' && Array.isArray(' + ($data) + ') && ' + ($data) + '.length == 1) { ' + ($data) + ' = ' + ($data) + '[0]; ' + ($dataType) + ' = typeof ' + ($data) + '; if (' + (it.util.checkDataType(it.schema.type, $data, it.opts.strictNumbers)) + ') ' + ($coerced) + ' = ' + ($data) + '; } '; + } + out += ' if (' + ($coerced) + ' !== undefined) ; '; + var arr1 = $coerceToTypes; + if (arr1) { + var $type, $i = -1, + l1 = arr1.length - 1; + while ($i < l1) { + $type = arr1[$i += 1]; + if ($type == 'string') { + out += ' else if (' + ($dataType) + ' == \'number\' || ' + ($dataType) + ' == \'boolean\') ' + ($coerced) + ' = \'\' + ' + ($data) + '; else if (' + ($data) + ' === null) ' + ($coerced) + ' = \'\'; '; + } else if ($type == 'number' || $type == 'integer') { + out += ' else if (' + ($dataType) + ' == \'boolean\' || ' + ($data) + ' === null || (' + ($dataType) + ' == \'string\' && ' + ($data) + ' && ' + ($data) + ' == +' + ($data) + ' '; + if ($type == 'integer') { + out += ' && !(' + ($data) + ' % 1)'; + } + out += ')) ' + ($coerced) + ' = +' + ($data) + '; '; + } else if ($type == 'boolean') { + out += ' else if (' + ($data) + ' === \'false\' || ' + ($data) + ' === 0 || ' + ($data) + ' === null) ' + ($coerced) + ' = false; else if (' + ($data) + ' === \'true\' || ' + ($data) + ' === 1) ' + ($coerced) + ' = true; '; + } else if ($type == 'null') { + out += ' else if (' + ($data) + ' === \'\' || ' + ($data) + ' === 0 || ' + ($data) + ' === false) ' + ($coerced) + ' = null; '; + } else if (it.opts.coerceTypes == 'array' && $type == 'array') { + out += ' else if (' + ($dataType) + ' == \'string\' || ' + ($dataType) + ' == \'number\' || ' + ($dataType) + ' == \'boolean\' || ' + ($data) + ' == null) ' + ($coerced) + ' = [' + ($data) + ']; '; + } + } + } + out += ' else { '; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ($errorKeyword || 'type') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { type: \''; + if ($typeIsArray) { + out += '' + ($typeSchema.join(",")); + } else { + out += '' + ($typeSchema); + } + out += '\' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should be '; + if ($typeIsArray) { + out += '' + ($typeSchema.join(",")); + } else { + out += '' + ($typeSchema); + } + out += '\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += ' } if (' + ($coerced) + ' !== undefined) { '; + var $parentData = $dataLvl ? 'data' + (($dataLvl - 1) || '') : 'parentData', + $parentDataProperty = $dataLvl ? it.dataPathArr[$dataLvl] : 'parentDataProperty'; + out += ' ' + ($data) + ' = ' + ($coerced) + '; '; + if (!$dataLvl) { + out += 'if (' + ($parentData) + ' !== undefined)'; + } + out += ' ' + ($parentData) + '[' + ($parentDataProperty) + '] = ' + ($coerced) + '; } '; + } else { + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ($errorKeyword || 'type') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { type: \''; + if ($typeIsArray) { + out += '' + ($typeSchema.join(",")); + } else { + out += '' + ($typeSchema); + } + out += '\' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should be '; + if ($typeIsArray) { + out += '' + ($typeSchema.join(",")); + } else { + out += '' + ($typeSchema); + } + out += '\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + } + out += ' } '; + } + } + if (it.schema.$ref && !$refKeywords) { + out += ' ' + (it.RULES.all.$ref.code(it, '$ref')) + ' '; + if ($breakOnError) { + out += ' } if (errors === '; + if ($top) { + out += '0'; + } else { + out += 'errs_' + ($lvl); + } + out += ') { '; + $closingBraces2 += '}'; + } + } else { + var arr2 = it.RULES; + if (arr2) { + var $rulesGroup, i2 = -1, + l2 = arr2.length - 1; + while (i2 < l2) { + $rulesGroup = arr2[i2 += 1]; + if ($shouldUseGroup($rulesGroup)) { + if ($rulesGroup.type) { + out += ' if (' + (it.util.checkDataType($rulesGroup.type, $data, it.opts.strictNumbers)) + ') { '; + } + if (it.opts.useDefaults) { + if ($rulesGroup.type == 'object' && it.schema.properties) { + var $schema = it.schema.properties, + $schemaKeys = Object.keys($schema); + var arr3 = $schemaKeys; + if (arr3) { + var $propertyKey, i3 = -1, + l3 = arr3.length - 1; + while (i3 < l3) { + $propertyKey = arr3[i3 += 1]; + var $sch = $schema[$propertyKey]; + if ($sch.default !== undefined) { + var $passData = $data + it.util.getProperty($propertyKey); + if (it.compositeRule) { + if (it.opts.strictDefaults) { + var $defaultMsg = 'default is ignored for: ' + $passData; + if (it.opts.strictDefaults === 'log') it.logger.warn($defaultMsg); + else throw new Error($defaultMsg); + } + } else { + out += ' if (' + ($passData) + ' === undefined '; + if (it.opts.useDefaults == 'empty') { + out += ' || ' + ($passData) + ' === null || ' + ($passData) + ' === \'\' '; + } + out += ' ) ' + ($passData) + ' = '; + if (it.opts.useDefaults == 'shared') { + out += ' ' + (it.useDefault($sch.default)) + ' '; + } else { + out += ' ' + (JSON.stringify($sch.default)) + ' '; + } + out += '; '; + } + } + } + } + } else if ($rulesGroup.type == 'array' && Array.isArray(it.schema.items)) { + var arr4 = it.schema.items; + if (arr4) { + var $sch, $i = -1, + l4 = arr4.length - 1; + while ($i < l4) { + $sch = arr4[$i += 1]; + if ($sch.default !== undefined) { + var $passData = $data + '[' + $i + ']'; + if (it.compositeRule) { + if (it.opts.strictDefaults) { + var $defaultMsg = 'default is ignored for: ' + $passData; + if (it.opts.strictDefaults === 'log') it.logger.warn($defaultMsg); + else throw new Error($defaultMsg); + } + } else { + out += ' if (' + ($passData) + ' === undefined '; + if (it.opts.useDefaults == 'empty') { + out += ' || ' + ($passData) + ' === null || ' + ($passData) + ' === \'\' '; + } + out += ' ) ' + ($passData) + ' = '; + if (it.opts.useDefaults == 'shared') { + out += ' ' + (it.useDefault($sch.default)) + ' '; + } else { + out += ' ' + (JSON.stringify($sch.default)) + ' '; + } + out += '; '; + } + } + } + } + } + } + var arr5 = $rulesGroup.rules; + if (arr5) { + var $rule, i5 = -1, + l5 = arr5.length - 1; + while (i5 < l5) { + $rule = arr5[i5 += 1]; + if ($shouldUseRule($rule)) { + var $code = $rule.code(it, $rule.keyword, $rulesGroup.type); + if ($code) { + out += ' ' + ($code) + ' '; + if ($breakOnError) { + $closingBraces1 += '}'; + } + } + } + } + } + if ($breakOnError) { + out += ' ' + ($closingBraces1) + ' '; + $closingBraces1 = ''; + } + if ($rulesGroup.type) { + out += ' } '; + if ($typeSchema && $typeSchema === $rulesGroup.type && !$coerceToTypes) { + out += ' else { '; + var $schemaPath = it.schemaPath + '.type', + $errSchemaPath = it.errSchemaPath + '/type'; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ($errorKeyword || 'type') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { type: \''; + if ($typeIsArray) { + out += '' + ($typeSchema.join(",")); + } else { + out += '' + ($typeSchema); + } + out += '\' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should be '; + if ($typeIsArray) { + out += '' + ($typeSchema.join(",")); + } else { + out += '' + ($typeSchema); + } + out += '\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += ' } '; + } + } + if ($breakOnError) { + out += ' if (errors === '; + if ($top) { + out += '0'; + } else { + out += 'errs_' + ($lvl); + } + out += ') { '; + $closingBraces2 += '}'; + } + } + } + } + } + if ($breakOnError) { + out += ' ' + ($closingBraces2) + ' '; + } + if ($top) { + if ($async) { + out += ' if (errors === 0) return data; '; + out += ' else throw new ValidationError(vErrors); '; + } else { + out += ' validate.errors = vErrors; '; + out += ' return errors === 0; '; + } + out += ' }; return validate;'; + } else { + out += ' var ' + ($valid) + ' = errors === errs_' + ($lvl) + ';'; + } + + function $shouldUseGroup($rulesGroup) { + var rules = $rulesGroup.rules; + for (var i = 0; i < rules.length; i++) + if ($shouldUseRule(rules[i])) return true; + } + + function $shouldUseRule($rule) { + return it.schema[$rule.keyword] !== undefined || ($rule.implements && $ruleImplementsSomeKeyword($rule)); + } + + function $ruleImplementsSomeKeyword($rule) { + var impl = $rule.implements; + for (var i = 0; i < impl.length; i++) + if (it.schema[impl[i]] !== undefined) return true; + } + return out; +} + +},{}],39:[function(require,module,exports){ +'use strict'; + +var IDENTIFIER = /^[a-z_$][a-z0-9_$-]*$/i; +var customRuleCode = require('./dotjs/custom'); +var definitionSchema = require('./definition_schema'); + +module.exports = { + add: addKeyword, + get: getKeyword, + remove: removeKeyword, + validate: validateKeyword +}; + + +/** + * Define custom keyword + * @this Ajv + * @param {String} keyword custom keyword, should be unique (including different from all standard, custom and macro keywords). + * @param {Object} definition keyword definition object with properties `type` (type(s) which the keyword applies to), `validate` or `compile`. + * @return {Ajv} this for method chaining + */ +function addKeyword(keyword, definition) { + /* jshint validthis: true */ + /* eslint no-shadow: 0 */ + var RULES = this.RULES; + if (RULES.keywords[keyword]) + throw new Error('Keyword ' + keyword + ' is already defined'); + + if (!IDENTIFIER.test(keyword)) + throw new Error('Keyword ' + keyword + ' is not a valid identifier'); + + if (definition) { + this.validateKeyword(definition, true); + + var dataType = definition.type; + if (Array.isArray(dataType)) { + for (var i=0; i 1) { + sets[0] = sets[0].slice(0, -1); + var xl = sets.length - 1; + for (var x = 1; x < xl; ++x) { + sets[x] = sets[x].slice(1, -1); + } + sets[xl] = sets[xl].slice(1); + return sets.join(''); + } else { + return sets[0]; + } +} +function subexp(str) { + return "(?:" + str + ")"; +} +function typeOf(o) { + return o === undefined ? "undefined" : o === null ? "null" : Object.prototype.toString.call(o).split(" ").pop().split("]").shift().toLowerCase(); +} +function toUpperCase(str) { + return str.toUpperCase(); +} +function toArray(obj) { + return obj !== undefined && obj !== null ? obj instanceof Array ? obj : typeof obj.length !== "number" || obj.split || obj.setInterval || obj.call ? [obj] : Array.prototype.slice.call(obj) : []; +} +function assign(target, source) { + var obj = target; + if (source) { + for (var key in source) { + obj[key] = source[key]; + } + } + return obj; +} + +function buildExps(isIRI) { + var ALPHA$$ = "[A-Za-z]", + CR$ = "[\\x0D]", + DIGIT$$ = "[0-9]", + DQUOTE$$ = "[\\x22]", + HEXDIG$$ = merge(DIGIT$$, "[A-Fa-f]"), + //case-insensitive + LF$$ = "[\\x0A]", + SP$$ = "[\\x20]", + PCT_ENCODED$ = subexp(subexp("%[EFef]" + HEXDIG$$ + "%" + HEXDIG$$ + HEXDIG$$ + "%" + HEXDIG$$ + HEXDIG$$) + "|" + subexp("%[89A-Fa-f]" + HEXDIG$$ + "%" + HEXDIG$$ + HEXDIG$$) + "|" + subexp("%" + HEXDIG$$ + HEXDIG$$)), + //expanded + GEN_DELIMS$$ = "[\\:\\/\\?\\#\\[\\]\\@]", + SUB_DELIMS$$ = "[\\!\\$\\&\\'\\(\\)\\*\\+\\,\\;\\=]", + RESERVED$$ = merge(GEN_DELIMS$$, SUB_DELIMS$$), + UCSCHAR$$ = isIRI ? "[\\xA0-\\u200D\\u2010-\\u2029\\u202F-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]" : "[]", + //subset, excludes bidi control characters + IPRIVATE$$ = isIRI ? "[\\uE000-\\uF8FF]" : "[]", + //subset + UNRESERVED$$ = merge(ALPHA$$, DIGIT$$, "[\\-\\.\\_\\~]", UCSCHAR$$), + SCHEME$ = subexp(ALPHA$$ + merge(ALPHA$$, DIGIT$$, "[\\+\\-\\.]") + "*"), + USERINFO$ = subexp(subexp(PCT_ENCODED$ + "|" + merge(UNRESERVED$$, SUB_DELIMS$$, "[\\:]")) + "*"), + DEC_OCTET$ = subexp(subexp("25[0-5]") + "|" + subexp("2[0-4]" + DIGIT$$) + "|" + subexp("1" + DIGIT$$ + DIGIT$$) + "|" + subexp("[1-9]" + DIGIT$$) + "|" + DIGIT$$), + DEC_OCTET_RELAXED$ = subexp(subexp("25[0-5]") + "|" + subexp("2[0-4]" + DIGIT$$) + "|" + subexp("1" + DIGIT$$ + DIGIT$$) + "|" + subexp("0?[1-9]" + DIGIT$$) + "|0?0?" + DIGIT$$), + //relaxed parsing rules + IPV4ADDRESS$ = subexp(DEC_OCTET_RELAXED$ + "\\." + DEC_OCTET_RELAXED$ + "\\." + DEC_OCTET_RELAXED$ + "\\." + DEC_OCTET_RELAXED$), + H16$ = subexp(HEXDIG$$ + "{1,4}"), + LS32$ = subexp(subexp(H16$ + "\\:" + H16$) + "|" + IPV4ADDRESS$), + IPV6ADDRESS1$ = subexp(subexp(H16$ + "\\:") + "{6}" + LS32$), + // 6( h16 ":" ) ls32 + IPV6ADDRESS2$ = subexp("\\:\\:" + subexp(H16$ + "\\:") + "{5}" + LS32$), + // "::" 5( h16 ":" ) ls32 + IPV6ADDRESS3$ = subexp(subexp(H16$) + "?\\:\\:" + subexp(H16$ + "\\:") + "{4}" + LS32$), + //[ h16 ] "::" 4( h16 ":" ) ls32 + IPV6ADDRESS4$ = subexp(subexp(subexp(H16$ + "\\:") + "{0,1}" + H16$) + "?\\:\\:" + subexp(H16$ + "\\:") + "{3}" + LS32$), + //[ *1( h16 ":" ) h16 ] "::" 3( h16 ":" ) ls32 + IPV6ADDRESS5$ = subexp(subexp(subexp(H16$ + "\\:") + "{0,2}" + H16$) + "?\\:\\:" + subexp(H16$ + "\\:") + "{2}" + LS32$), + //[ *2( h16 ":" ) h16 ] "::" 2( h16 ":" ) ls32 + IPV6ADDRESS6$ = subexp(subexp(subexp(H16$ + "\\:") + "{0,3}" + H16$) + "?\\:\\:" + H16$ + "\\:" + LS32$), + //[ *3( h16 ":" ) h16 ] "::" h16 ":" ls32 + IPV6ADDRESS7$ = subexp(subexp(subexp(H16$ + "\\:") + "{0,4}" + H16$) + "?\\:\\:" + LS32$), + //[ *4( h16 ":" ) h16 ] "::" ls32 + IPV6ADDRESS8$ = subexp(subexp(subexp(H16$ + "\\:") + "{0,5}" + H16$) + "?\\:\\:" + H16$), + //[ *5( h16 ":" ) h16 ] "::" h16 + IPV6ADDRESS9$ = subexp(subexp(subexp(H16$ + "\\:") + "{0,6}" + H16$) + "?\\:\\:"), + //[ *6( h16 ":" ) h16 ] "::" + IPV6ADDRESS$ = subexp([IPV6ADDRESS1$, IPV6ADDRESS2$, IPV6ADDRESS3$, IPV6ADDRESS4$, IPV6ADDRESS5$, IPV6ADDRESS6$, IPV6ADDRESS7$, IPV6ADDRESS8$, IPV6ADDRESS9$].join("|")), + ZONEID$ = subexp(subexp(UNRESERVED$$ + "|" + PCT_ENCODED$) + "+"), + //RFC 6874 + IPV6ADDRZ$ = subexp(IPV6ADDRESS$ + "\\%25" + ZONEID$), + //RFC 6874 + IPV6ADDRZ_RELAXED$ = subexp(IPV6ADDRESS$ + subexp("\\%25|\\%(?!" + HEXDIG$$ + "{2})") + ZONEID$), + //RFC 6874, with relaxed parsing rules + IPVFUTURE$ = subexp("[vV]" + HEXDIG$$ + "+\\." + merge(UNRESERVED$$, SUB_DELIMS$$, "[\\:]") + "+"), + IP_LITERAL$ = subexp("\\[" + subexp(IPV6ADDRZ_RELAXED$ + "|" + IPV6ADDRESS$ + "|" + IPVFUTURE$) + "\\]"), + //RFC 6874 + REG_NAME$ = subexp(subexp(PCT_ENCODED$ + "|" + merge(UNRESERVED$$, SUB_DELIMS$$)) + "*"), + HOST$ = subexp(IP_LITERAL$ + "|" + IPV4ADDRESS$ + "(?!" + REG_NAME$ + ")" + "|" + REG_NAME$), + PORT$ = subexp(DIGIT$$ + "*"), + AUTHORITY$ = subexp(subexp(USERINFO$ + "@") + "?" + HOST$ + subexp("\\:" + PORT$) + "?"), + PCHAR$ = subexp(PCT_ENCODED$ + "|" + merge(UNRESERVED$$, SUB_DELIMS$$, "[\\:\\@]")), + SEGMENT$ = subexp(PCHAR$ + "*"), + SEGMENT_NZ$ = subexp(PCHAR$ + "+"), + SEGMENT_NZ_NC$ = subexp(subexp(PCT_ENCODED$ + "|" + merge(UNRESERVED$$, SUB_DELIMS$$, "[\\@]")) + "+"), + PATH_ABEMPTY$ = subexp(subexp("\\/" + SEGMENT$) + "*"), + PATH_ABSOLUTE$ = subexp("\\/" + subexp(SEGMENT_NZ$ + PATH_ABEMPTY$) + "?"), + //simplified + PATH_NOSCHEME$ = subexp(SEGMENT_NZ_NC$ + PATH_ABEMPTY$), + //simplified + PATH_ROOTLESS$ = subexp(SEGMENT_NZ$ + PATH_ABEMPTY$), + //simplified + PATH_EMPTY$ = "(?!" + PCHAR$ + ")", + PATH$ = subexp(PATH_ABEMPTY$ + "|" + PATH_ABSOLUTE$ + "|" + PATH_NOSCHEME$ + "|" + PATH_ROOTLESS$ + "|" + PATH_EMPTY$), + QUERY$ = subexp(subexp(PCHAR$ + "|" + merge("[\\/\\?]", IPRIVATE$$)) + "*"), + FRAGMENT$ = subexp(subexp(PCHAR$ + "|[\\/\\?]") + "*"), + HIER_PART$ = subexp(subexp("\\/\\/" + AUTHORITY$ + PATH_ABEMPTY$) + "|" + PATH_ABSOLUTE$ + "|" + PATH_ROOTLESS$ + "|" + PATH_EMPTY$), + URI$ = subexp(SCHEME$ + "\\:" + HIER_PART$ + subexp("\\?" + QUERY$) + "?" + subexp("\\#" + FRAGMENT$) + "?"), + RELATIVE_PART$ = subexp(subexp("\\/\\/" + AUTHORITY$ + PATH_ABEMPTY$) + "|" + PATH_ABSOLUTE$ + "|" + PATH_NOSCHEME$ + "|" + PATH_EMPTY$), + RELATIVE$ = subexp(RELATIVE_PART$ + subexp("\\?" + QUERY$) + "?" + subexp("\\#" + FRAGMENT$) + "?"), + URI_REFERENCE$ = subexp(URI$ + "|" + RELATIVE$), + ABSOLUTE_URI$ = subexp(SCHEME$ + "\\:" + HIER_PART$ + subexp("\\?" + QUERY$) + "?"), + GENERIC_REF$ = "^(" + SCHEME$ + ")\\:" + subexp(subexp("\\/\\/(" + subexp("(" + USERINFO$ + ")@") + "?(" + HOST$ + ")" + subexp("\\:(" + PORT$ + ")") + "?)") + "?(" + PATH_ABEMPTY$ + "|" + PATH_ABSOLUTE$ + "|" + PATH_ROOTLESS$ + "|" + PATH_EMPTY$ + ")") + subexp("\\?(" + QUERY$ + ")") + "?" + subexp("\\#(" + FRAGMENT$ + ")") + "?$", + RELATIVE_REF$ = "^(){0}" + subexp(subexp("\\/\\/(" + subexp("(" + USERINFO$ + ")@") + "?(" + HOST$ + ")" + subexp("\\:(" + PORT$ + ")") + "?)") + "?(" + PATH_ABEMPTY$ + "|" + PATH_ABSOLUTE$ + "|" + PATH_NOSCHEME$ + "|" + PATH_EMPTY$ + ")") + subexp("\\?(" + QUERY$ + ")") + "?" + subexp("\\#(" + FRAGMENT$ + ")") + "?$", + ABSOLUTE_REF$ = "^(" + SCHEME$ + ")\\:" + subexp(subexp("\\/\\/(" + subexp("(" + USERINFO$ + ")@") + "?(" + HOST$ + ")" + subexp("\\:(" + PORT$ + ")") + "?)") + "?(" + PATH_ABEMPTY$ + "|" + PATH_ABSOLUTE$ + "|" + PATH_ROOTLESS$ + "|" + PATH_EMPTY$ + ")") + subexp("\\?(" + QUERY$ + ")") + "?$", + SAMEDOC_REF$ = "^" + subexp("\\#(" + FRAGMENT$ + ")") + "?$", + AUTHORITY_REF$ = "^" + subexp("(" + USERINFO$ + ")@") + "?(" + HOST$ + ")" + subexp("\\:(" + PORT$ + ")") + "?$"; + return { + NOT_SCHEME: new RegExp(merge("[^]", ALPHA$$, DIGIT$$, "[\\+\\-\\.]"), "g"), + NOT_USERINFO: new RegExp(merge("[^\\%\\:]", UNRESERVED$$, SUB_DELIMS$$), "g"), + NOT_HOST: new RegExp(merge("[^\\%\\[\\]\\:]", UNRESERVED$$, SUB_DELIMS$$), "g"), + NOT_PATH: new RegExp(merge("[^\\%\\/\\:\\@]", UNRESERVED$$, SUB_DELIMS$$), "g"), + NOT_PATH_NOSCHEME: new RegExp(merge("[^\\%\\/\\@]", UNRESERVED$$, SUB_DELIMS$$), "g"), + NOT_QUERY: new RegExp(merge("[^\\%]", UNRESERVED$$, SUB_DELIMS$$, "[\\:\\@\\/\\?]", IPRIVATE$$), "g"), + NOT_FRAGMENT: new RegExp(merge("[^\\%]", UNRESERVED$$, SUB_DELIMS$$, "[\\:\\@\\/\\?]"), "g"), + ESCAPE: new RegExp(merge("[^]", UNRESERVED$$, SUB_DELIMS$$), "g"), + UNRESERVED: new RegExp(UNRESERVED$$, "g"), + OTHER_CHARS: new RegExp(merge("[^\\%]", UNRESERVED$$, RESERVED$$), "g"), + PCT_ENCODED: new RegExp(PCT_ENCODED$, "g"), + IPV4ADDRESS: new RegExp("^(" + IPV4ADDRESS$ + ")$"), + IPV6ADDRESS: new RegExp("^\\[?(" + IPV6ADDRESS$ + ")" + subexp(subexp("\\%25|\\%(?!" + HEXDIG$$ + "{2})") + "(" + ZONEID$ + ")") + "?\\]?$") //RFC 6874, with relaxed parsing rules + }; +} +var URI_PROTOCOL = buildExps(false); + +var IRI_PROTOCOL = buildExps(true); + +var slicedToArray = function () { + function sliceIterator(arr, i) { + var _arr = []; + var _n = true; + var _d = false; + var _e = undefined; + + try { + for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { + _arr.push(_s.value); + + if (i && _arr.length === i) break; + } + } catch (err) { + _d = true; + _e = err; + } finally { + try { + if (!_n && _i["return"]) _i["return"](); + } finally { + if (_d) throw _e; + } + } + + return _arr; + } + + return function (arr, i) { + if (Array.isArray(arr)) { + return arr; + } else if (Symbol.iterator in Object(arr)) { + return sliceIterator(arr, i); + } else { + throw new TypeError("Invalid attempt to destructure non-iterable instance"); + } + }; +}(); + + + + + + + + + + + + + +var toConsumableArray = function (arr) { + if (Array.isArray(arr)) { + for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) arr2[i] = arr[i]; + + return arr2; + } else { + return Array.from(arr); + } +}; + +/** Highest positive signed 32-bit float value */ + +var maxInt = 2147483647; // aka. 0x7FFFFFFF or 2^31-1 + +/** Bootstring parameters */ +var base = 36; +var tMin = 1; +var tMax = 26; +var skew = 38; +var damp = 700; +var initialBias = 72; +var initialN = 128; // 0x80 +var delimiter = '-'; // '\x2D' + +/** Regular expressions */ +var regexPunycode = /^xn--/; +var regexNonASCII = /[^\0-\x7E]/; // non-ASCII chars +var regexSeparators = /[\x2E\u3002\uFF0E\uFF61]/g; // RFC 3490 separators + +/** Error messages */ +var errors = { + 'overflow': 'Overflow: input needs wider integers to process', + 'not-basic': 'Illegal input >= 0x80 (not a basic code point)', + 'invalid-input': 'Invalid input' +}; + +/** Convenience shortcuts */ +var baseMinusTMin = base - tMin; +var floor = Math.floor; +var stringFromCharCode = String.fromCharCode; + +/*--------------------------------------------------------------------------*/ + +/** + * A generic error utility function. + * @private + * @param {String} type The error type. + * @returns {Error} Throws a `RangeError` with the applicable error message. + */ +function error$1(type) { + throw new RangeError(errors[type]); +} + +/** + * A generic `Array#map` utility function. + * @private + * @param {Array} array The array to iterate over. + * @param {Function} callback The function that gets called for every array + * item. + * @returns {Array} A new array of values returned by the callback function. + */ +function map(array, fn) { + var result = []; + var length = array.length; + while (length--) { + result[length] = fn(array[length]); + } + return result; +} + +/** + * A simple `Array#map`-like wrapper to work with domain name strings or email + * addresses. + * @private + * @param {String} domain The domain name or email address. + * @param {Function} callback The function that gets called for every + * character. + * @returns {Array} A new string of characters returned by the callback + * function. + */ +function mapDomain(string, fn) { + var parts = string.split('@'); + var result = ''; + if (parts.length > 1) { + // In email addresses, only the domain name should be punycoded. Leave + // the local part (i.e. everything up to `@`) intact. + result = parts[0] + '@'; + string = parts[1]; + } + // Avoid `split(regex)` for IE8 compatibility. See #17. + string = string.replace(regexSeparators, '\x2E'); + var labels = string.split('.'); + var encoded = map(labels, fn).join('.'); + return result + encoded; +} + +/** + * Creates an array containing the numeric code points of each Unicode + * character in the string. While JavaScript uses UCS-2 internally, + * this function will convert a pair of surrogate halves (each of which + * UCS-2 exposes as separate characters) into a single code point, + * matching UTF-16. + * @see `punycode.ucs2.encode` + * @see + * @memberOf punycode.ucs2 + * @name decode + * @param {String} string The Unicode input string (UCS-2). + * @returns {Array} The new array of code points. + */ +function ucs2decode(string) { + var output = []; + var counter = 0; + var length = string.length; + while (counter < length) { + var value = string.charCodeAt(counter++); + if (value >= 0xD800 && value <= 0xDBFF && counter < length) { + // It's a high surrogate, and there is a next character. + var extra = string.charCodeAt(counter++); + if ((extra & 0xFC00) == 0xDC00) { + // Low surrogate. + output.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000); + } else { + // It's an unmatched surrogate; only append this code unit, in case the + // next code unit is the high surrogate of a surrogate pair. + output.push(value); + counter--; + } + } else { + output.push(value); + } + } + return output; +} + +/** + * Creates a string based on an array of numeric code points. + * @see `punycode.ucs2.decode` + * @memberOf punycode.ucs2 + * @name encode + * @param {Array} codePoints The array of numeric code points. + * @returns {String} The new Unicode string (UCS-2). + */ +var ucs2encode = function ucs2encode(array) { + return String.fromCodePoint.apply(String, toConsumableArray(array)); +}; + +/** + * Converts a basic code point into a digit/integer. + * @see `digitToBasic()` + * @private + * @param {Number} codePoint The basic numeric code point value. + * @returns {Number} The numeric value of a basic code point (for use in + * representing integers) in the range `0` to `base - 1`, or `base` if + * the code point does not represent a value. + */ +var basicToDigit = function basicToDigit(codePoint) { + if (codePoint - 0x30 < 0x0A) { + return codePoint - 0x16; + } + if (codePoint - 0x41 < 0x1A) { + return codePoint - 0x41; + } + if (codePoint - 0x61 < 0x1A) { + return codePoint - 0x61; + } + return base; +}; + +/** + * Converts a digit/integer into a basic code point. + * @see `basicToDigit()` + * @private + * @param {Number} digit The numeric value of a basic code point. + * @returns {Number} The basic code point whose value (when used for + * representing integers) is `digit`, which needs to be in the range + * `0` to `base - 1`. If `flag` is non-zero, the uppercase form is + * used; else, the lowercase form is used. The behavior is undefined + * if `flag` is non-zero and `digit` has no uppercase form. + */ +var digitToBasic = function digitToBasic(digit, flag) { + // 0..25 map to ASCII a..z or A..Z + // 26..35 map to ASCII 0..9 + return digit + 22 + 75 * (digit < 26) - ((flag != 0) << 5); +}; + +/** + * Bias adaptation function as per section 3.4 of RFC 3492. + * https://tools.ietf.org/html/rfc3492#section-3.4 + * @private + */ +var adapt = function adapt(delta, numPoints, firstTime) { + var k = 0; + delta = firstTime ? floor(delta / damp) : delta >> 1; + delta += floor(delta / numPoints); + for (; /* no initialization */delta > baseMinusTMin * tMax >> 1; k += base) { + delta = floor(delta / baseMinusTMin); + } + return floor(k + (baseMinusTMin + 1) * delta / (delta + skew)); +}; + +/** + * Converts a Punycode string of ASCII-only symbols to a string of Unicode + * symbols. + * @memberOf punycode + * @param {String} input The Punycode string of ASCII-only symbols. + * @returns {String} The resulting string of Unicode symbols. + */ +var decode = function decode(input) { + // Don't use UCS-2. + var output = []; + var inputLength = input.length; + var i = 0; + var n = initialN; + var bias = initialBias; + + // Handle the basic code points: let `basic` be the number of input code + // points before the last delimiter, or `0` if there is none, then copy + // the first basic code points to the output. + + var basic = input.lastIndexOf(delimiter); + if (basic < 0) { + basic = 0; + } + + for (var j = 0; j < basic; ++j) { + // if it's not a basic code point + if (input.charCodeAt(j) >= 0x80) { + error$1('not-basic'); + } + output.push(input.charCodeAt(j)); + } + + // Main decoding loop: start just after the last delimiter if any basic code + // points were copied; start at the beginning otherwise. + + for (var index = basic > 0 ? basic + 1 : 0; index < inputLength;) /* no final expression */{ + + // `index` is the index of the next character to be consumed. + // Decode a generalized variable-length integer into `delta`, + // which gets added to `i`. The overflow checking is easier + // if we increase `i` as we go, then subtract off its starting + // value at the end to obtain `delta`. + var oldi = i; + for (var w = 1, k = base;; /* no condition */k += base) { + + if (index >= inputLength) { + error$1('invalid-input'); + } + + var digit = basicToDigit(input.charCodeAt(index++)); + + if (digit >= base || digit > floor((maxInt - i) / w)) { + error$1('overflow'); + } + + i += digit * w; + var t = k <= bias ? tMin : k >= bias + tMax ? tMax : k - bias; + + if (digit < t) { + break; + } + + var baseMinusT = base - t; + if (w > floor(maxInt / baseMinusT)) { + error$1('overflow'); + } + + w *= baseMinusT; + } + + var out = output.length + 1; + bias = adapt(i - oldi, out, oldi == 0); + + // `i` was supposed to wrap around from `out` to `0`, + // incrementing `n` each time, so we'll fix that now: + if (floor(i / out) > maxInt - n) { + error$1('overflow'); + } + + n += floor(i / out); + i %= out; + + // Insert `n` at position `i` of the output. + output.splice(i++, 0, n); + } + + return String.fromCodePoint.apply(String, output); +}; + +/** + * Converts a string of Unicode symbols (e.g. a domain name label) to a + * Punycode string of ASCII-only symbols. + * @memberOf punycode + * @param {String} input The string of Unicode symbols. + * @returns {String} The resulting Punycode string of ASCII-only symbols. + */ +var encode = function encode(input) { + var output = []; + + // Convert the input in UCS-2 to an array of Unicode code points. + input = ucs2decode(input); + + // Cache the length. + var inputLength = input.length; + + // Initialize the state. + var n = initialN; + var delta = 0; + var bias = initialBias; + + // Handle the basic code points. + var _iteratorNormalCompletion = true; + var _didIteratorError = false; + var _iteratorError = undefined; + + try { + for (var _iterator = input[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { + var _currentValue2 = _step.value; + + if (_currentValue2 < 0x80) { + output.push(stringFromCharCode(_currentValue2)); + } + } + } catch (err) { + _didIteratorError = true; + _iteratorError = err; + } finally { + try { + if (!_iteratorNormalCompletion && _iterator.return) { + _iterator.return(); + } + } finally { + if (_didIteratorError) { + throw _iteratorError; + } + } + } + + var basicLength = output.length; + var handledCPCount = basicLength; + + // `handledCPCount` is the number of code points that have been handled; + // `basicLength` is the number of basic code points. + + // Finish the basic string with a delimiter unless it's empty. + if (basicLength) { + output.push(delimiter); + } + + // Main encoding loop: + while (handledCPCount < inputLength) { + + // All non-basic code points < n have been handled already. Find the next + // larger one: + var m = maxInt; + var _iteratorNormalCompletion2 = true; + var _didIteratorError2 = false; + var _iteratorError2 = undefined; + + try { + for (var _iterator2 = input[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) { + var currentValue = _step2.value; + + if (currentValue >= n && currentValue < m) { + m = currentValue; + } + } + + // Increase `delta` enough to advance the decoder's state to , + // but guard against overflow. + } catch (err) { + _didIteratorError2 = true; + _iteratorError2 = err; + } finally { + try { + if (!_iteratorNormalCompletion2 && _iterator2.return) { + _iterator2.return(); + } + } finally { + if (_didIteratorError2) { + throw _iteratorError2; + } + } + } + + var handledCPCountPlusOne = handledCPCount + 1; + if (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) { + error$1('overflow'); + } + + delta += (m - n) * handledCPCountPlusOne; + n = m; + + var _iteratorNormalCompletion3 = true; + var _didIteratorError3 = false; + var _iteratorError3 = undefined; + + try { + for (var _iterator3 = input[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) { + var _currentValue = _step3.value; + + if (_currentValue < n && ++delta > maxInt) { + error$1('overflow'); + } + if (_currentValue == n) { + // Represent delta as a generalized variable-length integer. + var q = delta; + for (var k = base;; /* no condition */k += base) { + var t = k <= bias ? tMin : k >= bias + tMax ? tMax : k - bias; + if (q < t) { + break; + } + var qMinusT = q - t; + var baseMinusT = base - t; + output.push(stringFromCharCode(digitToBasic(t + qMinusT % baseMinusT, 0))); + q = floor(qMinusT / baseMinusT); + } + + output.push(stringFromCharCode(digitToBasic(q, 0))); + bias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength); + delta = 0; + ++handledCPCount; + } + } + } catch (err) { + _didIteratorError3 = true; + _iteratorError3 = err; + } finally { + try { + if (!_iteratorNormalCompletion3 && _iterator3.return) { + _iterator3.return(); + } + } finally { + if (_didIteratorError3) { + throw _iteratorError3; + } + } + } + + ++delta; + ++n; + } + return output.join(''); +}; + +/** + * Converts a Punycode string representing a domain name or an email address + * to Unicode. Only the Punycoded parts of the input will be converted, i.e. + * it doesn't matter if you call it on a string that has already been + * converted to Unicode. + * @memberOf punycode + * @param {String} input The Punycoded domain name or email address to + * convert to Unicode. + * @returns {String} The Unicode representation of the given Punycode + * string. + */ +var toUnicode = function toUnicode(input) { + return mapDomain(input, function (string) { + return regexPunycode.test(string) ? decode(string.slice(4).toLowerCase()) : string; + }); +}; + +/** + * Converts a Unicode string representing a domain name or an email address to + * Punycode. Only the non-ASCII parts of the domain name will be converted, + * i.e. it doesn't matter if you call it with a domain that's already in + * ASCII. + * @memberOf punycode + * @param {String} input The domain name or email address to convert, as a + * Unicode string. + * @returns {String} The Punycode representation of the given domain name or + * email address. + */ +var toASCII = function toASCII(input) { + return mapDomain(input, function (string) { + return regexNonASCII.test(string) ? 'xn--' + encode(string) : string; + }); +}; + +/*--------------------------------------------------------------------------*/ + +/** Define the public API */ +var punycode = { + /** + * A string representing the current Punycode.js version number. + * @memberOf punycode + * @type String + */ + 'version': '2.1.0', + /** + * An object of methods to convert from JavaScript's internal character + * representation (UCS-2) to Unicode code points, and back. + * @see + * @memberOf punycode + * @type Object + */ + 'ucs2': { + 'decode': ucs2decode, + 'encode': ucs2encode + }, + 'decode': decode, + 'encode': encode, + 'toASCII': toASCII, + 'toUnicode': toUnicode +}; + +/** + * URI.js + * + * @fileoverview An RFC 3986 compliant, scheme extendable URI parsing/validating/resolving library for JavaScript. + * @author Gary Court + * @see http://github.com/garycourt/uri-js + */ +/** + * Copyright 2011 Gary Court. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY GARY COURT ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GARY COURT OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of Gary Court. + */ +var SCHEMES = {}; +function pctEncChar(chr) { + var c = chr.charCodeAt(0); + var e = void 0; + if (c < 16) e = "%0" + c.toString(16).toUpperCase();else if (c < 128) e = "%" + c.toString(16).toUpperCase();else if (c < 2048) e = "%" + (c >> 6 | 192).toString(16).toUpperCase() + "%" + (c & 63 | 128).toString(16).toUpperCase();else e = "%" + (c >> 12 | 224).toString(16).toUpperCase() + "%" + (c >> 6 & 63 | 128).toString(16).toUpperCase() + "%" + (c & 63 | 128).toString(16).toUpperCase(); + return e; +} +function pctDecChars(str) { + var newStr = ""; + var i = 0; + var il = str.length; + while (i < il) { + var c = parseInt(str.substr(i + 1, 2), 16); + if (c < 128) { + newStr += String.fromCharCode(c); + i += 3; + } else if (c >= 194 && c < 224) { + if (il - i >= 6) { + var c2 = parseInt(str.substr(i + 4, 2), 16); + newStr += String.fromCharCode((c & 31) << 6 | c2 & 63); + } else { + newStr += str.substr(i, 6); + } + i += 6; + } else if (c >= 224) { + if (il - i >= 9) { + var _c = parseInt(str.substr(i + 4, 2), 16); + var c3 = parseInt(str.substr(i + 7, 2), 16); + newStr += String.fromCharCode((c & 15) << 12 | (_c & 63) << 6 | c3 & 63); + } else { + newStr += str.substr(i, 9); + } + i += 9; + } else { + newStr += str.substr(i, 3); + i += 3; + } + } + return newStr; +} +function _normalizeComponentEncoding(components, protocol) { + function decodeUnreserved(str) { + var decStr = pctDecChars(str); + return !decStr.match(protocol.UNRESERVED) ? str : decStr; + } + if (components.scheme) components.scheme = String(components.scheme).replace(protocol.PCT_ENCODED, decodeUnreserved).toLowerCase().replace(protocol.NOT_SCHEME, ""); + if (components.userinfo !== undefined) components.userinfo = String(components.userinfo).replace(protocol.PCT_ENCODED, decodeUnreserved).replace(protocol.NOT_USERINFO, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase); + if (components.host !== undefined) components.host = String(components.host).replace(protocol.PCT_ENCODED, decodeUnreserved).toLowerCase().replace(protocol.NOT_HOST, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase); + if (components.path !== undefined) components.path = String(components.path).replace(protocol.PCT_ENCODED, decodeUnreserved).replace(components.scheme ? protocol.NOT_PATH : protocol.NOT_PATH_NOSCHEME, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase); + if (components.query !== undefined) components.query = String(components.query).replace(protocol.PCT_ENCODED, decodeUnreserved).replace(protocol.NOT_QUERY, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase); + if (components.fragment !== undefined) components.fragment = String(components.fragment).replace(protocol.PCT_ENCODED, decodeUnreserved).replace(protocol.NOT_FRAGMENT, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase); + return components; +} + +function _stripLeadingZeros(str) { + return str.replace(/^0*(.*)/, "$1") || "0"; +} +function _normalizeIPv4(host, protocol) { + var matches = host.match(protocol.IPV4ADDRESS) || []; + + var _matches = slicedToArray(matches, 2), + address = _matches[1]; + + if (address) { + return address.split(".").map(_stripLeadingZeros).join("."); + } else { + return host; + } +} +function _normalizeIPv6(host, protocol) { + var matches = host.match(protocol.IPV6ADDRESS) || []; + + var _matches2 = slicedToArray(matches, 3), + address = _matches2[1], + zone = _matches2[2]; + + if (address) { + var _address$toLowerCase$ = address.toLowerCase().split('::').reverse(), + _address$toLowerCase$2 = slicedToArray(_address$toLowerCase$, 2), + last = _address$toLowerCase$2[0], + first = _address$toLowerCase$2[1]; + + var firstFields = first ? first.split(":").map(_stripLeadingZeros) : []; + var lastFields = last.split(":").map(_stripLeadingZeros); + var isLastFieldIPv4Address = protocol.IPV4ADDRESS.test(lastFields[lastFields.length - 1]); + var fieldCount = isLastFieldIPv4Address ? 7 : 8; + var lastFieldsStart = lastFields.length - fieldCount; + var fields = Array(fieldCount); + for (var x = 0; x < fieldCount; ++x) { + fields[x] = firstFields[x] || lastFields[lastFieldsStart + x] || ''; + } + if (isLastFieldIPv4Address) { + fields[fieldCount - 1] = _normalizeIPv4(fields[fieldCount - 1], protocol); + } + var allZeroFields = fields.reduce(function (acc, field, index) { + if (!field || field === "0") { + var lastLongest = acc[acc.length - 1]; + if (lastLongest && lastLongest.index + lastLongest.length === index) { + lastLongest.length++; + } else { + acc.push({ index: index, length: 1 }); + } + } + return acc; + }, []); + var longestZeroFields = allZeroFields.sort(function (a, b) { + return b.length - a.length; + })[0]; + var newHost = void 0; + if (longestZeroFields && longestZeroFields.length > 1) { + var newFirst = fields.slice(0, longestZeroFields.index); + var newLast = fields.slice(longestZeroFields.index + longestZeroFields.length); + newHost = newFirst.join(":") + "::" + newLast.join(":"); + } else { + newHost = fields.join(":"); + } + if (zone) { + newHost += "%" + zone; + } + return newHost; + } else { + return host; + } +} +var URI_PARSE = /^(?:([^:\/?#]+):)?(?:\/\/((?:([^\/?#@]*)@)?(\[[^\/?#\]]+\]|[^\/?#:]*)(?:\:(\d*))?))?([^?#]*)(?:\?([^#]*))?(?:#((?:.|\n|\r)*))?/i; +var NO_MATCH_IS_UNDEFINED = "".match(/(){0}/)[1] === undefined; +function parse(uriString) { + var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + + var components = {}; + var protocol = options.iri !== false ? IRI_PROTOCOL : URI_PROTOCOL; + if (options.reference === "suffix") uriString = (options.scheme ? options.scheme + ":" : "") + "//" + uriString; + var matches = uriString.match(URI_PARSE); + if (matches) { + if (NO_MATCH_IS_UNDEFINED) { + //store each component + components.scheme = matches[1]; + components.userinfo = matches[3]; + components.host = matches[4]; + components.port = parseInt(matches[5], 10); + components.path = matches[6] || ""; + components.query = matches[7]; + components.fragment = matches[8]; + //fix port number + if (isNaN(components.port)) { + components.port = matches[5]; + } + } else { + //IE FIX for improper RegExp matching + //store each component + components.scheme = matches[1] || undefined; + components.userinfo = uriString.indexOf("@") !== -1 ? matches[3] : undefined; + components.host = uriString.indexOf("//") !== -1 ? matches[4] : undefined; + components.port = parseInt(matches[5], 10); + components.path = matches[6] || ""; + components.query = uriString.indexOf("?") !== -1 ? matches[7] : undefined; + components.fragment = uriString.indexOf("#") !== -1 ? matches[8] : undefined; + //fix port number + if (isNaN(components.port)) { + components.port = uriString.match(/\/\/(?:.|\n)*\:(?:\/|\?|\#|$)/) ? matches[4] : undefined; + } + } + if (components.host) { + //normalize IP hosts + components.host = _normalizeIPv6(_normalizeIPv4(components.host, protocol), protocol); + } + //determine reference type + if (components.scheme === undefined && components.userinfo === undefined && components.host === undefined && components.port === undefined && !components.path && components.query === undefined) { + components.reference = "same-document"; + } else if (components.scheme === undefined) { + components.reference = "relative"; + } else if (components.fragment === undefined) { + components.reference = "absolute"; + } else { + components.reference = "uri"; + } + //check for reference errors + if (options.reference && options.reference !== "suffix" && options.reference !== components.reference) { + components.error = components.error || "URI is not a " + options.reference + " reference."; + } + //find scheme handler + var schemeHandler = SCHEMES[(options.scheme || components.scheme || "").toLowerCase()]; + //check if scheme can't handle IRIs + if (!options.unicodeSupport && (!schemeHandler || !schemeHandler.unicodeSupport)) { + //if host component is a domain name + if (components.host && (options.domainHost || schemeHandler && schemeHandler.domainHost)) { + //convert Unicode IDN -> ASCII IDN + try { + components.host = punycode.toASCII(components.host.replace(protocol.PCT_ENCODED, pctDecChars).toLowerCase()); + } catch (e) { + components.error = components.error || "Host's domain name can not be converted to ASCII via punycode: " + e; + } + } + //convert IRI -> URI + _normalizeComponentEncoding(components, URI_PROTOCOL); + } else { + //normalize encodings + _normalizeComponentEncoding(components, protocol); + } + //perform scheme specific parsing + if (schemeHandler && schemeHandler.parse) { + schemeHandler.parse(components, options); + } + } else { + components.error = components.error || "URI can not be parsed."; + } + return components; +} + +function _recomposeAuthority(components, options) { + var protocol = options.iri !== false ? IRI_PROTOCOL : URI_PROTOCOL; + var uriTokens = []; + if (components.userinfo !== undefined) { + uriTokens.push(components.userinfo); + uriTokens.push("@"); + } + if (components.host !== undefined) { + //normalize IP hosts, add brackets and escape zone separator for IPv6 + uriTokens.push(_normalizeIPv6(_normalizeIPv4(String(components.host), protocol), protocol).replace(protocol.IPV6ADDRESS, function (_, $1, $2) { + return "[" + $1 + ($2 ? "%25" + $2 : "") + "]"; + })); + } + if (typeof components.port === "number" || typeof components.port === "string") { + uriTokens.push(":"); + uriTokens.push(String(components.port)); + } + return uriTokens.length ? uriTokens.join("") : undefined; +} + +var RDS1 = /^\.\.?\//; +var RDS2 = /^\/\.(\/|$)/; +var RDS3 = /^\/\.\.(\/|$)/; +var RDS5 = /^\/?(?:.|\n)*?(?=\/|$)/; +function removeDotSegments(input) { + var output = []; + while (input.length) { + if (input.match(RDS1)) { + input = input.replace(RDS1, ""); + } else if (input.match(RDS2)) { + input = input.replace(RDS2, "/"); + } else if (input.match(RDS3)) { + input = input.replace(RDS3, "/"); + output.pop(); + } else if (input === "." || input === "..") { + input = ""; + } else { + var im = input.match(RDS5); + if (im) { + var s = im[0]; + input = input.slice(s.length); + output.push(s); + } else { + throw new Error("Unexpected dot segment condition"); + } + } + } + return output.join(""); +} + +function serialize(components) { + var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + + var protocol = options.iri ? IRI_PROTOCOL : URI_PROTOCOL; + var uriTokens = []; + //find scheme handler + var schemeHandler = SCHEMES[(options.scheme || components.scheme || "").toLowerCase()]; + //perform scheme specific serialization + if (schemeHandler && schemeHandler.serialize) schemeHandler.serialize(components, options); + if (components.host) { + //if host component is an IPv6 address + if (protocol.IPV6ADDRESS.test(components.host)) {} + //TODO: normalize IPv6 address as per RFC 5952 + + //if host component is a domain name + else if (options.domainHost || schemeHandler && schemeHandler.domainHost) { + //convert IDN via punycode + try { + components.host = !options.iri ? punycode.toASCII(components.host.replace(protocol.PCT_ENCODED, pctDecChars).toLowerCase()) : punycode.toUnicode(components.host); + } catch (e) { + components.error = components.error || "Host's domain name can not be converted to " + (!options.iri ? "ASCII" : "Unicode") + " via punycode: " + e; + } + } + } + //normalize encoding + _normalizeComponentEncoding(components, protocol); + if (options.reference !== "suffix" && components.scheme) { + uriTokens.push(components.scheme); + uriTokens.push(":"); + } + var authority = _recomposeAuthority(components, options); + if (authority !== undefined) { + if (options.reference !== "suffix") { + uriTokens.push("//"); + } + uriTokens.push(authority); + if (components.path && components.path.charAt(0) !== "/") { + uriTokens.push("/"); + } + } + if (components.path !== undefined) { + var s = components.path; + if (!options.absolutePath && (!schemeHandler || !schemeHandler.absolutePath)) { + s = removeDotSegments(s); + } + if (authority === undefined) { + s = s.replace(/^\/\//, "/%2F"); //don't allow the path to start with "//" + } + uriTokens.push(s); + } + if (components.query !== undefined) { + uriTokens.push("?"); + uriTokens.push(components.query); + } + if (components.fragment !== undefined) { + uriTokens.push("#"); + uriTokens.push(components.fragment); + } + return uriTokens.join(""); //merge tokens into a string +} + +function resolveComponents(base, relative) { + var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; + var skipNormalization = arguments[3]; + + var target = {}; + if (!skipNormalization) { + base = parse(serialize(base, options), options); //normalize base components + relative = parse(serialize(relative, options), options); //normalize relative components + } + options = options || {}; + if (!options.tolerant && relative.scheme) { + target.scheme = relative.scheme; + //target.authority = relative.authority; + target.userinfo = relative.userinfo; + target.host = relative.host; + target.port = relative.port; + target.path = removeDotSegments(relative.path || ""); + target.query = relative.query; + } else { + if (relative.userinfo !== undefined || relative.host !== undefined || relative.port !== undefined) { + //target.authority = relative.authority; + target.userinfo = relative.userinfo; + target.host = relative.host; + target.port = relative.port; + target.path = removeDotSegments(relative.path || ""); + target.query = relative.query; + } else { + if (!relative.path) { + target.path = base.path; + if (relative.query !== undefined) { + target.query = relative.query; + } else { + target.query = base.query; + } + } else { + if (relative.path.charAt(0) === "/") { + target.path = removeDotSegments(relative.path); + } else { + if ((base.userinfo !== undefined || base.host !== undefined || base.port !== undefined) && !base.path) { + target.path = "/" + relative.path; + } else if (!base.path) { + target.path = relative.path; + } else { + target.path = base.path.slice(0, base.path.lastIndexOf("/") + 1) + relative.path; + } + target.path = removeDotSegments(target.path); + } + target.query = relative.query; + } + //target.authority = base.authority; + target.userinfo = base.userinfo; + target.host = base.host; + target.port = base.port; + } + target.scheme = base.scheme; + } + target.fragment = relative.fragment; + return target; +} + +function resolve(baseURI, relativeURI, options) { + var schemelessOptions = assign({ scheme: 'null' }, options); + return serialize(resolveComponents(parse(baseURI, schemelessOptions), parse(relativeURI, schemelessOptions), schemelessOptions, true), schemelessOptions); +} + +function normalize(uri, options) { + if (typeof uri === "string") { + uri = serialize(parse(uri, options), options); + } else if (typeOf(uri) === "object") { + uri = parse(serialize(uri, options), options); + } + return uri; +} + +function equal(uriA, uriB, options) { + if (typeof uriA === "string") { + uriA = serialize(parse(uriA, options), options); + } else if (typeOf(uriA) === "object") { + uriA = serialize(uriA, options); + } + if (typeof uriB === "string") { + uriB = serialize(parse(uriB, options), options); + } else if (typeOf(uriB) === "object") { + uriB = serialize(uriB, options); + } + return uriA === uriB; +} + +function escapeComponent(str, options) { + return str && str.toString().replace(!options || !options.iri ? URI_PROTOCOL.ESCAPE : IRI_PROTOCOL.ESCAPE, pctEncChar); +} + +function unescapeComponent(str, options) { + return str && str.toString().replace(!options || !options.iri ? URI_PROTOCOL.PCT_ENCODED : IRI_PROTOCOL.PCT_ENCODED, pctDecChars); +} + +var handler = { + scheme: "http", + domainHost: true, + parse: function parse(components, options) { + //report missing host + if (!components.host) { + components.error = components.error || "HTTP URIs must have a host."; + } + return components; + }, + serialize: function serialize(components, options) { + var secure = String(components.scheme).toLowerCase() === "https"; + //normalize the default port + if (components.port === (secure ? 443 : 80) || components.port === "") { + components.port = undefined; + } + //normalize the empty path + if (!components.path) { + components.path = "/"; + } + //NOTE: We do not parse query strings for HTTP URIs + //as WWW Form Url Encoded query strings are part of the HTML4+ spec, + //and not the HTTP spec. + return components; + } +}; + +var handler$1 = { + scheme: "https", + domainHost: handler.domainHost, + parse: handler.parse, + serialize: handler.serialize +}; + +function isSecure(wsComponents) { + return typeof wsComponents.secure === 'boolean' ? wsComponents.secure : String(wsComponents.scheme).toLowerCase() === "wss"; +} +//RFC 6455 +var handler$2 = { + scheme: "ws", + domainHost: true, + parse: function parse(components, options) { + var wsComponents = components; + //indicate if the secure flag is set + wsComponents.secure = isSecure(wsComponents); + //construct resouce name + wsComponents.resourceName = (wsComponents.path || '/') + (wsComponents.query ? '?' + wsComponents.query : ''); + wsComponents.path = undefined; + wsComponents.query = undefined; + return wsComponents; + }, + serialize: function serialize(wsComponents, options) { + //normalize the default port + if (wsComponents.port === (isSecure(wsComponents) ? 443 : 80) || wsComponents.port === "") { + wsComponents.port = undefined; + } + //ensure scheme matches secure flag + if (typeof wsComponents.secure === 'boolean') { + wsComponents.scheme = wsComponents.secure ? 'wss' : 'ws'; + wsComponents.secure = undefined; + } + //reconstruct path from resource name + if (wsComponents.resourceName) { + var _wsComponents$resourc = wsComponents.resourceName.split('?'), + _wsComponents$resourc2 = slicedToArray(_wsComponents$resourc, 2), + path = _wsComponents$resourc2[0], + query = _wsComponents$resourc2[1]; + + wsComponents.path = path && path !== '/' ? path : undefined; + wsComponents.query = query; + wsComponents.resourceName = undefined; + } + //forbid fragment component + wsComponents.fragment = undefined; + return wsComponents; + } +}; + +var handler$3 = { + scheme: "wss", + domainHost: handler$2.domainHost, + parse: handler$2.parse, + serialize: handler$2.serialize +}; + +var O = {}; +var isIRI = true; +//RFC 3986 +var UNRESERVED$$ = "[A-Za-z0-9\\-\\.\\_\\~" + (isIRI ? "\\xA0-\\u200D\\u2010-\\u2029\\u202F-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF" : "") + "]"; +var HEXDIG$$ = "[0-9A-Fa-f]"; //case-insensitive +var PCT_ENCODED$ = subexp(subexp("%[EFef]" + HEXDIG$$ + "%" + HEXDIG$$ + HEXDIG$$ + "%" + HEXDIG$$ + HEXDIG$$) + "|" + subexp("%[89A-Fa-f]" + HEXDIG$$ + "%" + HEXDIG$$ + HEXDIG$$) + "|" + subexp("%" + HEXDIG$$ + HEXDIG$$)); //expanded +//RFC 5322, except these symbols as per RFC 6068: @ : / ? # [ ] & ; = +//const ATEXT$$ = "[A-Za-z0-9\\!\\#\\$\\%\\&\\'\\*\\+\\-\\/\\=\\?\\^\\_\\`\\{\\|\\}\\~]"; +//const WSP$$ = "[\\x20\\x09]"; +//const OBS_QTEXT$$ = "[\\x01-\\x08\\x0B\\x0C\\x0E-\\x1F\\x7F]"; //(%d1-8 / %d11-12 / %d14-31 / %d127) +//const QTEXT$$ = merge("[\\x21\\x23-\\x5B\\x5D-\\x7E]", OBS_QTEXT$$); //%d33 / %d35-91 / %d93-126 / obs-qtext +//const VCHAR$$ = "[\\x21-\\x7E]"; +//const WSP$$ = "[\\x20\\x09]"; +//const OBS_QP$ = subexp("\\\\" + merge("[\\x00\\x0D\\x0A]", OBS_QTEXT$$)); //%d0 / CR / LF / obs-qtext +//const FWS$ = subexp(subexp(WSP$$ + "*" + "\\x0D\\x0A") + "?" + WSP$$ + "+"); +//const QUOTED_PAIR$ = subexp(subexp("\\\\" + subexp(VCHAR$$ + "|" + WSP$$)) + "|" + OBS_QP$); +//const QUOTED_STRING$ = subexp('\\"' + subexp(FWS$ + "?" + QCONTENT$) + "*" + FWS$ + "?" + '\\"'); +var ATEXT$$ = "[A-Za-z0-9\\!\\$\\%\\'\\*\\+\\-\\^\\_\\`\\{\\|\\}\\~]"; +var QTEXT$$ = "[\\!\\$\\%\\'\\(\\)\\*\\+\\,\\-\\.0-9\\<\\>A-Z\\x5E-\\x7E]"; +var VCHAR$$ = merge(QTEXT$$, "[\\\"\\\\]"); +var SOME_DELIMS$$ = "[\\!\\$\\'\\(\\)\\*\\+\\,\\;\\:\\@]"; +var UNRESERVED = new RegExp(UNRESERVED$$, "g"); +var PCT_ENCODED = new RegExp(PCT_ENCODED$, "g"); +var NOT_LOCAL_PART = new RegExp(merge("[^]", ATEXT$$, "[\\.]", '[\\"]', VCHAR$$), "g"); +var NOT_HFNAME = new RegExp(merge("[^]", UNRESERVED$$, SOME_DELIMS$$), "g"); +var NOT_HFVALUE = NOT_HFNAME; +function decodeUnreserved(str) { + var decStr = pctDecChars(str); + return !decStr.match(UNRESERVED) ? str : decStr; +} +var handler$4 = { + scheme: "mailto", + parse: function parse$$1(components, options) { + var mailtoComponents = components; + var to = mailtoComponents.to = mailtoComponents.path ? mailtoComponents.path.split(",") : []; + mailtoComponents.path = undefined; + if (mailtoComponents.query) { + var unknownHeaders = false; + var headers = {}; + var hfields = mailtoComponents.query.split("&"); + for (var x = 0, xl = hfields.length; x < xl; ++x) { + var hfield = hfields[x].split("="); + switch (hfield[0]) { + case "to": + var toAddrs = hfield[1].split(","); + for (var _x = 0, _xl = toAddrs.length; _x < _xl; ++_x) { + to.push(toAddrs[_x]); + } + break; + case "subject": + mailtoComponents.subject = unescapeComponent(hfield[1], options); + break; + case "body": + mailtoComponents.body = unescapeComponent(hfield[1], options); + break; + default: + unknownHeaders = true; + headers[unescapeComponent(hfield[0], options)] = unescapeComponent(hfield[1], options); + break; + } + } + if (unknownHeaders) mailtoComponents.headers = headers; + } + mailtoComponents.query = undefined; + for (var _x2 = 0, _xl2 = to.length; _x2 < _xl2; ++_x2) { + var addr = to[_x2].split("@"); + addr[0] = unescapeComponent(addr[0]); + if (!options.unicodeSupport) { + //convert Unicode IDN -> ASCII IDN + try { + addr[1] = punycode.toASCII(unescapeComponent(addr[1], options).toLowerCase()); + } catch (e) { + mailtoComponents.error = mailtoComponents.error || "Email address's domain name can not be converted to ASCII via punycode: " + e; + } + } else { + addr[1] = unescapeComponent(addr[1], options).toLowerCase(); + } + to[_x2] = addr.join("@"); + } + return mailtoComponents; + }, + serialize: function serialize$$1(mailtoComponents, options) { + var components = mailtoComponents; + var to = toArray(mailtoComponents.to); + if (to) { + for (var x = 0, xl = to.length; x < xl; ++x) { + var toAddr = String(to[x]); + var atIdx = toAddr.lastIndexOf("@"); + var localPart = toAddr.slice(0, atIdx).replace(PCT_ENCODED, decodeUnreserved).replace(PCT_ENCODED, toUpperCase).replace(NOT_LOCAL_PART, pctEncChar); + var domain = toAddr.slice(atIdx + 1); + //convert IDN via punycode + try { + domain = !options.iri ? punycode.toASCII(unescapeComponent(domain, options).toLowerCase()) : punycode.toUnicode(domain); + } catch (e) { + components.error = components.error || "Email address's domain name can not be converted to " + (!options.iri ? "ASCII" : "Unicode") + " via punycode: " + e; + } + to[x] = localPart + "@" + domain; + } + components.path = to.join(","); + } + var headers = mailtoComponents.headers = mailtoComponents.headers || {}; + if (mailtoComponents.subject) headers["subject"] = mailtoComponents.subject; + if (mailtoComponents.body) headers["body"] = mailtoComponents.body; + var fields = []; + for (var name in headers) { + if (headers[name] !== O[name]) { + fields.push(name.replace(PCT_ENCODED, decodeUnreserved).replace(PCT_ENCODED, toUpperCase).replace(NOT_HFNAME, pctEncChar) + "=" + headers[name].replace(PCT_ENCODED, decodeUnreserved).replace(PCT_ENCODED, toUpperCase).replace(NOT_HFVALUE, pctEncChar)); + } + } + if (fields.length) { + components.query = fields.join("&"); + } + return components; + } +}; + +var URN_PARSE = /^([^\:]+)\:(.*)/; +//RFC 2141 +var handler$5 = { + scheme: "urn", + parse: function parse$$1(components, options) { + var matches = components.path && components.path.match(URN_PARSE); + var urnComponents = components; + if (matches) { + var scheme = options.scheme || urnComponents.scheme || "urn"; + var nid = matches[1].toLowerCase(); + var nss = matches[2]; + var urnScheme = scheme + ":" + (options.nid || nid); + var schemeHandler = SCHEMES[urnScheme]; + urnComponents.nid = nid; + urnComponents.nss = nss; + urnComponents.path = undefined; + if (schemeHandler) { + urnComponents = schemeHandler.parse(urnComponents, options); + } + } else { + urnComponents.error = urnComponents.error || "URN can not be parsed."; + } + return urnComponents; + }, + serialize: function serialize$$1(urnComponents, options) { + var scheme = options.scheme || urnComponents.scheme || "urn"; + var nid = urnComponents.nid; + var urnScheme = scheme + ":" + (options.nid || nid); + var schemeHandler = SCHEMES[urnScheme]; + if (schemeHandler) { + urnComponents = schemeHandler.serialize(urnComponents, options); + } + var uriComponents = urnComponents; + var nss = urnComponents.nss; + uriComponents.path = (nid || options.nid) + ":" + nss; + return uriComponents; + } +}; + +var UUID = /^[0-9A-Fa-f]{8}(?:\-[0-9A-Fa-f]{4}){3}\-[0-9A-Fa-f]{12}$/; +//RFC 4122 +var handler$6 = { + scheme: "urn:uuid", + parse: function parse(urnComponents, options) { + var uuidComponents = urnComponents; + uuidComponents.uuid = uuidComponents.nss; + uuidComponents.nss = undefined; + if (!options.tolerant && (!uuidComponents.uuid || !uuidComponents.uuid.match(UUID))) { + uuidComponents.error = uuidComponents.error || "UUID is not valid."; + } + return uuidComponents; + }, + serialize: function serialize(uuidComponents, options) { + var urnComponents = uuidComponents; + //normalize UUID + urnComponents.nss = (uuidComponents.uuid || "").toLowerCase(); + return urnComponents; + } +}; + +SCHEMES[handler.scheme] = handler; +SCHEMES[handler$1.scheme] = handler$1; +SCHEMES[handler$2.scheme] = handler$2; +SCHEMES[handler$3.scheme] = handler$3; +SCHEMES[handler$4.scheme] = handler$4; +SCHEMES[handler$5.scheme] = handler$5; +SCHEMES[handler$6.scheme] = handler$6; + +exports.SCHEMES = SCHEMES; +exports.pctEncChar = pctEncChar; +exports.pctDecChars = pctDecChars; +exports.parse = parse; +exports.removeDotSegments = removeDotSegments; +exports.serialize = serialize; +exports.resolveComponents = resolveComponents; +exports.resolve = resolve; +exports.normalize = normalize; +exports.equal = equal; +exports.escapeComponent = escapeComponent; +exports.unescapeComponent = unescapeComponent; + +Object.defineProperty(exports, '__esModule', { value: true }); + +}))); + + +},{}],"ajv":[function(require,module,exports){ +'use strict'; + +var compileSchema = require('./compile') + , resolve = require('./compile/resolve') + , Cache = require('./cache') + , SchemaObject = require('./compile/schema_obj') + , stableStringify = require('fast-json-stable-stringify') + , formats = require('./compile/formats') + , rules = require('./compile/rules') + , $dataMetaSchema = require('./data') + , util = require('./compile/util'); + +module.exports = Ajv; + +Ajv.prototype.validate = validate; +Ajv.prototype.compile = compile; +Ajv.prototype.addSchema = addSchema; +Ajv.prototype.addMetaSchema = addMetaSchema; +Ajv.prototype.validateSchema = validateSchema; +Ajv.prototype.getSchema = getSchema; +Ajv.prototype.removeSchema = removeSchema; +Ajv.prototype.addFormat = addFormat; +Ajv.prototype.errorsText = errorsText; + +Ajv.prototype._addSchema = _addSchema; +Ajv.prototype._compile = _compile; + +Ajv.prototype.compileAsync = require('./compile/async'); +var customKeyword = require('./keyword'); +Ajv.prototype.addKeyword = customKeyword.add; +Ajv.prototype.getKeyword = customKeyword.get; +Ajv.prototype.removeKeyword = customKeyword.remove; +Ajv.prototype.validateKeyword = customKeyword.validate; + +var errorClasses = require('./compile/error_classes'); +Ajv.ValidationError = errorClasses.Validation; +Ajv.MissingRefError = errorClasses.MissingRef; +Ajv.$dataMetaSchema = $dataMetaSchema; + +var META_SCHEMA_ID = 'http://json-schema.org/draft-07/schema'; + +var META_IGNORE_OPTIONS = [ 'removeAdditional', 'useDefaults', 'coerceTypes', 'strictDefaults' ]; +var META_SUPPORT_DATA = ['/properties']; + +/** + * Creates validator instance. + * Usage: `Ajv(opts)` + * @param {Object} opts optional options + * @return {Object} ajv instance + */ +function Ajv(opts) { + if (!(this instanceof Ajv)) return new Ajv(opts); + opts = this._opts = util.copy(opts) || {}; + setLogger(this); + this._schemas = {}; + this._refs = {}; + this._fragments = {}; + this._formats = formats(opts.format); + + this._cache = opts.cache || new Cache; + this._loadingSchemas = {}; + this._compilations = []; + this.RULES = rules(); + this._getId = chooseGetId(opts); + + opts.loopRequired = opts.loopRequired || Infinity; + if (opts.errorDataPath == 'property') opts._errorDataPathProperty = true; + if (opts.serialize === undefined) opts.serialize = stableStringify; + this._metaOpts = getMetaSchemaOptions(this); + + if (opts.formats) addInitialFormats(this); + if (opts.keywords) addInitialKeywords(this); + addDefaultMetaSchema(this); + if (typeof opts.meta == 'object') this.addMetaSchema(opts.meta); + if (opts.nullable) this.addKeyword('nullable', {metaSchema: {type: 'boolean'}}); + addInitialSchemas(this); +} + + + +/** + * Validate data using schema + * Schema will be compiled and cached (using serialized JSON as key. [fast-json-stable-stringify](https://github.com/epoberezkin/fast-json-stable-stringify) is used to serialize. + * @this Ajv + * @param {String|Object} schemaKeyRef key, ref or schema object + * @param {Any} data to be validated + * @return {Boolean} validation result. Errors from the last validation will be available in `ajv.errors` (and also in compiled schema: `schema.errors`). + */ +function validate(schemaKeyRef, data) { + var v; + if (typeof schemaKeyRef == 'string') { + v = this.getSchema(schemaKeyRef); + if (!v) throw new Error('no schema with key or ref "' + schemaKeyRef + '"'); + } else { + var schemaObj = this._addSchema(schemaKeyRef); + v = schemaObj.validate || this._compile(schemaObj); + } + + var valid = v(data); + if (v.$async !== true) this.errors = v.errors; + return valid; +} + + +/** + * Create validating function for passed schema. + * @this Ajv + * @param {Object} schema schema object + * @param {Boolean} _meta true if schema is a meta-schema. Used internally to compile meta schemas of custom keywords. + * @return {Function} validating function + */ +function compile(schema, _meta) { + var schemaObj = this._addSchema(schema, undefined, _meta); + return schemaObj.validate || this._compile(schemaObj); +} + + +/** + * Adds schema to the instance. + * @this Ajv + * @param {Object|Array} schema schema or array of schemas. If array is passed, `key` and other parameters will be ignored. + * @param {String} key Optional schema key. Can be passed to `validate` method instead of schema object or id/ref. One schema per instance can have empty `id` and `key`. + * @param {Boolean} _skipValidation true to skip schema validation. Used internally, option validateSchema should be used instead. + * @param {Boolean} _meta true if schema is a meta-schema. Used internally, addMetaSchema should be used instead. + * @return {Ajv} this for method chaining + */ +function addSchema(schema, key, _skipValidation, _meta) { + if (Array.isArray(schema)){ + for (var i=0; i} errors optional array of validation errors, if not passed errors from the instance are used. + * @param {Object} options optional options with properties `separator` and `dataVar`. + * @return {String} human readable string with all errors descriptions + */ +function errorsText(errors, options) { + errors = errors || this.errors; + if (!errors) return 'No errors'; + options = options || {}; + var separator = options.separator === undefined ? ', ' : options.separator; + var dataVar = options.dataVar === undefined ? 'data' : options.dataVar; + + var text = ''; + for (var i=0; i%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,u=/^(?:(?:http[s\u017F]?|ftp):\/\/)(?:(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+(?::(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*)?@)?(?:(?!10(?:\.[0-9]{1,3}){3})(?!127(?:\.[0-9]{1,3}){3})(?!169\.254(?:\.[0-9]{1,3}){2})(?!192\.168(?:\.[0-9]{1,3}){2})(?!172\.(?:1[6-9]|2[0-9]|3[01])(?:\.[0-9]{1,3}){2})(?:[1-9][0-9]?|1[0-9][0-9]|2[01][0-9]|22[0-3])(?:\.(?:1?[0-9]{1,2}|2[0-4][0-9]|25[0-5])){2}(?:\.(?:[1-9][0-9]?|1[0-9][0-9]|2[0-4][0-9]|25[0-4]))|(?:(?:(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+-)*(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+)(?:\.(?:(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+-)*(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+)*(?:\.(?:(?:[a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]){2,})))(?::[0-9]{2,5})?(?:\/(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*)?$/i,h=/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,d=/^(?:\/(?:[^~/]|~0|~1)*)*$/,p=/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,f=/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/;function m(e){return a.copy(m[e="full"==e?"full":"fast"])}function v(e){var r=e.match(o);if(!r)return!1;var t,a=+r[2],s=+r[3];return 1<=a&&a<=12&&1<=s&&s<=(2!=a||((t=+r[1])%4!=0||t%100==0&&t%400!=0)?i[a]:29)}function y(e,r){var t=e.match(n);if(!t)return!1;var a=t[1],s=t[2],o=t[3];return(a<=23&&s<=59&&o<=59||23==a&&59==s&&60==o)&&(!r||t[5])}(r.exports=m).fast={date:/^\d\d\d\d-[0-1]\d-[0-3]\d$/,time:/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,"date-time":/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,"uri-template":c,url:u,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i,hostname:s,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^\s*(?:(?:(?:[0-9a-f]{1,4}:){7}(?:[0-9a-f]{1,4}|:))|(?:(?:[0-9a-f]{1,4}:){6}(?::[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){5}(?:(?:(?::[0-9a-f]{1,4}){1,2})|:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){4}(?:(?:(?::[0-9a-f]{1,4}){1,3})|(?:(?::[0-9a-f]{1,4})?:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){3}(?:(?:(?::[0-9a-f]{1,4}){1,4})|(?:(?::[0-9a-f]{1,4}){0,2}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){2}(?:(?:(?::[0-9a-f]{1,4}){1,5})|(?:(?::[0-9a-f]{1,4}){0,3}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){1}(?:(?:(?::[0-9a-f]{1,4}){1,6})|(?:(?::[0-9a-f]{1,4}){0,4}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?::(?:(?:(?::[0-9a-f]{1,4}){1,7})|(?:(?::[0-9a-f]{1,4}){0,5}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(?:%.+)?\s*$/i,regex:w,uuid:h,"json-pointer":d,"json-pointer-uri-fragment":p,"relative-json-pointer":f},m.full={date:v,time:y,"date-time":function(e){var r=e.split(g);return 2==r.length&&v(r[0])&&y(r[1],!0)},uri:function(e){return P.test(e)&&l.test(e)},"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":c,url:u,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:s,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^\s*(?:(?:(?:[0-9a-f]{1,4}:){7}(?:[0-9a-f]{1,4}|:))|(?:(?:[0-9a-f]{1,4}:){6}(?::[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){5}(?:(?:(?::[0-9a-f]{1,4}){1,2})|:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){4}(?:(?:(?::[0-9a-f]{1,4}){1,3})|(?:(?::[0-9a-f]{1,4})?:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){3}(?:(?:(?::[0-9a-f]{1,4}){1,4})|(?:(?::[0-9a-f]{1,4}){0,2}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){2}(?:(?:(?::[0-9a-f]{1,4}){1,5})|(?:(?::[0-9a-f]{1,4}){0,3}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){1}(?:(?:(?::[0-9a-f]{1,4}){1,6})|(?:(?::[0-9a-f]{1,4}){0,4}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?::(?:(?:(?::[0-9a-f]{1,4}){1,7})|(?:(?::[0-9a-f]{1,4}){0,5}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(?:%.+)?\s*$/i,regex:w,uuid:h,"json-pointer":d,"json-pointer-uri-fragment":p,"relative-json-pointer":f};var g=/t|\s/i;var P=/\/|:/;var E=/[^\\]\\Z/;function w(e){if(E.test(e))return!1;try{return new RegExp(e),!0}catch(e){return!1}}},{"./util":10}],5:[function(e,r,t){"use strict";var R=e("./resolve"),$=e("./util"),j=e("./error_classes"),D=e("fast-json-stable-stringify"),O=e("../dotjs/validate"),I=$.ucs2length,A=e("fast-deep-equal"),k=j.Validation;function C(e,c,u,r){var d=this,p=this._opts,h=[void 0],f={},l=[],t={},m=[],a={},v=[],s=function(e,r,t){var a=L.call(this,e,r,t);return 0<=a?{index:a,compiling:!0}:{index:a=this._compilations.length,compiling:!(this._compilations[a]={schema:e,root:r,baseId:t})}}.call(this,e,c=c||{schema:e,refVal:h,refs:f},r),o=this._compilations[s.index];if(s.compiling)return o.callValidate=P;var y=this._formats,g=this.RULES;try{var i=E(e,c,u,r);o.validate=i;var n=o.callValidate;return n&&(n.schema=i.schema,n.errors=null,n.refs=i.refs,n.refVal=i.refVal,n.root=i.root,n.$async=i.$async,p.sourceCode&&(n.source=i.source)),i}finally{(function(e,r,t){var a=L.call(this,e,r,t);0<=a&&this._compilations.splice(a,1)}).call(this,e,c,r)}function P(){var e=o.validate,r=e.apply(this,arguments);return P.errors=e.errors,r}function E(e,r,t,a){var s=!r||r&&r.schema==e;if(r.schema!=c.schema)return C.call(d,e,r,t,a);var o=!0===e.$async,i=O({isTop:!0,schema:e,isRoot:s,baseId:a,root:r,schemaPath:"",errSchemaPath:"#",errorPath:'""',MissingRefError:j.MissingRef,RULES:g,validate:O,util:$,resolve:R,resolveRef:w,usePattern:_,useDefault:F,useCustomRule:x,opts:p,formats:y,logger:d.logger,self:d}),i=Q(h,z)+Q(l,N)+Q(m,q)+Q(v,T)+i;p.processCode&&(i=p.processCode(i,e));try{var n=new Function("self","RULES","formats","root","refVal","defaults","customRules","equal","ucs2length","ValidationError",i)(d,g,y,c,h,m,v,A,I,k);h[0]=n}catch(e){throw d.logger.error("Error compiling schema, function code:",i),e}return n.schema=e,n.errors=null,n.refs=f,n.refVal=h,n.root=s?n:r,o&&(n.$async=!0),!0===p.sourceCode&&(n.source={code:i,patterns:l,defaults:m}),n}function w(e,r,t){r=R.url(e,r);var a,s,o=f[r];if(void 0!==o)return S(a=h[o],s="refVal["+o+"]");if(!t&&c.refs){var i=c.refs[r];if(void 0!==i)return S(a=c.refVal[i],s=b(r,a))}s=b(r);var n,l=R.call(d,E,c,r);if(void 0!==l||(n=u&&u[r])&&(l=R.inlineRef(n,p.inlineRefs)?n:C.call(d,n,c,u,e)),void 0!==l)return S(h[f[r]]=l,s);delete f[r]}function b(e,r){var t=h.length;return h[t]=r,"refVal"+(f[e]=t)}function S(e,r){return"object"==typeof e||"boolean"==typeof e?{code:r,schema:e,inline:!0}:{code:r,$async:e&&!!e.$async}}function _(e){var r=t[e];return void 0===r&&(r=t[e]=l.length,l[r]=e),"pattern"+r}function F(e){switch(typeof e){case"boolean":case"number":return""+e;case"string":return $.toQuotedString(e);case"object":if(null===e)return"null";var r=D(e),t=a[r];return void 0===t&&(t=a[r]=m.length,m[t]=e),"default"+t}}function x(e,r,t,a){if(!1!==d._opts.validateSchema){var s=e.definition.dependencies;if(s&&!s.every(function(e){return Object.prototype.hasOwnProperty.call(t,e)}))throw new Error("parent schema must have all required keywords: "+s.join(","));var o=e.definition.validateSchema;if(o)if(!o(r)){var i="keyword schema is invalid: "+d.errorsText(o.errors);if("log"!=d._opts.validateSchema)throw new Error(i);d.logger.error(i)}}var n,l=e.definition.compile,c=e.definition.inline,u=e.definition.macro;if(l)n=l.call(d,r,t,a);else if(u)n=u.call(d,r,t,a),!1!==p.validateSchema&&d.validateSchema(n,!0);else if(c)n=c.call(d,a,e.keyword,r,t);else if(!(n=e.definition.validate))return;if(void 0===n)throw new Error('custom keyword "'+e.keyword+'"failed to compile');var h=v.length;return{code:"customRule"+h,validate:v[h]=n}}}function L(e,r,t){for(var a=0;a",_=P?">":"<",F=void 0;if(!y&&"number"!=typeof d&&void 0!==d)throw new Error(r+" must be number");if(!b&&void 0!==w&&"number"!=typeof w&&"boolean"!=typeof w)throw new Error(E+" must be number or boolean");b?(o="exclIsNumber"+u,i="' + "+(n="op"+u)+" + '",c+=" var schemaExcl"+u+" = "+(t=e.util.getData(w.$data,h,e.dataPathArr))+"; ",F=E,(l=l||[]).push(c+=" var "+(a="exclusive"+u)+"; var "+(s="exclType"+u)+" = typeof "+(t="schemaExcl"+u)+"; if ("+s+" != 'boolean' && "+s+" != 'undefined' && "+s+" != 'number') { "),c="",!1!==e.createErrors?(c+=" { keyword: '"+(F||"_exclusiveLimit")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(f)+" , params: {} ",!1!==e.opts.messages&&(c+=" , message: '"+E+" should be boolean' "),e.opts.verbose&&(c+=" , schema: validate.schema"+p+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+v+" "),c+=" } "):c+=" {} ",x=c,c=l.pop(),c+=!e.compositeRule&&m?e.async?" throw new ValidationError(["+x+"]); ":" validate.errors = ["+x+"]; return false; ":" var err = "+x+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",c+=" } else if ( ",y&&(c+=" ("+g+" !== undefined && typeof "+g+" != 'number') || "),c+=" "+s+" == 'number' ? ( ("+a+" = "+g+" === undefined || "+t+" "+S+"= "+g+") ? "+v+" "+_+"= "+t+" : "+v+" "+_+" "+g+" ) : ( ("+a+" = "+t+" === true) ? "+v+" "+_+"= "+g+" : "+v+" "+_+" "+g+" ) || "+v+" !== "+v+") { var op"+u+" = "+a+" ? '"+S+"' : '"+S+"='; ",void 0===d&&(f=e.errSchemaPath+"/"+(F=E),g=t,y=b)):(i=S,(o="number"==typeof w)&&y?(n="'"+i+"'",c+=" if ( ",y&&(c+=" ("+g+" !== undefined && typeof "+g+" != 'number') || "),c+=" ( "+g+" === undefined || "+w+" "+S+"= "+g+" ? "+v+" "+_+"= "+w+" : "+v+" "+_+" "+g+" ) || "+v+" !== "+v+") { "):(o&&void 0===d?(a=!0,f=e.errSchemaPath+"/"+(F=E),g=w,_+="="):(o&&(g=Math[P?"min":"max"](w,d)),w===(!o||g)?(a=!0,f=e.errSchemaPath+"/"+(F=E),_+="="):(a=!1,i+="=")),n="'"+i+"'",c+=" if ( ",y&&(c+=" ("+g+" !== undefined && typeof "+g+" != 'number') || "),c+=" "+v+" "+_+" "+g+" || "+v+" !== "+v+") { ")),F=F||r,(l=l||[]).push(c),c="",!1!==e.createErrors?(c+=" { keyword: '"+(F||"_limit")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(f)+" , params: { comparison: "+n+", limit: "+g+", exclusive: "+a+" } ",!1!==e.opts.messages&&(c+=" , message: 'should be "+i+" ",c+=y?"' + "+g:g+"'"),e.opts.verbose&&(c+=" , schema: ",c+=y?"validate.schema"+p:""+d,c+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+v+" "),c+=" } "):c+=" {} ";var x=c;return c=l.pop(),c+=!e.compositeRule&&m?e.async?" throw new ValidationError(["+x+"]); ":" validate.errors = ["+x+"]; return false; ":" var err = "+x+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",c+=" } ",m&&(c+=" else { "),c}},{}],14:[function(e,r,t){"use strict";r.exports=function(e,r){var t=" ",a=e.level,s=e.dataLevel,o=e.schema[r],i=e.schemaPath+e.util.getProperty(r),n=e.errSchemaPath+"/"+r,l=!e.opts.allErrors,c="data"+(s||""),u=e.opts.$data&&o&&o.$data,h=u?(t+=" var schema"+a+" = "+e.util.getData(o.$data,s,e.dataPathArr)+"; ","schema"+a):o;if(!u&&"number"!=typeof o)throw new Error(r+" must be number");t+="if ( ",u&&(t+=" ("+h+" !== undefined && typeof "+h+" != 'number') || ");var d=r,p=p||[];p.push(t+=" "+c+".length "+("maxItems"==r?">":"<")+" "+h+") { "),t="",!1!==e.createErrors?(t+=" { keyword: '"+(d||"_limitItems")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(n)+" , params: { limit: "+h+" } ",!1!==e.opts.messages&&(t+=" , message: 'should NOT have ",t+="maxItems"==r?"more":"fewer",t+=" than ",t+=u?"' + "+h+" + '":""+o,t+=" items' "),e.opts.verbose&&(t+=" , schema: ",t+=u?"validate.schema"+i:""+o,t+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),t+=" } "):t+=" {} ";var f=t,t=p.pop();return t+=!e.compositeRule&&l?e.async?" throw new ValidationError(["+f+"]); ":" validate.errors = ["+f+"]; return false; ":" var err = "+f+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",t+="} ",l&&(t+=" else { "),t}},{}],15:[function(e,r,t){"use strict";r.exports=function(e,r){var t=" ",a=e.level,s=e.dataLevel,o=e.schema[r],i=e.schemaPath+e.util.getProperty(r),n=e.errSchemaPath+"/"+r,l=!e.opts.allErrors,c="data"+(s||""),u=e.opts.$data&&o&&o.$data,h=u?(t+=" var schema"+a+" = "+e.util.getData(o.$data,s,e.dataPathArr)+"; ","schema"+a):o;if(!u&&"number"!=typeof o)throw new Error(r+" must be number");t+="if ( ",u&&(t+=" ("+h+" !== undefined && typeof "+h+" != 'number') || "),t+=!1===e.opts.unicode?" "+c+".length ":" ucs2length("+c+") ";var d=r,p=p||[];p.push(t+=" "+("maxLength"==r?">":"<")+" "+h+") { "),t="",!1!==e.createErrors?(t+=" { keyword: '"+(d||"_limitLength")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(n)+" , params: { limit: "+h+" } ",!1!==e.opts.messages&&(t+=" , message: 'should NOT be ",t+="maxLength"==r?"longer":"shorter",t+=" than ",t+=u?"' + "+h+" + '":""+o,t+=" characters' "),e.opts.verbose&&(t+=" , schema: ",t+=u?"validate.schema"+i:""+o,t+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),t+=" } "):t+=" {} ";var f=t,t=p.pop();return t+=!e.compositeRule&&l?e.async?" throw new ValidationError(["+f+"]); ":" validate.errors = ["+f+"]; return false; ":" var err = "+f+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",t+="} ",l&&(t+=" else { "),t}},{}],16:[function(e,r,t){"use strict";r.exports=function(e,r){var t=" ",a=e.level,s=e.dataLevel,o=e.schema[r],i=e.schemaPath+e.util.getProperty(r),n=e.errSchemaPath+"/"+r,l=!e.opts.allErrors,c="data"+(s||""),u=e.opts.$data&&o&&o.$data,h=u?(t+=" var schema"+a+" = "+e.util.getData(o.$data,s,e.dataPathArr)+"; ","schema"+a):o;if(!u&&"number"!=typeof o)throw new Error(r+" must be number");t+="if ( ",u&&(t+=" ("+h+" !== undefined && typeof "+h+" != 'number') || ");var d=r,p=p||[];p.push(t+=" Object.keys("+c+").length "+("maxProperties"==r?">":"<")+" "+h+") { "),t="",!1!==e.createErrors?(t+=" { keyword: '"+(d||"_limitProperties")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(n)+" , params: { limit: "+h+" } ",!1!==e.opts.messages&&(t+=" , message: 'should NOT have ",t+="maxProperties"==r?"more":"fewer",t+=" than ",t+=u?"' + "+h+" + '":""+o,t+=" properties' "),e.opts.verbose&&(t+=" , schema: ",t+=u?"validate.schema"+i:""+o,t+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),t+=" } "):t+=" {} ";var f=t,t=p.pop();return t+=!e.compositeRule&&l?e.async?" throw new ValidationError(["+f+"]); ":" validate.errors = ["+f+"]; return false; ":" var err = "+f+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",t+="} ",l&&(t+=" else { "),t}},{}],17:[function(e,r,t){"use strict";r.exports=function(e,r){var t=" ",a=e.schema[r],s=e.schemaPath+e.util.getProperty(r),o=e.errSchemaPath+"/"+r,i=!e.opts.allErrors,n=e.util.copy(e),l="";n.level++;var c="valid"+n.level,u=n.baseId,h=!0,d=a;if(d)for(var p,f=-1,m=d.length-1;f "+_+") { ",x=c+"["+_+"]",d.schema=$,d.schemaPath=i+"["+_+"]",d.errSchemaPath=n+"/"+_,d.errorPath=e.util.getPathExpr(e.errorPath,_,e.opts.jsonPointers,!0),d.dataPathArr[v]=_,R=e.validate(d),d.baseId=g,e.util.varOccurences(R,y)<2?t+=" "+e.util.varReplace(R,y,x)+" ":t+=" var "+y+" = "+x+"; "+R+" ",t+=" } ",l&&(t+=" if ("+f+") { ",p+="}"))}"object"==typeof b&&(e.opts.strictKeywords?"object"==typeof b&&0 "+o.length+") { for (var "+m+" = "+o.length+"; "+m+" < "+c+".length; "+m+"++) { ",d.errorPath=e.util.getPathExpr(e.errorPath,m,e.opts.jsonPointers,!0),x=c+"["+m+"]",d.dataPathArr[v]=m,R=e.validate(d),d.baseId=g,e.util.varOccurences(R,y)<2?t+=" "+e.util.varReplace(R,y,x)+" ":t+=" var "+y+" = "+x+"; "+R+" ",l&&(t+=" if (!"+f+") break; "),t+=" } } ",l&&(t+=" if ("+f+") { ",p+="}"))}else{(e.opts.strictKeywords?"object"==typeof o&&0 1e-"+e.opts.multipleOfPrecision+" ":" division"+a+" !== parseInt(division"+a+") ",t+=" ) ",u&&(t+=" ) ");var d=d||[];d.push(t+=" ) { "),t="",!1!==e.createErrors?(t+=" { keyword: 'multipleOf' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(n)+" , params: { multipleOf: "+h+" } ",!1!==e.opts.messages&&(t+=" , message: 'should be multiple of ",t+=u?"' + "+h:h+"'"),e.opts.verbose&&(t+=" , schema: ",t+=u?"validate.schema"+i:""+o,t+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),t+=" } "):t+=" {} ";var p=t,t=d.pop();return t+=!e.compositeRule&&l?e.async?" throw new ValidationError(["+p+"]); ":" validate.errors = ["+p+"]; return false; ":" var err = "+p+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",t+="} ",l&&(t+=" else { "),t}},{}],30:[function(e,r,t){"use strict";r.exports=function(e,r){var t=" ",a=e.level,s=e.dataLevel,o=e.schema[r],i=e.schemaPath+e.util.getProperty(r),n=e.errSchemaPath+"/"+r,l=!e.opts.allErrors,c="data"+(s||""),u="errs__"+a,h=e.util.copy(e);h.level++;var d,p,f,m,v="valid"+h.level;return(e.opts.strictKeywords?"object"==typeof o&&0 1) { ",t=e.schema.items&&e.schema.items.type,a=Array.isArray(t),!t||"object"==t||"array"==t||a&&(0<=t.indexOf("object")||0<=t.indexOf("array"))?i+=" outer: for (;i--;) { for (j = i; j--;) { if (equal("+p+"[i], "+p+"[j])) { "+f+" = false; break outer; } } } ":(i+=" var itemIndices = {}, item; for (;i--;) { var item = "+p+"[i]; ",i+=" if ("+e.util["checkDataType"+(a?"s":"")](t,"item",e.opts.strictNumbers,!0)+") continue; ",a&&(i+=" if (typeof item == 'string') item = '\"' + item; "),i+=" if (typeof itemIndices[item] == 'number') { "+f+" = false; j = itemIndices[item]; break; } itemIndices[item] = i; } "),i+=" } ",m&&(i+=" } "),(s=s||[]).push(i+=" if (!"+f+") { "),i="",!1!==e.createErrors?(i+=" { keyword: 'uniqueItems' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(h)+" , params: { i: i, j: j } ",!1!==e.opts.messages&&(i+=" , message: 'should NOT have duplicate items (items ## ' + j + ' and ' + i + ' are identical)' "),e.opts.verbose&&(i+=" , schema: ",i+=m?"validate.schema"+u:""+c,i+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+p+" "),i+=" } "):i+=" {} ",o=i,i=s.pop(),i+=!e.compositeRule&&d?e.async?" throw new ValidationError(["+o+"]); ":" validate.errors = ["+o+"]; return false; ":" var err = "+o+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } ",d&&(i+=" else { ")):d&&(i+=" if (true) { "),i}},{}],38:[function(e,r,t){"use strict";r.exports=function(a,e){var r="",t=!0===a.schema.$async,s=a.util.schemaHasRulesExcept(a.schema,a.RULES.all,"$ref"),o=a.self._getId(a.schema);if(a.opts.strictKeywords){var i=a.util.schemaUnknownRules(a.schema,a.RULES.keywords);if(i){var n="unknown keyword: "+i;if("log"!==a.opts.strictKeywords)throw new Error(n);a.logger.warn(n)}}if(a.isTop&&(r+=" var validate = ",t&&(a.async=!0,r+="async "),r+="function(data, dataPath, parentData, parentDataProperty, rootData) { 'use strict'; ",o&&(a.opts.sourceCode||a.opts.processCode)&&(r+=" /*# sourceURL="+o+" */ ")),"boolean"==typeof a.schema||!s&&!a.schema.$ref){var l=a.level,c=a.dataLevel,u=a.schema[e="false schema"],h=a.schemaPath+a.util.getProperty(e),d=a.errSchemaPath+"/"+e,p=!a.opts.allErrors,f="data"+(c||""),m="valid"+l;return!1===a.schema?(a.isTop?p=!0:r+=" var "+m+" = false; ",(U=U||[]).push(r),r="",!1!==a.createErrors?(r+=" { keyword: 'false schema' , dataPath: (dataPath || '') + "+a.errorPath+" , schemaPath: "+a.util.toQuotedString(d)+" , params: {} ",!1!==a.opts.messages&&(r+=" , message: 'boolean schema is false' "),a.opts.verbose&&(r+=" , schema: false , parentSchema: validate.schema"+a.schemaPath+" , data: "+f+" "),r+=" } "):r+=" {} ",D=r,r=U.pop(),r+=!a.compositeRule&&p?a.async?" throw new ValidationError(["+D+"]); ":" validate.errors = ["+D+"]; return false; ":" var err = "+D+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; "):r+=a.isTop?t?" return data; ":" validate.errors = null; return true; ":" var "+m+" = true; ",a.isTop&&(r+=" }; return validate; "),r}if(a.isTop){var v=a.isTop,l=a.level=0,c=a.dataLevel=0,f="data";if(a.rootId=a.resolve.fullPath(a.self._getId(a.root.schema)),a.baseId=a.baseId||a.rootId,delete a.isTop,a.dataPathArr=[""],void 0!==a.schema.default&&a.opts.useDefaults&&a.opts.strictDefaults){var y="default is ignored in the schema root";if("log"!==a.opts.strictDefaults)throw new Error(y);a.logger.warn(y)}r+=" var vErrors = null; ",r+=" var errors = 0; ",r+=" if (rootData === undefined) rootData = data; "}else{l=a.level,f="data"+((c=a.dataLevel)||"");if(o&&(a.baseId=a.resolve.url(a.baseId,o)),t&&!a.async)throw new Error("async schema in sync schema");r+=" var errs_"+l+" = errors;"}var g,m="valid"+l,p=!a.opts.allErrors,P="",E="",w=a.schema.type,b=Array.isArray(w);if(w&&a.opts.nullable&&!0===a.schema.nullable&&(b?-1==w.indexOf("null")&&(w=w.concat("null")):"null"!=w&&(w=[w,"null"],b=!0)),b&&1==w.length&&(w=w[0],b=!1),a.schema.$ref&&s){if("fail"==a.opts.extendRefs)throw new Error('$ref: validation keywords used in schema at path "'+a.errSchemaPath+'" (see option extendRefs)');!0!==a.opts.extendRefs&&(s=!1,a.logger.warn('$ref: keywords ignored in schema at path "'+a.errSchemaPath+'"'))}if(a.schema.$comment&&a.opts.$comment&&(r+=" "+a.RULES.all.$comment.code(a,"$comment")),w){a.opts.coerceTypes&&(g=a.util.coerceToTypes(a.opts.coerceTypes,w));var S=a.RULES.types[w];if(g||b||!0===S||S&&!Z(S)){h=a.schemaPath+".type",d=a.errSchemaPath+"/type",h=a.schemaPath+".type",d=a.errSchemaPath+"/type";if(r+=" if ("+a.util[b?"checkDataTypes":"checkDataType"](w,f,a.opts.strictNumbers,!0)+") { ",g){var _="dataType"+l,F="coerced"+l;r+=" var "+_+" = typeof "+f+"; var "+F+" = undefined; ","array"==a.opts.coerceTypes&&(r+=" if ("+_+" == 'object' && Array.isArray("+f+") && "+f+".length == 1) { "+f+" = "+f+"[0]; "+_+" = typeof "+f+"; if ("+a.util.checkDataType(a.schema.type,f,a.opts.strictNumbers)+") "+F+" = "+f+"; } "),r+=" if ("+F+" !== undefined) ; ";var x=g;if(x)for(var R,$=-1,j=x.length-1;$= 0x80 (not a basic code point)","invalid-input":"Invalid input"},k=Math.floor,C=String.fromCharCode;function L(e){throw new RangeError(i[e])}function n(e,r){var t=e.split("@"),a="";return 1>1,e+=k(e/r);455k((A-a)/h))&&L("overflow"),a+=p*h;var f=d<=o?1:o+26<=d?26:d-o;if(pk(A/m)&&L("overflow"),h*=m}var v=r.length+1,o=z(a-u,v,0==u);k(a/v)>A-s&&L("overflow"),s+=k(a/v),a%=v,r.splice(a++,0,s)}return String.fromCodePoint.apply(String,r)}function c(e){var r=[],t=(e=N(e)).length,a=128,s=0,o=72,i=!0,n=!1,l=void 0;try{for(var c,u=e[Symbol.iterator]();!(i=(c=u.next()).done);i=!0){var h=c.value;h<128&&r.push(C(h))}}catch(e){n=!0,l=e}finally{try{!i&&u.return&&u.return()}finally{if(n)throw l}}var d=r.length,p=d;for(d&&r.push("-");pk((A-s)/w)&&L("overflow"),s+=(f-a)*w,a=f;var b=!0,S=!1,_=void 0;try{for(var F,x=e[Symbol.iterator]();!(b=(F=x.next()).done);b=!0){var R=F.value;if(RA&&L("overflow"),R==a){for(var $=s,j=36;;j+=36){var D=j<=o?1:o+26<=j?26:j-o;if($>6|192).toString(16).toUpperCase()+"%"+(63&r|128).toString(16).toUpperCase():"%"+(r>>12|224).toString(16).toUpperCase()+"%"+(r>>6&63|128).toString(16).toUpperCase()+"%"+(63&r|128).toString(16).toUpperCase()}function p(e){for(var r="",t=0,a=e.length;tA-Z\\x5E-\\x7E]",'[\\"\\\\]')),Y=new RegExp(K,"g"),W=new RegExp("(?:(?:%[EFef][0-9A-Fa-f]%[0-9A-Fa-f][0-9A-Fa-f]%[0-9A-Fa-f][0-9A-Fa-f])|(?:%[89A-Fa-f][0-9A-Fa-f]%[0-9A-Fa-f][0-9A-Fa-f])|(?:%[0-9A-Fa-f][0-9A-Fa-f]))","g"),X=new RegExp(J("[^]","[A-Za-z0-9\\!\\$\\%\\'\\*\\+\\-\\^\\_\\`\\{\\|\\}\\~]","[\\.]",'[\\"]',G),"g"),ee=new RegExp(J("[^]",K,"[\\!\\$\\'\\(\\)\\*\\+\\,\\;\\:\\@]"),"g"),re=ee;function te(e){var r=p(e);return r.match(Y)?r:e}var ae={scheme:"mailto",parse:function(e,r){var t=e,a=t.to=t.path?t.path.split(","):[];if(t.path=void 0,t.query){for(var s=!1,o={},i=t.query.split("&"),n=0,l=i.length;n); + + message: string; + errors: Array; + ajv: true; + validation: true; + } + + class MissingRefError extends Error { + constructor(baseId: string, ref: string, message?: string); + static message: (baseId: string, ref: string) => string; + + message: string; + missingRef: string; + missingSchema: string; + } +} + +declare namespace ajv { + type ValidationError = AjvErrors.ValidationError; + + type MissingRefError = AjvErrors.MissingRefError; + + interface Ajv { + /** + * Validate data using schema + * Schema will be compiled and cached (using serialized JSON as key, [fast-json-stable-stringify](https://github.com/epoberezkin/fast-json-stable-stringify) is used to serialize by default). + * @param {string|object|Boolean} schemaKeyRef key, ref or schema object + * @param {Any} data to be validated + * @return {Boolean} validation result. Errors from the last validation will be available in `ajv.errors` (and also in compiled schema: `schema.errors`). + */ + validate(schemaKeyRef: object | string | boolean, data: any): boolean | PromiseLike; + /** + * Create validating function for passed schema. + * @param {object|Boolean} schema schema object + * @return {Function} validating function + */ + compile(schema: object | boolean): ValidateFunction; + /** + * Creates validating function for passed schema with asynchronous loading of missing schemas. + * `loadSchema` option should be a function that accepts schema uri and node-style callback. + * @this Ajv + * @param {object|Boolean} schema schema object + * @param {Boolean} meta optional true to compile meta-schema; this parameter can be skipped + * @param {Function} callback optional node-style callback, it is always called with 2 parameters: error (or null) and validating function. + * @return {PromiseLike} validating function + */ + compileAsync(schema: object | boolean, meta?: Boolean, callback?: (err: Error, validate: ValidateFunction) => any): PromiseLike; + /** + * Adds schema to the instance. + * @param {object|Array} schema schema or array of schemas. If array is passed, `key` and other parameters will be ignored. + * @param {string} key Optional schema key. Can be passed to `validate` method instead of schema object or id/ref. One schema per instance can have empty `id` and `key`. + * @return {Ajv} this for method chaining + */ + addSchema(schema: Array | object, key?: string): Ajv; + /** + * Add schema that will be used to validate other schemas + * options in META_IGNORE_OPTIONS are alway set to false + * @param {object} schema schema object + * @param {string} key optional schema key + * @return {Ajv} this for method chaining + */ + addMetaSchema(schema: object, key?: string): Ajv; + /** + * Validate schema + * @param {object|Boolean} schema schema to validate + * @return {Boolean} true if schema is valid + */ + validateSchema(schema: object | boolean): boolean; + /** + * Get compiled schema from the instance by `key` or `ref`. + * @param {string} keyRef `key` that was passed to `addSchema` or full schema reference (`schema.id` or resolved id). + * @return {Function} schema validating function (with property `schema`). Returns undefined if keyRef can't be resolved to an existing schema. + */ + getSchema(keyRef: string): ValidateFunction | undefined; + /** + * Remove cached schema(s). + * If no parameter is passed all schemas but meta-schemas are removed. + * If RegExp is passed all schemas with key/id matching pattern but meta-schemas are removed. + * Even if schema is referenced by other schemas it still can be removed as other schemas have local references. + * @param {string|object|RegExp|Boolean} schemaKeyRef key, ref, pattern to match key/ref or schema object + * @return {Ajv} this for method chaining + */ + removeSchema(schemaKeyRef?: object | string | RegExp | boolean): Ajv; + /** + * Add custom format + * @param {string} name format name + * @param {string|RegExp|Function} format string is converted to RegExp; function should return boolean (true when valid) + * @return {Ajv} this for method chaining + */ + addFormat(name: string, format: FormatValidator | FormatDefinition): Ajv; + /** + * Define custom keyword + * @this Ajv + * @param {string} keyword custom keyword, should be a valid identifier, should be different from all standard, custom and macro keywords. + * @param {object} definition keyword definition object with properties `type` (type(s) which the keyword applies to), `validate` or `compile`. + * @return {Ajv} this for method chaining + */ + addKeyword(keyword: string, definition: KeywordDefinition): Ajv; + /** + * Get keyword definition + * @this Ajv + * @param {string} keyword pre-defined or custom keyword. + * @return {object|Boolean} custom keyword definition, `true` if it is a predefined keyword, `false` otherwise. + */ + getKeyword(keyword: string): object | boolean; + /** + * Remove keyword + * @this Ajv + * @param {string} keyword pre-defined or custom keyword. + * @return {Ajv} this for method chaining + */ + removeKeyword(keyword: string): Ajv; + /** + * Validate keyword + * @this Ajv + * @param {object} definition keyword definition object + * @param {boolean} throwError true to throw exception if definition is invalid + * @return {boolean} validation result + */ + validateKeyword(definition: KeywordDefinition, throwError: boolean): boolean; + /** + * Convert array of error message objects to string + * @param {Array} errors optional array of validation errors, if not passed errors from the instance are used. + * @param {object} options optional options with properties `separator` and `dataVar`. + * @return {string} human readable string with all errors descriptions + */ + errorsText(errors?: Array | null, options?: ErrorsTextOptions): string; + errors?: Array | null; + _opts: Options; + } + + interface CustomLogger { + log(...args: any[]): any; + warn(...args: any[]): any; + error(...args: any[]): any; + } + + interface ValidateFunction { + ( + data: any, + dataPath?: string, + parentData?: object | Array, + parentDataProperty?: string | number, + rootData?: object | Array + ): boolean | PromiseLike; + schema?: object | boolean; + errors?: null | Array; + refs?: object; + refVal?: Array; + root?: ValidateFunction | object; + $async?: true; + source?: object; + } + + interface Options { + $data?: boolean; + allErrors?: boolean; + verbose?: boolean; + jsonPointers?: boolean; + uniqueItems?: boolean; + unicode?: boolean; + format?: false | string; + formats?: object; + keywords?: object; + unknownFormats?: true | string[] | 'ignore'; + schemas?: Array | object; + schemaId?: '$id' | 'id' | 'auto'; + missingRefs?: true | 'ignore' | 'fail'; + extendRefs?: true | 'ignore' | 'fail'; + loadSchema?: (uri: string, cb?: (err: Error, schema: object) => void) => PromiseLike; + removeAdditional?: boolean | 'all' | 'failing'; + useDefaults?: boolean | 'empty' | 'shared'; + coerceTypes?: boolean | 'array'; + strictDefaults?: boolean | 'log'; + strictKeywords?: boolean | 'log'; + strictNumbers?: boolean; + async?: boolean | string; + transpile?: string | ((code: string) => string); + meta?: boolean | object; + validateSchema?: boolean | 'log'; + addUsedSchema?: boolean; + inlineRefs?: boolean | number; + passContext?: boolean; + loopRequired?: number; + ownProperties?: boolean; + multipleOfPrecision?: boolean | number; + errorDataPath?: string, + messages?: boolean; + sourceCode?: boolean; + processCode?: (code: string, schema: object) => string; + cache?: object; + logger?: CustomLogger | false; + nullable?: boolean; + serialize?: ((schema: object | boolean) => any) | false; + } + + type FormatValidator = string | RegExp | ((data: string) => boolean | PromiseLike); + type NumberFormatValidator = ((data: number) => boolean | PromiseLike); + + interface NumberFormatDefinition { + type: "number", + validate: NumberFormatValidator; + compare?: (data1: number, data2: number) => number; + async?: boolean; + } + + interface StringFormatDefinition { + type?: "string", + validate: FormatValidator; + compare?: (data1: string, data2: string) => number; + async?: boolean; + } + + type FormatDefinition = NumberFormatDefinition | StringFormatDefinition; + + interface KeywordDefinition { + type?: string | Array; + async?: boolean; + $data?: boolean; + errors?: boolean | string; + metaSchema?: object; + // schema: false makes validate not to expect schema (ValidateFunction) + schema?: boolean; + statements?: boolean; + dependencies?: Array; + modifying?: boolean; + valid?: boolean; + // one and only one of the following properties should be present + validate?: SchemaValidateFunction | ValidateFunction; + compile?: (schema: any, parentSchema: object, it: CompilationContext) => ValidateFunction; + macro?: (schema: any, parentSchema: object, it: CompilationContext) => object | boolean; + inline?: (it: CompilationContext, keyword: string, schema: any, parentSchema: object) => string; + } + + interface CompilationContext { + level: number; + dataLevel: number; + dataPathArr: string[]; + schema: any; + schemaPath: string; + baseId: string; + async: boolean; + opts: Options; + formats: { + [index: string]: FormatDefinition | undefined; + }; + keywords: { + [index: string]: KeywordDefinition | undefined; + }; + compositeRule: boolean; + validate: (schema: object) => boolean; + util: { + copy(obj: any, target?: any): any; + toHash(source: string[]): { [index: string]: true | undefined }; + equal(obj: any, target: any): boolean; + getProperty(str: string): string; + schemaHasRules(schema: object, rules: any): string; + escapeQuotes(str: string): string; + toQuotedString(str: string): string; + getData(jsonPointer: string, dataLevel: number, paths: string[]): string; + escapeJsonPointer(str: string): string; + unescapeJsonPointer(str: string): string; + escapeFragment(str: string): string; + unescapeFragment(str: string): string; + }; + self: Ajv; + } + + interface SchemaValidateFunction { + ( + schema: any, + data: any, + parentSchema?: object, + dataPath?: string, + parentData?: object | Array, + parentDataProperty?: string | number, + rootData?: object | Array + ): boolean | PromiseLike; + errors?: Array; + } + + interface ErrorsTextOptions { + separator?: string; + dataVar?: string; + } + + interface ErrorObject { + keyword: string; + dataPath: string; + schemaPath: string; + params: ErrorParameters; + // Added to validation errors of propertyNames keyword schema + propertyName?: string; + // Excluded if messages set to false. + message?: string; + // These are added with the `verbose` option. + schema?: any; + parentSchema?: object; + data?: any; + } + + type ErrorParameters = RefParams | LimitParams | AdditionalPropertiesParams | + DependenciesParams | FormatParams | ComparisonParams | + MultipleOfParams | PatternParams | RequiredParams | + TypeParams | UniqueItemsParams | CustomParams | + PatternRequiredParams | PropertyNamesParams | + IfParams | SwitchParams | NoParams | EnumParams; + + interface RefParams { + ref: string; + } + + interface LimitParams { + limit: number; + } + + interface AdditionalPropertiesParams { + additionalProperty: string; + } + + interface DependenciesParams { + property: string; + missingProperty: string; + depsCount: number; + deps: string; + } + + interface FormatParams { + format: string + } + + interface ComparisonParams { + comparison: string; + limit: number | string; + exclusive: boolean; + } + + interface MultipleOfParams { + multipleOf: number; + } + + interface PatternParams { + pattern: string; + } + + interface RequiredParams { + missingProperty: string; + } + + interface TypeParams { + type: string; + } + + interface UniqueItemsParams { + i: number; + j: number; + } + + interface CustomParams { + keyword: string; + } + + interface PatternRequiredParams { + missingPattern: string; + } + + interface PropertyNamesParams { + propertyName: string; + } + + interface IfParams { + failingKeyword: string; + } + + interface SwitchParams { + caseIndex: number; + } + + interface NoParams { } + + interface EnumParams { + allowedValues: Array; + } +} + +export = ajv; diff --git a/node_modules/ajv/lib/ajv.js b/node_modules/ajv/lib/ajv.js new file mode 100644 index 0000000..06a45b6 --- /dev/null +++ b/node_modules/ajv/lib/ajv.js @@ -0,0 +1,506 @@ +'use strict'; + +var compileSchema = require('./compile') + , resolve = require('./compile/resolve') + , Cache = require('./cache') + , SchemaObject = require('./compile/schema_obj') + , stableStringify = require('fast-json-stable-stringify') + , formats = require('./compile/formats') + , rules = require('./compile/rules') + , $dataMetaSchema = require('./data') + , util = require('./compile/util'); + +module.exports = Ajv; + +Ajv.prototype.validate = validate; +Ajv.prototype.compile = compile; +Ajv.prototype.addSchema = addSchema; +Ajv.prototype.addMetaSchema = addMetaSchema; +Ajv.prototype.validateSchema = validateSchema; +Ajv.prototype.getSchema = getSchema; +Ajv.prototype.removeSchema = removeSchema; +Ajv.prototype.addFormat = addFormat; +Ajv.prototype.errorsText = errorsText; + +Ajv.prototype._addSchema = _addSchema; +Ajv.prototype._compile = _compile; + +Ajv.prototype.compileAsync = require('./compile/async'); +var customKeyword = require('./keyword'); +Ajv.prototype.addKeyword = customKeyword.add; +Ajv.prototype.getKeyword = customKeyword.get; +Ajv.prototype.removeKeyword = customKeyword.remove; +Ajv.prototype.validateKeyword = customKeyword.validate; + +var errorClasses = require('./compile/error_classes'); +Ajv.ValidationError = errorClasses.Validation; +Ajv.MissingRefError = errorClasses.MissingRef; +Ajv.$dataMetaSchema = $dataMetaSchema; + +var META_SCHEMA_ID = 'http://json-schema.org/draft-07/schema'; + +var META_IGNORE_OPTIONS = [ 'removeAdditional', 'useDefaults', 'coerceTypes', 'strictDefaults' ]; +var META_SUPPORT_DATA = ['/properties']; + +/** + * Creates validator instance. + * Usage: `Ajv(opts)` + * @param {Object} opts optional options + * @return {Object} ajv instance + */ +function Ajv(opts) { + if (!(this instanceof Ajv)) return new Ajv(opts); + opts = this._opts = util.copy(opts) || {}; + setLogger(this); + this._schemas = {}; + this._refs = {}; + this._fragments = {}; + this._formats = formats(opts.format); + + this._cache = opts.cache || new Cache; + this._loadingSchemas = {}; + this._compilations = []; + this.RULES = rules(); + this._getId = chooseGetId(opts); + + opts.loopRequired = opts.loopRequired || Infinity; + if (opts.errorDataPath == 'property') opts._errorDataPathProperty = true; + if (opts.serialize === undefined) opts.serialize = stableStringify; + this._metaOpts = getMetaSchemaOptions(this); + + if (opts.formats) addInitialFormats(this); + if (opts.keywords) addInitialKeywords(this); + addDefaultMetaSchema(this); + if (typeof opts.meta == 'object') this.addMetaSchema(opts.meta); + if (opts.nullable) this.addKeyword('nullable', {metaSchema: {type: 'boolean'}}); + addInitialSchemas(this); +} + + + +/** + * Validate data using schema + * Schema will be compiled and cached (using serialized JSON as key. [fast-json-stable-stringify](https://github.com/epoberezkin/fast-json-stable-stringify) is used to serialize. + * @this Ajv + * @param {String|Object} schemaKeyRef key, ref or schema object + * @param {Any} data to be validated + * @return {Boolean} validation result. Errors from the last validation will be available in `ajv.errors` (and also in compiled schema: `schema.errors`). + */ +function validate(schemaKeyRef, data) { + var v; + if (typeof schemaKeyRef == 'string') { + v = this.getSchema(schemaKeyRef); + if (!v) throw new Error('no schema with key or ref "' + schemaKeyRef + '"'); + } else { + var schemaObj = this._addSchema(schemaKeyRef); + v = schemaObj.validate || this._compile(schemaObj); + } + + var valid = v(data); + if (v.$async !== true) this.errors = v.errors; + return valid; +} + + +/** + * Create validating function for passed schema. + * @this Ajv + * @param {Object} schema schema object + * @param {Boolean} _meta true if schema is a meta-schema. Used internally to compile meta schemas of custom keywords. + * @return {Function} validating function + */ +function compile(schema, _meta) { + var schemaObj = this._addSchema(schema, undefined, _meta); + return schemaObj.validate || this._compile(schemaObj); +} + + +/** + * Adds schema to the instance. + * @this Ajv + * @param {Object|Array} schema schema or array of schemas. If array is passed, `key` and other parameters will be ignored. + * @param {String} key Optional schema key. Can be passed to `validate` method instead of schema object or id/ref. One schema per instance can have empty `id` and `key`. + * @param {Boolean} _skipValidation true to skip schema validation. Used internally, option validateSchema should be used instead. + * @param {Boolean} _meta true if schema is a meta-schema. Used internally, addMetaSchema should be used instead. + * @return {Ajv} this for method chaining + */ +function addSchema(schema, key, _skipValidation, _meta) { + if (Array.isArray(schema)){ + for (var i=0; i} errors optional array of validation errors, if not passed errors from the instance are used. + * @param {Object} options optional options with properties `separator` and `dataVar`. + * @return {String} human readable string with all errors descriptions + */ +function errorsText(errors, options) { + errors = errors || this.errors; + if (!errors) return 'No errors'; + options = options || {}; + var separator = options.separator === undefined ? ', ' : options.separator; + var dataVar = options.dataVar === undefined ? 'data' : options.dataVar; + + var text = ''; + for (var i=0; i%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i; +// For the source: https://gist.github.com/dperini/729294 +// For test cases: https://mathiasbynens.be/demo/url-regex +// @todo Delete current URL in favour of the commented out URL rule when this issue is fixed https://github.com/eslint/eslint/issues/7983. +// var URL = /^(?:(?:https?|ftp):\/\/)(?:\S+(?::\S*)?@)?(?:(?!10(?:\.\d{1,3}){3})(?!127(?:\.\d{1,3}){3})(?!169\.254(?:\.\d{1,3}){2})(?!192\.168(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u{00a1}-\u{ffff}0-9]+-)*[a-z\u{00a1}-\u{ffff}0-9]+)(?:\.(?:[a-z\u{00a1}-\u{ffff}0-9]+-)*[a-z\u{00a1}-\u{ffff}0-9]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu; +var URL = /^(?:(?:http[s\u017F]?|ftp):\/\/)(?:(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+(?::(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*)?@)?(?:(?!10(?:\.[0-9]{1,3}){3})(?!127(?:\.[0-9]{1,3}){3})(?!169\.254(?:\.[0-9]{1,3}){2})(?!192\.168(?:\.[0-9]{1,3}){2})(?!172\.(?:1[6-9]|2[0-9]|3[01])(?:\.[0-9]{1,3}){2})(?:[1-9][0-9]?|1[0-9][0-9]|2[01][0-9]|22[0-3])(?:\.(?:1?[0-9]{1,2}|2[0-4][0-9]|25[0-5])){2}(?:\.(?:[1-9][0-9]?|1[0-9][0-9]|2[0-4][0-9]|25[0-4]))|(?:(?:(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+-)*(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+)(?:\.(?:(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+-)*(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+)*(?:\.(?:(?:[a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]){2,})))(?::[0-9]{2,5})?(?:\/(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*)?$/i; +var UUID = /^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i; +var JSON_POINTER = /^(?:\/(?:[^~/]|~0|~1)*)*$/; +var JSON_POINTER_URI_FRAGMENT = /^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i; +var RELATIVE_JSON_POINTER = /^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/; + + +module.exports = formats; + +function formats(mode) { + mode = mode == 'full' ? 'full' : 'fast'; + return util.copy(formats[mode]); +} + + +formats.fast = { + // date: http://tools.ietf.org/html/rfc3339#section-5.6 + date: /^\d\d\d\d-[0-1]\d-[0-3]\d$/, + // date-time: http://tools.ietf.org/html/rfc3339#section-5.6 + time: /^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i, + 'date-time': /^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i, + // uri: https://github.com/mafintosh/is-my-json-valid/blob/master/formats.js + uri: /^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i, + 'uri-reference': /^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i, + 'uri-template': URITEMPLATE, + url: URL, + // email (sources from jsen validator): + // http://stackoverflow.com/questions/201323/using-a-regular-expression-to-validate-an-email-address#answer-8829363 + // http://www.w3.org/TR/html5/forms.html#valid-e-mail-address (search for 'willful violation') + email: /^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i, + hostname: HOSTNAME, + // optimized https://www.safaribooksonline.com/library/view/regular-expressions-cookbook/9780596802837/ch07s16.html + ipv4: /^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/, + // optimized http://stackoverflow.com/questions/53497/regular-expression-that-matches-valid-ipv6-addresses + ipv6: /^\s*(?:(?:(?:[0-9a-f]{1,4}:){7}(?:[0-9a-f]{1,4}|:))|(?:(?:[0-9a-f]{1,4}:){6}(?::[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){5}(?:(?:(?::[0-9a-f]{1,4}){1,2})|:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){4}(?:(?:(?::[0-9a-f]{1,4}){1,3})|(?:(?::[0-9a-f]{1,4})?:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){3}(?:(?:(?::[0-9a-f]{1,4}){1,4})|(?:(?::[0-9a-f]{1,4}){0,2}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){2}(?:(?:(?::[0-9a-f]{1,4}){1,5})|(?:(?::[0-9a-f]{1,4}){0,3}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){1}(?:(?:(?::[0-9a-f]{1,4}){1,6})|(?:(?::[0-9a-f]{1,4}){0,4}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?::(?:(?:(?::[0-9a-f]{1,4}){1,7})|(?:(?::[0-9a-f]{1,4}){0,5}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(?:%.+)?\s*$/i, + regex: regex, + // uuid: http://tools.ietf.org/html/rfc4122 + uuid: UUID, + // JSON-pointer: https://tools.ietf.org/html/rfc6901 + // uri fragment: https://tools.ietf.org/html/rfc3986#appendix-A + 'json-pointer': JSON_POINTER, + 'json-pointer-uri-fragment': JSON_POINTER_URI_FRAGMENT, + // relative JSON-pointer: http://tools.ietf.org/html/draft-luff-relative-json-pointer-00 + 'relative-json-pointer': RELATIVE_JSON_POINTER +}; + + +formats.full = { + date: date, + time: time, + 'date-time': date_time, + uri: uri, + 'uri-reference': URIREF, + 'uri-template': URITEMPLATE, + url: URL, + email: /^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i, + hostname: HOSTNAME, + ipv4: /^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/, + ipv6: /^\s*(?:(?:(?:[0-9a-f]{1,4}:){7}(?:[0-9a-f]{1,4}|:))|(?:(?:[0-9a-f]{1,4}:){6}(?::[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){5}(?:(?:(?::[0-9a-f]{1,4}){1,2})|:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){4}(?:(?:(?::[0-9a-f]{1,4}){1,3})|(?:(?::[0-9a-f]{1,4})?:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){3}(?:(?:(?::[0-9a-f]{1,4}){1,4})|(?:(?::[0-9a-f]{1,4}){0,2}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){2}(?:(?:(?::[0-9a-f]{1,4}){1,5})|(?:(?::[0-9a-f]{1,4}){0,3}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){1}(?:(?:(?::[0-9a-f]{1,4}){1,6})|(?:(?::[0-9a-f]{1,4}){0,4}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?::(?:(?:(?::[0-9a-f]{1,4}){1,7})|(?:(?::[0-9a-f]{1,4}){0,5}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(?:%.+)?\s*$/i, + regex: regex, + uuid: UUID, + 'json-pointer': JSON_POINTER, + 'json-pointer-uri-fragment': JSON_POINTER_URI_FRAGMENT, + 'relative-json-pointer': RELATIVE_JSON_POINTER +}; + + +function isLeapYear(year) { + // https://tools.ietf.org/html/rfc3339#appendix-C + return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0); +} + + +function date(str) { + // full-date from http://tools.ietf.org/html/rfc3339#section-5.6 + var matches = str.match(DATE); + if (!matches) return false; + + var year = +matches[1]; + var month = +matches[2]; + var day = +matches[3]; + + return month >= 1 && month <= 12 && day >= 1 && + day <= (month == 2 && isLeapYear(year) ? 29 : DAYS[month]); +} + + +function time(str, full) { + var matches = str.match(TIME); + if (!matches) return false; + + var hour = matches[1]; + var minute = matches[2]; + var second = matches[3]; + var timeZone = matches[5]; + return ((hour <= 23 && minute <= 59 && second <= 59) || + (hour == 23 && minute == 59 && second == 60)) && + (!full || timeZone); +} + + +var DATE_TIME_SEPARATOR = /t|\s/i; +function date_time(str) { + // http://tools.ietf.org/html/rfc3339#section-5.6 + var dateTime = str.split(DATE_TIME_SEPARATOR); + return dateTime.length == 2 && date(dateTime[0]) && time(dateTime[1], true); +} + + +var NOT_URI_FRAGMENT = /\/|:/; +function uri(str) { + // http://jmrware.com/articles/2009/uri_regexp/URI_regex.html + optional protocol + required "." + return NOT_URI_FRAGMENT.test(str) && URI.test(str); +} + + +var Z_ANCHOR = /[^\\]\\Z/; +function regex(str) { + if (Z_ANCHOR.test(str)) return false; + try { + new RegExp(str); + return true; + } catch(e) { + return false; + } +} diff --git a/node_modules/ajv/lib/compile/index.js b/node_modules/ajv/lib/compile/index.js new file mode 100644 index 0000000..97518c4 --- /dev/null +++ b/node_modules/ajv/lib/compile/index.js @@ -0,0 +1,387 @@ +'use strict'; + +var resolve = require('./resolve') + , util = require('./util') + , errorClasses = require('./error_classes') + , stableStringify = require('fast-json-stable-stringify'); + +var validateGenerator = require('../dotjs/validate'); + +/** + * Functions below are used inside compiled validations function + */ + +var ucs2length = util.ucs2length; +var equal = require('fast-deep-equal'); + +// this error is thrown by async schemas to return validation errors via exception +var ValidationError = errorClasses.Validation; + +module.exports = compile; + + +/** + * Compiles schema to validation function + * @this Ajv + * @param {Object} schema schema object + * @param {Object} root object with information about the root schema for this schema + * @param {Object} localRefs the hash of local references inside the schema (created by resolve.id), used for inline resolution + * @param {String} baseId base ID for IDs in the schema + * @return {Function} validation function + */ +function compile(schema, root, localRefs, baseId) { + /* jshint validthis: true, evil: true */ + /* eslint no-shadow: 0 */ + var self = this + , opts = this._opts + , refVal = [ undefined ] + , refs = {} + , patterns = [] + , patternsHash = {} + , defaults = [] + , defaultsHash = {} + , customRules = []; + + root = root || { schema: schema, refVal: refVal, refs: refs }; + + var c = checkCompiling.call(this, schema, root, baseId); + var compilation = this._compilations[c.index]; + if (c.compiling) return (compilation.callValidate = callValidate); + + var formats = this._formats; + var RULES = this.RULES; + + try { + var v = localCompile(schema, root, localRefs, baseId); + compilation.validate = v; + var cv = compilation.callValidate; + if (cv) { + cv.schema = v.schema; + cv.errors = null; + cv.refs = v.refs; + cv.refVal = v.refVal; + cv.root = v.root; + cv.$async = v.$async; + if (opts.sourceCode) cv.source = v.source; + } + return v; + } finally { + endCompiling.call(this, schema, root, baseId); + } + + /* @this {*} - custom context, see passContext option */ + function callValidate() { + /* jshint validthis: true */ + var validate = compilation.validate; + var result = validate.apply(this, arguments); + callValidate.errors = validate.errors; + return result; + } + + function localCompile(_schema, _root, localRefs, baseId) { + var isRoot = !_root || (_root && _root.schema == _schema); + if (_root.schema != root.schema) + return compile.call(self, _schema, _root, localRefs, baseId); + + var $async = _schema.$async === true; + + var sourceCode = validateGenerator({ + isTop: true, + schema: _schema, + isRoot: isRoot, + baseId: baseId, + root: _root, + schemaPath: '', + errSchemaPath: '#', + errorPath: '""', + MissingRefError: errorClasses.MissingRef, + RULES: RULES, + validate: validateGenerator, + util: util, + resolve: resolve, + resolveRef: resolveRef, + usePattern: usePattern, + useDefault: useDefault, + useCustomRule: useCustomRule, + opts: opts, + formats: formats, + logger: self.logger, + self: self + }); + + sourceCode = vars(refVal, refValCode) + vars(patterns, patternCode) + + vars(defaults, defaultCode) + vars(customRules, customRuleCode) + + sourceCode; + + if (opts.processCode) sourceCode = opts.processCode(sourceCode, _schema); + // console.log('\n\n\n *** \n', JSON.stringify(sourceCode)); + var validate; + try { + var makeValidate = new Function( + 'self', + 'RULES', + 'formats', + 'root', + 'refVal', + 'defaults', + 'customRules', + 'equal', + 'ucs2length', + 'ValidationError', + sourceCode + ); + + validate = makeValidate( + self, + RULES, + formats, + root, + refVal, + defaults, + customRules, + equal, + ucs2length, + ValidationError + ); + + refVal[0] = validate; + } catch(e) { + self.logger.error('Error compiling schema, function code:', sourceCode); + throw e; + } + + validate.schema = _schema; + validate.errors = null; + validate.refs = refs; + validate.refVal = refVal; + validate.root = isRoot ? validate : _root; + if ($async) validate.$async = true; + if (opts.sourceCode === true) { + validate.source = { + code: sourceCode, + patterns: patterns, + defaults: defaults + }; + } + + return validate; + } + + function resolveRef(baseId, ref, isRoot) { + ref = resolve.url(baseId, ref); + var refIndex = refs[ref]; + var _refVal, refCode; + if (refIndex !== undefined) { + _refVal = refVal[refIndex]; + refCode = 'refVal[' + refIndex + ']'; + return resolvedRef(_refVal, refCode); + } + if (!isRoot && root.refs) { + var rootRefId = root.refs[ref]; + if (rootRefId !== undefined) { + _refVal = root.refVal[rootRefId]; + refCode = addLocalRef(ref, _refVal); + return resolvedRef(_refVal, refCode); + } + } + + refCode = addLocalRef(ref); + var v = resolve.call(self, localCompile, root, ref); + if (v === undefined) { + var localSchema = localRefs && localRefs[ref]; + if (localSchema) { + v = resolve.inlineRef(localSchema, opts.inlineRefs) + ? localSchema + : compile.call(self, localSchema, root, localRefs, baseId); + } + } + + if (v === undefined) { + removeLocalRef(ref); + } else { + replaceLocalRef(ref, v); + return resolvedRef(v, refCode); + } + } + + function addLocalRef(ref, v) { + var refId = refVal.length; + refVal[refId] = v; + refs[ref] = refId; + return 'refVal' + refId; + } + + function removeLocalRef(ref) { + delete refs[ref]; + } + + function replaceLocalRef(ref, v) { + var refId = refs[ref]; + refVal[refId] = v; + } + + function resolvedRef(refVal, code) { + return typeof refVal == 'object' || typeof refVal == 'boolean' + ? { code: code, schema: refVal, inline: true } + : { code: code, $async: refVal && !!refVal.$async }; + } + + function usePattern(regexStr) { + var index = patternsHash[regexStr]; + if (index === undefined) { + index = patternsHash[regexStr] = patterns.length; + patterns[index] = regexStr; + } + return 'pattern' + index; + } + + function useDefault(value) { + switch (typeof value) { + case 'boolean': + case 'number': + return '' + value; + case 'string': + return util.toQuotedString(value); + case 'object': + if (value === null) return 'null'; + var valueStr = stableStringify(value); + var index = defaultsHash[valueStr]; + if (index === undefined) { + index = defaultsHash[valueStr] = defaults.length; + defaults[index] = value; + } + return 'default' + index; + } + } + + function useCustomRule(rule, schema, parentSchema, it) { + if (self._opts.validateSchema !== false) { + var deps = rule.definition.dependencies; + if (deps && !deps.every(function(keyword) { + return Object.prototype.hasOwnProperty.call(parentSchema, keyword); + })) + throw new Error('parent schema must have all required keywords: ' + deps.join(',')); + + var validateSchema = rule.definition.validateSchema; + if (validateSchema) { + var valid = validateSchema(schema); + if (!valid) { + var message = 'keyword schema is invalid: ' + self.errorsText(validateSchema.errors); + if (self._opts.validateSchema == 'log') self.logger.error(message); + else throw new Error(message); + } + } + } + + var compile = rule.definition.compile + , inline = rule.definition.inline + , macro = rule.definition.macro; + + var validate; + if (compile) { + validate = compile.call(self, schema, parentSchema, it); + } else if (macro) { + validate = macro.call(self, schema, parentSchema, it); + if (opts.validateSchema !== false) self.validateSchema(validate, true); + } else if (inline) { + validate = inline.call(self, it, rule.keyword, schema, parentSchema); + } else { + validate = rule.definition.validate; + if (!validate) return; + } + + if (validate === undefined) + throw new Error('custom keyword "' + rule.keyword + '"failed to compile'); + + var index = customRules.length; + customRules[index] = validate; + + return { + code: 'customRule' + index, + validate: validate + }; + } +} + + +/** + * Checks if the schema is currently compiled + * @this Ajv + * @param {Object} schema schema to compile + * @param {Object} root root object + * @param {String} baseId base schema ID + * @return {Object} object with properties "index" (compilation index) and "compiling" (boolean) + */ +function checkCompiling(schema, root, baseId) { + /* jshint validthis: true */ + var index = compIndex.call(this, schema, root, baseId); + if (index >= 0) return { index: index, compiling: true }; + index = this._compilations.length; + this._compilations[index] = { + schema: schema, + root: root, + baseId: baseId + }; + return { index: index, compiling: false }; +} + + +/** + * Removes the schema from the currently compiled list + * @this Ajv + * @param {Object} schema schema to compile + * @param {Object} root root object + * @param {String} baseId base schema ID + */ +function endCompiling(schema, root, baseId) { + /* jshint validthis: true */ + var i = compIndex.call(this, schema, root, baseId); + if (i >= 0) this._compilations.splice(i, 1); +} + + +/** + * Index of schema compilation in the currently compiled list + * @this Ajv + * @param {Object} schema schema to compile + * @param {Object} root root object + * @param {String} baseId base schema ID + * @return {Integer} compilation index + */ +function compIndex(schema, root, baseId) { + /* jshint validthis: true */ + for (var i=0; i= 0xD800 && value <= 0xDBFF && pos < len) { + // high surrogate, and there is a next character + value = str.charCodeAt(pos); + if ((value & 0xFC00) == 0xDC00) pos++; // low surrogate + } + } + return length; +}; diff --git a/node_modules/ajv/lib/compile/util.js b/node_modules/ajv/lib/compile/util.js new file mode 100644 index 0000000..ef07b8c --- /dev/null +++ b/node_modules/ajv/lib/compile/util.js @@ -0,0 +1,239 @@ +'use strict'; + + +module.exports = { + copy: copy, + checkDataType: checkDataType, + checkDataTypes: checkDataTypes, + coerceToTypes: coerceToTypes, + toHash: toHash, + getProperty: getProperty, + escapeQuotes: escapeQuotes, + equal: require('fast-deep-equal'), + ucs2length: require('./ucs2length'), + varOccurences: varOccurences, + varReplace: varReplace, + schemaHasRules: schemaHasRules, + schemaHasRulesExcept: schemaHasRulesExcept, + schemaUnknownRules: schemaUnknownRules, + toQuotedString: toQuotedString, + getPathExpr: getPathExpr, + getPath: getPath, + getData: getData, + unescapeFragment: unescapeFragment, + unescapeJsonPointer: unescapeJsonPointer, + escapeFragment: escapeFragment, + escapeJsonPointer: escapeJsonPointer +}; + + +function copy(o, to) { + to = to || {}; + for (var key in o) to[key] = o[key]; + return to; +} + + +function checkDataType(dataType, data, strictNumbers, negate) { + var EQUAL = negate ? ' !== ' : ' === ' + , AND = negate ? ' || ' : ' && ' + , OK = negate ? '!' : '' + , NOT = negate ? '' : '!'; + switch (dataType) { + case 'null': return data + EQUAL + 'null'; + case 'array': return OK + 'Array.isArray(' + data + ')'; + case 'object': return '(' + OK + data + AND + + 'typeof ' + data + EQUAL + '"object"' + AND + + NOT + 'Array.isArray(' + data + '))'; + case 'integer': return '(typeof ' + data + EQUAL + '"number"' + AND + + NOT + '(' + data + ' % 1)' + + AND + data + EQUAL + data + + (strictNumbers ? (AND + OK + 'isFinite(' + data + ')') : '') + ')'; + case 'number': return '(typeof ' + data + EQUAL + '"' + dataType + '"' + + (strictNumbers ? (AND + OK + 'isFinite(' + data + ')') : '') + ')'; + default: return 'typeof ' + data + EQUAL + '"' + dataType + '"'; + } +} + + +function checkDataTypes(dataTypes, data, strictNumbers) { + switch (dataTypes.length) { + case 1: return checkDataType(dataTypes[0], data, strictNumbers, true); + default: + var code = ''; + var types = toHash(dataTypes); + if (types.array && types.object) { + code = types.null ? '(': '(!' + data + ' || '; + code += 'typeof ' + data + ' !== "object")'; + delete types.null; + delete types.array; + delete types.object; + } + if (types.number) delete types.integer; + for (var t in types) + code += (code ? ' && ' : '' ) + checkDataType(t, data, strictNumbers, true); + + return code; + } +} + + +var COERCE_TO_TYPES = toHash([ 'string', 'number', 'integer', 'boolean', 'null' ]); +function coerceToTypes(optionCoerceTypes, dataTypes) { + if (Array.isArray(dataTypes)) { + var types = []; + for (var i=0; i= lvl) throw new Error('Cannot access property/index ' + up + ' levels up, current level is ' + lvl); + return paths[lvl - up]; + } + + if (up > lvl) throw new Error('Cannot access data ' + up + ' levels up, current level is ' + lvl); + data = 'data' + ((lvl - up) || ''); + if (!jsonPointer) return data; + } + + var expr = data; + var segments = jsonPointer.split('/'); + for (var i=0; i' + , $notOp = $isMax ? '>' : '<' + , $errorKeyword = undefined; + + if (!($isData || typeof $schema == 'number' || $schema === undefined)) { + throw new Error($keyword + ' must be number'); + } + if (!($isDataExcl || $schemaExcl === undefined + || typeof $schemaExcl == 'number' + || typeof $schemaExcl == 'boolean')) { + throw new Error($exclusiveKeyword + ' must be number or boolean'); + } +}} + +{{? $isDataExcl }} + {{ + var $schemaValueExcl = it.util.getData($schemaExcl.$data, $dataLvl, it.dataPathArr) + , $exclusive = 'exclusive' + $lvl + , $exclType = 'exclType' + $lvl + , $exclIsNumber = 'exclIsNumber' + $lvl + , $opExpr = 'op' + $lvl + , $opStr = '\' + ' + $opExpr + ' + \''; + }} + var schemaExcl{{=$lvl}} = {{=$schemaValueExcl}}; + {{ $schemaValueExcl = 'schemaExcl' + $lvl; }} + + var {{=$exclusive}}; + var {{=$exclType}} = typeof {{=$schemaValueExcl}}; + if ({{=$exclType}} != 'boolean' && {{=$exclType}} != 'undefined' && {{=$exclType}} != 'number') { + {{ var $errorKeyword = $exclusiveKeyword; }} + {{# def.error:'_exclusiveLimit' }} + } else if ({{# def.$dataNotType:'number' }} + {{=$exclType}} == 'number' + ? ( + ({{=$exclusive}} = {{=$schemaValue}} === undefined || {{=$schemaValueExcl}} {{=$op}}= {{=$schemaValue}}) + ? {{=$data}} {{=$notOp}}= {{=$schemaValueExcl}} + : {{=$data}} {{=$notOp}} {{=$schemaValue}} + ) + : ( + ({{=$exclusive}} = {{=$schemaValueExcl}} === true) + ? {{=$data}} {{=$notOp}}= {{=$schemaValue}} + : {{=$data}} {{=$notOp}} {{=$schemaValue}} + ) + || {{=$data}} !== {{=$data}}) { + var op{{=$lvl}} = {{=$exclusive}} ? '{{=$op}}' : '{{=$op}}='; + {{ + if ($schema === undefined) { + $errorKeyword = $exclusiveKeyword; + $errSchemaPath = it.errSchemaPath + '/' + $exclusiveKeyword; + $schemaValue = $schemaValueExcl; + $isData = $isDataExcl; + } + }} +{{??}} + {{ + var $exclIsNumber = typeof $schemaExcl == 'number' + , $opStr = $op; /*used in error*/ + }} + + {{? $exclIsNumber && $isData }} + {{ var $opExpr = '\'' + $opStr + '\''; /*used in error*/ }} + if ({{# def.$dataNotType:'number' }} + ( {{=$schemaValue}} === undefined + || {{=$schemaExcl}} {{=$op}}= {{=$schemaValue}} + ? {{=$data}} {{=$notOp}}= {{=$schemaExcl}} + : {{=$data}} {{=$notOp}} {{=$schemaValue}} ) + || {{=$data}} !== {{=$data}}) { + {{??}} + {{ + if ($exclIsNumber && $schema === undefined) { + {{# def.setExclusiveLimit }} + $schemaValue = $schemaExcl; + $notOp += '='; + } else { + if ($exclIsNumber) + $schemaValue = Math[$isMax ? 'min' : 'max']($schemaExcl, $schema); + + if ($schemaExcl === ($exclIsNumber ? $schemaValue : true)) { + {{# def.setExclusiveLimit }} + $notOp += '='; + } else { + $exclusive = false; + $opStr += '='; + } + } + + var $opExpr = '\'' + $opStr + '\''; /*used in error*/ + }} + + if ({{# def.$dataNotType:'number' }} + {{=$data}} {{=$notOp}} {{=$schemaValue}} + || {{=$data}} !== {{=$data}}) { + {{?}} +{{?}} + {{ $errorKeyword = $errorKeyword || $keyword; }} + {{# def.error:'_limit' }} + } {{? $breakOnError }} else { {{?}} diff --git a/node_modules/ajv/lib/dot/_limitItems.jst b/node_modules/ajv/lib/dot/_limitItems.jst new file mode 100644 index 0000000..741329e --- /dev/null +++ b/node_modules/ajv/lib/dot/_limitItems.jst @@ -0,0 +1,12 @@ +{{# def.definitions }} +{{# def.errors }} +{{# def.setupKeyword }} +{{# def.$data }} + +{{# def.numberKeyword }} + +{{ var $op = $keyword == 'maxItems' ? '>' : '<'; }} +if ({{# def.$dataNotType:'number' }} {{=$data}}.length {{=$op}} {{=$schemaValue}}) { + {{ var $errorKeyword = $keyword; }} + {{# def.error:'_limitItems' }} +} {{? $breakOnError }} else { {{?}} diff --git a/node_modules/ajv/lib/dot/_limitLength.jst b/node_modules/ajv/lib/dot/_limitLength.jst new file mode 100644 index 0000000..285c66b --- /dev/null +++ b/node_modules/ajv/lib/dot/_limitLength.jst @@ -0,0 +1,12 @@ +{{# def.definitions }} +{{# def.errors }} +{{# def.setupKeyword }} +{{# def.$data }} + +{{# def.numberKeyword }} + +{{ var $op = $keyword == 'maxLength' ? '>' : '<'; }} +if ({{# def.$dataNotType:'number' }} {{# def.strLength }} {{=$op}} {{=$schemaValue}}) { + {{ var $errorKeyword = $keyword; }} + {{# def.error:'_limitLength' }} +} {{? $breakOnError }} else { {{?}} diff --git a/node_modules/ajv/lib/dot/_limitProperties.jst b/node_modules/ajv/lib/dot/_limitProperties.jst new file mode 100644 index 0000000..c4c2155 --- /dev/null +++ b/node_modules/ajv/lib/dot/_limitProperties.jst @@ -0,0 +1,12 @@ +{{# def.definitions }} +{{# def.errors }} +{{# def.setupKeyword }} +{{# def.$data }} + +{{# def.numberKeyword }} + +{{ var $op = $keyword == 'maxProperties' ? '>' : '<'; }} +if ({{# def.$dataNotType:'number' }} Object.keys({{=$data}}).length {{=$op}} {{=$schemaValue}}) { + {{ var $errorKeyword = $keyword; }} + {{# def.error:'_limitProperties' }} +} {{? $breakOnError }} else { {{?}} diff --git a/node_modules/ajv/lib/dot/allOf.jst b/node_modules/ajv/lib/dot/allOf.jst new file mode 100644 index 0000000..0e782fe --- /dev/null +++ b/node_modules/ajv/lib/dot/allOf.jst @@ -0,0 +1,32 @@ +{{# def.definitions }} +{{# def.errors }} +{{# def.setupKeyword }} +{{# def.setupNextLevel }} + +{{ + var $currentBaseId = $it.baseId + , $allSchemasEmpty = true; +}} + +{{~ $schema:$sch:$i }} + {{? {{# def.nonEmptySchema:$sch }} }} + {{ + $allSchemasEmpty = false; + $it.schema = $sch; + $it.schemaPath = $schemaPath + '[' + $i + ']'; + $it.errSchemaPath = $errSchemaPath + '/' + $i; + }} + + {{# def.insertSubschemaCode }} + + {{# def.ifResultValid }} + {{?}} +{{~}} + +{{? $breakOnError }} + {{? $allSchemasEmpty }} + if (true) { + {{??}} + {{= $closingBraces.slice(0,-1) }} + {{?}} +{{?}} diff --git a/node_modules/ajv/lib/dot/anyOf.jst b/node_modules/ajv/lib/dot/anyOf.jst new file mode 100644 index 0000000..ea909ee --- /dev/null +++ b/node_modules/ajv/lib/dot/anyOf.jst @@ -0,0 +1,46 @@ +{{# def.definitions }} +{{# def.errors }} +{{# def.setupKeyword }} +{{# def.setupNextLevel }} + +{{ + var $noEmptySchema = $schema.every(function($sch) { + return {{# def.nonEmptySchema:$sch }}; + }); +}} +{{? $noEmptySchema }} + {{ var $currentBaseId = $it.baseId; }} + var {{=$errs}} = errors; + var {{=$valid}} = false; + + {{# def.setCompositeRule }} + + {{~ $schema:$sch:$i }} + {{ + $it.schema = $sch; + $it.schemaPath = $schemaPath + '[' + $i + ']'; + $it.errSchemaPath = $errSchemaPath + '/' + $i; + }} + + {{# def.insertSubschemaCode }} + + {{=$valid}} = {{=$valid}} || {{=$nextValid}}; + + if (!{{=$valid}}) { + {{ $closingBraces += '}'; }} + {{~}} + + {{# def.resetCompositeRule }} + + {{= $closingBraces }} + + if (!{{=$valid}}) { + {{# def.extraError:'anyOf' }} + } else { + {{# def.resetErrors }} + {{? it.opts.allErrors }} } {{?}} +{{??}} + {{? $breakOnError }} + if (true) { + {{?}} +{{?}} diff --git a/node_modules/ajv/lib/dot/coerce.def b/node_modules/ajv/lib/dot/coerce.def new file mode 100644 index 0000000..c947ed6 --- /dev/null +++ b/node_modules/ajv/lib/dot/coerce.def @@ -0,0 +1,51 @@ +{{## def.coerceType: + {{ + var $dataType = 'dataType' + $lvl + , $coerced = 'coerced' + $lvl; + }} + var {{=$dataType}} = typeof {{=$data}}; + var {{=$coerced}} = undefined; + + {{? it.opts.coerceTypes == 'array' }} + if ({{=$dataType}} == 'object' && Array.isArray({{=$data}}) && {{=$data}}.length == 1) { + {{=$data}} = {{=$data}}[0]; + {{=$dataType}} = typeof {{=$data}}; + if ({{=it.util.checkDataType(it.schema.type, $data, it.opts.strictNumbers)}}) {{=$coerced}} = {{=$data}}; + } + {{?}} + + if ({{=$coerced}} !== undefined) ; + {{~ $coerceToTypes:$type:$i }} + {{? $type == 'string' }} + else if ({{=$dataType}} == 'number' || {{=$dataType}} == 'boolean') + {{=$coerced}} = '' + {{=$data}}; + else if ({{=$data}} === null) {{=$coerced}} = ''; + {{?? $type == 'number' || $type == 'integer' }} + else if ({{=$dataType}} == 'boolean' || {{=$data}} === null + || ({{=$dataType}} == 'string' && {{=$data}} && {{=$data}} == +{{=$data}} + {{? $type == 'integer' }} && !({{=$data}} % 1){{?}})) + {{=$coerced}} = +{{=$data}}; + {{?? $type == 'boolean' }} + else if ({{=$data}} === 'false' || {{=$data}} === 0 || {{=$data}} === null) + {{=$coerced}} = false; + else if ({{=$data}} === 'true' || {{=$data}} === 1) + {{=$coerced}} = true; + {{?? $type == 'null' }} + else if ({{=$data}} === '' || {{=$data}} === 0 || {{=$data}} === false) + {{=$coerced}} = null; + {{?? it.opts.coerceTypes == 'array' && $type == 'array' }} + else if ({{=$dataType}} == 'string' || {{=$dataType}} == 'number' || {{=$dataType}} == 'boolean' || {{=$data}} == null) + {{=$coerced}} = [{{=$data}}]; + {{?}} + {{~}} + else { + {{# def.error:'type' }} + } + + if ({{=$coerced}} !== undefined) { + {{# def.setParentData }} + {{=$data}} = {{=$coerced}}; + {{? !$dataLvl }}if ({{=$parentData}} !== undefined){{?}} + {{=$parentData}}[{{=$parentDataProperty}}] = {{=$coerced}}; + } +#}} diff --git a/node_modules/ajv/lib/dot/comment.jst b/node_modules/ajv/lib/dot/comment.jst new file mode 100644 index 0000000..f959150 --- /dev/null +++ b/node_modules/ajv/lib/dot/comment.jst @@ -0,0 +1,9 @@ +{{# def.definitions }} +{{# def.setupKeyword }} + +{{ var $comment = it.util.toQuotedString($schema); }} +{{? it.opts.$comment === true }} + console.log({{=$comment}}); +{{?? typeof it.opts.$comment == 'function' }} + self._opts.$comment({{=$comment}}, {{=it.util.toQuotedString($errSchemaPath)}}, validate.root.schema); +{{?}} diff --git a/node_modules/ajv/lib/dot/const.jst b/node_modules/ajv/lib/dot/const.jst new file mode 100644 index 0000000..2aa2298 --- /dev/null +++ b/node_modules/ajv/lib/dot/const.jst @@ -0,0 +1,11 @@ +{{# def.definitions }} +{{# def.errors }} +{{# def.setupKeyword }} +{{# def.$data }} + +{{? !$isData }} + var schema{{=$lvl}} = validate.schema{{=$schemaPath}}; +{{?}} +var {{=$valid}} = equal({{=$data}}, schema{{=$lvl}}); +{{# def.checkError:'const' }} +{{? $breakOnError }} else { {{?}} diff --git a/node_modules/ajv/lib/dot/contains.jst b/node_modules/ajv/lib/dot/contains.jst new file mode 100644 index 0000000..4dc9967 --- /dev/null +++ b/node_modules/ajv/lib/dot/contains.jst @@ -0,0 +1,55 @@ +{{# def.definitions }} +{{# def.errors }} +{{# def.setupKeyword }} +{{# def.setupNextLevel }} + + +{{ + var $idx = 'i' + $lvl + , $dataNxt = $it.dataLevel = it.dataLevel + 1 + , $nextData = 'data' + $dataNxt + , $currentBaseId = it.baseId + , $nonEmptySchema = {{# def.nonEmptySchema:$schema }}; +}} + +var {{=$errs}} = errors; +var {{=$valid}}; + +{{? $nonEmptySchema }} + {{# def.setCompositeRule }} + + {{ + $it.schema = $schema; + $it.schemaPath = $schemaPath; + $it.errSchemaPath = $errSchemaPath; + }} + + var {{=$nextValid}} = false; + + for (var {{=$idx}} = 0; {{=$idx}} < {{=$data}}.length; {{=$idx}}++) { + {{ + $it.errorPath = it.util.getPathExpr(it.errorPath, $idx, it.opts.jsonPointers, true); + var $passData = $data + '[' + $idx + ']'; + $it.dataPathArr[$dataNxt] = $idx; + }} + + {{# def.generateSubschemaCode }} + {{# def.optimizeValidate }} + + if ({{=$nextValid}}) break; + } + + {{# def.resetCompositeRule }} + {{= $closingBraces }} + + if (!{{=$nextValid}}) { +{{??}} + if ({{=$data}}.length == 0) { +{{?}} + + {{# def.error:'contains' }} + } else { + {{? $nonEmptySchema }} + {{# def.resetErrors }} + {{?}} + {{? it.opts.allErrors }} } {{?}} diff --git a/node_modules/ajv/lib/dot/custom.jst b/node_modules/ajv/lib/dot/custom.jst new file mode 100644 index 0000000..d30588f --- /dev/null +++ b/node_modules/ajv/lib/dot/custom.jst @@ -0,0 +1,191 @@ +{{# def.definitions }} +{{# def.errors }} +{{# def.setupKeyword }} +{{# def.$data }} + +{{ + var $rule = this + , $definition = 'definition' + $lvl + , $rDef = $rule.definition + , $closingBraces = ''; + var $validate = $rDef.validate; + var $compile, $inline, $macro, $ruleValidate, $validateCode; +}} + +{{? $isData && $rDef.$data }} + {{ + $validateCode = 'keywordValidate' + $lvl; + var $validateSchema = $rDef.validateSchema; + }} + var {{=$definition}} = RULES.custom['{{=$keyword}}'].definition; + var {{=$validateCode}} = {{=$definition}}.validate; +{{??}} + {{ + $ruleValidate = it.useCustomRule($rule, $schema, it.schema, it); + if (!$ruleValidate) return; + $schemaValue = 'validate.schema' + $schemaPath; + $validateCode = $ruleValidate.code; + $compile = $rDef.compile; + $inline = $rDef.inline; + $macro = $rDef.macro; + }} +{{?}} + +{{ + var $ruleErrs = $validateCode + '.errors' + , $i = 'i' + $lvl + , $ruleErr = 'ruleErr' + $lvl + , $asyncKeyword = $rDef.async; + + if ($asyncKeyword && !it.async) + throw new Error('async keyword in sync schema'); +}} + + +{{? !($inline || $macro) }}{{=$ruleErrs}} = null;{{?}} +var {{=$errs}} = errors; +var {{=$valid}}; + +{{## def.callRuleValidate: + {{=$validateCode}}.call( + {{? it.opts.passContext }}this{{??}}self{{?}} + {{? $compile || $rDef.schema === false }} + , {{=$data}} + {{??}} + , {{=$schemaValue}} + , {{=$data}} + , validate.schema{{=it.schemaPath}} + {{?}} + , {{# def.dataPath }} + {{# def.passParentData }} + , rootData + ) +#}} + +{{## def.extendErrors:_inline: + for (var {{=$i}}={{=$errs}}; {{=$i}} 0) + || _schema === false + : it.util.schemaHasRules(_schema, it.RULES.all)) +#}} + + +{{## def.strLength: + {{? it.opts.unicode === false }} + {{=$data}}.length + {{??}} + ucs2length({{=$data}}) + {{?}} +#}} + + +{{## def.willOptimize: + it.util.varOccurences($code, $nextData) < 2 +#}} + + +{{## def.generateSubschemaCode: + {{ + var $code = it.validate($it); + $it.baseId = $currentBaseId; + }} +#}} + + +{{## def.insertSubschemaCode: + {{= it.validate($it) }} + {{ $it.baseId = $currentBaseId; }} +#}} + + +{{## def._optimizeValidate: + it.util.varReplace($code, $nextData, $passData) +#}} + + +{{## def.optimizeValidate: + {{? {{# def.willOptimize}} }} + {{= {{# def._optimizeValidate }} }} + {{??}} + var {{=$nextData}} = {{=$passData}}; + {{= $code }} + {{?}} +#}} + + +{{## def.$data: + {{ + var $isData = it.opts.$data && $schema && $schema.$data + , $schemaValue; + }} + {{? $isData }} + var schema{{=$lvl}} = {{= it.util.getData($schema.$data, $dataLvl, it.dataPathArr) }}; + {{ $schemaValue = 'schema' + $lvl; }} + {{??}} + {{ $schemaValue = $schema; }} + {{?}} +#}} + + +{{## def.$dataNotType:_type: + {{?$isData}} ({{=$schemaValue}} !== undefined && typeof {{=$schemaValue}} != _type) || {{?}} +#}} + + +{{## def.check$dataIsArray: + if (schema{{=$lvl}} === undefined) {{=$valid}} = true; + else if (!Array.isArray(schema{{=$lvl}})) {{=$valid}} = false; + else { +#}} + + +{{## def.numberKeyword: + {{? !($isData || typeof $schema == 'number') }} + {{ throw new Error($keyword + ' must be number'); }} + {{?}} +#}} + + +{{## def.beginDefOut: + {{ + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; + }} +#}} + + +{{## def.storeDefOut:_variable: + {{ + var _variable = out; + out = $$outStack.pop(); + }} +#}} + + +{{## def.dataPath:(dataPath || ''){{? it.errorPath != '""'}} + {{= it.errorPath }}{{?}}#}} + +{{## def.setParentData: + {{ + var $parentData = $dataLvl ? 'data' + (($dataLvl-1)||'') : 'parentData' + , $parentDataProperty = $dataLvl ? it.dataPathArr[$dataLvl] : 'parentDataProperty'; + }} +#}} + +{{## def.passParentData: + {{# def.setParentData }} + , {{= $parentData }} + , {{= $parentDataProperty }} +#}} + + +{{## def.iterateProperties: + {{? $ownProperties }} + {{=$dataProperties}} = {{=$dataProperties}} || Object.keys({{=$data}}); + for (var {{=$idx}}=0; {{=$idx}}<{{=$dataProperties}}.length; {{=$idx}}++) { + var {{=$key}} = {{=$dataProperties}}[{{=$idx}}]; + {{??}} + for (var {{=$key}} in {{=$data}}) { + {{?}} +#}} + + +{{## def.noPropertyInData: + {{=$useData}} === undefined + {{? $ownProperties }} + || !{{# def.isOwnProperty }} + {{?}} +#}} + + +{{## def.isOwnProperty: + Object.prototype.hasOwnProperty.call({{=$data}}, '{{=it.util.escapeQuotes($propertyKey)}}') +#}} diff --git a/node_modules/ajv/lib/dot/dependencies.jst b/node_modules/ajv/lib/dot/dependencies.jst new file mode 100644 index 0000000..e4bddde --- /dev/null +++ b/node_modules/ajv/lib/dot/dependencies.jst @@ -0,0 +1,79 @@ +{{# def.definitions }} +{{# def.errors }} +{{# def.missing }} +{{# def.setupKeyword }} +{{# def.setupNextLevel }} + + +{{## def.propertyInData: + {{=$data}}{{= it.util.getProperty($property) }} !== undefined + {{? $ownProperties }} + && Object.prototype.hasOwnProperty.call({{=$data}}, '{{=it.util.escapeQuotes($property)}}') + {{?}} +#}} + + +{{ + var $schemaDeps = {} + , $propertyDeps = {} + , $ownProperties = it.opts.ownProperties; + + for ($property in $schema) { + if ($property == '__proto__') continue; + var $sch = $schema[$property]; + var $deps = Array.isArray($sch) ? $propertyDeps : $schemaDeps; + $deps[$property] = $sch; + } +}} + +var {{=$errs}} = errors; + +{{ var $currentErrorPath = it.errorPath; }} + +var missing{{=$lvl}}; +{{ for (var $property in $propertyDeps) { }} + {{ $deps = $propertyDeps[$property]; }} + {{? $deps.length }} + if ({{# def.propertyInData }} + {{? $breakOnError }} + && ({{# def.checkMissingProperty:$deps }})) { + {{# def.errorMissingProperty:'dependencies' }} + {{??}} + ) { + {{~ $deps:$propertyKey }} + {{# def.allErrorsMissingProperty:'dependencies' }} + {{~}} + {{?}} + } {{# def.elseIfValid }} + {{?}} +{{ } }} + +{{ + it.errorPath = $currentErrorPath; + var $currentBaseId = $it.baseId; +}} + + +{{ for (var $property in $schemaDeps) { }} + {{ var $sch = $schemaDeps[$property]; }} + {{? {{# def.nonEmptySchema:$sch }} }} + {{=$nextValid}} = true; + + if ({{# def.propertyInData }}) { + {{ + $it.schema = $sch; + $it.schemaPath = $schemaPath + it.util.getProperty($property); + $it.errSchemaPath = $errSchemaPath + '/' + it.util.escapeFragment($property); + }} + + {{# def.insertSubschemaCode }} + } + + {{# def.ifResultValid }} + {{?}} +{{ } }} + +{{? $breakOnError }} + {{= $closingBraces }} + if ({{=$errs}} == errors) { +{{?}} diff --git a/node_modules/ajv/lib/dot/enum.jst b/node_modules/ajv/lib/dot/enum.jst new file mode 100644 index 0000000..357c2e8 --- /dev/null +++ b/node_modules/ajv/lib/dot/enum.jst @@ -0,0 +1,30 @@ +{{# def.definitions }} +{{# def.errors }} +{{# def.setupKeyword }} +{{# def.$data }} + +{{ + var $i = 'i' + $lvl + , $vSchema = 'schema' + $lvl; +}} + +{{? !$isData }} + var {{=$vSchema}} = validate.schema{{=$schemaPath}}; +{{?}} +var {{=$valid}}; + +{{?$isData}}{{# def.check$dataIsArray }}{{?}} + +{{=$valid}} = false; + +for (var {{=$i}}=0; {{=$i}}<{{=$vSchema}}.length; {{=$i}}++) + if (equal({{=$data}}, {{=$vSchema}}[{{=$i}}])) { + {{=$valid}} = true; + break; + } + +{{? $isData }} } {{?}} + +{{# def.checkError:'enum' }} + +{{? $breakOnError }} else { {{?}} diff --git a/node_modules/ajv/lib/dot/errors.def b/node_modules/ajv/lib/dot/errors.def new file mode 100644 index 0000000..5c5752c --- /dev/null +++ b/node_modules/ajv/lib/dot/errors.def @@ -0,0 +1,194 @@ +{{# def.definitions }} + +{{## def._error:_rule: + {{ 'istanbul ignore else'; }} + {{? it.createErrors !== false }} + { + keyword: '{{= $errorKeyword || _rule }}' + , dataPath: (dataPath || '') + {{= it.errorPath }} + , schemaPath: {{=it.util.toQuotedString($errSchemaPath)}} + , params: {{# def._errorParams[_rule] }} + {{? it.opts.messages !== false }} + , message: {{# def._errorMessages[_rule] }} + {{?}} + {{? it.opts.verbose }} + , schema: {{# def._errorSchemas[_rule] }} + , parentSchema: validate.schema{{=it.schemaPath}} + , data: {{=$data}} + {{?}} + } + {{??}} + {} + {{?}} +#}} + + +{{## def._addError:_rule: + if (vErrors === null) vErrors = [err]; + else vErrors.push(err); + errors++; +#}} + + +{{## def.addError:_rule: + var err = {{# def._error:_rule }}; + {{# def._addError:_rule }} +#}} + + +{{## def.error:_rule: + {{# def.beginDefOut}} + {{# def._error:_rule }} + {{# def.storeDefOut:__err }} + + {{? !it.compositeRule && $breakOnError }} + {{ 'istanbul ignore if'; }} + {{? it.async }} + throw new ValidationError([{{=__err}}]); + {{??}} + validate.errors = [{{=__err}}]; + return false; + {{?}} + {{??}} + var err = {{=__err}}; + {{# def._addError:_rule }} + {{?}} +#}} + + +{{## def.extraError:_rule: + {{# def.addError:_rule}} + {{? !it.compositeRule && $breakOnError }} + {{ 'istanbul ignore if'; }} + {{? it.async }} + throw new ValidationError(vErrors); + {{??}} + validate.errors = vErrors; + return false; + {{?}} + {{?}} +#}} + + +{{## def.checkError:_rule: + if (!{{=$valid}}) { + {{# def.error:_rule }} + } +#}} + + +{{## def.resetErrors: + errors = {{=$errs}}; + if (vErrors !== null) { + if ({{=$errs}}) vErrors.length = {{=$errs}}; + else vErrors = null; + } +#}} + + +{{## def.concatSchema:{{?$isData}}' + {{=$schemaValue}} + '{{??}}{{=$schema}}{{?}}#}} +{{## def.appendSchema:{{?$isData}}' + {{=$schemaValue}}{{??}}{{=$schemaValue}}'{{?}}#}} +{{## def.concatSchemaEQ:{{?$isData}}' + {{=$schemaValue}} + '{{??}}{{=it.util.escapeQuotes($schema)}}{{?}}#}} + +{{## def._errorMessages = { + 'false schema': "'boolean schema is false'", + $ref: "'can\\\'t resolve reference {{=it.util.escapeQuotes($schema)}}'", + additionalItems: "'should NOT have more than {{=$schema.length}} items'", + additionalProperties: "'{{? it.opts._errorDataPathProperty }}is an invalid additional property{{??}}should NOT have additional properties{{?}}'", + anyOf: "'should match some schema in anyOf'", + const: "'should be equal to constant'", + contains: "'should contain a valid item'", + dependencies: "'should have {{? $deps.length == 1 }}property {{= it.util.escapeQuotes($deps[0]) }}{{??}}properties {{= it.util.escapeQuotes($deps.join(\", \")) }}{{?}} when property {{= it.util.escapeQuotes($property) }} is present'", + 'enum': "'should be equal to one of the allowed values'", + format: "'should match format \"{{#def.concatSchemaEQ}}\"'", + 'if': "'should match \"' + {{=$ifClause}} + '\" schema'", + _limit: "'should be {{=$opStr}} {{#def.appendSchema}}", + _exclusiveLimit: "'{{=$exclusiveKeyword}} should be boolean'", + _limitItems: "'should NOT have {{?$keyword=='maxItems'}}more{{??}}fewer{{?}} than {{#def.concatSchema}} items'", + _limitLength: "'should NOT be {{?$keyword=='maxLength'}}longer{{??}}shorter{{?}} than {{#def.concatSchema}} characters'", + _limitProperties:"'should NOT have {{?$keyword=='maxProperties'}}more{{??}}fewer{{?}} than {{#def.concatSchema}} properties'", + multipleOf: "'should be multiple of {{#def.appendSchema}}", + not: "'should NOT be valid'", + oneOf: "'should match exactly one schema in oneOf'", + pattern: "'should match pattern \"{{#def.concatSchemaEQ}}\"'", + propertyNames: "'property name \\'{{=$invalidName}}\\' is invalid'", + required: "'{{? it.opts._errorDataPathProperty }}is a required property{{??}}should have required property \\'{{=$missingProperty}}\\'{{?}}'", + type: "'should be {{? $typeIsArray }}{{= $typeSchema.join(\",\") }}{{??}}{{=$typeSchema}}{{?}}'", + uniqueItems: "'should NOT have duplicate items (items ## ' + j + ' and ' + i + ' are identical)'", + custom: "'should pass \"{{=$rule.keyword}}\" keyword validation'", + patternRequired: "'should have property matching pattern \\'{{=$missingPattern}}\\''", + switch: "'should pass \"switch\" keyword validation'", + _formatLimit: "'should be {{=$opStr}} \"{{#def.concatSchemaEQ}}\"'", + _formatExclusiveLimit: "'{{=$exclusiveKeyword}} should be boolean'" +} #}} + + +{{## def.schemaRefOrVal: {{?$isData}}validate.schema{{=$schemaPath}}{{??}}{{=$schema}}{{?}} #}} +{{## def.schemaRefOrQS: {{?$isData}}validate.schema{{=$schemaPath}}{{??}}{{=it.util.toQuotedString($schema)}}{{?}} #}} + +{{## def._errorSchemas = { + 'false schema': "false", + $ref: "{{=it.util.toQuotedString($schema)}}", + additionalItems: "false", + additionalProperties: "false", + anyOf: "validate.schema{{=$schemaPath}}", + const: "validate.schema{{=$schemaPath}}", + contains: "validate.schema{{=$schemaPath}}", + dependencies: "validate.schema{{=$schemaPath}}", + 'enum': "validate.schema{{=$schemaPath}}", + format: "{{#def.schemaRefOrQS}}", + 'if': "validate.schema{{=$schemaPath}}", + _limit: "{{#def.schemaRefOrVal}}", + _exclusiveLimit: "validate.schema{{=$schemaPath}}", + _limitItems: "{{#def.schemaRefOrVal}}", + _limitLength: "{{#def.schemaRefOrVal}}", + _limitProperties:"{{#def.schemaRefOrVal}}", + multipleOf: "{{#def.schemaRefOrVal}}", + not: "validate.schema{{=$schemaPath}}", + oneOf: "validate.schema{{=$schemaPath}}", + pattern: "{{#def.schemaRefOrQS}}", + propertyNames: "validate.schema{{=$schemaPath}}", + required: "validate.schema{{=$schemaPath}}", + type: "validate.schema{{=$schemaPath}}", + uniqueItems: "{{#def.schemaRefOrVal}}", + custom: "validate.schema{{=$schemaPath}}", + patternRequired: "validate.schema{{=$schemaPath}}", + switch: "validate.schema{{=$schemaPath}}", + _formatLimit: "{{#def.schemaRefOrQS}}", + _formatExclusiveLimit: "validate.schema{{=$schemaPath}}" +} #}} + + +{{## def.schemaValueQS: {{?$isData}}{{=$schemaValue}}{{??}}{{=it.util.toQuotedString($schema)}}{{?}} #}} + +{{## def._errorParams = { + 'false schema': "{}", + $ref: "{ ref: '{{=it.util.escapeQuotes($schema)}}' }", + additionalItems: "{ limit: {{=$schema.length}} }", + additionalProperties: "{ additionalProperty: '{{=$additionalProperty}}' }", + anyOf: "{}", + const: "{ allowedValue: schema{{=$lvl}} }", + contains: "{}", + dependencies: "{ property: '{{= it.util.escapeQuotes($property) }}', missingProperty: '{{=$missingProperty}}', depsCount: {{=$deps.length}}, deps: '{{= it.util.escapeQuotes($deps.length==1 ? $deps[0] : $deps.join(\", \")) }}' }", + 'enum': "{ allowedValues: schema{{=$lvl}} }", + format: "{ format: {{#def.schemaValueQS}} }", + 'if': "{ failingKeyword: {{=$ifClause}} }", + _limit: "{ comparison: {{=$opExpr}}, limit: {{=$schemaValue}}, exclusive: {{=$exclusive}} }", + _exclusiveLimit: "{}", + _limitItems: "{ limit: {{=$schemaValue}} }", + _limitLength: "{ limit: {{=$schemaValue}} }", + _limitProperties:"{ limit: {{=$schemaValue}} }", + multipleOf: "{ multipleOf: {{=$schemaValue}} }", + not: "{}", + oneOf: "{ passingSchemas: {{=$passingSchemas}} }", + pattern: "{ pattern: {{#def.schemaValueQS}} }", + propertyNames: "{ propertyName: '{{=$invalidName}}' }", + required: "{ missingProperty: '{{=$missingProperty}}' }", + type: "{ type: '{{? $typeIsArray }}{{= $typeSchema.join(\",\") }}{{??}}{{=$typeSchema}}{{?}}' }", + uniqueItems: "{ i: i, j: j }", + custom: "{ keyword: '{{=$rule.keyword}}' }", + patternRequired: "{ missingPattern: '{{=$missingPattern}}' }", + switch: "{ caseIndex: {{=$caseIndex}} }", + _formatLimit: "{ comparison: {{=$opExpr}}, limit: {{#def.schemaValueQS}}, exclusive: {{=$exclusive}} }", + _formatExclusiveLimit: "{}" +} #}} diff --git a/node_modules/ajv/lib/dot/format.jst b/node_modules/ajv/lib/dot/format.jst new file mode 100644 index 0000000..37f14da --- /dev/null +++ b/node_modules/ajv/lib/dot/format.jst @@ -0,0 +1,106 @@ +{{# def.definitions }} +{{# def.errors }} +{{# def.setupKeyword }} + +{{## def.skipFormat: + {{? $breakOnError }} if (true) { {{?}} + {{ return out; }} +#}} + +{{? it.opts.format === false }}{{# def.skipFormat }}{{?}} + + +{{# def.$data }} + + +{{## def.$dataCheckFormat: + {{# def.$dataNotType:'string' }} + ({{? $unknownFormats != 'ignore' }} + ({{=$schemaValue}} && !{{=$format}} + {{? $allowUnknown }} + && self._opts.unknownFormats.indexOf({{=$schemaValue}}) == -1 + {{?}}) || + {{?}} + ({{=$format}} && {{=$formatType}} == '{{=$ruleType}}' + && !(typeof {{=$format}} == 'function' + ? {{? it.async}} + (async{{=$lvl}} ? await {{=$format}}({{=$data}}) : {{=$format}}({{=$data}})) + {{??}} + {{=$format}}({{=$data}}) + {{?}} + : {{=$format}}.test({{=$data}})))) +#}} + +{{## def.checkFormat: + {{ + var $formatRef = 'formats' + it.util.getProperty($schema); + if ($isObject) $formatRef += '.validate'; + }} + {{? typeof $format == 'function' }} + {{=$formatRef}}({{=$data}}) + {{??}} + {{=$formatRef}}.test({{=$data}}) + {{?}} +#}} + + +{{ + var $unknownFormats = it.opts.unknownFormats + , $allowUnknown = Array.isArray($unknownFormats); +}} + +{{? $isData }} + {{ + var $format = 'format' + $lvl + , $isObject = 'isObject' + $lvl + , $formatType = 'formatType' + $lvl; + }} + var {{=$format}} = formats[{{=$schemaValue}}]; + var {{=$isObject}} = typeof {{=$format}} == 'object' + && !({{=$format}} instanceof RegExp) + && {{=$format}}.validate; + var {{=$formatType}} = {{=$isObject}} && {{=$format}}.type || 'string'; + if ({{=$isObject}}) { + {{? it.async}} + var async{{=$lvl}} = {{=$format}}.async; + {{?}} + {{=$format}} = {{=$format}}.validate; + } + if ({{# def.$dataCheckFormat }}) { +{{??}} + {{ var $format = it.formats[$schema]; }} + {{? !$format }} + {{? $unknownFormats == 'ignore' }} + {{ it.logger.warn('unknown format "' + $schema + '" ignored in schema at path "' + it.errSchemaPath + '"'); }} + {{# def.skipFormat }} + {{?? $allowUnknown && $unknownFormats.indexOf($schema) >= 0 }} + {{# def.skipFormat }} + {{??}} + {{ throw new Error('unknown format "' + $schema + '" is used in schema at path "' + it.errSchemaPath + '"'); }} + {{?}} + {{?}} + {{ + var $isObject = typeof $format == 'object' + && !($format instanceof RegExp) + && $format.validate; + var $formatType = $isObject && $format.type || 'string'; + if ($isObject) { + var $async = $format.async === true; + $format = $format.validate; + } + }} + {{? $formatType != $ruleType }} + {{# def.skipFormat }} + {{?}} + {{? $async }} + {{ + if (!it.async) throw new Error('async format in sync schema'); + var $formatRef = 'formats' + it.util.getProperty($schema) + '.validate'; + }} + if (!(await {{=$formatRef}}({{=$data}}))) { + {{??}} + if (!{{# def.checkFormat }}) { + {{?}} +{{?}} + {{# def.error:'format' }} + } {{? $breakOnError }} else { {{?}} diff --git a/node_modules/ajv/lib/dot/if.jst b/node_modules/ajv/lib/dot/if.jst new file mode 100644 index 0000000..adb5036 --- /dev/null +++ b/node_modules/ajv/lib/dot/if.jst @@ -0,0 +1,73 @@ +{{# def.definitions }} +{{# def.errors }} +{{# def.setupKeyword }} +{{# def.setupNextLevel }} + + +{{## def.validateIfClause:_clause: + {{ + $it.schema = it.schema['_clause']; + $it.schemaPath = it.schemaPath + '._clause'; + $it.errSchemaPath = it.errSchemaPath + '/_clause'; + }} + {{# def.insertSubschemaCode }} + {{=$valid}} = {{=$nextValid}}; + {{? $thenPresent && $elsePresent }} + {{ $ifClause = 'ifClause' + $lvl; }} + var {{=$ifClause}} = '_clause'; + {{??}} + {{ $ifClause = '\'_clause\''; }} + {{?}} +#}} + +{{ + var $thenSch = it.schema['then'] + , $elseSch = it.schema['else'] + , $thenPresent = $thenSch !== undefined && {{# def.nonEmptySchema:$thenSch }} + , $elsePresent = $elseSch !== undefined && {{# def.nonEmptySchema:$elseSch }} + , $currentBaseId = $it.baseId; +}} + +{{? $thenPresent || $elsePresent }} + {{ + var $ifClause; + $it.createErrors = false; + $it.schema = $schema; + $it.schemaPath = $schemaPath; + $it.errSchemaPath = $errSchemaPath; + }} + var {{=$errs}} = errors; + var {{=$valid}} = true; + + {{# def.setCompositeRule }} + {{# def.insertSubschemaCode }} + {{ $it.createErrors = true; }} + {{# def.resetErrors }} + {{# def.resetCompositeRule }} + + {{? $thenPresent }} + if ({{=$nextValid}}) { + {{# def.validateIfClause:then }} + } + {{? $elsePresent }} + else { + {{?}} + {{??}} + if (!{{=$nextValid}}) { + {{?}} + + {{? $elsePresent }} + {{# def.validateIfClause:else }} + } + {{?}} + + if (!{{=$valid}}) { + {{# def.extraError:'if' }} + } + {{? $breakOnError }} else { {{?}} +{{??}} + {{? $breakOnError }} + if (true) { + {{?}} +{{?}} + diff --git a/node_modules/ajv/lib/dot/items.jst b/node_modules/ajv/lib/dot/items.jst new file mode 100644 index 0000000..acc932a --- /dev/null +++ b/node_modules/ajv/lib/dot/items.jst @@ -0,0 +1,98 @@ +{{# def.definitions }} +{{# def.errors }} +{{# def.setupKeyword }} +{{# def.setupNextLevel }} + + +{{## def.validateItems:startFrom: + for (var {{=$idx}} = {{=startFrom}}; {{=$idx}} < {{=$data}}.length; {{=$idx}}++) { + {{ + $it.errorPath = it.util.getPathExpr(it.errorPath, $idx, it.opts.jsonPointers, true); + var $passData = $data + '[' + $idx + ']'; + $it.dataPathArr[$dataNxt] = $idx; + }} + + {{# def.generateSubschemaCode }} + {{# def.optimizeValidate }} + + {{? $breakOnError }} + if (!{{=$nextValid}}) break; + {{?}} + } +#}} + +{{ + var $idx = 'i' + $lvl + , $dataNxt = $it.dataLevel = it.dataLevel + 1 + , $nextData = 'data' + $dataNxt + , $currentBaseId = it.baseId; +}} + +var {{=$errs}} = errors; +var {{=$valid}}; + +{{? Array.isArray($schema) }} + {{ /* 'items' is an array of schemas */}} + {{ var $additionalItems = it.schema.additionalItems; }} + {{? $additionalItems === false }} + {{=$valid}} = {{=$data}}.length <= {{= $schema.length }}; + {{ + var $currErrSchemaPath = $errSchemaPath; + $errSchemaPath = it.errSchemaPath + '/additionalItems'; + }} + {{# def.checkError:'additionalItems' }} + {{ $errSchemaPath = $currErrSchemaPath; }} + {{# def.elseIfValid}} + {{?}} + + {{~ $schema:$sch:$i }} + {{? {{# def.nonEmptySchema:$sch }} }} + {{=$nextValid}} = true; + + if ({{=$data}}.length > {{=$i}}) { + {{ + var $passData = $data + '[' + $i + ']'; + $it.schema = $sch; + $it.schemaPath = $schemaPath + '[' + $i + ']'; + $it.errSchemaPath = $errSchemaPath + '/' + $i; + $it.errorPath = it.util.getPathExpr(it.errorPath, $i, it.opts.jsonPointers, true); + $it.dataPathArr[$dataNxt] = $i; + }} + + {{# def.generateSubschemaCode }} + {{# def.optimizeValidate }} + } + + {{# def.ifResultValid }} + {{?}} + {{~}} + + {{? typeof $additionalItems == 'object' && {{# def.nonEmptySchema:$additionalItems }} }} + {{ + $it.schema = $additionalItems; + $it.schemaPath = it.schemaPath + '.additionalItems'; + $it.errSchemaPath = it.errSchemaPath + '/additionalItems'; + }} + {{=$nextValid}} = true; + + if ({{=$data}}.length > {{= $schema.length }}) { + {{# def.validateItems: $schema.length }} + } + + {{# def.ifResultValid }} + {{?}} + +{{?? {{# def.nonEmptySchema:$schema }} }} + {{ /* 'items' is a single schema */}} + {{ + $it.schema = $schema; + $it.schemaPath = $schemaPath; + $it.errSchemaPath = $errSchemaPath; + }} + {{# def.validateItems: 0 }} +{{?}} + +{{? $breakOnError }} + {{= $closingBraces }} + if ({{=$errs}} == errors) { +{{?}} diff --git a/node_modules/ajv/lib/dot/missing.def b/node_modules/ajv/lib/dot/missing.def new file mode 100644 index 0000000..a73b9f9 --- /dev/null +++ b/node_modules/ajv/lib/dot/missing.def @@ -0,0 +1,39 @@ +{{## def.checkMissingProperty:_properties: + {{~ _properties:$propertyKey:$i }} + {{?$i}} || {{?}} + {{ + var $prop = it.util.getProperty($propertyKey) + , $useData = $data + $prop; + }} + ( ({{# def.noPropertyInData }}) && (missing{{=$lvl}} = {{= it.util.toQuotedString(it.opts.jsonPointers ? $propertyKey : $prop) }}) ) + {{~}} +#}} + + +{{## def.errorMissingProperty:_error: + {{ + var $propertyPath = 'missing' + $lvl + , $missingProperty = '\' + ' + $propertyPath + ' + \''; + if (it.opts._errorDataPathProperty) { + it.errorPath = it.opts.jsonPointers + ? it.util.getPathExpr($currentErrorPath, $propertyPath, true) + : $currentErrorPath + ' + ' + $propertyPath; + } + }} + {{# def.error:_error }} +#}} + + +{{## def.allErrorsMissingProperty:_error: + {{ + var $prop = it.util.getProperty($propertyKey) + , $missingProperty = it.util.escapeQuotes($propertyKey) + , $useData = $data + $prop; + if (it.opts._errorDataPathProperty) { + it.errorPath = it.util.getPath($currentErrorPath, $propertyKey, it.opts.jsonPointers); + } + }} + if ({{# def.noPropertyInData }}) { + {{# def.addError:_error }} + } +#}} diff --git a/node_modules/ajv/lib/dot/multipleOf.jst b/node_modules/ajv/lib/dot/multipleOf.jst new file mode 100644 index 0000000..6d88a45 --- /dev/null +++ b/node_modules/ajv/lib/dot/multipleOf.jst @@ -0,0 +1,22 @@ +{{# def.definitions }} +{{# def.errors }} +{{# def.setupKeyword }} +{{# def.$data }} + +{{# def.numberKeyword }} + +var division{{=$lvl}}; +if ({{?$isData}} + {{=$schemaValue}} !== undefined && ( + typeof {{=$schemaValue}} != 'number' || + {{?}} + (division{{=$lvl}} = {{=$data}} / {{=$schemaValue}}, + {{? it.opts.multipleOfPrecision }} + Math.abs(Math.round(division{{=$lvl}}) - division{{=$lvl}}) > 1e-{{=it.opts.multipleOfPrecision}} + {{??}} + division{{=$lvl}} !== parseInt(division{{=$lvl}}) + {{?}} + ) + {{?$isData}} ) {{?}} ) { + {{# def.error:'multipleOf' }} +} {{? $breakOnError }} else { {{?}} diff --git a/node_modules/ajv/lib/dot/not.jst b/node_modules/ajv/lib/dot/not.jst new file mode 100644 index 0000000..e03185a --- /dev/null +++ b/node_modules/ajv/lib/dot/not.jst @@ -0,0 +1,43 @@ +{{# def.definitions }} +{{# def.errors }} +{{# def.setupKeyword }} +{{# def.setupNextLevel }} + +{{? {{# def.nonEmptySchema:$schema }} }} + {{ + $it.schema = $schema; + $it.schemaPath = $schemaPath; + $it.errSchemaPath = $errSchemaPath; + }} + + var {{=$errs}} = errors; + + {{# def.setCompositeRule }} + + {{ + $it.createErrors = false; + var $allErrorsOption; + if ($it.opts.allErrors) { + $allErrorsOption = $it.opts.allErrors; + $it.opts.allErrors = false; + } + }} + {{= it.validate($it) }} + {{ + $it.createErrors = true; + if ($allErrorsOption) $it.opts.allErrors = $allErrorsOption; + }} + + {{# def.resetCompositeRule }} + + if ({{=$nextValid}}) { + {{# def.error:'not' }} + } else { + {{# def.resetErrors }} + {{? it.opts.allErrors }} } {{?}} +{{??}} + {{# def.addError:'not' }} + {{? $breakOnError}} + if (false) { + {{?}} +{{?}} diff --git a/node_modules/ajv/lib/dot/oneOf.jst b/node_modules/ajv/lib/dot/oneOf.jst new file mode 100644 index 0000000..bcce2c6 --- /dev/null +++ b/node_modules/ajv/lib/dot/oneOf.jst @@ -0,0 +1,54 @@ +{{# def.definitions }} +{{# def.errors }} +{{# def.setupKeyword }} +{{# def.setupNextLevel }} + +{{ + var $currentBaseId = $it.baseId + , $prevValid = 'prevValid' + $lvl + , $passingSchemas = 'passingSchemas' + $lvl; +}} + +var {{=$errs}} = errors + , {{=$prevValid}} = false + , {{=$valid}} = false + , {{=$passingSchemas}} = null; + +{{# def.setCompositeRule }} + +{{~ $schema:$sch:$i }} + {{? {{# def.nonEmptySchema:$sch }} }} + {{ + $it.schema = $sch; + $it.schemaPath = $schemaPath + '[' + $i + ']'; + $it.errSchemaPath = $errSchemaPath + '/' + $i; + }} + + {{# def.insertSubschemaCode }} + {{??}} + var {{=$nextValid}} = true; + {{?}} + + {{? $i }} + if ({{=$nextValid}} && {{=$prevValid}}) { + {{=$valid}} = false; + {{=$passingSchemas}} = [{{=$passingSchemas}}, {{=$i}}]; + } else { + {{ $closingBraces += '}'; }} + {{?}} + + if ({{=$nextValid}}) { + {{=$valid}} = {{=$prevValid}} = true; + {{=$passingSchemas}} = {{=$i}}; + } +{{~}} + +{{# def.resetCompositeRule }} + +{{= $closingBraces }} + +if (!{{=$valid}}) { + {{# def.extraError:'oneOf' }} +} else { + {{# def.resetErrors }} +{{? it.opts.allErrors }} } {{?}} diff --git a/node_modules/ajv/lib/dot/pattern.jst b/node_modules/ajv/lib/dot/pattern.jst new file mode 100644 index 0000000..3a37ef6 --- /dev/null +++ b/node_modules/ajv/lib/dot/pattern.jst @@ -0,0 +1,14 @@ +{{# def.definitions }} +{{# def.errors }} +{{# def.setupKeyword }} +{{# def.$data }} + +{{ + var $regexp = $isData + ? '(new RegExp(' + $schemaValue + '))' + : it.usePattern($schema); +}} + +if ({{# def.$dataNotType:'string' }} !{{=$regexp}}.test({{=$data}}) ) { + {{# def.error:'pattern' }} +} {{? $breakOnError }} else { {{?}} diff --git a/node_modules/ajv/lib/dot/properties.jst b/node_modules/ajv/lib/dot/properties.jst new file mode 100644 index 0000000..5cebb9b --- /dev/null +++ b/node_modules/ajv/lib/dot/properties.jst @@ -0,0 +1,245 @@ +{{# def.definitions }} +{{# def.errors }} +{{# def.setupKeyword }} +{{# def.setupNextLevel }} + + +{{## def.validateAdditional: + {{ /* additionalProperties is schema */ + $it.schema = $aProperties; + $it.schemaPath = it.schemaPath + '.additionalProperties'; + $it.errSchemaPath = it.errSchemaPath + '/additionalProperties'; + $it.errorPath = it.opts._errorDataPathProperty + ? it.errorPath + : it.util.getPathExpr(it.errorPath, $key, it.opts.jsonPointers); + var $passData = $data + '[' + $key + ']'; + $it.dataPathArr[$dataNxt] = $key; + }} + + {{# def.generateSubschemaCode }} + {{# def.optimizeValidate }} +#}} + + +{{ + var $key = 'key' + $lvl + , $idx = 'idx' + $lvl + , $dataNxt = $it.dataLevel = it.dataLevel + 1 + , $nextData = 'data' + $dataNxt + , $dataProperties = 'dataProperties' + $lvl; + + var $schemaKeys = Object.keys($schema || {}).filter(notProto) + , $pProperties = it.schema.patternProperties || {} + , $pPropertyKeys = Object.keys($pProperties).filter(notProto) + , $aProperties = it.schema.additionalProperties + , $someProperties = $schemaKeys.length || $pPropertyKeys.length + , $noAdditional = $aProperties === false + , $additionalIsSchema = typeof $aProperties == 'object' + && Object.keys($aProperties).length + , $removeAdditional = it.opts.removeAdditional + , $checkAdditional = $noAdditional || $additionalIsSchema || $removeAdditional + , $ownProperties = it.opts.ownProperties + , $currentBaseId = it.baseId; + + var $required = it.schema.required; + if ($required && !(it.opts.$data && $required.$data) && $required.length < it.opts.loopRequired) { + var $requiredHash = it.util.toHash($required); + } + + function notProto(p) { return p !== '__proto__'; } +}} + + +var {{=$errs}} = errors; +var {{=$nextValid}} = true; +{{? $ownProperties }} + var {{=$dataProperties}} = undefined; +{{?}} + +{{? $checkAdditional }} + {{# def.iterateProperties }} + {{? $someProperties }} + var isAdditional{{=$lvl}} = !(false + {{? $schemaKeys.length }} + {{? $schemaKeys.length > 8 }} + || validate.schema{{=$schemaPath}}.hasOwnProperty({{=$key}}) + {{??}} + {{~ $schemaKeys:$propertyKey }} + || {{=$key}} == {{= it.util.toQuotedString($propertyKey) }} + {{~}} + {{?}} + {{?}} + {{? $pPropertyKeys.length }} + {{~ $pPropertyKeys:$pProperty:$i }} + || {{= it.usePattern($pProperty) }}.test({{=$key}}) + {{~}} + {{?}} + ); + + if (isAdditional{{=$lvl}}) { + {{?}} + {{? $removeAdditional == 'all' }} + delete {{=$data}}[{{=$key}}]; + {{??}} + {{ + var $currentErrorPath = it.errorPath; + var $additionalProperty = '\' + ' + $key + ' + \''; + if (it.opts._errorDataPathProperty) { + it.errorPath = it.util.getPathExpr(it.errorPath, $key, it.opts.jsonPointers); + } + }} + {{? $noAdditional }} + {{? $removeAdditional }} + delete {{=$data}}[{{=$key}}]; + {{??}} + {{=$nextValid}} = false; + {{ + var $currErrSchemaPath = $errSchemaPath; + $errSchemaPath = it.errSchemaPath + '/additionalProperties'; + }} + {{# def.error:'additionalProperties' }} + {{ $errSchemaPath = $currErrSchemaPath; }} + {{? $breakOnError }} break; {{?}} + {{?}} + {{?? $additionalIsSchema }} + {{? $removeAdditional == 'failing' }} + var {{=$errs}} = errors; + {{# def.setCompositeRule }} + + {{# def.validateAdditional }} + + if (!{{=$nextValid}}) { + errors = {{=$errs}}; + if (validate.errors !== null) { + if (errors) validate.errors.length = errors; + else validate.errors = null; + } + delete {{=$data}}[{{=$key}}]; + } + + {{# def.resetCompositeRule }} + {{??}} + {{# def.validateAdditional }} + {{? $breakOnError }} if (!{{=$nextValid}}) break; {{?}} + {{?}} + {{?}} + {{ it.errorPath = $currentErrorPath; }} + {{?}} + {{? $someProperties }} + } + {{?}} + } + + {{# def.ifResultValid }} +{{?}} + +{{ var $useDefaults = it.opts.useDefaults && !it.compositeRule; }} + +{{? $schemaKeys.length }} + {{~ $schemaKeys:$propertyKey }} + {{ var $sch = $schema[$propertyKey]; }} + + {{? {{# def.nonEmptySchema:$sch}} }} + {{ + var $prop = it.util.getProperty($propertyKey) + , $passData = $data + $prop + , $hasDefault = $useDefaults && $sch.default !== undefined; + $it.schema = $sch; + $it.schemaPath = $schemaPath + $prop; + $it.errSchemaPath = $errSchemaPath + '/' + it.util.escapeFragment($propertyKey); + $it.errorPath = it.util.getPath(it.errorPath, $propertyKey, it.opts.jsonPointers); + $it.dataPathArr[$dataNxt] = it.util.toQuotedString($propertyKey); + }} + + {{# def.generateSubschemaCode }} + + {{? {{# def.willOptimize }} }} + {{ + $code = {{# def._optimizeValidate }}; + var $useData = $passData; + }} + {{??}} + {{ var $useData = $nextData; }} + var {{=$nextData}} = {{=$passData}}; + {{?}} + + {{? $hasDefault }} + {{= $code }} + {{??}} + {{? $requiredHash && $requiredHash[$propertyKey] }} + if ({{# def.noPropertyInData }}) { + {{=$nextValid}} = false; + {{ + var $currentErrorPath = it.errorPath + , $currErrSchemaPath = $errSchemaPath + , $missingProperty = it.util.escapeQuotes($propertyKey); + if (it.opts._errorDataPathProperty) { + it.errorPath = it.util.getPath($currentErrorPath, $propertyKey, it.opts.jsonPointers); + } + $errSchemaPath = it.errSchemaPath + '/required'; + }} + {{# def.error:'required' }} + {{ $errSchemaPath = $currErrSchemaPath; }} + {{ it.errorPath = $currentErrorPath; }} + } else { + {{??}} + {{? $breakOnError }} + if ({{# def.noPropertyInData }}) { + {{=$nextValid}} = true; + } else { + {{??}} + if ({{=$useData}} !== undefined + {{? $ownProperties }} + && {{# def.isOwnProperty }} + {{?}} + ) { + {{?}} + {{?}} + + {{= $code }} + } + {{?}} {{ /* $hasDefault */ }} + {{?}} {{ /* def.nonEmptySchema */ }} + + {{# def.ifResultValid }} + {{~}} +{{?}} + +{{? $pPropertyKeys.length }} + {{~ $pPropertyKeys:$pProperty }} + {{ var $sch = $pProperties[$pProperty]; }} + + {{? {{# def.nonEmptySchema:$sch}} }} + {{ + $it.schema = $sch; + $it.schemaPath = it.schemaPath + '.patternProperties' + it.util.getProperty($pProperty); + $it.errSchemaPath = it.errSchemaPath + '/patternProperties/' + + it.util.escapeFragment($pProperty); + }} + + {{# def.iterateProperties }} + if ({{= it.usePattern($pProperty) }}.test({{=$key}})) { + {{ + $it.errorPath = it.util.getPathExpr(it.errorPath, $key, it.opts.jsonPointers); + var $passData = $data + '[' + $key + ']'; + $it.dataPathArr[$dataNxt] = $key; + }} + + {{# def.generateSubschemaCode }} + {{# def.optimizeValidate }} + + {{? $breakOnError }} if (!{{=$nextValid}}) break; {{?}} + } + {{? $breakOnError }} else {{=$nextValid}} = true; {{?}} + } + + {{# def.ifResultValid }} + {{?}} {{ /* def.nonEmptySchema */ }} + {{~}} +{{?}} + + +{{? $breakOnError }} + {{= $closingBraces }} + if ({{=$errs}} == errors) { +{{?}} diff --git a/node_modules/ajv/lib/dot/propertyNames.jst b/node_modules/ajv/lib/dot/propertyNames.jst new file mode 100644 index 0000000..d456cca --- /dev/null +++ b/node_modules/ajv/lib/dot/propertyNames.jst @@ -0,0 +1,52 @@ +{{# def.definitions }} +{{# def.errors }} +{{# def.setupKeyword }} +{{# def.setupNextLevel }} + +var {{=$errs}} = errors; + +{{? {{# def.nonEmptySchema:$schema }} }} + {{ + $it.schema = $schema; + $it.schemaPath = $schemaPath; + $it.errSchemaPath = $errSchemaPath; + }} + + {{ + var $key = 'key' + $lvl + , $idx = 'idx' + $lvl + , $i = 'i' + $lvl + , $invalidName = '\' + ' + $key + ' + \'' + , $dataNxt = $it.dataLevel = it.dataLevel + 1 + , $nextData = 'data' + $dataNxt + , $dataProperties = 'dataProperties' + $lvl + , $ownProperties = it.opts.ownProperties + , $currentBaseId = it.baseId; + }} + + {{? $ownProperties }} + var {{=$dataProperties}} = undefined; + {{?}} + {{# def.iterateProperties }} + var startErrs{{=$lvl}} = errors; + + {{ var $passData = $key; }} + {{# def.setCompositeRule }} + {{# def.generateSubschemaCode }} + {{# def.optimizeValidate }} + {{# def.resetCompositeRule }} + + if (!{{=$nextValid}}) { + for (var {{=$i}}=startErrs{{=$lvl}}; {{=$i}}= it.opts.loopRequired + , $ownProperties = it.opts.ownProperties; + }} + + {{? $breakOnError }} + var missing{{=$lvl}}; + {{? $loopRequired }} + {{# def.setupLoop }} + var {{=$valid}} = true; + + {{?$isData}}{{# def.check$dataIsArray }}{{?}} + + for (var {{=$i}} = 0; {{=$i}} < {{=$vSchema}}.length; {{=$i}}++) { + {{=$valid}} = {{=$data}}[{{=$vSchema}}[{{=$i}}]] !== undefined + {{? $ownProperties }} + && {{# def.isRequiredOwnProperty }} + {{?}}; + if (!{{=$valid}}) break; + } + + {{? $isData }} } {{?}} + + {{# def.checkError:'required' }} + else { + {{??}} + if ({{# def.checkMissingProperty:$required }}) { + {{# def.errorMissingProperty:'required' }} + } else { + {{?}} + {{??}} + {{? $loopRequired }} + {{# def.setupLoop }} + {{? $isData }} + if ({{=$vSchema}} && !Array.isArray({{=$vSchema}})) { + {{# def.addError:'required' }} + } else if ({{=$vSchema}} !== undefined) { + {{?}} + + for (var {{=$i}} = 0; {{=$i}} < {{=$vSchema}}.length; {{=$i}}++) { + if ({{=$data}}[{{=$vSchema}}[{{=$i}}]] === undefined + {{? $ownProperties }} + || !{{# def.isRequiredOwnProperty }} + {{?}}) { + {{# def.addError:'required' }} + } + } + + {{? $isData }} } {{?}} + {{??}} + {{~ $required:$propertyKey }} + {{# def.allErrorsMissingProperty:'required' }} + {{~}} + {{?}} + {{?}} + + {{ it.errorPath = $currentErrorPath; }} + +{{?? $breakOnError }} + if (true) { +{{?}} diff --git a/node_modules/ajv/lib/dot/uniqueItems.jst b/node_modules/ajv/lib/dot/uniqueItems.jst new file mode 100644 index 0000000..e69b830 --- /dev/null +++ b/node_modules/ajv/lib/dot/uniqueItems.jst @@ -0,0 +1,62 @@ +{{# def.definitions }} +{{# def.errors }} +{{# def.setupKeyword }} +{{# def.$data }} + + +{{? ($schema || $isData) && it.opts.uniqueItems !== false }} + {{? $isData }} + var {{=$valid}}; + if ({{=$schemaValue}} === false || {{=$schemaValue}} === undefined) + {{=$valid}} = true; + else if (typeof {{=$schemaValue}} != 'boolean') + {{=$valid}} = false; + else { + {{?}} + + var i = {{=$data}}.length + , {{=$valid}} = true + , j; + if (i > 1) { + {{ + var $itemType = it.schema.items && it.schema.items.type + , $typeIsArray = Array.isArray($itemType); + }} + {{? !$itemType || $itemType == 'object' || $itemType == 'array' || + ($typeIsArray && ($itemType.indexOf('object') >= 0 || $itemType.indexOf('array') >= 0)) }} + outer: + for (;i--;) { + for (j = i; j--;) { + if (equal({{=$data}}[i], {{=$data}}[j])) { + {{=$valid}} = false; + break outer; + } + } + } + {{??}} + var itemIndices = {}, item; + for (;i--;) { + var item = {{=$data}}[i]; + {{ var $method = 'checkDataType' + ($typeIsArray ? 's' : ''); }} + if ({{= it.util[$method]($itemType, 'item', it.opts.strictNumbers, true) }}) continue; + {{? $typeIsArray}} + if (typeof item == 'string') item = '"' + item; + {{?}} + if (typeof itemIndices[item] == 'number') { + {{=$valid}} = false; + j = itemIndices[item]; + break; + } + itemIndices[item] = i; + } + {{?}} + } + + {{? $isData }} } {{?}} + + if (!{{=$valid}}) { + {{# def.error:'uniqueItems' }} + } {{? $breakOnError }} else { {{?}} +{{??}} + {{? $breakOnError }} if (true) { {{?}} +{{?}} diff --git a/node_modules/ajv/lib/dot/validate.jst b/node_modules/ajv/lib/dot/validate.jst new file mode 100644 index 0000000..32087e7 --- /dev/null +++ b/node_modules/ajv/lib/dot/validate.jst @@ -0,0 +1,276 @@ +{{# def.definitions }} +{{# def.errors }} +{{# def.defaults }} +{{# def.coerce }} + +{{ /** + * schema compilation (render) time: + * it = { schema, RULES, _validate, opts } + * it.validate - this template function, + * it is used recursively to generate code for subschemas + * + * runtime: + * "validate" is a variable name to which this function will be assigned + * validateRef etc. are defined in the parent scope in index.js + */ }} + +{{ + var $async = it.schema.$async === true + , $refKeywords = it.util.schemaHasRulesExcept(it.schema, it.RULES.all, '$ref') + , $id = it.self._getId(it.schema); +}} + +{{ + if (it.opts.strictKeywords) { + var $unknownKwd = it.util.schemaUnknownRules(it.schema, it.RULES.keywords); + if ($unknownKwd) { + var $keywordsMsg = 'unknown keyword: ' + $unknownKwd; + if (it.opts.strictKeywords === 'log') it.logger.warn($keywordsMsg); + else throw new Error($keywordsMsg); + } + } +}} + +{{? it.isTop }} + var validate = {{?$async}}{{it.async = true;}}async {{?}}function(data, dataPath, parentData, parentDataProperty, rootData) { + 'use strict'; + {{? $id && (it.opts.sourceCode || it.opts.processCode) }} + {{= '/\*# sourceURL=' + $id + ' */' }} + {{?}} +{{?}} + +{{? typeof it.schema == 'boolean' || !($refKeywords || it.schema.$ref) }} + {{ var $keyword = 'false schema'; }} + {{# def.setupKeyword }} + {{? it.schema === false}} + {{? it.isTop}} + {{ $breakOnError = true; }} + {{??}} + var {{=$valid}} = false; + {{?}} + {{# def.error:'false schema' }} + {{??}} + {{? it.isTop}} + {{? $async }} + return data; + {{??}} + validate.errors = null; + return true; + {{?}} + {{??}} + var {{=$valid}} = true; + {{?}} + {{?}} + + {{? it.isTop}} + }; + return validate; + {{?}} + + {{ return out; }} +{{?}} + + +{{? it.isTop }} + {{ + var $top = it.isTop + , $lvl = it.level = 0 + , $dataLvl = it.dataLevel = 0 + , $data = 'data'; + it.rootId = it.resolve.fullPath(it.self._getId(it.root.schema)); + it.baseId = it.baseId || it.rootId; + delete it.isTop; + + it.dataPathArr = [""]; + + if (it.schema.default !== undefined && it.opts.useDefaults && it.opts.strictDefaults) { + var $defaultMsg = 'default is ignored in the schema root'; + if (it.opts.strictDefaults === 'log') it.logger.warn($defaultMsg); + else throw new Error($defaultMsg); + } + }} + + var vErrors = null; {{ /* don't edit, used in replace */ }} + var errors = 0; {{ /* don't edit, used in replace */ }} + if (rootData === undefined) rootData = data; {{ /* don't edit, used in replace */ }} +{{??}} + {{ + var $lvl = it.level + , $dataLvl = it.dataLevel + , $data = 'data' + ($dataLvl || ''); + + if ($id) it.baseId = it.resolve.url(it.baseId, $id); + + if ($async && !it.async) throw new Error('async schema in sync schema'); + }} + + var errs_{{=$lvl}} = errors; +{{?}} + +{{ + var $valid = 'valid' + $lvl + , $breakOnError = !it.opts.allErrors + , $closingBraces1 = '' + , $closingBraces2 = ''; + + var $errorKeyword; + var $typeSchema = it.schema.type + , $typeIsArray = Array.isArray($typeSchema); + + if ($typeSchema && it.opts.nullable && it.schema.nullable === true) { + if ($typeIsArray) { + if ($typeSchema.indexOf('null') == -1) + $typeSchema = $typeSchema.concat('null'); + } else if ($typeSchema != 'null') { + $typeSchema = [$typeSchema, 'null']; + $typeIsArray = true; + } + } + + if ($typeIsArray && $typeSchema.length == 1) { + $typeSchema = $typeSchema[0]; + $typeIsArray = false; + } +}} + +{{## def.checkType: + {{ + var $schemaPath = it.schemaPath + '.type' + , $errSchemaPath = it.errSchemaPath + '/type' + , $method = $typeIsArray ? 'checkDataTypes' : 'checkDataType'; + }} + + if ({{= it.util[$method]($typeSchema, $data, it.opts.strictNumbers, true) }}) { +#}} + +{{? it.schema.$ref && $refKeywords }} + {{? it.opts.extendRefs == 'fail' }} + {{ throw new Error('$ref: validation keywords used in schema at path "' + it.errSchemaPath + '" (see option extendRefs)'); }} + {{?? it.opts.extendRefs !== true }} + {{ + $refKeywords = false; + it.logger.warn('$ref: keywords ignored in schema at path "' + it.errSchemaPath + '"'); + }} + {{?}} +{{?}} + +{{? it.schema.$comment && it.opts.$comment }} + {{= it.RULES.all.$comment.code(it, '$comment') }} +{{?}} + +{{? $typeSchema }} + {{? it.opts.coerceTypes }} + {{ var $coerceToTypes = it.util.coerceToTypes(it.opts.coerceTypes, $typeSchema); }} + {{?}} + + {{ var $rulesGroup = it.RULES.types[$typeSchema]; }} + {{? $coerceToTypes || $typeIsArray || $rulesGroup === true || + ($rulesGroup && !$shouldUseGroup($rulesGroup)) }} + {{ + var $schemaPath = it.schemaPath + '.type' + , $errSchemaPath = it.errSchemaPath + '/type'; + }} + {{# def.checkType }} + {{? $coerceToTypes }} + {{# def.coerceType }} + {{??}} + {{# def.error:'type' }} + {{?}} + } + {{?}} +{{?}} + + +{{? it.schema.$ref && !$refKeywords }} + {{= it.RULES.all.$ref.code(it, '$ref') }} + {{? $breakOnError }} + } + if (errors === {{?$top}}0{{??}}errs_{{=$lvl}}{{?}}) { + {{ $closingBraces2 += '}'; }} + {{?}} +{{??}} + {{~ it.RULES:$rulesGroup }} + {{? $shouldUseGroup($rulesGroup) }} + {{? $rulesGroup.type }} + if ({{= it.util.checkDataType($rulesGroup.type, $data, it.opts.strictNumbers) }}) { + {{?}} + {{? it.opts.useDefaults }} + {{? $rulesGroup.type == 'object' && it.schema.properties }} + {{# def.defaultProperties }} + {{?? $rulesGroup.type == 'array' && Array.isArray(it.schema.items) }} + {{# def.defaultItems }} + {{?}} + {{?}} + {{~ $rulesGroup.rules:$rule }} + {{? $shouldUseRule($rule) }} + {{ var $code = $rule.code(it, $rule.keyword, $rulesGroup.type); }} + {{? $code }} + {{= $code }} + {{? $breakOnError }} + {{ $closingBraces1 += '}'; }} + {{?}} + {{?}} + {{?}} + {{~}} + {{? $breakOnError }} + {{= $closingBraces1 }} + {{ $closingBraces1 = ''; }} + {{?}} + {{? $rulesGroup.type }} + } + {{? $typeSchema && $typeSchema === $rulesGroup.type && !$coerceToTypes }} + else { + {{ + var $schemaPath = it.schemaPath + '.type' + , $errSchemaPath = it.errSchemaPath + '/type'; + }} + {{# def.error:'type' }} + } + {{?}} + {{?}} + + {{? $breakOnError }} + if (errors === {{?$top}}0{{??}}errs_{{=$lvl}}{{?}}) { + {{ $closingBraces2 += '}'; }} + {{?}} + {{?}} + {{~}} +{{?}} + +{{? $breakOnError }} {{= $closingBraces2 }} {{?}} + +{{? $top }} + {{? $async }} + if (errors === 0) return data; {{ /* don't edit, used in replace */ }} + else throw new ValidationError(vErrors); {{ /* don't edit, used in replace */ }} + {{??}} + validate.errors = vErrors; {{ /* don't edit, used in replace */ }} + return errors === 0; {{ /* don't edit, used in replace */ }} + {{?}} + }; + + return validate; +{{??}} + var {{=$valid}} = errors === errs_{{=$lvl}}; +{{?}} + +{{ + function $shouldUseGroup($rulesGroup) { + var rules = $rulesGroup.rules; + for (var i=0; i < rules.length; i++) + if ($shouldUseRule(rules[i])) + return true; + } + + function $shouldUseRule($rule) { + return it.schema[$rule.keyword] !== undefined || + ($rule.implements && $ruleImplementsSomeKeyword($rule)); + } + + function $ruleImplementsSomeKeyword($rule) { + var impl = $rule.implements; + for (var i=0; i < impl.length; i++) + if (it.schema[impl[i]] !== undefined) + return true; + } +}} diff --git a/node_modules/ajv/lib/dotjs/README.md b/node_modules/ajv/lib/dotjs/README.md new file mode 100644 index 0000000..4d99484 --- /dev/null +++ b/node_modules/ajv/lib/dotjs/README.md @@ -0,0 +1,3 @@ +These files are compiled dot templates from dot folder. + +Do NOT edit them directly, edit the templates and run `npm run build` from main ajv folder. diff --git a/node_modules/ajv/lib/dotjs/_limit.js b/node_modules/ajv/lib/dotjs/_limit.js new file mode 100644 index 0000000..05a1979 --- /dev/null +++ b/node_modules/ajv/lib/dotjs/_limit.js @@ -0,0 +1,163 @@ +'use strict'; +module.exports = function generate__limit(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $errorKeyword; + var $data = 'data' + ($dataLvl || ''); + var $isData = it.opts.$data && $schema && $schema.$data, + $schemaValue; + if ($isData) { + out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; '; + $schemaValue = 'schema' + $lvl; + } else { + $schemaValue = $schema; + } + var $isMax = $keyword == 'maximum', + $exclusiveKeyword = $isMax ? 'exclusiveMaximum' : 'exclusiveMinimum', + $schemaExcl = it.schema[$exclusiveKeyword], + $isDataExcl = it.opts.$data && $schemaExcl && $schemaExcl.$data, + $op = $isMax ? '<' : '>', + $notOp = $isMax ? '>' : '<', + $errorKeyword = undefined; + if (!($isData || typeof $schema == 'number' || $schema === undefined)) { + throw new Error($keyword + ' must be number'); + } + if (!($isDataExcl || $schemaExcl === undefined || typeof $schemaExcl == 'number' || typeof $schemaExcl == 'boolean')) { + throw new Error($exclusiveKeyword + ' must be number or boolean'); + } + if ($isDataExcl) { + var $schemaValueExcl = it.util.getData($schemaExcl.$data, $dataLvl, it.dataPathArr), + $exclusive = 'exclusive' + $lvl, + $exclType = 'exclType' + $lvl, + $exclIsNumber = 'exclIsNumber' + $lvl, + $opExpr = 'op' + $lvl, + $opStr = '\' + ' + $opExpr + ' + \''; + out += ' var schemaExcl' + ($lvl) + ' = ' + ($schemaValueExcl) + '; '; + $schemaValueExcl = 'schemaExcl' + $lvl; + out += ' var ' + ($exclusive) + '; var ' + ($exclType) + ' = typeof ' + ($schemaValueExcl) + '; if (' + ($exclType) + ' != \'boolean\' && ' + ($exclType) + ' != \'undefined\' && ' + ($exclType) + ' != \'number\') { '; + var $errorKeyword = $exclusiveKeyword; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ($errorKeyword || '_exclusiveLimit') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: {} '; + if (it.opts.messages !== false) { + out += ' , message: \'' + ($exclusiveKeyword) + ' should be boolean\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += ' } else if ( '; + if ($isData) { + out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \'number\') || '; + } + out += ' ' + ($exclType) + ' == \'number\' ? ( (' + ($exclusive) + ' = ' + ($schemaValue) + ' === undefined || ' + ($schemaValueExcl) + ' ' + ($op) + '= ' + ($schemaValue) + ') ? ' + ($data) + ' ' + ($notOp) + '= ' + ($schemaValueExcl) + ' : ' + ($data) + ' ' + ($notOp) + ' ' + ($schemaValue) + ' ) : ( (' + ($exclusive) + ' = ' + ($schemaValueExcl) + ' === true) ? ' + ($data) + ' ' + ($notOp) + '= ' + ($schemaValue) + ' : ' + ($data) + ' ' + ($notOp) + ' ' + ($schemaValue) + ' ) || ' + ($data) + ' !== ' + ($data) + ') { var op' + ($lvl) + ' = ' + ($exclusive) + ' ? \'' + ($op) + '\' : \'' + ($op) + '=\'; '; + if ($schema === undefined) { + $errorKeyword = $exclusiveKeyword; + $errSchemaPath = it.errSchemaPath + '/' + $exclusiveKeyword; + $schemaValue = $schemaValueExcl; + $isData = $isDataExcl; + } + } else { + var $exclIsNumber = typeof $schemaExcl == 'number', + $opStr = $op; + if ($exclIsNumber && $isData) { + var $opExpr = '\'' + $opStr + '\''; + out += ' if ( '; + if ($isData) { + out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \'number\') || '; + } + out += ' ( ' + ($schemaValue) + ' === undefined || ' + ($schemaExcl) + ' ' + ($op) + '= ' + ($schemaValue) + ' ? ' + ($data) + ' ' + ($notOp) + '= ' + ($schemaExcl) + ' : ' + ($data) + ' ' + ($notOp) + ' ' + ($schemaValue) + ' ) || ' + ($data) + ' !== ' + ($data) + ') { '; + } else { + if ($exclIsNumber && $schema === undefined) { + $exclusive = true; + $errorKeyword = $exclusiveKeyword; + $errSchemaPath = it.errSchemaPath + '/' + $exclusiveKeyword; + $schemaValue = $schemaExcl; + $notOp += '='; + } else { + if ($exclIsNumber) $schemaValue = Math[$isMax ? 'min' : 'max']($schemaExcl, $schema); + if ($schemaExcl === ($exclIsNumber ? $schemaValue : true)) { + $exclusive = true; + $errorKeyword = $exclusiveKeyword; + $errSchemaPath = it.errSchemaPath + '/' + $exclusiveKeyword; + $notOp += '='; + } else { + $exclusive = false; + $opStr += '='; + } + } + var $opExpr = '\'' + $opStr + '\''; + out += ' if ( '; + if ($isData) { + out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \'number\') || '; + } + out += ' ' + ($data) + ' ' + ($notOp) + ' ' + ($schemaValue) + ' || ' + ($data) + ' !== ' + ($data) + ') { '; + } + } + $errorKeyword = $errorKeyword || $keyword; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ($errorKeyword || '_limit') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { comparison: ' + ($opExpr) + ', limit: ' + ($schemaValue) + ', exclusive: ' + ($exclusive) + ' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should be ' + ($opStr) + ' '; + if ($isData) { + out += '\' + ' + ($schemaValue); + } else { + out += '' + ($schemaValue) + '\''; + } + } + if (it.opts.verbose) { + out += ' , schema: '; + if ($isData) { + out += 'validate.schema' + ($schemaPath); + } else { + out += '' + ($schema); + } + out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += ' } '; + if ($breakOnError) { + out += ' else { '; + } + return out; +} diff --git a/node_modules/ajv/lib/dotjs/_limitItems.js b/node_modules/ajv/lib/dotjs/_limitItems.js new file mode 100644 index 0000000..e092a55 --- /dev/null +++ b/node_modules/ajv/lib/dotjs/_limitItems.js @@ -0,0 +1,80 @@ +'use strict'; +module.exports = function generate__limitItems(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $errorKeyword; + var $data = 'data' + ($dataLvl || ''); + var $isData = it.opts.$data && $schema && $schema.$data, + $schemaValue; + if ($isData) { + out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; '; + $schemaValue = 'schema' + $lvl; + } else { + $schemaValue = $schema; + } + if (!($isData || typeof $schema == 'number')) { + throw new Error($keyword + ' must be number'); + } + var $op = $keyword == 'maxItems' ? '>' : '<'; + out += 'if ( '; + if ($isData) { + out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \'number\') || '; + } + out += ' ' + ($data) + '.length ' + ($op) + ' ' + ($schemaValue) + ') { '; + var $errorKeyword = $keyword; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ($errorKeyword || '_limitItems') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { limit: ' + ($schemaValue) + ' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should NOT have '; + if ($keyword == 'maxItems') { + out += 'more'; + } else { + out += 'fewer'; + } + out += ' than '; + if ($isData) { + out += '\' + ' + ($schemaValue) + ' + \''; + } else { + out += '' + ($schema); + } + out += ' items\' '; + } + if (it.opts.verbose) { + out += ' , schema: '; + if ($isData) { + out += 'validate.schema' + ($schemaPath); + } else { + out += '' + ($schema); + } + out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += '} '; + if ($breakOnError) { + out += ' else { '; + } + return out; +} diff --git a/node_modules/ajv/lib/dotjs/_limitLength.js b/node_modules/ajv/lib/dotjs/_limitLength.js new file mode 100644 index 0000000..ecbd3fe --- /dev/null +++ b/node_modules/ajv/lib/dotjs/_limitLength.js @@ -0,0 +1,85 @@ +'use strict'; +module.exports = function generate__limitLength(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $errorKeyword; + var $data = 'data' + ($dataLvl || ''); + var $isData = it.opts.$data && $schema && $schema.$data, + $schemaValue; + if ($isData) { + out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; '; + $schemaValue = 'schema' + $lvl; + } else { + $schemaValue = $schema; + } + if (!($isData || typeof $schema == 'number')) { + throw new Error($keyword + ' must be number'); + } + var $op = $keyword == 'maxLength' ? '>' : '<'; + out += 'if ( '; + if ($isData) { + out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \'number\') || '; + } + if (it.opts.unicode === false) { + out += ' ' + ($data) + '.length '; + } else { + out += ' ucs2length(' + ($data) + ') '; + } + out += ' ' + ($op) + ' ' + ($schemaValue) + ') { '; + var $errorKeyword = $keyword; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ($errorKeyword || '_limitLength') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { limit: ' + ($schemaValue) + ' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should NOT be '; + if ($keyword == 'maxLength') { + out += 'longer'; + } else { + out += 'shorter'; + } + out += ' than '; + if ($isData) { + out += '\' + ' + ($schemaValue) + ' + \''; + } else { + out += '' + ($schema); + } + out += ' characters\' '; + } + if (it.opts.verbose) { + out += ' , schema: '; + if ($isData) { + out += 'validate.schema' + ($schemaPath); + } else { + out += '' + ($schema); + } + out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += '} '; + if ($breakOnError) { + out += ' else { '; + } + return out; +} diff --git a/node_modules/ajv/lib/dotjs/_limitProperties.js b/node_modules/ajv/lib/dotjs/_limitProperties.js new file mode 100644 index 0000000..d232755 --- /dev/null +++ b/node_modules/ajv/lib/dotjs/_limitProperties.js @@ -0,0 +1,80 @@ +'use strict'; +module.exports = function generate__limitProperties(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $errorKeyword; + var $data = 'data' + ($dataLvl || ''); + var $isData = it.opts.$data && $schema && $schema.$data, + $schemaValue; + if ($isData) { + out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; '; + $schemaValue = 'schema' + $lvl; + } else { + $schemaValue = $schema; + } + if (!($isData || typeof $schema == 'number')) { + throw new Error($keyword + ' must be number'); + } + var $op = $keyword == 'maxProperties' ? '>' : '<'; + out += 'if ( '; + if ($isData) { + out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \'number\') || '; + } + out += ' Object.keys(' + ($data) + ').length ' + ($op) + ' ' + ($schemaValue) + ') { '; + var $errorKeyword = $keyword; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ($errorKeyword || '_limitProperties') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { limit: ' + ($schemaValue) + ' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should NOT have '; + if ($keyword == 'maxProperties') { + out += 'more'; + } else { + out += 'fewer'; + } + out += ' than '; + if ($isData) { + out += '\' + ' + ($schemaValue) + ' + \''; + } else { + out += '' + ($schema); + } + out += ' properties\' '; + } + if (it.opts.verbose) { + out += ' , schema: '; + if ($isData) { + out += 'validate.schema' + ($schemaPath); + } else { + out += '' + ($schema); + } + out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += '} '; + if ($breakOnError) { + out += ' else { '; + } + return out; +} diff --git a/node_modules/ajv/lib/dotjs/allOf.js b/node_modules/ajv/lib/dotjs/allOf.js new file mode 100644 index 0000000..fb8c2e4 --- /dev/null +++ b/node_modules/ajv/lib/dotjs/allOf.js @@ -0,0 +1,42 @@ +'use strict'; +module.exports = function generate_allOf(it, $keyword, $ruleType) { + var out = ' '; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $it = it.util.copy(it); + var $closingBraces = ''; + $it.level++; + var $nextValid = 'valid' + $it.level; + var $currentBaseId = $it.baseId, + $allSchemasEmpty = true; + var arr1 = $schema; + if (arr1) { + var $sch, $i = -1, + l1 = arr1.length - 1; + while ($i < l1) { + $sch = arr1[$i += 1]; + if ((it.opts.strictKeywords ? (typeof $sch == 'object' && Object.keys($sch).length > 0) || $sch === false : it.util.schemaHasRules($sch, it.RULES.all))) { + $allSchemasEmpty = false; + $it.schema = $sch; + $it.schemaPath = $schemaPath + '[' + $i + ']'; + $it.errSchemaPath = $errSchemaPath + '/' + $i; + out += ' ' + (it.validate($it)) + ' '; + $it.baseId = $currentBaseId; + if ($breakOnError) { + out += ' if (' + ($nextValid) + ') { '; + $closingBraces += '}'; + } + } + } + } + if ($breakOnError) { + if ($allSchemasEmpty) { + out += ' if (true) { '; + } else { + out += ' ' + ($closingBraces.slice(0, -1)) + ' '; + } + } + return out; +} diff --git a/node_modules/ajv/lib/dotjs/anyOf.js b/node_modules/ajv/lib/dotjs/anyOf.js new file mode 100644 index 0000000..0600a9d --- /dev/null +++ b/node_modules/ajv/lib/dotjs/anyOf.js @@ -0,0 +1,73 @@ +'use strict'; +module.exports = function generate_anyOf(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $data = 'data' + ($dataLvl || ''); + var $valid = 'valid' + $lvl; + var $errs = 'errs__' + $lvl; + var $it = it.util.copy(it); + var $closingBraces = ''; + $it.level++; + var $nextValid = 'valid' + $it.level; + var $noEmptySchema = $schema.every(function($sch) { + return (it.opts.strictKeywords ? (typeof $sch == 'object' && Object.keys($sch).length > 0) || $sch === false : it.util.schemaHasRules($sch, it.RULES.all)); + }); + if ($noEmptySchema) { + var $currentBaseId = $it.baseId; + out += ' var ' + ($errs) + ' = errors; var ' + ($valid) + ' = false; '; + var $wasComposite = it.compositeRule; + it.compositeRule = $it.compositeRule = true; + var arr1 = $schema; + if (arr1) { + var $sch, $i = -1, + l1 = arr1.length - 1; + while ($i < l1) { + $sch = arr1[$i += 1]; + $it.schema = $sch; + $it.schemaPath = $schemaPath + '[' + $i + ']'; + $it.errSchemaPath = $errSchemaPath + '/' + $i; + out += ' ' + (it.validate($it)) + ' '; + $it.baseId = $currentBaseId; + out += ' ' + ($valid) + ' = ' + ($valid) + ' || ' + ($nextValid) + '; if (!' + ($valid) + ') { '; + $closingBraces += '}'; + } + } + it.compositeRule = $it.compositeRule = $wasComposite; + out += ' ' + ($closingBraces) + ' if (!' + ($valid) + ') { var err = '; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('anyOf') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: {} '; + if (it.opts.messages !== false) { + out += ' , message: \'should match some schema in anyOf\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + out += '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError(vErrors); '; + } else { + out += ' validate.errors = vErrors; return false; '; + } + } + out += ' } else { errors = ' + ($errs) + '; if (vErrors !== null) { if (' + ($errs) + ') vErrors.length = ' + ($errs) + '; else vErrors = null; } '; + if (it.opts.allErrors) { + out += ' } '; + } + } else { + if ($breakOnError) { + out += ' if (true) { '; + } + } + return out; +} diff --git a/node_modules/ajv/lib/dotjs/comment.js b/node_modules/ajv/lib/dotjs/comment.js new file mode 100644 index 0000000..dd66bb8 --- /dev/null +++ b/node_modules/ajv/lib/dotjs/comment.js @@ -0,0 +1,14 @@ +'use strict'; +module.exports = function generate_comment(it, $keyword, $ruleType) { + var out = ' '; + var $schema = it.schema[$keyword]; + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $comment = it.util.toQuotedString($schema); + if (it.opts.$comment === true) { + out += ' console.log(' + ($comment) + ');'; + } else if (typeof it.opts.$comment == 'function') { + out += ' self._opts.$comment(' + ($comment) + ', ' + (it.util.toQuotedString($errSchemaPath)) + ', validate.root.schema);'; + } + return out; +} diff --git a/node_modules/ajv/lib/dotjs/const.js b/node_modules/ajv/lib/dotjs/const.js new file mode 100644 index 0000000..15b7c61 --- /dev/null +++ b/node_modules/ajv/lib/dotjs/const.js @@ -0,0 +1,56 @@ +'use strict'; +module.exports = function generate_const(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $data = 'data' + ($dataLvl || ''); + var $valid = 'valid' + $lvl; + var $isData = it.opts.$data && $schema && $schema.$data, + $schemaValue; + if ($isData) { + out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; '; + $schemaValue = 'schema' + $lvl; + } else { + $schemaValue = $schema; + } + if (!$isData) { + out += ' var schema' + ($lvl) + ' = validate.schema' + ($schemaPath) + ';'; + } + out += 'var ' + ($valid) + ' = equal(' + ($data) + ', schema' + ($lvl) + '); if (!' + ($valid) + ') { '; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('const') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { allowedValue: schema' + ($lvl) + ' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should be equal to constant\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += ' }'; + if ($breakOnError) { + out += ' else { '; + } + return out; +} diff --git a/node_modules/ajv/lib/dotjs/contains.js b/node_modules/ajv/lib/dotjs/contains.js new file mode 100644 index 0000000..7d76300 --- /dev/null +++ b/node_modules/ajv/lib/dotjs/contains.js @@ -0,0 +1,81 @@ +'use strict'; +module.exports = function generate_contains(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $data = 'data' + ($dataLvl || ''); + var $valid = 'valid' + $lvl; + var $errs = 'errs__' + $lvl; + var $it = it.util.copy(it); + var $closingBraces = ''; + $it.level++; + var $nextValid = 'valid' + $it.level; + var $idx = 'i' + $lvl, + $dataNxt = $it.dataLevel = it.dataLevel + 1, + $nextData = 'data' + $dataNxt, + $currentBaseId = it.baseId, + $nonEmptySchema = (it.opts.strictKeywords ? (typeof $schema == 'object' && Object.keys($schema).length > 0) || $schema === false : it.util.schemaHasRules($schema, it.RULES.all)); + out += 'var ' + ($errs) + ' = errors;var ' + ($valid) + ';'; + if ($nonEmptySchema) { + var $wasComposite = it.compositeRule; + it.compositeRule = $it.compositeRule = true; + $it.schema = $schema; + $it.schemaPath = $schemaPath; + $it.errSchemaPath = $errSchemaPath; + out += ' var ' + ($nextValid) + ' = false; for (var ' + ($idx) + ' = 0; ' + ($idx) + ' < ' + ($data) + '.length; ' + ($idx) + '++) { '; + $it.errorPath = it.util.getPathExpr(it.errorPath, $idx, it.opts.jsonPointers, true); + var $passData = $data + '[' + $idx + ']'; + $it.dataPathArr[$dataNxt] = $idx; + var $code = it.validate($it); + $it.baseId = $currentBaseId; + if (it.util.varOccurences($code, $nextData) < 2) { + out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' '; + } else { + out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' '; + } + out += ' if (' + ($nextValid) + ') break; } '; + it.compositeRule = $it.compositeRule = $wasComposite; + out += ' ' + ($closingBraces) + ' if (!' + ($nextValid) + ') {'; + } else { + out += ' if (' + ($data) + '.length == 0) {'; + } + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('contains') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: {} '; + if (it.opts.messages !== false) { + out += ' , message: \'should contain a valid item\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += ' } else { '; + if ($nonEmptySchema) { + out += ' errors = ' + ($errs) + '; if (vErrors !== null) { if (' + ($errs) + ') vErrors.length = ' + ($errs) + '; else vErrors = null; } '; + } + if (it.opts.allErrors) { + out += ' } '; + } + return out; +} diff --git a/node_modules/ajv/lib/dotjs/custom.js b/node_modules/ajv/lib/dotjs/custom.js new file mode 100644 index 0000000..f3e641e --- /dev/null +++ b/node_modules/ajv/lib/dotjs/custom.js @@ -0,0 +1,228 @@ +'use strict'; +module.exports = function generate_custom(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $errorKeyword; + var $data = 'data' + ($dataLvl || ''); + var $valid = 'valid' + $lvl; + var $errs = 'errs__' + $lvl; + var $isData = it.opts.$data && $schema && $schema.$data, + $schemaValue; + if ($isData) { + out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; '; + $schemaValue = 'schema' + $lvl; + } else { + $schemaValue = $schema; + } + var $rule = this, + $definition = 'definition' + $lvl, + $rDef = $rule.definition, + $closingBraces = ''; + var $compile, $inline, $macro, $ruleValidate, $validateCode; + if ($isData && $rDef.$data) { + $validateCode = 'keywordValidate' + $lvl; + var $validateSchema = $rDef.validateSchema; + out += ' var ' + ($definition) + ' = RULES.custom[\'' + ($keyword) + '\'].definition; var ' + ($validateCode) + ' = ' + ($definition) + '.validate;'; + } else { + $ruleValidate = it.useCustomRule($rule, $schema, it.schema, it); + if (!$ruleValidate) return; + $schemaValue = 'validate.schema' + $schemaPath; + $validateCode = $ruleValidate.code; + $compile = $rDef.compile; + $inline = $rDef.inline; + $macro = $rDef.macro; + } + var $ruleErrs = $validateCode + '.errors', + $i = 'i' + $lvl, + $ruleErr = 'ruleErr' + $lvl, + $asyncKeyword = $rDef.async; + if ($asyncKeyword && !it.async) throw new Error('async keyword in sync schema'); + if (!($inline || $macro)) { + out += '' + ($ruleErrs) + ' = null;'; + } + out += 'var ' + ($errs) + ' = errors;var ' + ($valid) + ';'; + if ($isData && $rDef.$data) { + $closingBraces += '}'; + out += ' if (' + ($schemaValue) + ' === undefined) { ' + ($valid) + ' = true; } else { '; + if ($validateSchema) { + $closingBraces += '}'; + out += ' ' + ($valid) + ' = ' + ($definition) + '.validateSchema(' + ($schemaValue) + '); if (' + ($valid) + ') { '; + } + } + if ($inline) { + if ($rDef.statements) { + out += ' ' + ($ruleValidate.validate) + ' '; + } else { + out += ' ' + ($valid) + ' = ' + ($ruleValidate.validate) + '; '; + } + } else if ($macro) { + var $it = it.util.copy(it); + var $closingBraces = ''; + $it.level++; + var $nextValid = 'valid' + $it.level; + $it.schema = $ruleValidate.validate; + $it.schemaPath = ''; + var $wasComposite = it.compositeRule; + it.compositeRule = $it.compositeRule = true; + var $code = it.validate($it).replace(/validate\.schema/g, $validateCode); + it.compositeRule = $it.compositeRule = $wasComposite; + out += ' ' + ($code); + } else { + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; + out += ' ' + ($validateCode) + '.call( '; + if (it.opts.passContext) { + out += 'this'; + } else { + out += 'self'; + } + if ($compile || $rDef.schema === false) { + out += ' , ' + ($data) + ' '; + } else { + out += ' , ' + ($schemaValue) + ' , ' + ($data) + ' , validate.schema' + (it.schemaPath) + ' '; + } + out += ' , (dataPath || \'\')'; + if (it.errorPath != '""') { + out += ' + ' + (it.errorPath); + } + var $parentData = $dataLvl ? 'data' + (($dataLvl - 1) || '') : 'parentData', + $parentDataProperty = $dataLvl ? it.dataPathArr[$dataLvl] : 'parentDataProperty'; + out += ' , ' + ($parentData) + ' , ' + ($parentDataProperty) + ' , rootData ) '; + var def_callRuleValidate = out; + out = $$outStack.pop(); + if ($rDef.errors === false) { + out += ' ' + ($valid) + ' = '; + if ($asyncKeyword) { + out += 'await '; + } + out += '' + (def_callRuleValidate) + '; '; + } else { + if ($asyncKeyword) { + $ruleErrs = 'customErrors' + $lvl; + out += ' var ' + ($ruleErrs) + ' = null; try { ' + ($valid) + ' = await ' + (def_callRuleValidate) + '; } catch (e) { ' + ($valid) + ' = false; if (e instanceof ValidationError) ' + ($ruleErrs) + ' = e.errors; else throw e; } '; + } else { + out += ' ' + ($ruleErrs) + ' = null; ' + ($valid) + ' = ' + (def_callRuleValidate) + '; '; + } + } + } + if ($rDef.modifying) { + out += ' if (' + ($parentData) + ') ' + ($data) + ' = ' + ($parentData) + '[' + ($parentDataProperty) + '];'; + } + out += '' + ($closingBraces); + if ($rDef.valid) { + if ($breakOnError) { + out += ' if (true) { '; + } + } else { + out += ' if ( '; + if ($rDef.valid === undefined) { + out += ' !'; + if ($macro) { + out += '' + ($nextValid); + } else { + out += '' + ($valid); + } + } else { + out += ' ' + (!$rDef.valid) + ' '; + } + out += ') { '; + $errorKeyword = $rule.keyword; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ($errorKeyword || 'custom') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { keyword: \'' + ($rule.keyword) + '\' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should pass "' + ($rule.keyword) + '" keyword validation\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + var def_customError = out; + out = $$outStack.pop(); + if ($inline) { + if ($rDef.errors) { + if ($rDef.errors != 'full') { + out += ' for (var ' + ($i) + '=' + ($errs) + '; ' + ($i) + ' 0) || $sch === false : it.util.schemaHasRules($sch, it.RULES.all))) { + out += ' ' + ($nextValid) + ' = true; if ( ' + ($data) + (it.util.getProperty($property)) + ' !== undefined '; + if ($ownProperties) { + out += ' && Object.prototype.hasOwnProperty.call(' + ($data) + ', \'' + (it.util.escapeQuotes($property)) + '\') '; + } + out += ') { '; + $it.schema = $sch; + $it.schemaPath = $schemaPath + it.util.getProperty($property); + $it.errSchemaPath = $errSchemaPath + '/' + it.util.escapeFragment($property); + out += ' ' + (it.validate($it)) + ' '; + $it.baseId = $currentBaseId; + out += ' } '; + if ($breakOnError) { + out += ' if (' + ($nextValid) + ') { '; + $closingBraces += '}'; + } + } + } + if ($breakOnError) { + out += ' ' + ($closingBraces) + ' if (' + ($errs) + ' == errors) {'; + } + return out; +} diff --git a/node_modules/ajv/lib/dotjs/enum.js b/node_modules/ajv/lib/dotjs/enum.js new file mode 100644 index 0000000..90580b9 --- /dev/null +++ b/node_modules/ajv/lib/dotjs/enum.js @@ -0,0 +1,66 @@ +'use strict'; +module.exports = function generate_enum(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $data = 'data' + ($dataLvl || ''); + var $valid = 'valid' + $lvl; + var $isData = it.opts.$data && $schema && $schema.$data, + $schemaValue; + if ($isData) { + out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; '; + $schemaValue = 'schema' + $lvl; + } else { + $schemaValue = $schema; + } + var $i = 'i' + $lvl, + $vSchema = 'schema' + $lvl; + if (!$isData) { + out += ' var ' + ($vSchema) + ' = validate.schema' + ($schemaPath) + ';'; + } + out += 'var ' + ($valid) + ';'; + if ($isData) { + out += ' if (schema' + ($lvl) + ' === undefined) ' + ($valid) + ' = true; else if (!Array.isArray(schema' + ($lvl) + ')) ' + ($valid) + ' = false; else {'; + } + out += '' + ($valid) + ' = false;for (var ' + ($i) + '=0; ' + ($i) + '<' + ($vSchema) + '.length; ' + ($i) + '++) if (equal(' + ($data) + ', ' + ($vSchema) + '[' + ($i) + '])) { ' + ($valid) + ' = true; break; }'; + if ($isData) { + out += ' } '; + } + out += ' if (!' + ($valid) + ') { '; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('enum') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { allowedValues: schema' + ($lvl) + ' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should be equal to one of the allowed values\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += ' }'; + if ($breakOnError) { + out += ' else { '; + } + return out; +} diff --git a/node_modules/ajv/lib/dotjs/format.js b/node_modules/ajv/lib/dotjs/format.js new file mode 100644 index 0000000..cd9a569 --- /dev/null +++ b/node_modules/ajv/lib/dotjs/format.js @@ -0,0 +1,150 @@ +'use strict'; +module.exports = function generate_format(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $data = 'data' + ($dataLvl || ''); + if (it.opts.format === false) { + if ($breakOnError) { + out += ' if (true) { '; + } + return out; + } + var $isData = it.opts.$data && $schema && $schema.$data, + $schemaValue; + if ($isData) { + out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; '; + $schemaValue = 'schema' + $lvl; + } else { + $schemaValue = $schema; + } + var $unknownFormats = it.opts.unknownFormats, + $allowUnknown = Array.isArray($unknownFormats); + if ($isData) { + var $format = 'format' + $lvl, + $isObject = 'isObject' + $lvl, + $formatType = 'formatType' + $lvl; + out += ' var ' + ($format) + ' = formats[' + ($schemaValue) + ']; var ' + ($isObject) + ' = typeof ' + ($format) + ' == \'object\' && !(' + ($format) + ' instanceof RegExp) && ' + ($format) + '.validate; var ' + ($formatType) + ' = ' + ($isObject) + ' && ' + ($format) + '.type || \'string\'; if (' + ($isObject) + ') { '; + if (it.async) { + out += ' var async' + ($lvl) + ' = ' + ($format) + '.async; '; + } + out += ' ' + ($format) + ' = ' + ($format) + '.validate; } if ( '; + if ($isData) { + out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \'string\') || '; + } + out += ' ('; + if ($unknownFormats != 'ignore') { + out += ' (' + ($schemaValue) + ' && !' + ($format) + ' '; + if ($allowUnknown) { + out += ' && self._opts.unknownFormats.indexOf(' + ($schemaValue) + ') == -1 '; + } + out += ') || '; + } + out += ' (' + ($format) + ' && ' + ($formatType) + ' == \'' + ($ruleType) + '\' && !(typeof ' + ($format) + ' == \'function\' ? '; + if (it.async) { + out += ' (async' + ($lvl) + ' ? await ' + ($format) + '(' + ($data) + ') : ' + ($format) + '(' + ($data) + ')) '; + } else { + out += ' ' + ($format) + '(' + ($data) + ') '; + } + out += ' : ' + ($format) + '.test(' + ($data) + '))))) {'; + } else { + var $format = it.formats[$schema]; + if (!$format) { + if ($unknownFormats == 'ignore') { + it.logger.warn('unknown format "' + $schema + '" ignored in schema at path "' + it.errSchemaPath + '"'); + if ($breakOnError) { + out += ' if (true) { '; + } + return out; + } else if ($allowUnknown && $unknownFormats.indexOf($schema) >= 0) { + if ($breakOnError) { + out += ' if (true) { '; + } + return out; + } else { + throw new Error('unknown format "' + $schema + '" is used in schema at path "' + it.errSchemaPath + '"'); + } + } + var $isObject = typeof $format == 'object' && !($format instanceof RegExp) && $format.validate; + var $formatType = $isObject && $format.type || 'string'; + if ($isObject) { + var $async = $format.async === true; + $format = $format.validate; + } + if ($formatType != $ruleType) { + if ($breakOnError) { + out += ' if (true) { '; + } + return out; + } + if ($async) { + if (!it.async) throw new Error('async format in sync schema'); + var $formatRef = 'formats' + it.util.getProperty($schema) + '.validate'; + out += ' if (!(await ' + ($formatRef) + '(' + ($data) + '))) { '; + } else { + out += ' if (! '; + var $formatRef = 'formats' + it.util.getProperty($schema); + if ($isObject) $formatRef += '.validate'; + if (typeof $format == 'function') { + out += ' ' + ($formatRef) + '(' + ($data) + ') '; + } else { + out += ' ' + ($formatRef) + '.test(' + ($data) + ') '; + } + out += ') { '; + } + } + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('format') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { format: '; + if ($isData) { + out += '' + ($schemaValue); + } else { + out += '' + (it.util.toQuotedString($schema)); + } + out += ' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should match format "'; + if ($isData) { + out += '\' + ' + ($schemaValue) + ' + \''; + } else { + out += '' + (it.util.escapeQuotes($schema)); + } + out += '"\' '; + } + if (it.opts.verbose) { + out += ' , schema: '; + if ($isData) { + out += 'validate.schema' + ($schemaPath); + } else { + out += '' + (it.util.toQuotedString($schema)); + } + out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += ' } '; + if ($breakOnError) { + out += ' else { '; + } + return out; +} diff --git a/node_modules/ajv/lib/dotjs/if.js b/node_modules/ajv/lib/dotjs/if.js new file mode 100644 index 0000000..94d27ad --- /dev/null +++ b/node_modules/ajv/lib/dotjs/if.js @@ -0,0 +1,103 @@ +'use strict'; +module.exports = function generate_if(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $data = 'data' + ($dataLvl || ''); + var $valid = 'valid' + $lvl; + var $errs = 'errs__' + $lvl; + var $it = it.util.copy(it); + $it.level++; + var $nextValid = 'valid' + $it.level; + var $thenSch = it.schema['then'], + $elseSch = it.schema['else'], + $thenPresent = $thenSch !== undefined && (it.opts.strictKeywords ? (typeof $thenSch == 'object' && Object.keys($thenSch).length > 0) || $thenSch === false : it.util.schemaHasRules($thenSch, it.RULES.all)), + $elsePresent = $elseSch !== undefined && (it.opts.strictKeywords ? (typeof $elseSch == 'object' && Object.keys($elseSch).length > 0) || $elseSch === false : it.util.schemaHasRules($elseSch, it.RULES.all)), + $currentBaseId = $it.baseId; + if ($thenPresent || $elsePresent) { + var $ifClause; + $it.createErrors = false; + $it.schema = $schema; + $it.schemaPath = $schemaPath; + $it.errSchemaPath = $errSchemaPath; + out += ' var ' + ($errs) + ' = errors; var ' + ($valid) + ' = true; '; + var $wasComposite = it.compositeRule; + it.compositeRule = $it.compositeRule = true; + out += ' ' + (it.validate($it)) + ' '; + $it.baseId = $currentBaseId; + $it.createErrors = true; + out += ' errors = ' + ($errs) + '; if (vErrors !== null) { if (' + ($errs) + ') vErrors.length = ' + ($errs) + '; else vErrors = null; } '; + it.compositeRule = $it.compositeRule = $wasComposite; + if ($thenPresent) { + out += ' if (' + ($nextValid) + ') { '; + $it.schema = it.schema['then']; + $it.schemaPath = it.schemaPath + '.then'; + $it.errSchemaPath = it.errSchemaPath + '/then'; + out += ' ' + (it.validate($it)) + ' '; + $it.baseId = $currentBaseId; + out += ' ' + ($valid) + ' = ' + ($nextValid) + '; '; + if ($thenPresent && $elsePresent) { + $ifClause = 'ifClause' + $lvl; + out += ' var ' + ($ifClause) + ' = \'then\'; '; + } else { + $ifClause = '\'then\''; + } + out += ' } '; + if ($elsePresent) { + out += ' else { '; + } + } else { + out += ' if (!' + ($nextValid) + ') { '; + } + if ($elsePresent) { + $it.schema = it.schema['else']; + $it.schemaPath = it.schemaPath + '.else'; + $it.errSchemaPath = it.errSchemaPath + '/else'; + out += ' ' + (it.validate($it)) + ' '; + $it.baseId = $currentBaseId; + out += ' ' + ($valid) + ' = ' + ($nextValid) + '; '; + if ($thenPresent && $elsePresent) { + $ifClause = 'ifClause' + $lvl; + out += ' var ' + ($ifClause) + ' = \'else\'; '; + } else { + $ifClause = '\'else\''; + } + out += ' } '; + } + out += ' if (!' + ($valid) + ') { var err = '; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('if') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { failingKeyword: ' + ($ifClause) + ' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should match "\' + ' + ($ifClause) + ' + \'" schema\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + out += '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError(vErrors); '; + } else { + out += ' validate.errors = vErrors; return false; '; + } + } + out += ' } '; + if ($breakOnError) { + out += ' else { '; + } + } else { + if ($breakOnError) { + out += ' if (true) { '; + } + } + return out; +} diff --git a/node_modules/ajv/lib/dotjs/index.js b/node_modules/ajv/lib/dotjs/index.js new file mode 100644 index 0000000..2fb1b00 --- /dev/null +++ b/node_modules/ajv/lib/dotjs/index.js @@ -0,0 +1,33 @@ +'use strict'; + +//all requires must be explicit because browserify won't work with dynamic requires +module.exports = { + '$ref': require('./ref'), + allOf: require('./allOf'), + anyOf: require('./anyOf'), + '$comment': require('./comment'), + const: require('./const'), + contains: require('./contains'), + dependencies: require('./dependencies'), + 'enum': require('./enum'), + format: require('./format'), + 'if': require('./if'), + items: require('./items'), + maximum: require('./_limit'), + minimum: require('./_limit'), + maxItems: require('./_limitItems'), + minItems: require('./_limitItems'), + maxLength: require('./_limitLength'), + minLength: require('./_limitLength'), + maxProperties: require('./_limitProperties'), + minProperties: require('./_limitProperties'), + multipleOf: require('./multipleOf'), + not: require('./not'), + oneOf: require('./oneOf'), + pattern: require('./pattern'), + properties: require('./properties'), + propertyNames: require('./propertyNames'), + required: require('./required'), + uniqueItems: require('./uniqueItems'), + validate: require('./validate') +}; diff --git a/node_modules/ajv/lib/dotjs/items.js b/node_modules/ajv/lib/dotjs/items.js new file mode 100644 index 0000000..bee5d67 --- /dev/null +++ b/node_modules/ajv/lib/dotjs/items.js @@ -0,0 +1,140 @@ +'use strict'; +module.exports = function generate_items(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $data = 'data' + ($dataLvl || ''); + var $valid = 'valid' + $lvl; + var $errs = 'errs__' + $lvl; + var $it = it.util.copy(it); + var $closingBraces = ''; + $it.level++; + var $nextValid = 'valid' + $it.level; + var $idx = 'i' + $lvl, + $dataNxt = $it.dataLevel = it.dataLevel + 1, + $nextData = 'data' + $dataNxt, + $currentBaseId = it.baseId; + out += 'var ' + ($errs) + ' = errors;var ' + ($valid) + ';'; + if (Array.isArray($schema)) { + var $additionalItems = it.schema.additionalItems; + if ($additionalItems === false) { + out += ' ' + ($valid) + ' = ' + ($data) + '.length <= ' + ($schema.length) + '; '; + var $currErrSchemaPath = $errSchemaPath; + $errSchemaPath = it.errSchemaPath + '/additionalItems'; + out += ' if (!' + ($valid) + ') { '; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('additionalItems') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { limit: ' + ($schema.length) + ' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should NOT have more than ' + ($schema.length) + ' items\' '; + } + if (it.opts.verbose) { + out += ' , schema: false , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += ' } '; + $errSchemaPath = $currErrSchemaPath; + if ($breakOnError) { + $closingBraces += '}'; + out += ' else { '; + } + } + var arr1 = $schema; + if (arr1) { + var $sch, $i = -1, + l1 = arr1.length - 1; + while ($i < l1) { + $sch = arr1[$i += 1]; + if ((it.opts.strictKeywords ? (typeof $sch == 'object' && Object.keys($sch).length > 0) || $sch === false : it.util.schemaHasRules($sch, it.RULES.all))) { + out += ' ' + ($nextValid) + ' = true; if (' + ($data) + '.length > ' + ($i) + ') { '; + var $passData = $data + '[' + $i + ']'; + $it.schema = $sch; + $it.schemaPath = $schemaPath + '[' + $i + ']'; + $it.errSchemaPath = $errSchemaPath + '/' + $i; + $it.errorPath = it.util.getPathExpr(it.errorPath, $i, it.opts.jsonPointers, true); + $it.dataPathArr[$dataNxt] = $i; + var $code = it.validate($it); + $it.baseId = $currentBaseId; + if (it.util.varOccurences($code, $nextData) < 2) { + out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' '; + } else { + out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' '; + } + out += ' } '; + if ($breakOnError) { + out += ' if (' + ($nextValid) + ') { '; + $closingBraces += '}'; + } + } + } + } + if (typeof $additionalItems == 'object' && (it.opts.strictKeywords ? (typeof $additionalItems == 'object' && Object.keys($additionalItems).length > 0) || $additionalItems === false : it.util.schemaHasRules($additionalItems, it.RULES.all))) { + $it.schema = $additionalItems; + $it.schemaPath = it.schemaPath + '.additionalItems'; + $it.errSchemaPath = it.errSchemaPath + '/additionalItems'; + out += ' ' + ($nextValid) + ' = true; if (' + ($data) + '.length > ' + ($schema.length) + ') { for (var ' + ($idx) + ' = ' + ($schema.length) + '; ' + ($idx) + ' < ' + ($data) + '.length; ' + ($idx) + '++) { '; + $it.errorPath = it.util.getPathExpr(it.errorPath, $idx, it.opts.jsonPointers, true); + var $passData = $data + '[' + $idx + ']'; + $it.dataPathArr[$dataNxt] = $idx; + var $code = it.validate($it); + $it.baseId = $currentBaseId; + if (it.util.varOccurences($code, $nextData) < 2) { + out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' '; + } else { + out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' '; + } + if ($breakOnError) { + out += ' if (!' + ($nextValid) + ') break; '; + } + out += ' } } '; + if ($breakOnError) { + out += ' if (' + ($nextValid) + ') { '; + $closingBraces += '}'; + } + } + } else if ((it.opts.strictKeywords ? (typeof $schema == 'object' && Object.keys($schema).length > 0) || $schema === false : it.util.schemaHasRules($schema, it.RULES.all))) { + $it.schema = $schema; + $it.schemaPath = $schemaPath; + $it.errSchemaPath = $errSchemaPath; + out += ' for (var ' + ($idx) + ' = ' + (0) + '; ' + ($idx) + ' < ' + ($data) + '.length; ' + ($idx) + '++) { '; + $it.errorPath = it.util.getPathExpr(it.errorPath, $idx, it.opts.jsonPointers, true); + var $passData = $data + '[' + $idx + ']'; + $it.dataPathArr[$dataNxt] = $idx; + var $code = it.validate($it); + $it.baseId = $currentBaseId; + if (it.util.varOccurences($code, $nextData) < 2) { + out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' '; + } else { + out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' '; + } + if ($breakOnError) { + out += ' if (!' + ($nextValid) + ') break; '; + } + out += ' }'; + } + if ($breakOnError) { + out += ' ' + ($closingBraces) + ' if (' + ($errs) + ' == errors) {'; + } + return out; +} diff --git a/node_modules/ajv/lib/dotjs/multipleOf.js b/node_modules/ajv/lib/dotjs/multipleOf.js new file mode 100644 index 0000000..9d6401b --- /dev/null +++ b/node_modules/ajv/lib/dotjs/multipleOf.js @@ -0,0 +1,80 @@ +'use strict'; +module.exports = function generate_multipleOf(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $data = 'data' + ($dataLvl || ''); + var $isData = it.opts.$data && $schema && $schema.$data, + $schemaValue; + if ($isData) { + out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; '; + $schemaValue = 'schema' + $lvl; + } else { + $schemaValue = $schema; + } + if (!($isData || typeof $schema == 'number')) { + throw new Error($keyword + ' must be number'); + } + out += 'var division' + ($lvl) + ';if ('; + if ($isData) { + out += ' ' + ($schemaValue) + ' !== undefined && ( typeof ' + ($schemaValue) + ' != \'number\' || '; + } + out += ' (division' + ($lvl) + ' = ' + ($data) + ' / ' + ($schemaValue) + ', '; + if (it.opts.multipleOfPrecision) { + out += ' Math.abs(Math.round(division' + ($lvl) + ') - division' + ($lvl) + ') > 1e-' + (it.opts.multipleOfPrecision) + ' '; + } else { + out += ' division' + ($lvl) + ' !== parseInt(division' + ($lvl) + ') '; + } + out += ' ) '; + if ($isData) { + out += ' ) '; + } + out += ' ) { '; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('multipleOf') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { multipleOf: ' + ($schemaValue) + ' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should be multiple of '; + if ($isData) { + out += '\' + ' + ($schemaValue); + } else { + out += '' + ($schemaValue) + '\''; + } + } + if (it.opts.verbose) { + out += ' , schema: '; + if ($isData) { + out += 'validate.schema' + ($schemaPath); + } else { + out += '' + ($schema); + } + out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += '} '; + if ($breakOnError) { + out += ' else { '; + } + return out; +} diff --git a/node_modules/ajv/lib/dotjs/not.js b/node_modules/ajv/lib/dotjs/not.js new file mode 100644 index 0000000..f50c937 --- /dev/null +++ b/node_modules/ajv/lib/dotjs/not.js @@ -0,0 +1,84 @@ +'use strict'; +module.exports = function generate_not(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $data = 'data' + ($dataLvl || ''); + var $errs = 'errs__' + $lvl; + var $it = it.util.copy(it); + $it.level++; + var $nextValid = 'valid' + $it.level; + if ((it.opts.strictKeywords ? (typeof $schema == 'object' && Object.keys($schema).length > 0) || $schema === false : it.util.schemaHasRules($schema, it.RULES.all))) { + $it.schema = $schema; + $it.schemaPath = $schemaPath; + $it.errSchemaPath = $errSchemaPath; + out += ' var ' + ($errs) + ' = errors; '; + var $wasComposite = it.compositeRule; + it.compositeRule = $it.compositeRule = true; + $it.createErrors = false; + var $allErrorsOption; + if ($it.opts.allErrors) { + $allErrorsOption = $it.opts.allErrors; + $it.opts.allErrors = false; + } + out += ' ' + (it.validate($it)) + ' '; + $it.createErrors = true; + if ($allErrorsOption) $it.opts.allErrors = $allErrorsOption; + it.compositeRule = $it.compositeRule = $wasComposite; + out += ' if (' + ($nextValid) + ') { '; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('not') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: {} '; + if (it.opts.messages !== false) { + out += ' , message: \'should NOT be valid\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += ' } else { errors = ' + ($errs) + '; if (vErrors !== null) { if (' + ($errs) + ') vErrors.length = ' + ($errs) + '; else vErrors = null; } '; + if (it.opts.allErrors) { + out += ' } '; + } + } else { + out += ' var err = '; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('not') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: {} '; + if (it.opts.messages !== false) { + out += ' , message: \'should NOT be valid\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + out += '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + if ($breakOnError) { + out += ' if (false) { '; + } + } + return out; +} diff --git a/node_modules/ajv/lib/dotjs/oneOf.js b/node_modules/ajv/lib/dotjs/oneOf.js new file mode 100644 index 0000000..dfe2fd5 --- /dev/null +++ b/node_modules/ajv/lib/dotjs/oneOf.js @@ -0,0 +1,73 @@ +'use strict'; +module.exports = function generate_oneOf(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $data = 'data' + ($dataLvl || ''); + var $valid = 'valid' + $lvl; + var $errs = 'errs__' + $lvl; + var $it = it.util.copy(it); + var $closingBraces = ''; + $it.level++; + var $nextValid = 'valid' + $it.level; + var $currentBaseId = $it.baseId, + $prevValid = 'prevValid' + $lvl, + $passingSchemas = 'passingSchemas' + $lvl; + out += 'var ' + ($errs) + ' = errors , ' + ($prevValid) + ' = false , ' + ($valid) + ' = false , ' + ($passingSchemas) + ' = null; '; + var $wasComposite = it.compositeRule; + it.compositeRule = $it.compositeRule = true; + var arr1 = $schema; + if (arr1) { + var $sch, $i = -1, + l1 = arr1.length - 1; + while ($i < l1) { + $sch = arr1[$i += 1]; + if ((it.opts.strictKeywords ? (typeof $sch == 'object' && Object.keys($sch).length > 0) || $sch === false : it.util.schemaHasRules($sch, it.RULES.all))) { + $it.schema = $sch; + $it.schemaPath = $schemaPath + '[' + $i + ']'; + $it.errSchemaPath = $errSchemaPath + '/' + $i; + out += ' ' + (it.validate($it)) + ' '; + $it.baseId = $currentBaseId; + } else { + out += ' var ' + ($nextValid) + ' = true; '; + } + if ($i) { + out += ' if (' + ($nextValid) + ' && ' + ($prevValid) + ') { ' + ($valid) + ' = false; ' + ($passingSchemas) + ' = [' + ($passingSchemas) + ', ' + ($i) + ']; } else { '; + $closingBraces += '}'; + } + out += ' if (' + ($nextValid) + ') { ' + ($valid) + ' = ' + ($prevValid) + ' = true; ' + ($passingSchemas) + ' = ' + ($i) + '; }'; + } + } + it.compositeRule = $it.compositeRule = $wasComposite; + out += '' + ($closingBraces) + 'if (!' + ($valid) + ') { var err = '; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('oneOf') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { passingSchemas: ' + ($passingSchemas) + ' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should match exactly one schema in oneOf\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + out += '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError(vErrors); '; + } else { + out += ' validate.errors = vErrors; return false; '; + } + } + out += '} else { errors = ' + ($errs) + '; if (vErrors !== null) { if (' + ($errs) + ') vErrors.length = ' + ($errs) + '; else vErrors = null; }'; + if (it.opts.allErrors) { + out += ' } '; + } + return out; +} diff --git a/node_modules/ajv/lib/dotjs/pattern.js b/node_modules/ajv/lib/dotjs/pattern.js new file mode 100644 index 0000000..1d74d6b --- /dev/null +++ b/node_modules/ajv/lib/dotjs/pattern.js @@ -0,0 +1,75 @@ +'use strict'; +module.exports = function generate_pattern(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $data = 'data' + ($dataLvl || ''); + var $isData = it.opts.$data && $schema && $schema.$data, + $schemaValue; + if ($isData) { + out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; '; + $schemaValue = 'schema' + $lvl; + } else { + $schemaValue = $schema; + } + var $regexp = $isData ? '(new RegExp(' + $schemaValue + '))' : it.usePattern($schema); + out += 'if ( '; + if ($isData) { + out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \'string\') || '; + } + out += ' !' + ($regexp) + '.test(' + ($data) + ') ) { '; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('pattern') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { pattern: '; + if ($isData) { + out += '' + ($schemaValue); + } else { + out += '' + (it.util.toQuotedString($schema)); + } + out += ' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should match pattern "'; + if ($isData) { + out += '\' + ' + ($schemaValue) + ' + \''; + } else { + out += '' + (it.util.escapeQuotes($schema)); + } + out += '"\' '; + } + if (it.opts.verbose) { + out += ' , schema: '; + if ($isData) { + out += 'validate.schema' + ($schemaPath); + } else { + out += '' + (it.util.toQuotedString($schema)); + } + out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += '} '; + if ($breakOnError) { + out += ' else { '; + } + return out; +} diff --git a/node_modules/ajv/lib/dotjs/properties.js b/node_modules/ajv/lib/dotjs/properties.js new file mode 100644 index 0000000..bc5ee55 --- /dev/null +++ b/node_modules/ajv/lib/dotjs/properties.js @@ -0,0 +1,335 @@ +'use strict'; +module.exports = function generate_properties(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $data = 'data' + ($dataLvl || ''); + var $errs = 'errs__' + $lvl; + var $it = it.util.copy(it); + var $closingBraces = ''; + $it.level++; + var $nextValid = 'valid' + $it.level; + var $key = 'key' + $lvl, + $idx = 'idx' + $lvl, + $dataNxt = $it.dataLevel = it.dataLevel + 1, + $nextData = 'data' + $dataNxt, + $dataProperties = 'dataProperties' + $lvl; + var $schemaKeys = Object.keys($schema || {}).filter(notProto), + $pProperties = it.schema.patternProperties || {}, + $pPropertyKeys = Object.keys($pProperties).filter(notProto), + $aProperties = it.schema.additionalProperties, + $someProperties = $schemaKeys.length || $pPropertyKeys.length, + $noAdditional = $aProperties === false, + $additionalIsSchema = typeof $aProperties == 'object' && Object.keys($aProperties).length, + $removeAdditional = it.opts.removeAdditional, + $checkAdditional = $noAdditional || $additionalIsSchema || $removeAdditional, + $ownProperties = it.opts.ownProperties, + $currentBaseId = it.baseId; + var $required = it.schema.required; + if ($required && !(it.opts.$data && $required.$data) && $required.length < it.opts.loopRequired) { + var $requiredHash = it.util.toHash($required); + } + + function notProto(p) { + return p !== '__proto__'; + } + out += 'var ' + ($errs) + ' = errors;var ' + ($nextValid) + ' = true;'; + if ($ownProperties) { + out += ' var ' + ($dataProperties) + ' = undefined;'; + } + if ($checkAdditional) { + if ($ownProperties) { + out += ' ' + ($dataProperties) + ' = ' + ($dataProperties) + ' || Object.keys(' + ($data) + '); for (var ' + ($idx) + '=0; ' + ($idx) + '<' + ($dataProperties) + '.length; ' + ($idx) + '++) { var ' + ($key) + ' = ' + ($dataProperties) + '[' + ($idx) + ']; '; + } else { + out += ' for (var ' + ($key) + ' in ' + ($data) + ') { '; + } + if ($someProperties) { + out += ' var isAdditional' + ($lvl) + ' = !(false '; + if ($schemaKeys.length) { + if ($schemaKeys.length > 8) { + out += ' || validate.schema' + ($schemaPath) + '.hasOwnProperty(' + ($key) + ') '; + } else { + var arr1 = $schemaKeys; + if (arr1) { + var $propertyKey, i1 = -1, + l1 = arr1.length - 1; + while (i1 < l1) { + $propertyKey = arr1[i1 += 1]; + out += ' || ' + ($key) + ' == ' + (it.util.toQuotedString($propertyKey)) + ' '; + } + } + } + } + if ($pPropertyKeys.length) { + var arr2 = $pPropertyKeys; + if (arr2) { + var $pProperty, $i = -1, + l2 = arr2.length - 1; + while ($i < l2) { + $pProperty = arr2[$i += 1]; + out += ' || ' + (it.usePattern($pProperty)) + '.test(' + ($key) + ') '; + } + } + } + out += ' ); if (isAdditional' + ($lvl) + ') { '; + } + if ($removeAdditional == 'all') { + out += ' delete ' + ($data) + '[' + ($key) + ']; '; + } else { + var $currentErrorPath = it.errorPath; + var $additionalProperty = '\' + ' + $key + ' + \''; + if (it.opts._errorDataPathProperty) { + it.errorPath = it.util.getPathExpr(it.errorPath, $key, it.opts.jsonPointers); + } + if ($noAdditional) { + if ($removeAdditional) { + out += ' delete ' + ($data) + '[' + ($key) + ']; '; + } else { + out += ' ' + ($nextValid) + ' = false; '; + var $currErrSchemaPath = $errSchemaPath; + $errSchemaPath = it.errSchemaPath + '/additionalProperties'; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('additionalProperties') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { additionalProperty: \'' + ($additionalProperty) + '\' } '; + if (it.opts.messages !== false) { + out += ' , message: \''; + if (it.opts._errorDataPathProperty) { + out += 'is an invalid additional property'; + } else { + out += 'should NOT have additional properties'; + } + out += '\' '; + } + if (it.opts.verbose) { + out += ' , schema: false , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + $errSchemaPath = $currErrSchemaPath; + if ($breakOnError) { + out += ' break; '; + } + } + } else if ($additionalIsSchema) { + if ($removeAdditional == 'failing') { + out += ' var ' + ($errs) + ' = errors; '; + var $wasComposite = it.compositeRule; + it.compositeRule = $it.compositeRule = true; + $it.schema = $aProperties; + $it.schemaPath = it.schemaPath + '.additionalProperties'; + $it.errSchemaPath = it.errSchemaPath + '/additionalProperties'; + $it.errorPath = it.opts._errorDataPathProperty ? it.errorPath : it.util.getPathExpr(it.errorPath, $key, it.opts.jsonPointers); + var $passData = $data + '[' + $key + ']'; + $it.dataPathArr[$dataNxt] = $key; + var $code = it.validate($it); + $it.baseId = $currentBaseId; + if (it.util.varOccurences($code, $nextData) < 2) { + out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' '; + } else { + out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' '; + } + out += ' if (!' + ($nextValid) + ') { errors = ' + ($errs) + '; if (validate.errors !== null) { if (errors) validate.errors.length = errors; else validate.errors = null; } delete ' + ($data) + '[' + ($key) + ']; } '; + it.compositeRule = $it.compositeRule = $wasComposite; + } else { + $it.schema = $aProperties; + $it.schemaPath = it.schemaPath + '.additionalProperties'; + $it.errSchemaPath = it.errSchemaPath + '/additionalProperties'; + $it.errorPath = it.opts._errorDataPathProperty ? it.errorPath : it.util.getPathExpr(it.errorPath, $key, it.opts.jsonPointers); + var $passData = $data + '[' + $key + ']'; + $it.dataPathArr[$dataNxt] = $key; + var $code = it.validate($it); + $it.baseId = $currentBaseId; + if (it.util.varOccurences($code, $nextData) < 2) { + out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' '; + } else { + out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' '; + } + if ($breakOnError) { + out += ' if (!' + ($nextValid) + ') break; '; + } + } + } + it.errorPath = $currentErrorPath; + } + if ($someProperties) { + out += ' } '; + } + out += ' } '; + if ($breakOnError) { + out += ' if (' + ($nextValid) + ') { '; + $closingBraces += '}'; + } + } + var $useDefaults = it.opts.useDefaults && !it.compositeRule; + if ($schemaKeys.length) { + var arr3 = $schemaKeys; + if (arr3) { + var $propertyKey, i3 = -1, + l3 = arr3.length - 1; + while (i3 < l3) { + $propertyKey = arr3[i3 += 1]; + var $sch = $schema[$propertyKey]; + if ((it.opts.strictKeywords ? (typeof $sch == 'object' && Object.keys($sch).length > 0) || $sch === false : it.util.schemaHasRules($sch, it.RULES.all))) { + var $prop = it.util.getProperty($propertyKey), + $passData = $data + $prop, + $hasDefault = $useDefaults && $sch.default !== undefined; + $it.schema = $sch; + $it.schemaPath = $schemaPath + $prop; + $it.errSchemaPath = $errSchemaPath + '/' + it.util.escapeFragment($propertyKey); + $it.errorPath = it.util.getPath(it.errorPath, $propertyKey, it.opts.jsonPointers); + $it.dataPathArr[$dataNxt] = it.util.toQuotedString($propertyKey); + var $code = it.validate($it); + $it.baseId = $currentBaseId; + if (it.util.varOccurences($code, $nextData) < 2) { + $code = it.util.varReplace($code, $nextData, $passData); + var $useData = $passData; + } else { + var $useData = $nextData; + out += ' var ' + ($nextData) + ' = ' + ($passData) + '; '; + } + if ($hasDefault) { + out += ' ' + ($code) + ' '; + } else { + if ($requiredHash && $requiredHash[$propertyKey]) { + out += ' if ( ' + ($useData) + ' === undefined '; + if ($ownProperties) { + out += ' || ! Object.prototype.hasOwnProperty.call(' + ($data) + ', \'' + (it.util.escapeQuotes($propertyKey)) + '\') '; + } + out += ') { ' + ($nextValid) + ' = false; '; + var $currentErrorPath = it.errorPath, + $currErrSchemaPath = $errSchemaPath, + $missingProperty = it.util.escapeQuotes($propertyKey); + if (it.opts._errorDataPathProperty) { + it.errorPath = it.util.getPath($currentErrorPath, $propertyKey, it.opts.jsonPointers); + } + $errSchemaPath = it.errSchemaPath + '/required'; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('required') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { missingProperty: \'' + ($missingProperty) + '\' } '; + if (it.opts.messages !== false) { + out += ' , message: \''; + if (it.opts._errorDataPathProperty) { + out += 'is a required property'; + } else { + out += 'should have required property \\\'' + ($missingProperty) + '\\\''; + } + out += '\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + $errSchemaPath = $currErrSchemaPath; + it.errorPath = $currentErrorPath; + out += ' } else { '; + } else { + if ($breakOnError) { + out += ' if ( ' + ($useData) + ' === undefined '; + if ($ownProperties) { + out += ' || ! Object.prototype.hasOwnProperty.call(' + ($data) + ', \'' + (it.util.escapeQuotes($propertyKey)) + '\') '; + } + out += ') { ' + ($nextValid) + ' = true; } else { '; + } else { + out += ' if (' + ($useData) + ' !== undefined '; + if ($ownProperties) { + out += ' && Object.prototype.hasOwnProperty.call(' + ($data) + ', \'' + (it.util.escapeQuotes($propertyKey)) + '\') '; + } + out += ' ) { '; + } + } + out += ' ' + ($code) + ' } '; + } + } + if ($breakOnError) { + out += ' if (' + ($nextValid) + ') { '; + $closingBraces += '}'; + } + } + } + } + if ($pPropertyKeys.length) { + var arr4 = $pPropertyKeys; + if (arr4) { + var $pProperty, i4 = -1, + l4 = arr4.length - 1; + while (i4 < l4) { + $pProperty = arr4[i4 += 1]; + var $sch = $pProperties[$pProperty]; + if ((it.opts.strictKeywords ? (typeof $sch == 'object' && Object.keys($sch).length > 0) || $sch === false : it.util.schemaHasRules($sch, it.RULES.all))) { + $it.schema = $sch; + $it.schemaPath = it.schemaPath + '.patternProperties' + it.util.getProperty($pProperty); + $it.errSchemaPath = it.errSchemaPath + '/patternProperties/' + it.util.escapeFragment($pProperty); + if ($ownProperties) { + out += ' ' + ($dataProperties) + ' = ' + ($dataProperties) + ' || Object.keys(' + ($data) + '); for (var ' + ($idx) + '=0; ' + ($idx) + '<' + ($dataProperties) + '.length; ' + ($idx) + '++) { var ' + ($key) + ' = ' + ($dataProperties) + '[' + ($idx) + ']; '; + } else { + out += ' for (var ' + ($key) + ' in ' + ($data) + ') { '; + } + out += ' if (' + (it.usePattern($pProperty)) + '.test(' + ($key) + ')) { '; + $it.errorPath = it.util.getPathExpr(it.errorPath, $key, it.opts.jsonPointers); + var $passData = $data + '[' + $key + ']'; + $it.dataPathArr[$dataNxt] = $key; + var $code = it.validate($it); + $it.baseId = $currentBaseId; + if (it.util.varOccurences($code, $nextData) < 2) { + out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' '; + } else { + out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' '; + } + if ($breakOnError) { + out += ' if (!' + ($nextValid) + ') break; '; + } + out += ' } '; + if ($breakOnError) { + out += ' else ' + ($nextValid) + ' = true; '; + } + out += ' } '; + if ($breakOnError) { + out += ' if (' + ($nextValid) + ') { '; + $closingBraces += '}'; + } + } + } + } + } + if ($breakOnError) { + out += ' ' + ($closingBraces) + ' if (' + ($errs) + ' == errors) {'; + } + return out; +} diff --git a/node_modules/ajv/lib/dotjs/propertyNames.js b/node_modules/ajv/lib/dotjs/propertyNames.js new file mode 100644 index 0000000..2a54a08 --- /dev/null +++ b/node_modules/ajv/lib/dotjs/propertyNames.js @@ -0,0 +1,81 @@ +'use strict'; +module.exports = function generate_propertyNames(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $data = 'data' + ($dataLvl || ''); + var $errs = 'errs__' + $lvl; + var $it = it.util.copy(it); + var $closingBraces = ''; + $it.level++; + var $nextValid = 'valid' + $it.level; + out += 'var ' + ($errs) + ' = errors;'; + if ((it.opts.strictKeywords ? (typeof $schema == 'object' && Object.keys($schema).length > 0) || $schema === false : it.util.schemaHasRules($schema, it.RULES.all))) { + $it.schema = $schema; + $it.schemaPath = $schemaPath; + $it.errSchemaPath = $errSchemaPath; + var $key = 'key' + $lvl, + $idx = 'idx' + $lvl, + $i = 'i' + $lvl, + $invalidName = '\' + ' + $key + ' + \'', + $dataNxt = $it.dataLevel = it.dataLevel + 1, + $nextData = 'data' + $dataNxt, + $dataProperties = 'dataProperties' + $lvl, + $ownProperties = it.opts.ownProperties, + $currentBaseId = it.baseId; + if ($ownProperties) { + out += ' var ' + ($dataProperties) + ' = undefined; '; + } + if ($ownProperties) { + out += ' ' + ($dataProperties) + ' = ' + ($dataProperties) + ' || Object.keys(' + ($data) + '); for (var ' + ($idx) + '=0; ' + ($idx) + '<' + ($dataProperties) + '.length; ' + ($idx) + '++) { var ' + ($key) + ' = ' + ($dataProperties) + '[' + ($idx) + ']; '; + } else { + out += ' for (var ' + ($key) + ' in ' + ($data) + ') { '; + } + out += ' var startErrs' + ($lvl) + ' = errors; '; + var $passData = $key; + var $wasComposite = it.compositeRule; + it.compositeRule = $it.compositeRule = true; + var $code = it.validate($it); + $it.baseId = $currentBaseId; + if (it.util.varOccurences($code, $nextData) < 2) { + out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' '; + } else { + out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' '; + } + it.compositeRule = $it.compositeRule = $wasComposite; + out += ' if (!' + ($nextValid) + ') { for (var ' + ($i) + '=startErrs' + ($lvl) + '; ' + ($i) + ' 0) || $propertySch === false : it.util.schemaHasRules($propertySch, it.RULES.all)))) { + $required[$required.length] = $property; + } + } + } + } else { + var $required = $schema; + } + } + if ($isData || $required.length) { + var $currentErrorPath = it.errorPath, + $loopRequired = $isData || $required.length >= it.opts.loopRequired, + $ownProperties = it.opts.ownProperties; + if ($breakOnError) { + out += ' var missing' + ($lvl) + '; '; + if ($loopRequired) { + if (!$isData) { + out += ' var ' + ($vSchema) + ' = validate.schema' + ($schemaPath) + '; '; + } + var $i = 'i' + $lvl, + $propertyPath = 'schema' + $lvl + '[' + $i + ']', + $missingProperty = '\' + ' + $propertyPath + ' + \''; + if (it.opts._errorDataPathProperty) { + it.errorPath = it.util.getPathExpr($currentErrorPath, $propertyPath, it.opts.jsonPointers); + } + out += ' var ' + ($valid) + ' = true; '; + if ($isData) { + out += ' if (schema' + ($lvl) + ' === undefined) ' + ($valid) + ' = true; else if (!Array.isArray(schema' + ($lvl) + ')) ' + ($valid) + ' = false; else {'; + } + out += ' for (var ' + ($i) + ' = 0; ' + ($i) + ' < ' + ($vSchema) + '.length; ' + ($i) + '++) { ' + ($valid) + ' = ' + ($data) + '[' + ($vSchema) + '[' + ($i) + ']] !== undefined '; + if ($ownProperties) { + out += ' && Object.prototype.hasOwnProperty.call(' + ($data) + ', ' + ($vSchema) + '[' + ($i) + ']) '; + } + out += '; if (!' + ($valid) + ') break; } '; + if ($isData) { + out += ' } '; + } + out += ' if (!' + ($valid) + ') { '; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('required') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { missingProperty: \'' + ($missingProperty) + '\' } '; + if (it.opts.messages !== false) { + out += ' , message: \''; + if (it.opts._errorDataPathProperty) { + out += 'is a required property'; + } else { + out += 'should have required property \\\'' + ($missingProperty) + '\\\''; + } + out += '\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += ' } else { '; + } else { + out += ' if ( '; + var arr2 = $required; + if (arr2) { + var $propertyKey, $i = -1, + l2 = arr2.length - 1; + while ($i < l2) { + $propertyKey = arr2[$i += 1]; + if ($i) { + out += ' || '; + } + var $prop = it.util.getProperty($propertyKey), + $useData = $data + $prop; + out += ' ( ( ' + ($useData) + ' === undefined '; + if ($ownProperties) { + out += ' || ! Object.prototype.hasOwnProperty.call(' + ($data) + ', \'' + (it.util.escapeQuotes($propertyKey)) + '\') '; + } + out += ') && (missing' + ($lvl) + ' = ' + (it.util.toQuotedString(it.opts.jsonPointers ? $propertyKey : $prop)) + ') ) '; + } + } + out += ') { '; + var $propertyPath = 'missing' + $lvl, + $missingProperty = '\' + ' + $propertyPath + ' + \''; + if (it.opts._errorDataPathProperty) { + it.errorPath = it.opts.jsonPointers ? it.util.getPathExpr($currentErrorPath, $propertyPath, true) : $currentErrorPath + ' + ' + $propertyPath; + } + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('required') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { missingProperty: \'' + ($missingProperty) + '\' } '; + if (it.opts.messages !== false) { + out += ' , message: \''; + if (it.opts._errorDataPathProperty) { + out += 'is a required property'; + } else { + out += 'should have required property \\\'' + ($missingProperty) + '\\\''; + } + out += '\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += ' } else { '; + } + } else { + if ($loopRequired) { + if (!$isData) { + out += ' var ' + ($vSchema) + ' = validate.schema' + ($schemaPath) + '; '; + } + var $i = 'i' + $lvl, + $propertyPath = 'schema' + $lvl + '[' + $i + ']', + $missingProperty = '\' + ' + $propertyPath + ' + \''; + if (it.opts._errorDataPathProperty) { + it.errorPath = it.util.getPathExpr($currentErrorPath, $propertyPath, it.opts.jsonPointers); + } + if ($isData) { + out += ' if (' + ($vSchema) + ' && !Array.isArray(' + ($vSchema) + ')) { var err = '; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('required') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { missingProperty: \'' + ($missingProperty) + '\' } '; + if (it.opts.messages !== false) { + out += ' , message: \''; + if (it.opts._errorDataPathProperty) { + out += 'is a required property'; + } else { + out += 'should have required property \\\'' + ($missingProperty) + '\\\''; + } + out += '\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + out += '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } else if (' + ($vSchema) + ' !== undefined) { '; + } + out += ' for (var ' + ($i) + ' = 0; ' + ($i) + ' < ' + ($vSchema) + '.length; ' + ($i) + '++) { if (' + ($data) + '[' + ($vSchema) + '[' + ($i) + ']] === undefined '; + if ($ownProperties) { + out += ' || ! Object.prototype.hasOwnProperty.call(' + ($data) + ', ' + ($vSchema) + '[' + ($i) + ']) '; + } + out += ') { var err = '; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('required') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { missingProperty: \'' + ($missingProperty) + '\' } '; + if (it.opts.messages !== false) { + out += ' , message: \''; + if (it.opts._errorDataPathProperty) { + out += 'is a required property'; + } else { + out += 'should have required property \\\'' + ($missingProperty) + '\\\''; + } + out += '\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + out += '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } } '; + if ($isData) { + out += ' } '; + } + } else { + var arr3 = $required; + if (arr3) { + var $propertyKey, i3 = -1, + l3 = arr3.length - 1; + while (i3 < l3) { + $propertyKey = arr3[i3 += 1]; + var $prop = it.util.getProperty($propertyKey), + $missingProperty = it.util.escapeQuotes($propertyKey), + $useData = $data + $prop; + if (it.opts._errorDataPathProperty) { + it.errorPath = it.util.getPath($currentErrorPath, $propertyKey, it.opts.jsonPointers); + } + out += ' if ( ' + ($useData) + ' === undefined '; + if ($ownProperties) { + out += ' || ! Object.prototype.hasOwnProperty.call(' + ($data) + ', \'' + (it.util.escapeQuotes($propertyKey)) + '\') '; + } + out += ') { var err = '; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('required') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { missingProperty: \'' + ($missingProperty) + '\' } '; + if (it.opts.messages !== false) { + out += ' , message: \''; + if (it.opts._errorDataPathProperty) { + out += 'is a required property'; + } else { + out += 'should have required property \\\'' + ($missingProperty) + '\\\''; + } + out += '\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + out += '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } '; + } + } + } + } + it.errorPath = $currentErrorPath; + } else if ($breakOnError) { + out += ' if (true) {'; + } + return out; +} diff --git a/node_modules/ajv/lib/dotjs/uniqueItems.js b/node_modules/ajv/lib/dotjs/uniqueItems.js new file mode 100644 index 0000000..0736a0e --- /dev/null +++ b/node_modules/ajv/lib/dotjs/uniqueItems.js @@ -0,0 +1,86 @@ +'use strict'; +module.exports = function generate_uniqueItems(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $data = 'data' + ($dataLvl || ''); + var $valid = 'valid' + $lvl; + var $isData = it.opts.$data && $schema && $schema.$data, + $schemaValue; + if ($isData) { + out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; '; + $schemaValue = 'schema' + $lvl; + } else { + $schemaValue = $schema; + } + if (($schema || $isData) && it.opts.uniqueItems !== false) { + if ($isData) { + out += ' var ' + ($valid) + '; if (' + ($schemaValue) + ' === false || ' + ($schemaValue) + ' === undefined) ' + ($valid) + ' = true; else if (typeof ' + ($schemaValue) + ' != \'boolean\') ' + ($valid) + ' = false; else { '; + } + out += ' var i = ' + ($data) + '.length , ' + ($valid) + ' = true , j; if (i > 1) { '; + var $itemType = it.schema.items && it.schema.items.type, + $typeIsArray = Array.isArray($itemType); + if (!$itemType || $itemType == 'object' || $itemType == 'array' || ($typeIsArray && ($itemType.indexOf('object') >= 0 || $itemType.indexOf('array') >= 0))) { + out += ' outer: for (;i--;) { for (j = i; j--;) { if (equal(' + ($data) + '[i], ' + ($data) + '[j])) { ' + ($valid) + ' = false; break outer; } } } '; + } else { + out += ' var itemIndices = {}, item; for (;i--;) { var item = ' + ($data) + '[i]; '; + var $method = 'checkDataType' + ($typeIsArray ? 's' : ''); + out += ' if (' + (it.util[$method]($itemType, 'item', it.opts.strictNumbers, true)) + ') continue; '; + if ($typeIsArray) { + out += ' if (typeof item == \'string\') item = \'"\' + item; '; + } + out += ' if (typeof itemIndices[item] == \'number\') { ' + ($valid) + ' = false; j = itemIndices[item]; break; } itemIndices[item] = i; } '; + } + out += ' } '; + if ($isData) { + out += ' } '; + } + out += ' if (!' + ($valid) + ') { '; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('uniqueItems') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { i: i, j: j } '; + if (it.opts.messages !== false) { + out += ' , message: \'should NOT have duplicate items (items ## \' + j + \' and \' + i + \' are identical)\' '; + } + if (it.opts.verbose) { + out += ' , schema: '; + if ($isData) { + out += 'validate.schema' + ($schemaPath); + } else { + out += '' + ($schema); + } + out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += ' } '; + if ($breakOnError) { + out += ' else { '; + } + } else { + if ($breakOnError) { + out += ' if (true) { '; + } + } + return out; +} diff --git a/node_modules/ajv/lib/dotjs/validate.js b/node_modules/ajv/lib/dotjs/validate.js new file mode 100644 index 0000000..f295824 --- /dev/null +++ b/node_modules/ajv/lib/dotjs/validate.js @@ -0,0 +1,482 @@ +'use strict'; +module.exports = function generate_validate(it, $keyword, $ruleType) { + var out = ''; + var $async = it.schema.$async === true, + $refKeywords = it.util.schemaHasRulesExcept(it.schema, it.RULES.all, '$ref'), + $id = it.self._getId(it.schema); + if (it.opts.strictKeywords) { + var $unknownKwd = it.util.schemaUnknownRules(it.schema, it.RULES.keywords); + if ($unknownKwd) { + var $keywordsMsg = 'unknown keyword: ' + $unknownKwd; + if (it.opts.strictKeywords === 'log') it.logger.warn($keywordsMsg); + else throw new Error($keywordsMsg); + } + } + if (it.isTop) { + out += ' var validate = '; + if ($async) { + it.async = true; + out += 'async '; + } + out += 'function(data, dataPath, parentData, parentDataProperty, rootData) { \'use strict\'; '; + if ($id && (it.opts.sourceCode || it.opts.processCode)) { + out += ' ' + ('/\*# sourceURL=' + $id + ' */') + ' '; + } + } + if (typeof it.schema == 'boolean' || !($refKeywords || it.schema.$ref)) { + var $keyword = 'false schema'; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $errorKeyword; + var $data = 'data' + ($dataLvl || ''); + var $valid = 'valid' + $lvl; + if (it.schema === false) { + if (it.isTop) { + $breakOnError = true; + } else { + out += ' var ' + ($valid) + ' = false; '; + } + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ($errorKeyword || 'false schema') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: {} '; + if (it.opts.messages !== false) { + out += ' , message: \'boolean schema is false\' '; + } + if (it.opts.verbose) { + out += ' , schema: false , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + } else { + if (it.isTop) { + if ($async) { + out += ' return data; '; + } else { + out += ' validate.errors = null; return true; '; + } + } else { + out += ' var ' + ($valid) + ' = true; '; + } + } + if (it.isTop) { + out += ' }; return validate; '; + } + return out; + } + if (it.isTop) { + var $top = it.isTop, + $lvl = it.level = 0, + $dataLvl = it.dataLevel = 0, + $data = 'data'; + it.rootId = it.resolve.fullPath(it.self._getId(it.root.schema)); + it.baseId = it.baseId || it.rootId; + delete it.isTop; + it.dataPathArr = [""]; + if (it.schema.default !== undefined && it.opts.useDefaults && it.opts.strictDefaults) { + var $defaultMsg = 'default is ignored in the schema root'; + if (it.opts.strictDefaults === 'log') it.logger.warn($defaultMsg); + else throw new Error($defaultMsg); + } + out += ' var vErrors = null; '; + out += ' var errors = 0; '; + out += ' if (rootData === undefined) rootData = data; '; + } else { + var $lvl = it.level, + $dataLvl = it.dataLevel, + $data = 'data' + ($dataLvl || ''); + if ($id) it.baseId = it.resolve.url(it.baseId, $id); + if ($async && !it.async) throw new Error('async schema in sync schema'); + out += ' var errs_' + ($lvl) + ' = errors;'; + } + var $valid = 'valid' + $lvl, + $breakOnError = !it.opts.allErrors, + $closingBraces1 = '', + $closingBraces2 = ''; + var $errorKeyword; + var $typeSchema = it.schema.type, + $typeIsArray = Array.isArray($typeSchema); + if ($typeSchema && it.opts.nullable && it.schema.nullable === true) { + if ($typeIsArray) { + if ($typeSchema.indexOf('null') == -1) $typeSchema = $typeSchema.concat('null'); + } else if ($typeSchema != 'null') { + $typeSchema = [$typeSchema, 'null']; + $typeIsArray = true; + } + } + if ($typeIsArray && $typeSchema.length == 1) { + $typeSchema = $typeSchema[0]; + $typeIsArray = false; + } + if (it.schema.$ref && $refKeywords) { + if (it.opts.extendRefs == 'fail') { + throw new Error('$ref: validation keywords used in schema at path "' + it.errSchemaPath + '" (see option extendRefs)'); + } else if (it.opts.extendRefs !== true) { + $refKeywords = false; + it.logger.warn('$ref: keywords ignored in schema at path "' + it.errSchemaPath + '"'); + } + } + if (it.schema.$comment && it.opts.$comment) { + out += ' ' + (it.RULES.all.$comment.code(it, '$comment')); + } + if ($typeSchema) { + if (it.opts.coerceTypes) { + var $coerceToTypes = it.util.coerceToTypes(it.opts.coerceTypes, $typeSchema); + } + var $rulesGroup = it.RULES.types[$typeSchema]; + if ($coerceToTypes || $typeIsArray || $rulesGroup === true || ($rulesGroup && !$shouldUseGroup($rulesGroup))) { + var $schemaPath = it.schemaPath + '.type', + $errSchemaPath = it.errSchemaPath + '/type'; + var $schemaPath = it.schemaPath + '.type', + $errSchemaPath = it.errSchemaPath + '/type', + $method = $typeIsArray ? 'checkDataTypes' : 'checkDataType'; + out += ' if (' + (it.util[$method]($typeSchema, $data, it.opts.strictNumbers, true)) + ') { '; + if ($coerceToTypes) { + var $dataType = 'dataType' + $lvl, + $coerced = 'coerced' + $lvl; + out += ' var ' + ($dataType) + ' = typeof ' + ($data) + '; var ' + ($coerced) + ' = undefined; '; + if (it.opts.coerceTypes == 'array') { + out += ' if (' + ($dataType) + ' == \'object\' && Array.isArray(' + ($data) + ') && ' + ($data) + '.length == 1) { ' + ($data) + ' = ' + ($data) + '[0]; ' + ($dataType) + ' = typeof ' + ($data) + '; if (' + (it.util.checkDataType(it.schema.type, $data, it.opts.strictNumbers)) + ') ' + ($coerced) + ' = ' + ($data) + '; } '; + } + out += ' if (' + ($coerced) + ' !== undefined) ; '; + var arr1 = $coerceToTypes; + if (arr1) { + var $type, $i = -1, + l1 = arr1.length - 1; + while ($i < l1) { + $type = arr1[$i += 1]; + if ($type == 'string') { + out += ' else if (' + ($dataType) + ' == \'number\' || ' + ($dataType) + ' == \'boolean\') ' + ($coerced) + ' = \'\' + ' + ($data) + '; else if (' + ($data) + ' === null) ' + ($coerced) + ' = \'\'; '; + } else if ($type == 'number' || $type == 'integer') { + out += ' else if (' + ($dataType) + ' == \'boolean\' || ' + ($data) + ' === null || (' + ($dataType) + ' == \'string\' && ' + ($data) + ' && ' + ($data) + ' == +' + ($data) + ' '; + if ($type == 'integer') { + out += ' && !(' + ($data) + ' % 1)'; + } + out += ')) ' + ($coerced) + ' = +' + ($data) + '; '; + } else if ($type == 'boolean') { + out += ' else if (' + ($data) + ' === \'false\' || ' + ($data) + ' === 0 || ' + ($data) + ' === null) ' + ($coerced) + ' = false; else if (' + ($data) + ' === \'true\' || ' + ($data) + ' === 1) ' + ($coerced) + ' = true; '; + } else if ($type == 'null') { + out += ' else if (' + ($data) + ' === \'\' || ' + ($data) + ' === 0 || ' + ($data) + ' === false) ' + ($coerced) + ' = null; '; + } else if (it.opts.coerceTypes == 'array' && $type == 'array') { + out += ' else if (' + ($dataType) + ' == \'string\' || ' + ($dataType) + ' == \'number\' || ' + ($dataType) + ' == \'boolean\' || ' + ($data) + ' == null) ' + ($coerced) + ' = [' + ($data) + ']; '; + } + } + } + out += ' else { '; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ($errorKeyword || 'type') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { type: \''; + if ($typeIsArray) { + out += '' + ($typeSchema.join(",")); + } else { + out += '' + ($typeSchema); + } + out += '\' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should be '; + if ($typeIsArray) { + out += '' + ($typeSchema.join(",")); + } else { + out += '' + ($typeSchema); + } + out += '\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += ' } if (' + ($coerced) + ' !== undefined) { '; + var $parentData = $dataLvl ? 'data' + (($dataLvl - 1) || '') : 'parentData', + $parentDataProperty = $dataLvl ? it.dataPathArr[$dataLvl] : 'parentDataProperty'; + out += ' ' + ($data) + ' = ' + ($coerced) + '; '; + if (!$dataLvl) { + out += 'if (' + ($parentData) + ' !== undefined)'; + } + out += ' ' + ($parentData) + '[' + ($parentDataProperty) + '] = ' + ($coerced) + '; } '; + } else { + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ($errorKeyword || 'type') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { type: \''; + if ($typeIsArray) { + out += '' + ($typeSchema.join(",")); + } else { + out += '' + ($typeSchema); + } + out += '\' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should be '; + if ($typeIsArray) { + out += '' + ($typeSchema.join(",")); + } else { + out += '' + ($typeSchema); + } + out += '\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + } + out += ' } '; + } + } + if (it.schema.$ref && !$refKeywords) { + out += ' ' + (it.RULES.all.$ref.code(it, '$ref')) + ' '; + if ($breakOnError) { + out += ' } if (errors === '; + if ($top) { + out += '0'; + } else { + out += 'errs_' + ($lvl); + } + out += ') { '; + $closingBraces2 += '}'; + } + } else { + var arr2 = it.RULES; + if (arr2) { + var $rulesGroup, i2 = -1, + l2 = arr2.length - 1; + while (i2 < l2) { + $rulesGroup = arr2[i2 += 1]; + if ($shouldUseGroup($rulesGroup)) { + if ($rulesGroup.type) { + out += ' if (' + (it.util.checkDataType($rulesGroup.type, $data, it.opts.strictNumbers)) + ') { '; + } + if (it.opts.useDefaults) { + if ($rulesGroup.type == 'object' && it.schema.properties) { + var $schema = it.schema.properties, + $schemaKeys = Object.keys($schema); + var arr3 = $schemaKeys; + if (arr3) { + var $propertyKey, i3 = -1, + l3 = arr3.length - 1; + while (i3 < l3) { + $propertyKey = arr3[i3 += 1]; + var $sch = $schema[$propertyKey]; + if ($sch.default !== undefined) { + var $passData = $data + it.util.getProperty($propertyKey); + if (it.compositeRule) { + if (it.opts.strictDefaults) { + var $defaultMsg = 'default is ignored for: ' + $passData; + if (it.opts.strictDefaults === 'log') it.logger.warn($defaultMsg); + else throw new Error($defaultMsg); + } + } else { + out += ' if (' + ($passData) + ' === undefined '; + if (it.opts.useDefaults == 'empty') { + out += ' || ' + ($passData) + ' === null || ' + ($passData) + ' === \'\' '; + } + out += ' ) ' + ($passData) + ' = '; + if (it.opts.useDefaults == 'shared') { + out += ' ' + (it.useDefault($sch.default)) + ' '; + } else { + out += ' ' + (JSON.stringify($sch.default)) + ' '; + } + out += '; '; + } + } + } + } + } else if ($rulesGroup.type == 'array' && Array.isArray(it.schema.items)) { + var arr4 = it.schema.items; + if (arr4) { + var $sch, $i = -1, + l4 = arr4.length - 1; + while ($i < l4) { + $sch = arr4[$i += 1]; + if ($sch.default !== undefined) { + var $passData = $data + '[' + $i + ']'; + if (it.compositeRule) { + if (it.opts.strictDefaults) { + var $defaultMsg = 'default is ignored for: ' + $passData; + if (it.opts.strictDefaults === 'log') it.logger.warn($defaultMsg); + else throw new Error($defaultMsg); + } + } else { + out += ' if (' + ($passData) + ' === undefined '; + if (it.opts.useDefaults == 'empty') { + out += ' || ' + ($passData) + ' === null || ' + ($passData) + ' === \'\' '; + } + out += ' ) ' + ($passData) + ' = '; + if (it.opts.useDefaults == 'shared') { + out += ' ' + (it.useDefault($sch.default)) + ' '; + } else { + out += ' ' + (JSON.stringify($sch.default)) + ' '; + } + out += '; '; + } + } + } + } + } + } + var arr5 = $rulesGroup.rules; + if (arr5) { + var $rule, i5 = -1, + l5 = arr5.length - 1; + while (i5 < l5) { + $rule = arr5[i5 += 1]; + if ($shouldUseRule($rule)) { + var $code = $rule.code(it, $rule.keyword, $rulesGroup.type); + if ($code) { + out += ' ' + ($code) + ' '; + if ($breakOnError) { + $closingBraces1 += '}'; + } + } + } + } + } + if ($breakOnError) { + out += ' ' + ($closingBraces1) + ' '; + $closingBraces1 = ''; + } + if ($rulesGroup.type) { + out += ' } '; + if ($typeSchema && $typeSchema === $rulesGroup.type && !$coerceToTypes) { + out += ' else { '; + var $schemaPath = it.schemaPath + '.type', + $errSchemaPath = it.errSchemaPath + '/type'; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ($errorKeyword || 'type') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { type: \''; + if ($typeIsArray) { + out += '' + ($typeSchema.join(",")); + } else { + out += '' + ($typeSchema); + } + out += '\' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should be '; + if ($typeIsArray) { + out += '' + ($typeSchema.join(",")); + } else { + out += '' + ($typeSchema); + } + out += '\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += ' } '; + } + } + if ($breakOnError) { + out += ' if (errors === '; + if ($top) { + out += '0'; + } else { + out += 'errs_' + ($lvl); + } + out += ') { '; + $closingBraces2 += '}'; + } + } + } + } + } + if ($breakOnError) { + out += ' ' + ($closingBraces2) + ' '; + } + if ($top) { + if ($async) { + out += ' if (errors === 0) return data; '; + out += ' else throw new ValidationError(vErrors); '; + } else { + out += ' validate.errors = vErrors; '; + out += ' return errors === 0; '; + } + out += ' }; return validate;'; + } else { + out += ' var ' + ($valid) + ' = errors === errs_' + ($lvl) + ';'; + } + + function $shouldUseGroup($rulesGroup) { + var rules = $rulesGroup.rules; + for (var i = 0; i < rules.length; i++) + if ($shouldUseRule(rules[i])) return true; + } + + function $shouldUseRule($rule) { + return it.schema[$rule.keyword] !== undefined || ($rule.implements && $ruleImplementsSomeKeyword($rule)); + } + + function $ruleImplementsSomeKeyword($rule) { + var impl = $rule.implements; + for (var i = 0; i < impl.length; i++) + if (it.schema[impl[i]] !== undefined) return true; + } + return out; +} diff --git a/node_modules/ajv/lib/keyword.js b/node_modules/ajv/lib/keyword.js new file mode 100644 index 0000000..06da9a2 --- /dev/null +++ b/node_modules/ajv/lib/keyword.js @@ -0,0 +1,146 @@ +'use strict'; + +var IDENTIFIER = /^[a-z_$][a-z0-9_$-]*$/i; +var customRuleCode = require('./dotjs/custom'); +var definitionSchema = require('./definition_schema'); + +module.exports = { + add: addKeyword, + get: getKeyword, + remove: removeKeyword, + validate: validateKeyword +}; + + +/** + * Define custom keyword + * @this Ajv + * @param {String} keyword custom keyword, should be unique (including different from all standard, custom and macro keywords). + * @param {Object} definition keyword definition object with properties `type` (type(s) which the keyword applies to), `validate` or `compile`. + * @return {Ajv} this for method chaining + */ +function addKeyword(keyword, definition) { + /* jshint validthis: true */ + /* eslint no-shadow: 0 */ + var RULES = this.RULES; + if (RULES.keywords[keyword]) + throw new Error('Keyword ' + keyword + ' is already defined'); + + if (!IDENTIFIER.test(keyword)) + throw new Error('Keyword ' + keyword + ' is not a valid identifier'); + + if (definition) { + this.validateKeyword(definition, true); + + var dataType = definition.type; + if (Array.isArray(dataType)) { + for (var i=0; i ../ajv-dist/bower.json + cd ../ajv-dist + + if [[ `git status --porcelain` ]]; then + echo "Changes detected. Updating master branch..." + git add -A + git commit -m "updated by travis build #$TRAVIS_BUILD_NUMBER" + git push --quiet origin master > /dev/null 2>&1 + fi + + echo "Publishing tag..." + + git tag $TRAVIS_TAG + git push --tags > /dev/null 2>&1 + + echo "Done" +fi diff --git a/node_modules/ajv/scripts/travis-gh-pages b/node_modules/ajv/scripts/travis-gh-pages new file mode 100644 index 0000000..b3d4f3d --- /dev/null +++ b/node_modules/ajv/scripts/travis-gh-pages @@ -0,0 +1,23 @@ +#!/usr/bin/env bash + +set -e + +if [[ "$TRAVIS_BRANCH" == "master" && "$TRAVIS_PULL_REQUEST" == "false" && $TRAVIS_JOB_NUMBER =~ ".3" ]]; then + git diff --name-only $TRAVIS_COMMIT_RANGE | grep -qE '\.md$|^LICENSE$|travis-gh-pages$' && { + rm -rf ../gh-pages + git clone -b gh-pages --single-branch https://${GITHUB_TOKEN}@github.com/ajv-validator/ajv.git ../gh-pages + mkdir -p ../gh-pages/_source + cp *.md ../gh-pages/_source + cp LICENSE ../gh-pages/_source + currentDir=$(pwd) + cd ../gh-pages + $currentDir/node_modules/.bin/gh-pages-generator + # remove logo from README + sed -i -E "s/]+ajv_logo[^>]+>//" index.md + git config user.email "$GIT_USER_EMAIL" + git config user.name "$GIT_USER_NAME" + git add . + git commit -am "updated by travis build #$TRAVIS_BUILD_NUMBER" + git push --quiet origin gh-pages > /dev/null 2>&1 + } +fi diff --git a/node_modules/another-npm-registry-client/LICENSE b/node_modules/another-npm-registry-client/LICENSE new file mode 100644 index 0000000..19129e3 --- /dev/null +++ b/node_modules/another-npm-registry-client/LICENSE @@ -0,0 +1,15 @@ +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. diff --git a/node_modules/another-npm-registry-client/README.md b/node_modules/another-npm-registry-client/README.md new file mode 100644 index 0000000..09ac653 --- /dev/null +++ b/node_modules/another-npm-registry-client/README.md @@ -0,0 +1,357 @@ +# npm-registry-client + +The code that npm uses to talk to the registry. + +It handles all the caching and HTTP calls. + +## Usage + +```javascript +var RegClient = require('npm-registry-client') +var client = new RegClient(config) +var uri = "https://registry.npmjs.org/npm" +var params = {timeout: 1000} + +client.get(uri, params, function (error, data, raw, res) { + // error is an error if there was a problem. + // data is the parsed data object + // raw is the json string + // res is the response from couch +}) +``` + +# Registry URLs + +The registry calls take either a full URL pointing to a resource in the +registry, or a base URL for the registry as a whole (including the registry +path – but be sure to terminate the path with `/`). `http` and `https` URLs are +the only ones supported. + +## Using the client + +Every call to the client follows the same pattern: + +* `uri` {String} The *fully-qualified* URI of the registry API method being + invoked. +* `params` {Object} Per-request parameters. +* `callback` {Function} Callback to be invoked when the call is complete. + +### Credentials + +Many requests to the registry can be authenticated, and require credentials +for authorization. These credentials always look the same: + +* `username` {String} +* `password` {String} +* `email` {String} +* `alwaysAuth` {Boolean} Whether calls to the target registry are always + authed. + +**or** + +* `token` {String} +* `alwaysAuth` {Boolean} Whether calls to the target registry are always + authed. + +## Requests + +As of `npm-registry-client@8`, all requests are made with an `Accept` header +of `application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*`. + +This enables filtered document responses to requests for package metadata. +You know that you got a filtered response if the mime type is set to +`application/vnd.npm.install-v1+json` and not `application/json`. + +This filtering substantially reduces the over all data size. For example +for `https://registry.npmjs.org/npm`, the compressed metadata goes from +410kB to 21kB. + +## API + +### client.access(uri, params, cb) + +* `uri` {String} Registry URL for the package's access API endpoint. + Looks like `/-/package//access`. +* `params` {Object} Object containing per-request properties. + * `access` {String} New access level for the package. Can be either + `public` or `restricted`. Registry will raise an error if trying + to change the access level of an unscoped package. + * `auth` {Credentials} + +Set the access level for scoped packages. For now, there are only two +access levels: "public" and "restricted". + +### client.adduser(uri, params, cb) + +* `uri` {String} Base registry URL. +* `params` {Object} Object containing per-request properties. + * `auth` {Credentials} +* `cb` {Function} + * `error` {Error | null} + * `data` {Object} the parsed data object + * `raw` {String} the json + * `res` {Response Object} response from couch + +Add a user account to the registry, or verify the credentials. + +### client.deprecate(uri, params, cb) + +* `uri` {String} Full registry URI for the deprecated package. +* `params` {Object} Object containing per-request properties. + * `version` {String} Semver version range. + * `message` {String} The message to use as a deprecation warning. + * `auth` {Credentials} +* `cb` {Function} + +Deprecate a version of a package in the registry. + +### client.distTags.fetch(uri, params, cb) + +* `uri` {String} Base URL for the registry. +* `params` {Object} Object containing per-request properties. + * `package` {String} Name of the package. + * `auth` {Credentials} +* `cb` {Function} + +Fetch all of the `dist-tags` for the named package. + +### client.distTags.add(uri, params, cb) + +* `uri` {String} Base URL for the registry. +* `params` {Object} Object containing per-request properties. + * `package` {String} Name of the package. + * `distTag` {String} Name of the new `dist-tag`. + * `version` {String} Exact version to be mapped to the `dist-tag`. + * `auth` {Credentials} +* `cb` {Function} + +Add (or replace) a single dist-tag onto the named package. + +### client.distTags.set(uri, params, cb) + +* `uri` {String} Base URL for the registry. +* `params` {Object} Object containing per-request properties. + * `package` {String} Name of the package. + * `distTags` {Object} Object containing a map from tag names to package + versions. + * `auth` {Credentials} +* `cb` {Function} + +Set all of the `dist-tags` for the named package at once, creating any +`dist-tags` that do not already exist. Any `dist-tags` not included in the +`distTags` map will be removed. + +### client.distTags.update(uri, params, cb) + +* `uri` {String} Base URL for the registry. +* `params` {Object} Object containing per-request properties. + * `package` {String} Name of the package. + * `distTags` {Object} Object containing a map from tag names to package + versions. + * `auth` {Credentials} +* `cb` {Function} + +Update the values of multiple `dist-tags`, creating any `dist-tags` that do +not already exist. Any pre-existing `dist-tags` not included in the `distTags` +map will be left alone. + +### client.distTags.rm(uri, params, cb) + +* `uri` {String} Base URL for the registry. +* `params` {Object} Object containing per-request properties. + * `package` {String} Name of the package. + * `distTag` {String} Name of the new `dist-tag`. + * `auth` {Credentials} +* `cb` {Function} + +Remove a single `dist-tag` from the named package. + +### client.get(uri, params, cb) + +* `uri` {String} The complete registry URI to fetch +* `params` {Object} Object containing per-request properties. + * `timeout` {Number} Duration before the request times out. Optional + (default: never). + * `follow` {Boolean} Follow 302/301 responses. Optional (default: true). + * `staleOk` {Boolean} If there's cached data available, then return that to + the callback quickly, and update the cache the background. Optional + (default: false). + * `auth` {Credentials} Optional. + * `fullMetadata` {Boolean} If true, don't attempt to fetch filtered + ("corgi") registry metadata. (default: false) +* `cb` {Function} + +Fetches data from the registry via a GET request, saving it in the cache folder +with the ETag or the "Last Modified" timestamp. + +### client.publish(uri, params, cb) + +* `uri` {String} The registry URI for the package to publish. +* `params` {Object} Object containing per-request properties. + * `metadata` {Object} Package metadata. + * `access` {String} Access for the package. Can be `public` or `restricted` (no default). + * `body` {Stream} Stream of the package body / tarball. + * `auth` {Credentials} +* `cb` {Function} + +Publish a package to the registry. + +Note that this does not create the tarball from a folder. + +### client.sendAnonymousCLIMetrics(uri, params, cb) + +- `uri` {String} Base URL for the registry. +- `params` {Object} Object containing per-request properties. + - `metricId` {String} A uuid unique to this dataset. + - `metrics` {Object} The metrics to share with the registry, with the following properties: + - `from` {Date} When the first data in this report was collected. + - `to` {Date} When the last data in this report was collected. Usually right now. + - `successfulInstalls` {Number} The number of successful installs in this period. + - `failedInstalls` {Number} The number of installs that ended in error in this period. +- `cb` {Function} + +PUT a metrics object to the `/-/npm/anon-metrics/v1/` endpoint on the registry. + +### client.star(uri, params, cb) + +* `uri` {String} The complete registry URI for the package to star. +* `params` {Object} Object containing per-request properties. + * `starred` {Boolean} True to star the package, false to unstar it. Optional + (default: false). + * `auth` {Credentials} +* `cb` {Function} + +Star or unstar a package. + +Note that the user does not have to be the package owner to star or unstar a +package, though other writes do require that the user be the package owner. + +### client.stars(uri, params, cb) + +* `uri` {String} The base URL for the registry. +* `params` {Object} Object containing per-request properties. + * `username` {String} Name of user to fetch starred packages for. Optional + (default: user in `auth`). + * `auth` {Credentials} Optional (required if `username` is omitted). +* `cb` {Function} + +View your own or another user's starred packages. + +### client.tag(uri, params, cb) + +* `uri` {String} The complete registry URI to tag +* `params` {Object} Object containing per-request properties. + * `version` {String} Version to tag. + * `tag` {String} Tag name to apply. + * `auth` {Credentials} +* `cb` {Function} + +Mark a version in the `dist-tags` hash, so that `pkg@tag` will fetch the +specified version. + +### client.unpublish(uri, params, cb) + +* `uri` {String} The complete registry URI of the package to unpublish. +* `params` {Object} Object containing per-request properties. + * `version` {String} version to unpublish. Optional – omit to unpublish all + versions. + * `auth` {Credentials} +* `cb` {Function} + +Remove a version of a package (or all versions) from the registry. When the +last version us unpublished, the entire document is removed from the database. + +### client.whoami(uri, params, cb) + +* `uri` {String} The base registry for the URI. +* `params` {Object} Object containing per-request properties. + * `auth` {Credentials} +* `cb` {Function} + +Simple call to see who the registry thinks you are. Especially useful with +token-based auth. + + +## PLUMBING + +The below are primarily intended for use by the rest of the API, or by the npm +caching logic directly. + +### client.request(uri, params, cb) + +* `uri` {String} URI pointing to the resource to request. +* `params` {Object} Object containing per-request properties. + * `method` {String} HTTP method. Optional (default: "GET"). + * `body` {Stream | Buffer | String | Object} The request body. Objects + that are not Buffers or Streams are encoded as JSON. Optional – body + only used for write operations. + * `etag` {String} The cached ETag. Optional. + * `lastModified` {String} The cached Last-Modified timestamp. Optional. + * `follow` {Boolean} Follow 302/301 responses. Optional (default: true). + * `streaming` {Boolean} Stream the request body as it comes, handling error + responses in a non-streaming way. + * `auth` {Credentials} Optional. +* `cb` {Function} + * `error` {Error | null} + * `data` {Object} the parsed data object + * `raw` {String} the json + * `res` {Response Object} response from couch + +Make a generic request to the registry. All the other methods are wrappers +around `client.request`. + +### client.fetch(uri, params, cb) + +* `uri` {String} The complete registry URI to upload to +* `params` {Object} Object containing per-request properties. + * `headers` {Stream} HTTP headers to be included with the request. Optional. + * `auth` {Credentials} Optional. +* `cb` {Function} + +Fetch a package from a URL, with auth set appropriately if included. Used to +cache remote tarballs as well as request package tarballs from the registry. + +# Configuration + +The client uses its own configuration, which is just passed in as a simple +nested object. The following are the supported values (with their defaults, if +any): + +* `proxy.http` {URL} The URL to proxy HTTP requests through. +* `proxy.https` {URL} The URL to proxy HTTPS requests through. Defaults to be + the same as `proxy.http` if unset. +* `proxy.localAddress` {IP} The local address to use on multi-homed systems. +* `ssl.ca` {String} Certificate signing authority certificates to trust. +* `ssl.certificate` {String} Client certificate (PEM encoded). Enable access + to servers that require client certificates. +* `ssl.key` {String} Private key (PEM encoded) for client certificate. +* `ssl.strict` {Boolean} Whether or not to be strict with SSL certificates. + Default = `true` +* `retry.retries` {Number} Number of times to retry on GET failures. Default = 2. +* `retry.factor` {Number} `factor` setting for `node-retry`. Default = 10. +* `retry.minTimeout` {Number} `minTimeout` setting for `node-retry`. + Default = 10000 (10 seconds) +* `retry.maxTimeout` {Number} `maxTimeout` setting for `node-retry`. + Default = 60000 (60 seconds) +* `userAgent` {String} User agent header to send. Default = + `"node/{process.version}"` +* `log` {Object} The logger to use. Defaults to `require("npmlog")` if + that works, otherwise logs are disabled. +* `defaultTag` {String} The default tag to use when publishing new packages. + Default = `"latest"` +* `couchToken` {Object} A token for use with + [couch-login](https://npmjs.org/package/couch-login). +* `sessionToken` {String} A random identifier for this set of client requests. + Default = 8 random hexadecimal bytes. +* `maxSockets` {Number} The maximum number of connections that will be open per + origin (unique combination of protocol:host:port). Passed to the + [httpAgent](https://nodejs.org/api/http.html#http_agent_maxsockets). + Default = 50 +* `isFromCI` {Boolean} Identify to severs if this request is coming from CI (for statistics purposes). + Default = detected from environment– primarily this is done by looking for + the CI environment variable to be set to `true`. Also accepted are the + existence of the `JENKINS_URL`, `bamboo.buildKey` and `TDDIUM` environment + variables. +* `scope` {String} The scope of the project this command is being run for. This is the + top level npm module in which a command was run. + Default = none diff --git a/node_modules/another-npm-registry-client/index.js b/node_modules/another-npm-registry-client/index.js new file mode 100644 index 0000000..07eab3f --- /dev/null +++ b/node_modules/another-npm-registry-client/index.js @@ -0,0 +1,74 @@ +// utilities for working with the js-registry site. + +module.exports = RegClient + +var npmlog +try { + npmlog = require('npmlog') +} catch (er) { + npmlog = { + error: noop, + warn: noop, + info: noop, + verbose: noop, + silly: noop, + http: noop, + pause: noop, + resume: noop + } +} + +function noop () {} + +function RegClient (config) { + this.config = Object.create(config || {}) + + this.config.proxy = this.config.proxy || {} + if (!this.config.proxy.https && this.config.proxy.http) { + this.config.proxy.https = this.config.proxy.http + } + + this.config.ssl = this.config.ssl || {} + if (this.config.ssl.strict === undefined) this.config.ssl.strict = true + + this.config.retry = this.config.retry || {} + if (typeof this.config.retry.retries !== 'number') this.config.retry.retries = 2 + if (typeof this.config.retry.factor !== 'number') this.config.retry.factor = 10 + if (typeof this.config.retry.minTimeout !== 'number') this.config.retry.minTimeout = 10000 + if (typeof this.config.retry.maxTimeout !== 'number') this.config.retry.maxTimeout = 60000 + if (typeof this.config.maxSockets !== 'number') this.config.maxSockets = 50 + + this.config.userAgent = this.config.userAgent || 'node/' + process.version + this.config.defaultTag = this.config.defaultTag || 'latest' + + this.log = this.config.log || npmlog + delete this.config.log + + var client = this + client.access = require('./lib/access') + client.adduser = require('./lib/adduser') + client.attempt = require('./lib/attempt') + client.authify = require('./lib/authify') + client.deprecate = require('./lib/deprecate') + client.distTags = Object.create(client) + client.distTags.add = require('./lib/dist-tags/add') + client.distTags.fetch = require('./lib/dist-tags/fetch') + client.distTags.rm = require('./lib/dist-tags/rm') + client.distTags.set = require('./lib/dist-tags/set') + client.distTags.update = require('./lib/dist-tags/update') + client.fetch = require('./lib/fetch') + client.get = require('./lib/get') + client.initialize = require('./lib/initialize') + client.logout = require('./lib/logout') + client.org = require('./lib/org') + client.ping = require('./lib/ping') + client.publish = require('./lib/publish') + client.request = require('./lib/request') + client.sendAnonymousCLIMetrics = require('./lib/send-anonymous-CLI-metrics') + client.star = require('./lib/star') + client.stars = require('./lib/stars') + client.tag = require('./lib/tag') + client.team = require('./lib/team') + client.unpublish = require('./lib/unpublish') + client.whoami = require('./lib/whoami') +} diff --git a/node_modules/another-npm-registry-client/lib/access.js b/node_modules/another-npm-registry-client/lib/access.js new file mode 100644 index 0000000..caa80b1 --- /dev/null +++ b/node_modules/another-npm-registry-client/lib/access.js @@ -0,0 +1,168 @@ +module.exports = access + +var assert = require('assert') +var url = require('url') +var npa = require('npm-package-arg') +var subcommands = {} + +function access (sub, uri, params, cb) { + accessAssertions(sub, uri, params, cb) + return subcommands[sub].call(this, uri, params, cb) +} + +subcommands.public = function (uri, params, cb) { + return setAccess.call(this, 'public', uri, params, cb) +} +subcommands.restricted = function (uri, params, cb) { + return setAccess.call(this, 'restricted', uri, params, cb) +} +subcommands['2fa-required'] = function (uri, params, cb) { + return setRequires2fa.call(this, true, uri, params, cb) +} +subcommands['2fa-not-required'] = function (uri, params, cb) { + return setRequires2fa.call(this, false, uri, params, cb) +} + +function setAccess (access, uri, params, cb) { + return this.request(apiUri(uri, 'package', params.package, 'access'), { + method: 'POST', + auth: params.auth, + body: JSON.stringify({ access: access }) + }, cb) +} + +function setRequires2fa (requires2fa, uri, params, cb) { + return this.request(apiUri(uri, 'package', params.package, 'access'), { + method: 'POST', + auth: params.auth, + body: JSON.stringify({ publish_requires_tfa: requires2fa }) + }, cb) +} + +subcommands.grant = function (uri, params, cb) { + var reqUri = apiUri(uri, 'team', params.scope, params.team, 'package') + return this.request(reqUri, { + method: 'PUT', + auth: params.auth, + body: JSON.stringify({ + permissions: params.permissions, + package: params.package + }) + }, cb) +} + +subcommands.revoke = function (uri, params, cb) { + var reqUri = apiUri(uri, 'team', params.scope, params.team, 'package') + return this.request(reqUri, { + method: 'DELETE', + auth: params.auth, + body: JSON.stringify({ + package: params.package + }) + }, cb) +} + +subcommands['ls-packages'] = function (uri, params, cb, type) { + type = type || (params.team ? 'team' : 'org') + var client = this + var uriParams = '?format=cli' + var reqUri = apiUri(uri, type, params.scope, params.team, 'package') + return client.request(reqUri + uriParams, { + method: 'GET', + auth: params.auth + }, function (err, perms) { + if (err && err.statusCode === 404 && type === 'org') { + subcommands['ls-packages'].call(client, uri, params, cb, 'user') + } else { + cb(err, perms && translatePermissions(perms)) + } + }) +} + +subcommands['ls-collaborators'] = function (uri, params, cb) { + var uriParams = '?format=cli' + if (params.user) { + uriParams += ('&user=' + encodeURIComponent(params.user)) + } + var reqUri = apiUri(uri, 'package', params.package, 'collaborators') + return this.request(reqUri + uriParams, { + method: 'GET', + auth: params.auth + }, function (err, perms) { + cb(err, perms && translatePermissions(perms)) + }) +} + +subcommands.edit = function () { + throw new Error('edit subcommand is not implemented yet') +} + +function apiUri (registryUri) { + var path = Array.prototype.slice.call(arguments, 1) + .filter(function (x) { return x }) + .map(encodeURIComponent) + .join('/') + return url.resolve(registryUri, '-/' + path) +} + +function accessAssertions (subcommand, uri, params, cb) { + assert(subcommands.hasOwnProperty(subcommand), + 'access subcommand must be one of ' + + Object.keys(subcommands).join(', ')) + typeChecks({ + 'uri': [uri, 'string'], + 'params': [params, 'object'], + 'auth': [params.auth, 'object'], + 'callback': [cb, 'function'] + }) + if (contains([ + 'public', 'restricted' + ], subcommand)) { + typeChecks({ 'package': [params.package, 'string'] }) + assert(!!npa(params.package).scope, + 'access commands are only accessible for scoped packages') + } + if (contains(['grant', 'revoke', 'ls-packages'], subcommand)) { + typeChecks({ 'scope': [params.scope, 'string'] }) + } + if (contains(['grant', 'revoke'], subcommand)) { + typeChecks({ 'team': [params.team, 'string'] }) + } + if (subcommand === 'grant') { + typeChecks({ 'permissions': [params.permissions, 'string'] }) + assert(params.permissions === 'read-only' || + params.permissions === 'read-write', + 'permissions must be either read-only or read-write') + } +} + +function typeChecks (specs) { + Object.keys(specs).forEach(function (key) { + var checks = specs[key] + /* eslint valid-typeof:0 */ + assert(typeof checks[0] === checks[1], + key + ' is required and must be of type ' + checks[1]) + }) +} + +function contains (arr, item) { + return arr.indexOf(item) !== -1 +} + +function translatePermissions (perms) { + var newPerms = {} + for (var key in perms) { + if (perms.hasOwnProperty(key)) { + if (perms[key] === 'read') { + newPerms[key] = 'read-only' + } else if (perms[key] === 'write') { + newPerms[key] = 'read-write' + } else { + // This shouldn't happen, but let's not break things + // if the API starts returning different things. + newPerms[key] = perms[key] + } + } + } + return newPerms +} diff --git a/node_modules/another-npm-registry-client/lib/adduser.js b/node_modules/another-npm-registry-client/lib/adduser.js new file mode 100644 index 0000000..a31d5b0 --- /dev/null +++ b/node_modules/another-npm-registry-client/lib/adduser.js @@ -0,0 +1,128 @@ +module.exports = adduser + +var url = require('url') +var assert = require('assert') + +function adduser (uri, params, cb) { + assert(typeof uri === 'string', 'must pass registry URI to adduser') + assert( + params && typeof params === 'object', + 'must pass params to adduser' + ) + assert(typeof cb === 'function', 'must pass callback to adduser') + + assert(params.auth && typeof params.auth, 'must pass auth to adduser') + var auth = params.auth + assert(typeof auth.username === 'string', 'must include username in auth') + assert(typeof auth.password === 'string', 'must include password in auth') + assert(typeof auth.email === 'string', 'must include email in auth') + + // normalize registry URL + if (uri.slice(-1) !== '/') uri += '/' + + var username = auth.username.trim() + var password = auth.password.trim() + var email = auth.email.trim() + + // validation + if (!username) return cb(new Error('No username supplied.')) + if (!password) return cb(new Error('No password supplied.')) + if (!email) return cb(new Error('No email address supplied.')) + if (!email.match(/^[^@]+@[^.]+\.[^.]+/)) { + return cb(new Error('Please use a real email address.')) + } + + var userobj = { + _id: 'org.couchdb.user:' + username, + name: username, + password: password, + email: email, + type: 'user', + roles: [], + date: new Date().toISOString() + } + + var token = this.config.couchToken + if (this.couchLogin) this.couchLogin.token = null + + cb = done.call(this, token, cb) + + var logObj = Object.keys(userobj).map(function (k) { + if (k === 'password') return [k, 'XXXXX'] + return [k, userobj[k]] + }).reduce(function (s, kv) { + s[kv[0]] = kv[1] + return s + }, {}) + + this.log.verbose('adduser', 'before first PUT', logObj) + + var client = this + + uri = url.resolve(uri, '-/user/org.couchdb.user:' + encodeURIComponent(username)) + var options = { + method: 'PUT', + body: userobj, + auth: auth + } + this.request( + uri, + Object.assign({}, options), + function (error, data, json, response) { + if (!error || !response || response.statusCode !== 409) { + return cb(error, data, json, response) + } + + client.log.verbose('adduser', 'update existing user') + return client.request( + uri + '?write=true', + { auth: auth }, + function (er, data, json, response) { + if (er || data.error) { + return cb(er, data, json, response) + } + Object.keys(data).forEach(function (k) { + if (!userobj[k] || k === 'roles') { + userobj[k] = data[k] + } + }) + client.log.verbose('adduser', 'userobj', logObj) + client.request(uri + '/-rev/' + userobj._rev, options, cb) + } + ) + } + ) + + function done (token, cb) { + return function (error, data, json, response) { + if (!error && (!response || response.statusCode === 201)) { + return cb(error, data, json, response) + } + + // there was some kind of error, reinstate previous auth/token/etc. + if (client.couchLogin) { + client.couchLogin.token = token + if (client.couchLogin.tokenSet) { + client.couchLogin.tokenSet(token) + } + } + + client.log.verbose('adduser', 'back', [error, data, json]) + if (!error) { + error = new Error( + ((response && response.statusCode) || '') + ' ' + + 'Could not create user\n' + JSON.stringify(data) + ) + } + + if (response && (response.statusCode === 401 || response.statusCode === 403)) { + client.log.warn('adduser', 'Incorrect username or password\n' + + 'You can reset your account by visiting:\n' + + '\n' + + ' https://npmjs.org/forgot\n') + } + + return cb(error) + } + } +} diff --git a/node_modules/another-npm-registry-client/lib/attempt.js b/node_modules/another-npm-registry-client/lib/attempt.js new file mode 100644 index 0000000..d41bbc4 --- /dev/null +++ b/node_modules/another-npm-registry-client/lib/attempt.js @@ -0,0 +1,20 @@ +var retry = require('retry') + +module.exports = attempt + +function attempt (cb) { + // Tuned to spread 3 attempts over about a minute. + // See formula at . + var operation = retry.operation(this.config.retry) + + var client = this + operation.attempt(function (currentAttempt) { + client.log.info( + 'attempt', + 'registry request try #' + currentAttempt + + ' at ' + (new Date()).toLocaleTimeString() + ) + + cb(operation) + }) +} diff --git a/node_modules/another-npm-registry-client/lib/authify.js b/node_modules/another-npm-registry-client/lib/authify.js new file mode 100644 index 0000000..9b38a30 --- /dev/null +++ b/node_modules/another-npm-registry-client/lib/authify.js @@ -0,0 +1,26 @@ +module.exports = authify + +function authify (authed, parsed, headers, credentials) { + if (credentials && credentials.otp) { + this.log.verbose('request', 'passing along npm otp') + headers['npm-otp'] = credentials.otp + } + if (credentials && credentials.token) { + this.log.verbose('request', 'using bearer token for auth') + headers.authorization = 'Bearer ' + credentials.token + + return null + } + + if (authed) { + if (credentials && credentials.username && credentials.password) { + var username = encodeURIComponent(credentials.username) + var password = encodeURIComponent(credentials.password) + parsed.auth = username + ':' + password + } else { + return new Error( + 'This request requires auth credentials. Run `npm login` and repeat the request.' + ) + } + } +} diff --git a/node_modules/another-npm-registry-client/lib/deprecate.js b/node_modules/another-npm-registry-client/lib/deprecate.js new file mode 100644 index 0000000..5ff3a88 --- /dev/null +++ b/node_modules/another-npm-registry-client/lib/deprecate.js @@ -0,0 +1,42 @@ +module.exports = deprecate + +var assert = require('assert') +var semver = require('semver') + +function deprecate (uri, params, cb) { + assert(typeof uri === 'string', 'must pass registry URI to deprecate') + assert(params && typeof params === 'object', 'must pass params to deprecate') + assert(typeof cb === 'function', 'must pass callback to deprecate') + + assert(typeof params.version === 'string', 'must pass version to deprecate') + assert(typeof params.message === 'string', 'must pass message to deprecate') + assert( + params.auth && typeof params.auth === 'object', + 'must pass auth to deprecate' + ) + + var version = params.version + var message = params.message + var auth = params.auth + + if (semver.validRange(version) === null) { + return cb(new Error('invalid version range: ' + version)) + } + + this.get(uri + '?write=true', { auth: auth }, function (er, data) { + if (er) return cb(er) + // filter all the versions that match + Object.keys(data.versions).filter(function (v) { + return semver.satisfies(v, version) + }).forEach(function (v) { + data.versions[v].deprecated = message + }) + // now update the doc on the registry + var options = { + method: 'PUT', + body: data, + auth: auth + } + this.request(uri, options, cb) + }.bind(this)) +} diff --git a/node_modules/another-npm-registry-client/lib/dist-tags/add.js b/node_modules/another-npm-registry-client/lib/dist-tags/add.js new file mode 100644 index 0000000..924199a --- /dev/null +++ b/node_modules/another-npm-registry-client/lib/dist-tags/add.js @@ -0,0 +1,43 @@ +module.exports = add + +var assert = require('assert') +var url = require('url') + +var npa = require('npm-package-arg') + +function add (uri, params, cb) { + assert(typeof uri === 'string', 'must pass registry URI to distTags.add') + assert( + params && typeof params === 'object', + 'must pass params to distTags.add' + ) + assert(typeof cb === 'function', 'muss pass callback to distTags.add') + + assert( + typeof params.package === 'string', + 'must pass package name to distTags.add' + ) + assert( + typeof params.distTag === 'string', + 'must pass package distTag name to distTags.add' + ) + assert( + typeof params.version === 'string', + 'must pass version to be mapped to distTag to distTags.add' + ) + assert( + params.auth && typeof params.auth === 'object', + 'must pass auth to distTags.add' + ) + + var p = npa(params.package) + var pkg = p.scope ? params.package.replace('/', '%2f') : params.package + var rest = '-/package/' + pkg + '/dist-tags/' + params.distTag + + var options = { + method: 'PUT', + body: JSON.stringify(params.version), + auth: params.auth + } + this.request(url.resolve(uri, rest), options, cb) +} diff --git a/node_modules/another-npm-registry-client/lib/dist-tags/fetch.js b/node_modules/another-npm-registry-client/lib/dist-tags/fetch.js new file mode 100644 index 0000000..69a126d --- /dev/null +++ b/node_modules/another-npm-registry-client/lib/dist-tags/fetch.js @@ -0,0 +1,37 @@ +module.exports = fetch + +var assert = require('assert') +var url = require('url') + +var npa = require('npm-package-arg') + +function fetch (uri, params, cb) { + assert(typeof uri === 'string', 'must pass registry URI to distTags.fetch') + assert( + params && typeof params === 'object', + 'must pass params to distTags.fetch' + ) + assert(typeof cb === 'function', 'must pass callback to distTags.fetch') + + assert( + typeof params.package === 'string', + 'must pass package name to distTags.fetch' + ) + assert( + params.auth && typeof params.auth === 'object', + 'must pass auth to distTags.fetch' + ) + + var p = npa(params.package) + var pkg = p.scope ? params.package.replace('/', '%2f') : params.package + var rest = '-/package/' + pkg + '/dist-tags' + + var options = { + method: 'GET', + auth: params.auth + } + this.request(url.resolve(uri, rest), options, function (er, data) { + if (data && typeof data === 'object') delete data._etag + cb(er, data) + }) +} diff --git a/node_modules/another-npm-registry-client/lib/dist-tags/rm.js b/node_modules/another-npm-registry-client/lib/dist-tags/rm.js new file mode 100644 index 0000000..d2bdda0 --- /dev/null +++ b/node_modules/another-npm-registry-client/lib/dist-tags/rm.js @@ -0,0 +1,38 @@ +module.exports = rm + +var assert = require('assert') +var url = require('url') + +var npa = require('npm-package-arg') + +function rm (uri, params, cb) { + assert(typeof uri === 'string', 'must pass registry URI to distTags.rm') + assert( + params && typeof params === 'object', + 'must pass params to distTags.rm' + ) + assert(typeof cb === 'function', 'muss pass callback to distTags.rm') + + assert( + typeof params.package === 'string', + 'must pass package name to distTags.rm' + ) + assert( + typeof params.distTag === 'string', + 'must pass package distTag name to distTags.rm' + ) + assert( + params.auth && typeof params.auth === 'object', + 'must pass auth to distTags.rm' + ) + + var p = npa(params.package) + var pkg = p.scope ? params.package.replace('/', '%2f') : params.package + var rest = '-/package/' + pkg + '/dist-tags/' + params.distTag + + var options = { + method: 'DELETE', + auth: params.auth + } + this.request(url.resolve(uri, rest), options, cb) +} diff --git a/node_modules/another-npm-registry-client/lib/dist-tags/set.js b/node_modules/another-npm-registry-client/lib/dist-tags/set.js new file mode 100644 index 0000000..7af351d --- /dev/null +++ b/node_modules/another-npm-registry-client/lib/dist-tags/set.js @@ -0,0 +1,39 @@ +module.exports = set + +var assert = require('assert') +var url = require('url') + +var npa = require('npm-package-arg') + +function set (uri, params, cb) { + assert(typeof uri === 'string', 'must pass registry URI to distTags.set') + assert( + params && typeof params === 'object', + 'must pass params to distTags.set' + ) + assert(typeof cb === 'function', 'muss pass callback to distTags.set') + + assert( + typeof params.package === 'string', + 'must pass package name to distTags.set' + ) + assert( + params.distTags && typeof params.distTags === 'object', + 'must pass distTags map to distTags.set' + ) + assert( + params.auth && typeof params.auth === 'object', + 'must pass auth to distTags.set' + ) + + var p = npa(params.package) + var pkg = p.scope ? params.package.replace('/', '%2f') : params.package + var rest = '-/package/' + pkg + '/dist-tags' + + var options = { + method: 'PUT', + body: JSON.stringify(params.distTags), + auth: params.auth + } + this.request(url.resolve(uri, rest), options, cb) +} diff --git a/node_modules/another-npm-registry-client/lib/dist-tags/update.js b/node_modules/another-npm-registry-client/lib/dist-tags/update.js new file mode 100644 index 0000000..07ec3e5 --- /dev/null +++ b/node_modules/another-npm-registry-client/lib/dist-tags/update.js @@ -0,0 +1,39 @@ +module.exports = update + +var assert = require('assert') +var url = require('url') + +var npa = require('npm-package-arg') + +function update (uri, params, cb) { + assert(typeof uri === 'string', 'must pass registry URI to distTags.update') + assert( + params && typeof params === 'object', + 'must pass params to distTags.update' + ) + assert(typeof cb === 'function', 'muss pass callback to distTags.update') + + assert( + typeof params.package === 'string', + 'must pass package name to distTags.update' + ) + assert( + params.distTags && typeof params.distTags === 'object', + 'must pass distTags map to distTags.update' + ) + assert( + params.auth && typeof params.auth === 'object', + 'must pass auth to distTags.update' + ) + + var p = npa(params.package) + var pkg = p.scope ? params.package.replace('/', '%2f') : params.package + var rest = '-/package/' + pkg + '/dist-tags' + + var options = { + method: 'POST', + body: JSON.stringify(params.distTags), + auth: params.auth + } + this.request(url.resolve(uri, rest), options, cb) +} diff --git a/node_modules/another-npm-registry-client/lib/fetch.js b/node_modules/another-npm-registry-client/lib/fetch.js new file mode 100644 index 0000000..5ab8587 --- /dev/null +++ b/node_modules/another-npm-registry-client/lib/fetch.js @@ -0,0 +1,85 @@ +var assert = require('assert') +var url = require('url') + +var request = require('request') +var once = require('once') + +module.exports = fetch + +function fetch (uri, params, cb) { + assert(typeof uri === 'string', 'must pass uri to request') + assert(params && typeof params === 'object', 'must pass params to request') + assert(typeof cb === 'function', 'must pass callback to request') + + cb = once(cb) + + var client = this + this.attempt(function (operation) { + makeRequest.call(client, uri, params, function (er, req) { + if (er) return cb(er) + + req.once('error', retryOnError) + + function retryOnError (er) { + if (operation.retry(er)) { + client.log.info('retry', 'will retry, error on last attempt: ' + er) + } else { + cb(er) + } + } + + req.on('response', function (res) { + client.log.http('fetch', '' + res.statusCode, uri) + req.removeListener('error', retryOnError) + + var er + var statusCode = res && res.statusCode + if (statusCode === 200) { + res.resume() + + req.once('error', function (er) { + res.emit('error', er) + }) + + return cb(null, res) + // Only retry on 408, 5xx or no `response`. + } else if (statusCode === 408) { + er = new Error('request timed out') + } else if (statusCode >= 500) { + er = new Error('server error ' + statusCode) + } + + if (er && operation.retry(er)) { + client.log.info('retry', 'will retry, error on last attempt: ' + er) + } else { + cb(new Error('fetch failed with status code ' + statusCode)) + } + }) + }) + }) +} + +function makeRequest (remote, params, cb) { + var parsed = url.parse(remote) + this.log.http('fetch', 'GET', parsed.href) + + var headers = params.headers || {} + var er = this.authify( + params.auth && params.auth.alwaysAuth, + parsed, + headers, + params.auth + ) + if (er) return cb(er) + + var opts = this.initialize( + parsed, + 'GET', + 'application/x-tar, application/vnd.github+json; q=0.1', + headers + ) + // always want to follow redirects for fetch + opts.followRedirect = true + + cb(null, request(opts)) +} diff --git a/node_modules/another-npm-registry-client/lib/get.js b/node_modules/another-npm-registry-client/lib/get.js new file mode 100644 index 0000000..ab0eae1 --- /dev/null +++ b/node_modules/another-npm-registry-client/lib/get.js @@ -0,0 +1,22 @@ +module.exports = get + +var assert = require('assert') +var url = require('url') + +/* + * This is meant to be overridden in specific implementations if you + * want specialized behavior for metadata (i.e. caching). + */ +function get (uri, params, cb) { + assert(typeof uri === 'string', 'must pass registry URI to get') + assert(params && typeof params === 'object', 'must pass params to get') + assert(typeof cb === 'function', 'must pass callback to get') + + var parsed = url.parse(uri) + assert( + parsed.protocol === 'http:' || parsed.protocol === 'https:', + 'must have a URL that starts with http: or https:' + ) + + this.request(uri, params, cb) +} diff --git a/node_modules/another-npm-registry-client/lib/initialize.js b/node_modules/another-npm-registry-client/lib/initialize.js new file mode 100644 index 0000000..a25077e --- /dev/null +++ b/node_modules/another-npm-registry-client/lib/initialize.js @@ -0,0 +1,91 @@ +var crypto = require('crypto') +var HttpAgent = require('http').Agent +var HttpsAgent = require('https').Agent + +var pkg = require('../package.json') + +module.exports = initialize + +function initialize (uri, method, accept, headers) { + if (!this.config.sessionToken) { + this.config.sessionToken = crypto.randomBytes(8).toString('hex') + this.log.verbose('request id', this.config.sessionToken) + } + if (this.config.isFromCI == null) { + this.config.isFromCI = Boolean( + process.env['CI'] === 'true' || process.env['TDDIUM'] || + process.env['JENKINS_URL'] || process.env['bamboo.buildKey'] || + process.env['GO_PIPELINE_NAME']) + } + + var opts = { + url: uri, + method: method, + headers: headers, + localAddress: this.config.proxy.localAddress, + strictSSL: this.config.ssl.strict, + cert: this.config.ssl.certificate, + key: this.config.ssl.key, + ca: this.config.ssl.ca, + agent: getAgent.call(this, uri.protocol) + } + + // allow explicit disabling of proxy in environment via CLI + // + // how false gets here is the CLI's problem (it's gross) + if (this.config.proxy.http === false) { + opts.proxy = null + } else { + // request will not pay attention to the NOPROXY environment variable if a + // config value named proxy is passed in, even if it's set to null. + var proxy + if (uri.protocol === 'https:') { + proxy = this.config.proxy.https + } else { + proxy = this.config.proxy.http + } + if (typeof proxy === 'string') opts.proxy = proxy + } + + headers.version = this.version || pkg.version + headers.accept = accept + + if (this.refer) headers.referer = this.refer + + headers['npm-session'] = this.config.sessionToken + headers['npm-in-ci'] = String(this.config.isFromCI) + headers['user-agent'] = this.config.userAgent + if (this.config.scope) { + headers['npm-scope'] = this.config.scope + } + + return opts +} + +function getAgent (protocol) { + if (protocol === 'https:') { + if (!this.httpsAgent) { + this.httpsAgent = new HttpsAgent({ + keepAlive: true, + maxSockets: this.config.maxSockets, + localAddress: this.config.proxy.localAddress, + rejectUnauthorized: this.config.ssl.strict, + ca: this.config.ssl.ca, + cert: this.config.ssl.certificate, + key: this.config.ssl.key + }) + } + + return this.httpsAgent + } else { + if (!this.httpAgent) { + this.httpAgent = new HttpAgent({ + keepAlive: true, + maxSockets: this.config.maxSockets, + localAddress: this.config.proxy.localAddress + }) + } + + return this.httpAgent + } +} diff --git a/node_modules/another-npm-registry-client/lib/logout.js b/node_modules/another-npm-registry-client/lib/logout.js new file mode 100644 index 0000000..e66e9b7 --- /dev/null +++ b/node_modules/another-npm-registry-client/lib/logout.js @@ -0,0 +1,23 @@ +module.exports = logout + +var assert = require('assert') +var url = require('url') + +function logout (uri, params, cb) { + assert(typeof uri === 'string', 'must pass registry URI to logout') + assert(params && typeof params === 'object', 'must pass params to logout') + assert(typeof cb === 'function', 'must pass callback to star') + + var auth = params.auth + assert(auth && typeof auth === 'object', 'must pass auth to logout') + assert(typeof auth.token === 'string', 'can only log out for token auth') + + uri = url.resolve(uri, '-/user/token/' + auth.token) + var options = { + method: 'DELETE', + auth: auth + } + + this.log.verbose('logout', 'invalidating session token for user') + this.request(uri, options, cb) +} diff --git a/node_modules/another-npm-registry-client/lib/org.js b/node_modules/another-npm-registry-client/lib/org.js new file mode 100644 index 0000000..3072b38 --- /dev/null +++ b/node_modules/another-npm-registry-client/lib/org.js @@ -0,0 +1,62 @@ +'use strict' + +module.exports = org + +var assert = require('assert') +var url = require('url') + +var subcommands = {} + +function org (subcommand, uri, params, cb) { + orgAssertions(subcommand, uri, params, cb) + return subcommands[subcommand].call(this, uri, params, cb) +} + +subcommands.set = subcommands.add = function (uri, params, cb) { + return this.request(apiUri(uri, 'org', params.org, 'user'), { + method: 'PUT', + auth: params.auth, + body: JSON.stringify({ + user: params.user, + role: params.role + }) + }, cb) +} + +subcommands.rm = function (uri, params, cb) { + return this.request(apiUri(uri, 'org', params.org, 'user'), { + method: 'DELETE', + auth: params.auth, + body: JSON.stringify({ + user: params.user + }) + }, cb) +} + +subcommands.ls = function (uri, params, cb) { + return this.request(apiUri(uri, 'org', params.org, 'user'), { + method: 'GET', + auth: params.auth + }, cb) +} + +function apiUri (registryUri) { + var path = Array.prototype.slice.call(arguments, 1) + .map(encodeURIComponent) + .join('/') + return url.resolve(registryUri, '-/' + path) +} + +function orgAssertions (subcommand, uri, params, cb) { + assert(subcommand, 'subcommand is required') + assert(subcommands.hasOwnProperty(subcommand), + 'org subcommand must be one of ' + Object.keys(subcommands)) + assert(typeof uri === 'string', 'registry URI is required') + assert(typeof params === 'object', 'params are required') + assert(typeof params.auth === 'object', 'auth is required') + assert(!cb || typeof cb === 'function', 'callback must be a function') + assert(typeof params.org === 'string', 'org name is required') + if (subcommand === 'rm' || subcommand === 'add' || subcommand === 'set') { + assert(typeof params.user === 'string', 'user is required') + } +} diff --git a/node_modules/another-npm-registry-client/lib/ping.js b/node_modules/another-npm-registry-client/lib/ping.js new file mode 100644 index 0000000..5ab98c5 --- /dev/null +++ b/node_modules/another-npm-registry-client/lib/ping.js @@ -0,0 +1,21 @@ +module.exports = ping + +var url = require('url') +var assert = require('assert') + +function ping (uri, params, cb) { + assert(typeof uri === 'string', 'must pass registry URI to ping') + assert(params && typeof params === 'object', 'must pass params to ping') + assert(typeof cb === 'function', 'must pass callback to ping') + + var auth = params.auth + assert(auth && typeof auth === 'object', 'must pass auth to ping') + + this.request(url.resolve(uri, '-/ping?write=true'), { auth: auth }, function (er, fullData, data, response) { + if (er || fullData) { + cb(er, fullData, data, response) + } else { + cb(new Error('No data received')) + } + }) +} diff --git a/node_modules/another-npm-registry-client/lib/publish.js b/node_modules/another-npm-registry-client/lib/publish.js new file mode 100644 index 0000000..fd3adce --- /dev/null +++ b/node_modules/another-npm-registry-client/lib/publish.js @@ -0,0 +1,194 @@ +module.exports = publish + +var url = require('url') +var semver = require('semver') +var Stream = require('stream').Stream +var assert = require('assert') +var fixer = require('normalize-package-data').fixer +var concat = require('concat-stream') +var ssri = require('ssri') + +function escaped (name) { + return name.replace('/', '%2f') +} + +function publish (uri, params, cb) { + assert(typeof uri === 'string', 'must pass registry URI to publish') + assert(params && typeof params === 'object', 'must pass params to publish') + assert(typeof cb === 'function', 'must pass callback to publish') + + var access = params.access + assert( + (!access) || ['public', 'restricted'].indexOf(access) !== -1, + "if present, access level must be either 'public' or 'restricted'" + ) + + var auth = params.auth + assert(auth && typeof auth === 'object', 'must pass auth to publish') + if (!(auth.token || + (auth.password && auth.username && auth.email))) { + var er = new Error('auth required for publishing') + er.code = 'ENEEDAUTH' + return cb(er) + } + + var metadata = params.metadata + assert( + metadata && typeof metadata === 'object', + 'must pass package metadata to publish' + ) + try { + fixer.fixNameField(metadata, {strict: true, allowLegacyCase: true}) + } catch (er) { + return cb(er) + } + var version = semver.clean(metadata.version) + if (!version) return cb(new Error('invalid semver: ' + metadata.version)) + metadata.version = version + + var body = params.body + assert(body, 'must pass package body to publish') + assert(body instanceof Stream, 'package body passed to publish must be a stream') + var client = this + var sink = concat(function (tarbuffer) { + putFirst.call(client, uri, metadata, tarbuffer, access, auth, cb) + }) + sink.on('error', cb) + body.pipe(sink) +} + +function putFirst (registry, data, tarbuffer, access, auth, cb) { + // optimistically try to PUT all in one single atomic thing. + // If 409, then GET and merge, try again. + // If other error, then fail. + + var root = { + _id: data.name, + name: data.name, + description: data.description, + 'dist-tags': {}, + versions: {}, + readme: data.readme || '' + } + + if (access) root.access = access + + if (!auth.token) { + root.maintainers = [{ name: auth.username, email: auth.email }] + data.maintainers = JSON.parse(JSON.stringify(root.maintainers)) + } + + root.versions[ data.version ] = data + var tag = data.tag || this.config.defaultTag + root['dist-tags'][tag] = data.version + + var tbName = data.name + '-' + data.version + '.tgz' + var tbURI = data.name + '/-/' + tbName + var integrity = ssri.fromData(tarbuffer, { + algorithms: ['sha1', 'sha512'] + }) + + data._id = data.name + '@' + data.version + data.dist = data.dist || {} + // Don't bother having sha1 in the actual integrity field + data.dist.integrity = integrity['sha512'][0].toString() + // Legacy shasum support + data.dist.shasum = integrity['sha1'][0].hexDigest() + data.dist.tarball = url.resolve(registry, tbURI) + .replace(/^https:\/\//, 'http://') + + root._attachments = {} + root._attachments[ tbName ] = { + 'content_type': 'application/octet-stream', + 'data': tarbuffer.toString('base64'), + 'length': tarbuffer.length + } + + var fixed = url.resolve(registry, escaped(data.name)) + var client = this + var options = { + method: 'PUT', + body: root, + auth: auth + } + this.request(fixed, options, function (er, parsed, json, res) { + var r409 = 'must supply latest _rev to update existing package' + var r409b = 'Document update conflict.' + var conflict = res && res.statusCode === 409 + if (parsed && (parsed.reason === r409 || parsed.reason === r409b)) { + conflict = true + } + + // a 409 is typical here. GET the data and merge in. + if (er && !conflict) { + client.log.error('publish', 'Failed PUT ' + (res && res.statusCode)) + return cb(er) + } + + if (!er && !conflict) return cb(er, parsed, json, res) + + // let's see what versions are already published. + client.request(fixed + '?write=true', { auth: auth }, function (er, current) { + if (er) return cb(er) + + putNext.call(client, registry, data.version, root, current, auth, cb) + }) + }) +} + +function putNext (registry, newVersion, root, current, auth, cb) { + // already have the tardata on the root object + // just merge in existing stuff + var curVers = Object.keys(current.versions || {}).map(function (v) { + return semver.clean(v, true) + }).concat(Object.keys(current.time || {}).map(function (v) { + if (semver.valid(v, true)) return semver.clean(v, true) + }).filter(function (v) { + return v + })) + + if (curVers.indexOf(newVersion) !== -1) { + return cb(conflictError(root.name, newVersion)) + } + + current.versions[newVersion] = root.versions[newVersion] + current._attachments = current._attachments || {} + for (var i in root) { + switch (i) { + // objects that copy over the new stuffs + case 'dist-tags': + case 'versions': + case '_attachments': + for (var j in root[i]) { + current[i][j] = root[i][j] + } + break + + // ignore these + case 'maintainers': + break + + // copy + default: + current[i] = root[i] + } + } + var maint = JSON.parse(JSON.stringify(root.maintainers)) + root.versions[newVersion].maintainers = maint + + var uri = url.resolve(registry, escaped(root.name)) + var options = { + method: 'PUT', + body: current, + auth: auth + } + this.request(uri, options, cb) +} + +function conflictError (pkgid, version) { + var e = new Error('cannot modify pre-existing version') + e.code = 'EPUBLISHCONFLICT' + e.pkgid = pkgid + e.version = version + return e +} diff --git a/node_modules/another-npm-registry-client/lib/request.js b/node_modules/another-npm-registry-client/lib/request.js new file mode 100644 index 0000000..5987bfa --- /dev/null +++ b/node_modules/another-npm-registry-client/lib/request.js @@ -0,0 +1,336 @@ +module.exports = regRequest + +// npm: means +// 1. https +// 2. send authorization +// 3. content-type is 'application/json' -- metadata +// +var assert = require('assert') +var url = require('url') +var zlib = require('zlib') +var Stream = require('stream').Stream +var STATUS_CODES = require('http').STATUS_CODES + +var request = require('request') +var once = require('once') + +function regRequest (uri, params, cb_) { + assert(typeof uri === 'string', 'must pass uri to request') + assert(params && typeof params === 'object', 'must pass params to request') + assert(typeof cb_ === 'function', 'must pass callback to request') + + params.method = params.method || 'GET' + this.log.verbose('request', 'uri', uri) + + // Since there are multiple places where an error could occur, + // don't let the cb be called more than once. + var cb = once(cb_) + + if (uri.match(/^\/?favicon.ico/)) { + return cb(new Error("favicon.ico isn't a package, it's a picture.")) + } + + var adduserChange = /\/?-\/user\/org\.couchdb\.user:([^/]+)\/-rev/ + var isUserChange = uri.match(adduserChange) + var adduserNew = /\/?-\/user\/org\.couchdb\.user:([^/?]+)$/ + var isNewUser = uri.match(adduserNew) + var alwaysAuth = params.auth && params.auth.alwaysAuth + var isDelete = params.method === 'DELETE' + var isWrite = params.body || isDelete + + if (isUserChange && !isWrite) { + return cb(new Error('trying to change user document without writing(?!)')) + } + + if (params.authed == null) { + // new users can *not* use auth, because they don't *have* auth yet + if (isUserChange) { + this.log.verbose('request', 'updating existing user; sending authorization') + params.authed = true + } else if (isNewUser) { + this.log.verbose('request', "new user, so can't send auth") + params.authed = false + } else if (alwaysAuth) { + this.log.verbose('request', 'always-auth set; sending authorization') + params.authed = true + } else if (isWrite) { + this.log.verbose('request', 'sending authorization for write operation') + params.authed = true + } else { + // most of the time we don't want to auth + this.log.verbose('request', 'no auth needed') + params.authed = false + } + } + + var self = this + this.attempt(function (operation) { + makeRequest.call(self, uri, params, function (er, parsed, raw, response) { + if (response) { + self.log.verbose('headers', response.headers) + if (response.headers['npm-notice']) { + self.log.warn('notice', response.headers['npm-notice']) + } + } + + if (!er || (er.message && er.message.match(/^SSL Error/))) { + if (er) er.code = 'ESSL' + return cb(er, parsed, raw, response) + } + + // Only retry on 408, 5xx or no `response`. + var statusCode = response && response.statusCode + + var timeout = statusCode === 408 + var serverError = statusCode >= 500 + var statusRetry = !statusCode || timeout || serverError + if (er && statusRetry && operation.retry(er)) { + self.log.info('retry', 'will retry, error on last attempt: ' + er) + return undefined + } + cb.apply(null, arguments) + }) + }) +} + +function makeRequest (uri, params, cb_) { + var socket + var cb = once(function (er, parsed, raw, response) { + if (socket) { + // The socket might be returned to a pool for re-use, so don’t keep + // the 'error' listener from here attached. + socket.removeListener('error', cb) + } + + return cb_(er, parsed, raw, response) + }) + + var parsed = url.parse(uri) + var headers = {} + + // metadata should be compressed + headers['accept-encoding'] = 'gzip' + + // metadata should be minified, if the registry supports it + + var er = this.authify(params.authed, parsed, headers, params.auth) + if (er) return cb_(er) + + var useCorgi = params.fullMetadata == null ? false : !params.fullMetadata + + var opts = this.initialize( + parsed, + params.method, + useCorgi ? 'application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*' : 'application/json', + headers + ) + + opts.followRedirect = (typeof params.follow === 'boolean' ? params.follow : true) + opts.encoding = null // tell request let body be Buffer instance + + if (params.etag) { + this.log.verbose('etag', params.etag) + headers[params.method === 'GET' ? 'if-none-match' : 'if-match'] = params.etag + } + + if (params.lastModified && params.method === 'GET') { + this.log.verbose('lastModified', params.lastModified) + headers['if-modified-since'] = params.lastModified + } + + // figure out wth body is + if (params.body) { + if (Buffer.isBuffer(params.body)) { + opts.body = params.body + headers['content-type'] = 'application/json' + headers['content-length'] = params.body.length + } else if (typeof params.body === 'string') { + opts.body = params.body + headers['content-type'] = 'application/json' + headers['content-length'] = Buffer.byteLength(params.body) + } else if (params.body instanceof Stream) { + headers['content-type'] = 'application/octet-stream' + if (params.body.size) headers['content-length'] = params.body.size + } else { + delete params.body._etag + delete params.body._lastModified + opts.json = params.body + } + } + + this.log.http('request', params.method, parsed.href || '/') + + var done = requestDone.call(this, params.method, uri, cb) + var req = request(opts, params.streaming ? undefined : decodeResponseBody(done)) + + req.on('error', cb) + + // This should not be necessary, as the HTTP implementation in Node + // passes errors occurring on the socket to the request itself. Being overly + // cautious comes at a low cost, though. + req.on('socket', function (s) { + socket = s + socket.on('error', cb) + }) + + if (params.streaming) { + req.on('response', function (response) { + if (response.statusCode >= 400) { + var parts = [] + response.on('data', function (data) { + parts.push(data) + }) + response.on('end', function () { + decodeResponseBody(done)(null, response, Buffer.concat(parts)) + }) + } else { + response.on('end', function () { + // don't ever re-use connections that had server errors. + // those sockets connect to the Bad Place! + if (response.socket && response.statusCode > 500) { + response.socket.destroy() + } + }) + + return cb(null, response) + } + }) + } + + if (params.body && (params.body instanceof Stream)) { + params.body.pipe(req) + } +} + +function decodeResponseBody (cb) { + return function (er, response, data) { + if (er) return cb(er, response, data) + + // don't ever re-use connections that had server errors. + // those sockets connect to the Bad Place! + if (response.socket && response.statusCode > 500) { + response.socket.destroy() + } + + if (response.headers['content-encoding'] !== 'gzip') { + return cb(er, response, data) + } + + zlib.gunzip(data, function (er, buf) { + if (er) return cb(er, response, data) + + cb(null, response, buf) + }) + } +} + +// cb(er, parsed, raw, response) +function requestDone (method, where, cb) { + return function (er, response, data) { + if (er) return cb(er) + + var urlObj = url.parse(where) + if (urlObj.auth) urlObj.auth = '***' + this.log.http(response.statusCode, url.format(urlObj)) + + if (Buffer.isBuffer(data)) { + data = data.toString() + } + + var parsed + if (data && typeof data === 'string' && response.statusCode !== 304) { + try { + parsed = JSON.parse(data) + } catch (ex) { + ex.message += '\n' + data + this.log.verbose('bad json', data) + this.log.error('registry', 'error parsing json') + return cb(ex, null, data, response) + } + } else if (data) { + parsed = data + data = JSON.stringify(parsed) + } + + // expect data with any error codes + if (!data && response.statusCode >= 400) { + var code = response.statusCode + return cb( + makeError(code + ' ' + STATUS_CODES[code], null, code), + null, + data, + response + ) + } + + er = null + if (parsed && response.headers.etag) { + parsed._etag = response.headers.etag + } + + if (parsed && response.headers['last-modified']) { + parsed._lastModified = response.headers['last-modified'] + } + + // for the search endpoint, the 'error' property can be an object + if ((parsed && parsed.error && typeof parsed.error !== 'object') || + response.statusCode >= 400) { + var w = url.parse(where).pathname.substr(1) + var name + if (!w.match(/^-/)) { + w = w.split('/') + var index = w.indexOf('_rewrite') + if (index === -1) { + index = w.length - 1 + } else { + index++ + } + name = decodeURIComponent(w[index]) + } + + if (!parsed.error) { + if (response.statusCode === 401 && response.headers['www-authenticate']) { + const auth = response.headers['www-authenticate'].split(/,\s*/).map(s => s.toLowerCase()) + if (auth.indexOf('ipaddress') !== -1) { + er = makeError('Login is not allowed from your IP address', name, response.statusCode, 'EAUTHIP') + } else if (auth.indexOf('otp') !== -1) { + er = makeError('OTP required for this operation', name, response.statusCode, 'EOTP') + } else { + er = makeError('Unable to authenticate, need: ' + response.headers['www-authenticate'], name, response.statusCode, 'EAUTHUNKNOWN') + } + } else { + const msg = parsed.message ? ': ' + parsed.message : '' + er = makeError( + 'Registry returned ' + response.statusCode + + ' for ' + method + + ' on ' + where + + msg, + name, + response.statusCode + ) + } + } else if (name && parsed.error === 'not_found') { + er = makeError('404 Not Found: ' + name, name, response.statusCode) + } else if (name && parsed.error === 'User not found') { + er = makeError('User not found. Check `npm whoami` and make sure you have a NPM account.', name, response.statusCode) + } else { + er = makeError( + parsed.error + ' ' + (parsed.reason || '') + ': ' + (name || w), + name, + response.statusCode + ) + } + } + return cb(er, parsed, data, response) + }.bind(this) +} + +function makeError (message, name, statusCode, code) { + var er = new Error(message) + if (name) er.pkgid = name + if (statusCode) { + er.statusCode = statusCode + er.code = code || 'E' + statusCode + } + return er +} diff --git a/node_modules/another-npm-registry-client/lib/send-anonymous-CLI-metrics.js b/node_modules/another-npm-registry-client/lib/send-anonymous-CLI-metrics.js new file mode 100644 index 0000000..b5b7a1d --- /dev/null +++ b/node_modules/another-npm-registry-client/lib/send-anonymous-CLI-metrics.js @@ -0,0 +1,19 @@ +module.exports = send + +var assert = require('assert') +var url = require('url') + +function send (registryUrl, params, cb) { + assert(typeof registryUrl === 'string', 'must pass registry URI') + assert(params && typeof params === 'object', 'must pass params') + assert(typeof cb === 'function', 'must pass callback') + + var uri = url.resolve(registryUrl, '-/npm/anon-metrics/v1/' + + encodeURIComponent(params.metricId)) + + this.request(uri, { + method: 'PUT', + body: JSON.stringify(params.metrics), + authed: false + }, cb) +} diff --git a/node_modules/another-npm-registry-client/lib/star.js b/node_modules/another-npm-registry-client/lib/star.js new file mode 100644 index 0000000..5c9224e --- /dev/null +++ b/node_modules/another-npm-registry-client/lib/star.js @@ -0,0 +1,51 @@ +module.exports = star + +var assert = require('assert') + +function star (uri, params, cb) { + assert(typeof uri === 'string', 'must pass registry URI to star') + assert(params && typeof params === 'object', 'must pass params to star') + assert(typeof cb === 'function', 'must pass callback to star') + + var starred = !!params.starred + + var auth = params.auth + assert(auth && typeof auth === 'object', 'must pass auth to star') + if (!(auth.token || (auth.password && auth.username && auth.email))) { + var er = new Error('Must be logged in to star/unstar packages') + er.code = 'ENEEDAUTH' + return cb(er) + } + + var client = this + this.request(uri + '?write=true', { auth: auth }, function (er, fullData) { + if (er) return cb(er) + + client.whoami(uri, params, function (er, username) { + if (er) return cb(er) + + var data = { + _id: fullData._id, + _rev: fullData._rev, + users: fullData.users || {} + } + + if (starred) { + client.log.info('starring', data._id) + data.users[username] = true + client.log.verbose('starring', data) + } else { + delete data.users[username] + client.log.info('unstarring', data._id) + client.log.verbose('unstarring', data) + } + + var options = { + method: 'PUT', + body: data, + auth: auth + } + return client.request(uri, options, cb) + }) + }) +} diff --git a/node_modules/another-npm-registry-client/lib/stars.js b/node_modules/another-npm-registry-client/lib/stars.js new file mode 100644 index 0000000..ba47f2c --- /dev/null +++ b/node_modules/another-npm-registry-client/lib/stars.js @@ -0,0 +1,18 @@ +module.exports = stars + +var assert = require('assert') +var url = require('url') + +function stars (uri, params, cb) { + assert(typeof uri === 'string', 'must pass registry URI to stars') + assert(params && typeof params === 'object', 'must pass params to stars') + assert(typeof cb === 'function', 'must pass callback to stars') + + var auth = params.auth + var name = params.username || (auth && auth.username) + if (!name) return cb(new Error('must pass either username or auth to stars')) + var encoded = encodeURIComponent(name) + var path = '-/_view/starredByUser?key="' + encoded + '"' + + this.request(url.resolve(uri, path), { auth: auth }, cb) +} diff --git a/node_modules/another-npm-registry-client/lib/tag.js b/node_modules/another-npm-registry-client/lib/tag.js new file mode 100644 index 0000000..3b6dad1 --- /dev/null +++ b/node_modules/another-npm-registry-client/lib/tag.js @@ -0,0 +1,23 @@ +module.exports = tag + +var assert = require('assert') + +function tag (uri, params, cb) { + assert(typeof uri === 'string', 'must pass registry URI to tag') + assert(params && typeof params === 'object', 'must pass params to tag') + assert(typeof cb === 'function', 'must pass callback to tag') + + assert(typeof params.version === 'string', 'must pass version to tag') + assert(typeof params.tag === 'string', 'must pass tag name to tag') + assert( + params.auth && typeof params.auth === 'object', + 'must pass auth to tag' + ) + + var options = { + method: 'PUT', + body: JSON.stringify(params.version), + auth: params.auth + } + this.request(uri + '/' + params.tag, options, cb) +} diff --git a/node_modules/another-npm-registry-client/lib/team.js b/node_modules/another-npm-registry-client/lib/team.js new file mode 100644 index 0000000..327fa9c --- /dev/null +++ b/node_modules/another-npm-registry-client/lib/team.js @@ -0,0 +1,105 @@ +module.exports = team + +var assert = require('assert') +var url = require('url') + +var subcommands = {} + +function team (sub, uri, params, cb) { + teamAssertions(sub, uri, params, cb) + return subcommands[sub].call(this, uri, params, cb) +} + +subcommands.create = function (uri, params, cb) { + return this.request(apiUri(uri, 'org', params.scope, 'team'), { + method: 'PUT', + auth: params.auth, + body: JSON.stringify({ + name: params.team + }) + }, cb) +} + +subcommands.destroy = function (uri, params, cb) { + return this.request(apiUri(uri, 'team', params.scope, params.team), { + method: 'DELETE', + auth: params.auth + }, cb) +} + +subcommands.add = function (uri, params, cb) { + return this.request(apiUri(uri, 'team', params.scope, params.team, 'user'), { + method: 'PUT', + auth: params.auth, + body: JSON.stringify({ + user: params.user + }) + }, cb) +} + +subcommands.rm = function (uri, params, cb) { + return this.request(apiUri(uri, 'team', params.scope, params.team, 'user'), { + method: 'DELETE', + auth: params.auth, + body: JSON.stringify({ + user: params.user + }) + }, cb) +} + +subcommands.ls = function (uri, params, cb) { + var uriParams = '?format=cli' + if (params.team) { + var reqUri = apiUri( + uri, 'team', params.scope, params.team, 'user') + uriParams + return this.request(reqUri, { + method: 'GET', + auth: params.auth + }, cb) + } else { + return this.request(apiUri(uri, 'org', params.scope, 'team') + uriParams, { + method: 'GET', + auth: params.auth + }, cb) + } +} + +// TODO - we punted this to v2 +// subcommands.edit = function (uri, params, cb) { +// return this.request(apiUri(uri, 'team', params.scope, params.team, 'user'), { +// method: 'POST', +// auth: params.auth, +// body: JSON.stringify({ +// users: params.users +// }) +// }, cb) +// } + +function apiUri (registryUri) { + var path = Array.prototype.slice.call(arguments, 1) + .map(encodeURIComponent) + .join('/') + return url.resolve(registryUri, '-/' + path) +} + +function teamAssertions (subcommand, uri, params, cb) { + assert(subcommand, 'subcommand is required') + assert(subcommands.hasOwnProperty(subcommand), + 'team subcommand must be one of ' + Object.keys(subcommands)) + assert(typeof uri === 'string', 'registry URI is required') + assert(typeof params === 'object', 'params are required') + assert(typeof params.auth === 'object', 'auth is required') + assert(typeof params.scope === 'string', 'scope is required') + assert(!cb || typeof cb === 'function', 'callback must be a function') + if (subcommand !== 'ls') { + assert(typeof params.team === 'string', 'team name is required') + } + if (subcommand === 'rm' || subcommand === 'add') { + assert(typeof params.user === 'string', 'user is required') + } + if (subcommand === 'edit') { + assert(typeof params.users === 'object' && + params.users.length != null, + 'users is required') + } +} diff --git a/node_modules/another-npm-registry-client/lib/unpublish.js b/node_modules/another-npm-registry-client/lib/unpublish.js new file mode 100644 index 0000000..05c5a4b --- /dev/null +++ b/node_modules/another-npm-registry-client/lib/unpublish.js @@ -0,0 +1,120 @@ +module.exports = unpublish + +// fetch the data +// modify to remove the version in question +// If no versions remaining, then DELETE +// else, PUT the modified data +// delete the tarball + +var semver = require('semver') +var url = require('url') +var chain = require('slide').chain +var assert = require('assert') + +function unpublish (uri, params, cb) { + assert(typeof uri === 'string', 'must pass registry URI to unpublish') + assert(params && typeof params === 'object', 'must pass params to unpublish') + assert(typeof cb === 'function', 'must pass callback to unpublish') + + var ver = params.version + var auth = params.auth + assert(auth && typeof auth === 'object', 'must pass auth to unpublish') + + var options = { + timeout: -1, + follow: false, + auth: auth + } + this.get(uri + '?write=true', options, function (er, data) { + if (er) { + this.log.info('unpublish', uri + ' not published') + return cb() + } + // remove all if no version specified + if (!ver) { + this.log.info('unpublish', 'No version specified, removing all') + return this.request(uri + '/-rev/' + data._rev, { method: 'DELETE', auth: auth }, cb) + } + + var versions = data.versions || {} + var versionPublic = versions.hasOwnProperty(ver) + + var dist + if (!versionPublic) { + this.log.info('unpublish', uri + '@' + ver + ' not published') + } else { + dist = versions[ver].dist + this.log.verbose('unpublish', 'removing attachments', dist) + } + + delete versions[ver] + // if it was the only version, then delete the whole package. + if (!Object.keys(versions).length) { + this.log.info('unpublish', 'No versions remain, removing entire package') + return this.request(uri + '/-rev/' + data._rev, { method: 'DELETE', auth: auth }, cb) + } + + if (!versionPublic) return cb() + + var latestVer = data['dist-tags'].latest + for (var tag in data['dist-tags']) { + if (data['dist-tags'][tag] === ver) delete data['dist-tags'][tag] + } + + if (latestVer === ver) { + data['dist-tags'].latest = + Object.getOwnPropertyNames(versions).sort(semver.compareLoose).pop() + } + + var rev = data._rev + delete data._revisions + delete data._attachments + var cb_ = detacher.call(this, uri, data, dist, auth, cb) + + this.request(uri + '/-rev/' + rev, { method: 'PUT', body: data, auth: auth }, function (er) { + if (er) { + this.log.error('unpublish', 'Failed to update data') + } + cb_(er) + }.bind(this)) + }.bind(this)) +} + +function detacher (uri, data, dist, credentials, cb) { + return function (er) { + if (er) return cb(er) + this.get(escape(uri, data.name), { auth: credentials }, function (er, data) { + if (er) return cb(er) + + var tb = url.parse(dist.tarball) + + detach.call(this, uri, data, tb.pathname, data._rev, credentials, function (er) { + if (er || !dist.bin) return cb(er) + chain(Object.keys(dist.bin).map(function (bt) { + return function (cb) { + var d = dist.bin[bt] + detach.call(this, uri, data, url.parse(d.tarball).pathname, null, credentials, cb) + }.bind(this) + }, this), cb) + }.bind(this)) + }.bind(this)) + }.bind(this) +} + +function detach (uri, data, path, rev, credentials, cb) { + if (rev) { + path += '/-rev/' + rev + this.log.info('detach', path) + return this.request(url.resolve(uri, path), { method: 'DELETE', auth: credentials }, cb) + } + this.get(escape(uri, data.name), { auth: credentials }, function (er, data) { + rev = data._rev + if (!rev) return cb(new Error('No _rev found in ' + data._id)) + detach.call(this, data, path, rev, cb) + }.bind(this)) +} + +function escape (base, name) { + var escaped = name.replace(/\//, '%2f') + return url.resolve(base, escaped) +} diff --git a/node_modules/another-npm-registry-client/lib/whoami.js b/node_modules/another-npm-registry-client/lib/whoami.js new file mode 100644 index 0000000..68db49e --- /dev/null +++ b/node_modules/another-npm-registry-client/lib/whoami.js @@ -0,0 +1,21 @@ +module.exports = whoami + +var url = require('url') +var assert = require('assert') + +function whoami (uri, params, cb) { + assert(typeof uri === 'string', 'must pass registry URI to whoami') + assert(params && typeof params === 'object', 'must pass params to whoami') + assert(typeof cb === 'function', 'must pass callback to whoami') + + var auth = params.auth + assert(auth && typeof auth === 'object', 'must pass auth to whoami') + + if (auth.username) return process.nextTick(cb.bind(this, null, auth.username)) + + this.request(url.resolve(uri, '-/whoami'), { auth: auth }, function (er, userdata) { + if (er) return cb(er) + + cb(null, userdata.username) + }) +} diff --git a/node_modules/another-npm-registry-client/node_modules/ansi-regex/index.js b/node_modules/another-npm-registry-client/node_modules/ansi-regex/index.js new file mode 100644 index 0000000..b9574ed --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/ansi-regex/index.js @@ -0,0 +1,4 @@ +'use strict'; +module.exports = function () { + return /[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-PRZcf-nqry=><]/g; +}; diff --git a/node_modules/another-npm-registry-client/node_modules/ansi-regex/license b/node_modules/another-npm-registry-client/node_modules/ansi-regex/license new file mode 100644 index 0000000..654d0bf --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/ansi-regex/license @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/node_modules/another-npm-registry-client/node_modules/ansi-regex/package.json b/node_modules/another-npm-registry-client/node_modules/ansi-regex/package.json new file mode 100644 index 0000000..eb44fb5 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/ansi-regex/package.json @@ -0,0 +1,64 @@ +{ + "name": "ansi-regex", + "version": "2.1.1", + "description": "Regular expression for matching ANSI escape codes", + "license": "MIT", + "repository": "chalk/ansi-regex", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "maintainers": [ + "Sindre Sorhus (sindresorhus.com)", + "Joshua Appelman (jbnicolai.com)", + "JD Ballard (github.com/qix-)" + ], + "engines": { + "node": ">=0.10.0" + }, + "scripts": { + "test": "xo && ava --verbose", + "view-supported": "node fixtures/view-codes.js" + }, + "files": [ + "index.js" + ], + "keywords": [ + "ansi", + "styles", + "color", + "colour", + "colors", + "terminal", + "console", + "cli", + "string", + "tty", + "escape", + "formatting", + "rgb", + "256", + "shell", + "xterm", + "command-line", + "text", + "regex", + "regexp", + "re", + "match", + "test", + "find", + "pattern" + ], + "devDependencies": { + "ava": "0.17.0", + "xo": "0.16.0" + }, + "xo": { + "rules": { + "guard-for-in": 0, + "no-loop-func": 0 + } + } +} diff --git a/node_modules/another-npm-registry-client/node_modules/ansi-regex/readme.md b/node_modules/another-npm-registry-client/node_modules/ansi-regex/readme.md new file mode 100644 index 0000000..6a928ed --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/ansi-regex/readme.md @@ -0,0 +1,39 @@ +# ansi-regex [![Build Status](https://travis-ci.org/chalk/ansi-regex.svg?branch=master)](https://travis-ci.org/chalk/ansi-regex) + +> Regular expression for matching [ANSI escape codes](http://en.wikipedia.org/wiki/ANSI_escape_code) + + +## Install + +``` +$ npm install --save ansi-regex +``` + + +## Usage + +```js +const ansiRegex = require('ansi-regex'); + +ansiRegex().test('\u001b[4mcake\u001b[0m'); +//=> true + +ansiRegex().test('cake'); +//=> false + +'\u001b[4mcake\u001b[0m'.match(ansiRegex()); +//=> ['\u001b[4m', '\u001b[0m'] +``` + +## FAQ + +### Why do you test for codes not in the ECMA 48 standard? + +Some of the codes we run as a test are codes that we acquired finding various lists of non-standard or manufacturer specific codes. If I recall correctly, we test for both standard and non-standard codes, as most of them follow the same or similar format and can be safely matched in strings without the risk of removing actual string content. There are a few non-standard control codes that do not follow the traditional format (i.e. they end in numbers) thus forcing us to exclude them from the test because we cannot reliably match them. + +On the historical side, those ECMA standards were established in the early 90's whereas the VT100, for example, was designed in the mid/late 70's. At that point in time, control codes were still pretty ungoverned and engineers used them for a multitude of things, namely to activate hardware ports that may have been proprietary. Somewhere else you see a similar 'anarchy' of codes is in the x86 architecture for processors; there are a ton of "interrupts" that can mean different things on certain brands of processors, most of which have been phased out. + + +## License + +MIT © [Sindre Sorhus](http://sindresorhus.com) diff --git a/node_modules/another-npm-registry-client/node_modules/aproba/LICENSE b/node_modules/another-npm-registry-client/node_modules/aproba/LICENSE new file mode 100644 index 0000000..f4be44d --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/aproba/LICENSE @@ -0,0 +1,14 @@ +Copyright (c) 2015, Rebecca Turner + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + diff --git a/node_modules/another-npm-registry-client/node_modules/aproba/README.md b/node_modules/another-npm-registry-client/node_modules/aproba/README.md new file mode 100644 index 0000000..0bfc594 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/aproba/README.md @@ -0,0 +1,94 @@ +aproba +====== + +A ridiculously light-weight function argument validator + +``` +var validate = require("aproba") + +function myfunc(a, b, c) { + // `a` must be a string, `b` a number, `c` a function + validate('SNF', arguments) // [a,b,c] is also valid +} + +myfunc('test', 23, function () {}) // ok +myfunc(123, 23, function () {}) // type error +myfunc('test', 23) // missing arg error +myfunc('test', 23, function () {}, true) // too many args error + +``` + +Valid types are: + +| type | description +| :--: | :---------- +| * | matches any type +| A | `Array.isArray` OR an `arguments` object +| S | typeof == string +| N | typeof == number +| F | typeof == function +| O | typeof == object and not type A and not type E +| B | typeof == boolean +| E | `instanceof Error` OR `null` **(special: see below)** +| Z | == `null` + +Validation failures throw one of three exception types, distinguished by a +`code` property of `EMISSINGARG`, `EINVALIDTYPE` or `ETOOMANYARGS`. + +If you pass in an invalid type then it will throw with a code of +`EUNKNOWNTYPE`. + +If an **error** argument is found and is not null then the remaining +arguments are optional. That is, if you say `ESO` then that's like using a +non-magical `E` in: `E|ESO|ZSO`. + +### But I have optional arguments?! + +You can provide more than one signature by separating them with pipes `|`. +If any signature matches the arguments then they'll be considered valid. + +So for example, say you wanted to write a signature for +`fs.createWriteStream`. The docs for it describe it thusly: + +``` +fs.createWriteStream(path[, options]) +``` + +This would be a signature of `SO|S`. That is, a string and and object, or +just a string. + +Now, if you read the full `fs` docs, you'll see that actually path can ALSO +be a buffer. And options can be a string, that is: +``` +path | +options | +``` + +To reproduce this you have to fully enumerate all of the possible +combinations and that implies a signature of `SO|SS|OO|OS|S|O`. The +awkwardness is a feature: It reminds you of the complexity you're adding to +your API when you do this sort of thing. + + +### Browser support + +This has no dependencies and should work in browsers, though you'll have +noisier stack traces. + +### Why this exists + +I wanted a very simple argument validator. It needed to do two things: + +1. Be more concise and easier to use than assertions + +2. Not encourage an infinite bikeshed of DSLs + +This is why types are specified by a single character and there's no such +thing as an optional argument. + +This is not intended to validate user data. This is specifically about +asserting the interface of your functions. + +If you need greater validation, I encourage you to write them by hand or +look elsewhere. + diff --git a/node_modules/another-npm-registry-client/node_modules/aproba/index.js b/node_modules/another-npm-registry-client/node_modules/aproba/index.js new file mode 100644 index 0000000..6f3f797 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/aproba/index.js @@ -0,0 +1,105 @@ +'use strict' + +function isArguments (thingy) { + return thingy != null && typeof thingy === 'object' && thingy.hasOwnProperty('callee') +} + +var types = { + '*': {label: 'any', check: function () { return true }}, + A: {label: 'array', check: function (thingy) { return Array.isArray(thingy) || isArguments(thingy) }}, + S: {label: 'string', check: function (thingy) { return typeof thingy === 'string' }}, + N: {label: 'number', check: function (thingy) { return typeof thingy === 'number' }}, + F: {label: 'function', check: function (thingy) { return typeof thingy === 'function' }}, + O: {label: 'object', check: function (thingy) { return typeof thingy === 'object' && thingy != null && !types.A.check(thingy) && !types.E.check(thingy) }}, + B: {label: 'boolean', check: function (thingy) { return typeof thingy === 'boolean' }}, + E: {label: 'error', check: function (thingy) { return thingy instanceof Error }}, + Z: {label: 'null', check: function (thingy) { return thingy == null }} +} + +function addSchema (schema, arity) { + var group = arity[schema.length] = arity[schema.length] || [] + if (group.indexOf(schema) === -1) group.push(schema) +} + +var validate = module.exports = function (rawSchemas, args) { + if (arguments.length !== 2) throw wrongNumberOfArgs(['SA'], arguments.length) + if (!rawSchemas) throw missingRequiredArg(0, 'rawSchemas') + if (!args) throw missingRequiredArg(1, 'args') + if (!types.S.check(rawSchemas)) throw invalidType(0, ['string'], rawSchemas) + if (!types.A.check(args)) throw invalidType(1, ['array'], args) + var schemas = rawSchemas.split('|') + var arity = {} + + schemas.forEach(function (schema) { + for (var ii = 0; ii < schema.length; ++ii) { + var type = schema[ii] + if (!types[type]) throw unknownType(ii, type) + } + if (/E.*E/.test(schema)) throw moreThanOneError(schema) + addSchema(schema, arity) + if (/E/.test(schema)) { + addSchema(schema.replace(/E.*$/, 'E'), arity) + addSchema(schema.replace(/E/, 'Z'), arity) + if (schema.length === 1) addSchema('', arity) + } + }) + var matching = arity[args.length] + if (!matching) { + throw wrongNumberOfArgs(Object.keys(arity), args.length) + } + for (var ii = 0; ii < args.length; ++ii) { + var newMatching = matching.filter(function (schema) { + var type = schema[ii] + var typeCheck = types[type].check + return typeCheck(args[ii]) + }) + if (!newMatching.length) { + var labels = matching.map(function (schema) { + return types[schema[ii]].label + }).filter(function (schema) { return schema != null }) + throw invalidType(ii, labels, args[ii]) + } + matching = newMatching + } +} + +function missingRequiredArg (num) { + return newException('EMISSINGARG', 'Missing required argument #' + (num + 1)) +} + +function unknownType (num, type) { + return newException('EUNKNOWNTYPE', 'Unknown type ' + type + ' in argument #' + (num + 1)) +} + +function invalidType (num, expectedTypes, value) { + var valueType + Object.keys(types).forEach(function (typeCode) { + if (types[typeCode].check(value)) valueType = types[typeCode].label + }) + return newException('EINVALIDTYPE', 'Argument #' + (num + 1) + ': Expected ' + + englishList(expectedTypes) + ' but got ' + valueType) +} + +function englishList (list) { + return list.join(', ').replace(/, ([^,]+)$/, ' or $1') +} + +function wrongNumberOfArgs (expected, got) { + var english = englishList(expected) + var args = expected.every(function (ex) { return ex.length === 1 }) + ? 'argument' + : 'arguments' + return newException('EWRONGARGCOUNT', 'Expected ' + english + ' ' + args + ' but got ' + got) +} + +function moreThanOneError (schema) { + return newException('ETOOMANYERRORTYPES', + 'Only one error type per argument signature is allowed, more than one found in "' + schema + '"') +} + +function newException (code, msg) { + var e = new Error(msg) + e.code = code + if (Error.captureStackTrace) Error.captureStackTrace(e, validate) + return e +} diff --git a/node_modules/another-npm-registry-client/node_modules/aproba/package.json b/node_modules/another-npm-registry-client/node_modules/aproba/package.json new file mode 100644 index 0000000..f008787 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/aproba/package.json @@ -0,0 +1,34 @@ +{ + "name": "aproba", + "version": "1.2.0", + "description": "A ridiculously light-weight argument validator (now browser friendly)", + "main": "index.js", + "directories": { + "test": "test" + }, + "dependencies": {}, + "devDependencies": { + "standard": "^10.0.3", + "tap": "^10.0.2" + }, + "files": [ + "index.js" + ], + "scripts": { + "test": "standard && tap -j3 test/*.js" + }, + "repository": { + "type": "git", + "url": "https://github.com/iarna/aproba" + }, + "keywords": [ + "argument", + "validate" + ], + "author": "Rebecca Turner ", + "license": "ISC", + "bugs": { + "url": "https://github.com/iarna/aproba/issues" + }, + "homepage": "https://github.com/iarna/aproba" +} diff --git a/node_modules/another-npm-registry-client/node_modules/are-we-there-yet/CHANGES.md b/node_modules/another-npm-registry-client/node_modules/are-we-there-yet/CHANGES.md new file mode 100644 index 0000000..21f3b1c --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/are-we-there-yet/CHANGES.md @@ -0,0 +1,37 @@ +Hi, figured we could actually use a changelog now: + +## 1.1.5 2018-05-24 + +* [#92](https://github.com/iarna/are-we-there-yet/pull/92) Fix bug where + `finish` would throw errors when including `TrackerStream` objects in + `TrackerGroup` collections. (@brianloveswords) + +## 1.1.4 2017-04-21 + +* Fix typo in package.json + +## 1.1.3 2017-04-21 + +* Improve documentation and limit files included in the distribution. + +## 1.1.2 2016-03-15 + +* Add tracker group cycle detection and tests for it + +## 1.1.1 2016-01-29 + +* Fix a typo in stream completion tracker + +## 1.1.0 2016-01-29 + +* Rewrote completion percent computation to be low impact– no more walking a + tree of completion groups every time we need this info. Previously, with + medium sized tree of completion groups, even a relatively modest number of + calls to the top level `completed()` method would result in absurd numbers + of calls overall as it walked down the tree. We now, instead, keep track as + we bubble up changes, so the computation is limited to when data changes and + to the depth of that one branch, instead of _every_ node. (Plus, we were already + incurring _this_ cost, since we already bubbled out changes.) +* Moved different tracker types out to their own files. +* Made tests test for TOO MANY events too. +* Standarized the source code formatting diff --git a/node_modules/another-npm-registry-client/node_modules/are-we-there-yet/LICENSE b/node_modules/another-npm-registry-client/node_modules/are-we-there-yet/LICENSE new file mode 100644 index 0000000..af45880 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/are-we-there-yet/LICENSE @@ -0,0 +1,5 @@ +Copyright (c) 2015, Rebecca Turner + +Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. diff --git a/node_modules/another-npm-registry-client/node_modules/are-we-there-yet/README.md b/node_modules/another-npm-registry-client/node_modules/are-we-there-yet/README.md new file mode 100644 index 0000000..7e2b42d --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/are-we-there-yet/README.md @@ -0,0 +1,195 @@ +are-we-there-yet +---------------- + +Track complex hiearchies of asynchronous task completion statuses. This is +intended to give you a way of recording and reporting the progress of the big +recursive fan-out and gather type workflows that are so common in async. + +What you do with this completion data is up to you, but the most common use case is to +feed it to one of the many progress bar modules. + +Most progress bar modules include a rudamentary version of this, but my +needs were more complex. + +Usage +===== + +```javascript +var TrackerGroup = require("are-we-there-yet").TrackerGroup + +var top = new TrackerGroup("program") + +var single = top.newItem("one thing", 100) +single.completeWork(20) + +console.log(top.completed()) // 0.2 + +fs.stat("file", function(er, stat) { + if (er) throw er + var stream = top.newStream("file", stat.size) + console.log(top.completed()) // now 0.1 as single is 50% of the job and is 20% complete + // and 50% * 20% == 10% + fs.createReadStream("file").pipe(stream).on("data", function (chunk) { + // do stuff with chunk + }) + top.on("change", function (name) { + // called each time a chunk is read from "file" + // top.completed() will start at 0.1 and fill up to 0.6 as the file is read + }) +}) +``` + +Shared Methods +============== + +* var completed = tracker.completed() + +Implemented in: `Tracker`, `TrackerGroup`, `TrackerStream` + +Returns the ratio of completed work to work to be done. Range of 0 to 1. + +* tracker.finish() + +Implemented in: `Tracker`, `TrackerGroup` + +Marks the tracker as completed. With a TrackerGroup this marks all of its +components as completed. + +Marks all of the components of this tracker as finished, which in turn means +that `tracker.completed()` for this will now be 1. + +This will result in one or more `change` events being emitted. + +Events +====== + +All tracker objects emit `change` events with the following arguments: + +``` +function (name, completed, tracker) +``` + +`name` is the name of the tracker that originally emitted the event, +or if it didn't have one, the first containing tracker group that had one. + +`completed` is the percent complete (as returned by `tracker.completed()` method). + +`tracker` is the tracker object that you are listening for events on. + +TrackerGroup +============ + +* var tracker = new TrackerGroup(**name**) + + * **name** *(optional)* - The name of this tracker group, used in change + notifications if the component updating didn't have a name. Defaults to undefined. + +Creates a new empty tracker aggregation group. These are trackers whose +completion status is determined by the completion status of other trackers. + +* tracker.addUnit(**otherTracker**, **weight**) + + * **otherTracker** - Any of the other are-we-there-yet tracker objects + * **weight** *(optional)* - The weight to give the tracker, defaults to 1. + +Adds the **otherTracker** to this aggregation group. The weight determines +how long you expect this tracker to take to complete in proportion to other +units. So for instance, if you add one tracker with a weight of 1 and +another with a weight of 2, you're saying the second will take twice as long +to complete as the first. As such, the first will account for 33% of the +completion of this tracker and the second will account for the other 67%. + +Returns **otherTracker**. + +* var subGroup = tracker.newGroup(**name**, **weight**) + +The above is exactly equivalent to: + +```javascript + var subGroup = tracker.addUnit(new TrackerGroup(name), weight) +``` + +* var subItem = tracker.newItem(**name**, **todo**, **weight**) + +The above is exactly equivalent to: + +```javascript + var subItem = tracker.addUnit(new Tracker(name, todo), weight) +``` + +* var subStream = tracker.newStream(**name**, **todo**, **weight**) + +The above is exactly equivalent to: + +```javascript + var subStream = tracker.addUnit(new TrackerStream(name, todo), weight) +``` + +* console.log( tracker.debug() ) + +Returns a tree showing the completion of this tracker group and all of its +children, including recursively entering all of the children. + +Tracker +======= + +* var tracker = new Tracker(**name**, **todo**) + + * **name** *(optional)* The name of this counter to report in change + events. Defaults to undefined. + * **todo** *(optional)* The amount of work todo (a number). Defaults to 0. + +Ordinarily these are constructed as a part of a tracker group (via +`newItem`). + +* var completed = tracker.completed() + +Returns the ratio of completed work to work to be done. Range of 0 to 1. If +total work to be done is 0 then it will return 0. + +* tracker.addWork(**todo**) + + * **todo** A number to add to the amount of work to be done. + +Increases the amount of work to be done, thus decreasing the completion +percentage. Triggers a `change` event. + +* tracker.completeWork(**completed**) + + * **completed** A number to add to the work complete + +Increase the amount of work complete, thus increasing the completion percentage. +Will never increase the work completed past the amount of work todo. That is, +percentages > 100% are not allowed. Triggers a `change` event. + +* tracker.finish() + +Marks this tracker as finished, tracker.completed() will now be 1. Triggers +a `change` event. + +TrackerStream +============= + +* var tracker = new TrackerStream(**name**, **size**, **options**) + + * **name** *(optional)* The name of this counter to report in change + events. Defaults to undefined. + * **size** *(optional)* The number of bytes being sent through this stream. + * **options** *(optional)* A hash of stream options + +The tracker stream object is a pass through stream that updates an internal +tracker object each time a block passes through. It's intended to track +downloads, file extraction and other related activities. You use it by piping +your data source into it and then using it as your data source. + +If your data has a length attribute then that's used as the amount of work +completed when the chunk is passed through. If it does not (eg, object +streams) then each chunk counts as completing 1 unit of work, so your size +should be the total number of objects being streamed. + +* tracker.addWork(**todo**) + + * **todo** Increase the expected overall size by **todo** bytes. + +Increases the amount of work to be done, thus decreasing the completion +percentage. Triggers a `change` event. diff --git a/node_modules/another-npm-registry-client/node_modules/are-we-there-yet/index.js b/node_modules/another-npm-registry-client/node_modules/are-we-there-yet/index.js new file mode 100644 index 0000000..57d8743 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/are-we-there-yet/index.js @@ -0,0 +1,4 @@ +'use strict' +exports.TrackerGroup = require('./tracker-group.js') +exports.Tracker = require('./tracker.js') +exports.TrackerStream = require('./tracker-stream.js') diff --git a/node_modules/another-npm-registry-client/node_modules/are-we-there-yet/package.json b/node_modules/another-npm-registry-client/node_modules/are-we-there-yet/package.json new file mode 100644 index 0000000..ff36bf4 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/are-we-there-yet/package.json @@ -0,0 +1,35 @@ +{ + "name": "are-we-there-yet", + "version": "1.1.7", + "description": "Keep track of the overall completion of many disparate processes", + "main": "index.js", + "scripts": { + "test": "standard && tap test/*.js" + }, + "repository": { + "type": "git", + "url": "https://github.com/iarna/are-we-there-yet.git" + }, + "author": "Rebecca Turner (http://re-becca.org)", + "license": "ISC", + "bugs": { + "url": "https://github.com/iarna/are-we-there-yet/issues" + }, + "homepage": "https://github.com/iarna/are-we-there-yet", + "devDependencies": { + "standard": "^11.0.1", + "tap": "^12.0.1" + }, + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + }, + "files": [ + "index.js", + "tracker-base.js", + "tracker-group.js", + "tracker-stream.js", + "tracker.js", + "CHANGES.md" + ] +} diff --git a/node_modules/another-npm-registry-client/node_modules/are-we-there-yet/tracker-base.js b/node_modules/another-npm-registry-client/node_modules/are-we-there-yet/tracker-base.js new file mode 100644 index 0000000..6f43687 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/are-we-there-yet/tracker-base.js @@ -0,0 +1,11 @@ +'use strict' +var EventEmitter = require('events').EventEmitter +var util = require('util') + +var trackerId = 0 +var TrackerBase = module.exports = function (name) { + EventEmitter.call(this) + this.id = ++trackerId + this.name = name +} +util.inherits(TrackerBase, EventEmitter) diff --git a/node_modules/another-npm-registry-client/node_modules/are-we-there-yet/tracker-group.js b/node_modules/another-npm-registry-client/node_modules/are-we-there-yet/tracker-group.js new file mode 100644 index 0000000..9759e12 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/are-we-there-yet/tracker-group.js @@ -0,0 +1,107 @@ +'use strict' +var util = require('util') +var TrackerBase = require('./tracker-base.js') +var Tracker = require('./tracker.js') +var TrackerStream = require('./tracker-stream.js') + +var TrackerGroup = module.exports = function (name) { + TrackerBase.call(this, name) + this.parentGroup = null + this.trackers = [] + this.completion = {} + this.weight = {} + this.totalWeight = 0 + this.finished = false + this.bubbleChange = bubbleChange(this) +} +util.inherits(TrackerGroup, TrackerBase) + +function bubbleChange (trackerGroup) { + return function (name, completed, tracker) { + trackerGroup.completion[tracker.id] = completed + if (trackerGroup.finished) return + trackerGroup.emit('change', name || trackerGroup.name, trackerGroup.completed(), trackerGroup) + } +} + +TrackerGroup.prototype.nameInTree = function () { + var names = [] + var from = this + while (from) { + names.unshift(from.name) + from = from.parentGroup + } + return names.join('/') +} + +TrackerGroup.prototype.addUnit = function (unit, weight) { + if (unit.addUnit) { + var toTest = this + while (toTest) { + if (unit === toTest) { + throw new Error( + 'Attempted to add tracker group ' + + unit.name + ' to tree that already includes it ' + + this.nameInTree(this)) + } + toTest = toTest.parentGroup + } + unit.parentGroup = this + } + this.weight[unit.id] = weight || 1 + this.totalWeight += this.weight[unit.id] + this.trackers.push(unit) + this.completion[unit.id] = unit.completed() + unit.on('change', this.bubbleChange) + if (!this.finished) this.emit('change', unit.name, this.completion[unit.id], unit) + return unit +} + +TrackerGroup.prototype.completed = function () { + if (this.trackers.length === 0) return 0 + var valPerWeight = 1 / this.totalWeight + var completed = 0 + for (var ii = 0; ii < this.trackers.length; ii++) { + var trackerId = this.trackers[ii].id + completed += valPerWeight * this.weight[trackerId] * this.completion[trackerId] + } + return completed +} + +TrackerGroup.prototype.newGroup = function (name, weight) { + return this.addUnit(new TrackerGroup(name), weight) +} + +TrackerGroup.prototype.newItem = function (name, todo, weight) { + return this.addUnit(new Tracker(name, todo), weight) +} + +TrackerGroup.prototype.newStream = function (name, todo, weight) { + return this.addUnit(new TrackerStream(name, todo), weight) +} + +TrackerGroup.prototype.finish = function () { + this.finished = true + if (!this.trackers.length) this.addUnit(new Tracker(), 1, true) + for (var ii = 0; ii < this.trackers.length; ii++) { + var tracker = this.trackers[ii] + tracker.finish() + tracker.removeListener('change', this.bubbleChange) + } + this.emit('change', this.name, 1, this) +} + +var buffer = ' ' +TrackerGroup.prototype.debug = function (depth) { + depth = depth || 0 + var indent = depth ? buffer.substr(0, depth) : '' + var output = indent + (this.name || 'top') + ': ' + this.completed() + '\n' + this.trackers.forEach(function (tracker) { + if (tracker instanceof TrackerGroup) { + output += tracker.debug(depth + 1) + } else { + output += indent + ' ' + tracker.name + ': ' + tracker.completed() + '\n' + } + }) + return output +} diff --git a/node_modules/another-npm-registry-client/node_modules/are-we-there-yet/tracker-stream.js b/node_modules/another-npm-registry-client/node_modules/are-we-there-yet/tracker-stream.js new file mode 100644 index 0000000..e1cf850 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/are-we-there-yet/tracker-stream.js @@ -0,0 +1,36 @@ +'use strict' +var util = require('util') +var stream = require('readable-stream') +var delegate = require('delegates') +var Tracker = require('./tracker.js') + +var TrackerStream = module.exports = function (name, size, options) { + stream.Transform.call(this, options) + this.tracker = new Tracker(name, size) + this.name = name + this.id = this.tracker.id + this.tracker.on('change', delegateChange(this)) +} +util.inherits(TrackerStream, stream.Transform) + +function delegateChange (trackerStream) { + return function (name, completion, tracker) { + trackerStream.emit('change', name, completion, trackerStream) + } +} + +TrackerStream.prototype._transform = function (data, encoding, cb) { + this.tracker.completeWork(data.length ? data.length : 1) + this.push(data) + cb() +} + +TrackerStream.prototype._flush = function (cb) { + this.tracker.finish() + cb() +} + +delegate(TrackerStream.prototype, 'tracker') + .method('completed') + .method('addWork') + .method('finish') diff --git a/node_modules/another-npm-registry-client/node_modules/are-we-there-yet/tracker.js b/node_modules/another-npm-registry-client/node_modules/are-we-there-yet/tracker.js new file mode 100644 index 0000000..68c2339 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/are-we-there-yet/tracker.js @@ -0,0 +1,30 @@ +'use strict' +var util = require('util') +var TrackerBase = require('./tracker-base.js') + +var Tracker = module.exports = function (name, todo) { + TrackerBase.call(this, name) + this.workDone = 0 + this.workTodo = todo || 0 +} +util.inherits(Tracker, TrackerBase) + +Tracker.prototype.completed = function () { + return this.workTodo === 0 ? 0 : this.workDone / this.workTodo +} + +Tracker.prototype.addWork = function (work) { + this.workTodo += work + this.emit('change', this.name, this.completed(), this) +} + +Tracker.prototype.completeWork = function (work) { + this.workDone += work + if (this.workDone > this.workTodo) this.workDone = this.workTodo + this.emit('change', this.name, this.completed(), this) +} + +Tracker.prototype.finish = function () { + this.workTodo = this.workDone = 1 + this.emit('change', this.name, 1, this) +} diff --git a/node_modules/another-npm-registry-client/node_modules/gauge/CHANGELOG.md b/node_modules/another-npm-registry-client/node_modules/gauge/CHANGELOG.md new file mode 100644 index 0000000..407bc19 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/gauge/CHANGELOG.md @@ -0,0 +1,160 @@ +### v2.7.4 + +* Reset colors prior to ending a line, to eliminate flicker when a line + is trucated between start and end color sequences. + +### v2.7.3 + +* Only create our onExit handler when we're enabled and remove it when we're + disabled. This stops us from creating multiple onExit handlers when + multiple gauge objects are being used. +* Fix bug where if a theme name were given instead of a theme object, it + would crash. +* Remove supports-color because it's not actually used. Uhm. Yes, I just + updated it. >.> + +### v2.7.2 + +* Use supports-color instead of has-color (as the module has been renamed) + +### v2.7.1 + +* Bug fix: Calls to show/pulse while the progress bar is disabled should still + update our internal representation of what would be shown should it be enabled. + +### v2.7.0 + +* New feature: Add new `isEnabled` method to allow introspection of the gauge's + "enabledness" as controlled by `.enable()` and `.disable()`. + +### v2.6.0 + +* Bug fix: Don't run the code associated with `enable`/`disable` if the gauge + is already enabled or disabled respectively. This prevents leaking event + listeners, amongst other weirdness. +* New feature: Template items can have default values that will be used if no + value was otherwise passed in. + +### v2.5.3 + +* Default to `enabled` only if we have a tty. Users can always override + this by passing in the `enabled` option explicitly or by calling calling + `gauge.enable()`. + +### v2.5.2 + +* Externalized `./console-strings.js` into `console-control-strings`. + +### v2.5.1 + +* Update to `signal-exit@3.0.0`, which fixes a compatibility bug with the + node profiler. +* [#39](https://github.com/iarna/gauge/pull/39) Fix tests on 0.10 and add + a missing devDependency. ([@helloyou2012](https://github.com/helloyou2012)) + +### v2.5.0 + +* Add way to programmatically fetch a list of theme names in a themeset + (`Themeset.getThemeNames`). + +### v2.4.0 + +* Add support for setting themesets on existing gauge objects. +* Add post-IO callback to `gauge.hide()` as it is somtetimes necessary when + your terminal is interleaving output from multiple filehandles (ie, stdout + & stderr). + +### v2.3.1 + +* Fix a refactor bug in setTheme where it wasn't accepting the various types + of args it should. + +### v2.3.0 + +#### FEATURES + +* Add setTemplate & setTheme back in. +* Add support for named themes, you can now ask for things like 'colorASCII' + and 'brailleSpinner'. Of course, you can still pass in theme objects. + Additionally you can now pass in an object with `hasUnicode`, `hasColor` and + `platform` keys in order to override our guesses as to those values when + selecting a default theme from the themeset. +* Make the output stream optional (it defaults to `process.stderr` now). +* Add `setWriteTo(stream[, tty])` to change the output stream and, + optionally, tty. + +#### BUG FIXES & REFACTORING + +* Abort the display phase early if we're supposed to be hidden and we are. +* Stop printing a bunch of spaces at the end of lines, since we're already + using an erase-to-end-of-line code anyway. +* The unicode themes were missing the subsection separator. + +### v2.2.1 + +* Fix image in readme + +### v2.2.0 + +* All new themes API– reference themes by name and pass in custom themes and + themesets (themesets get platform support autodetection done on them to + select the best theme). Theme mixins let you add features to all existing + themes. +* Much, much improved test coverage. + +### v2.1.0 + +* Got rid of ░ in the default platform, noUnicode, hasColor theme. Thanks + to @yongtw123 for pointing out this had snuck in. +* Fiddled with the demo output to make it easier to see the spinner spin. Also + added prints before each platforms test output. +* I forgot to include `signal-exit` in our deps. <.< Thank you @KenanY for + finding this. Then I was lazy and made a new commit instead of using his + PR. Again, thank you for your patience @KenenY. +* Drastically speed up travis testing. +* Add a small javascript demo (demo.js) for showing off the various themes + (and testing them on diff platforms). +* Change: The subsection separator from ⁄ and / (different chars) to >. +* Fix crasher: A show or pulse without a label would cause the template renderer + to complain about a missing value. +* New feature: Add the ability to disable the clean-up-on-exit behavior. + Not something I expect to be widely desirable, but important if you have + multiple distinct gauge instances in your app. +* Use our own color support detection. + The `has-color` module proved too magic for my needs, making assumptions + as to which stream we write to and reading command line arguments. + +### v2.0.0 + +This is a major rewrite of the internals. Externally there are fewer +changes: + +* On node>0.8 gauge object now prints updates at a fixed rate. This means + that when you call `show` it may wate up to `updateInterval` ms before it + actually prints an update. You override this behavior with the + `fixedFramerate` option. +* The gauge object now keeps the cursor hidden as long as it's enabled and + shown. +* The constructor's arguments have changed, now it takes a mandatory output + stream and an optional options object. The stream no longer needs to be + an `ansi`ified stream, although it can be if you want (but we won't make + use of its special features). +* Previously the gauge was disabled by default if `process.stdout` wasn't a + tty. Now it always defaults to enabled. If you want the previous + behavior set the `enabled` option to `process.stdout.isTTY`. +* The constructor's options have changed– see the docs for details. +* Themes are entirely different. If you were using a custom theme, or + referring to one directly (eg via `Gauge.unicode` or `Gauge.ascii`) then + you'll need to change your code. You can get the equivalent of the latter + with: + ``` + var themes = require('gauge/themes') + var unicodeTheme = themes(true, true) // returns the color unicode theme for your platform + ``` + The default themes no longer use any ambiguous width characters, so even + if you choose to display those as wide your progress bar should still + display correctly. +* Templates are entirely different and if you were using a custom one, you + should consult the documentation to learn how to recreate it. If you were + using the default, be aware that it has changed and the result looks quite + a bit different. diff --git a/node_modules/another-npm-registry-client/node_modules/gauge/LICENSE b/node_modules/another-npm-registry-client/node_modules/gauge/LICENSE new file mode 100644 index 0000000..e756052 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/gauge/LICENSE @@ -0,0 +1,13 @@ +Copyright (c) 2014, Rebecca Turner + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. diff --git a/node_modules/another-npm-registry-client/node_modules/gauge/README.md b/node_modules/another-npm-registry-client/node_modules/gauge/README.md new file mode 100644 index 0000000..bdd60e3 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/gauge/README.md @@ -0,0 +1,399 @@ +gauge +===== + +A nearly stateless terminal based horizontal gauge / progress bar. + +```javascript +var Gauge = require("gauge") + +var gauge = new Gauge() + +gauge.show("test", 0.20) + +gauge.pulse("this") + +gauge.hide() +``` + +![](gauge-demo.gif) + + +### CHANGES FROM 1.x + +Gauge 2.x is breaking release, please see the [changelog] for details on +what's changed if you were previously a user of this module. + +[changelog]: CHANGELOG.md + +### THE GAUGE CLASS + +This is the typical interface to the module– it provides a pretty +fire-and-forget interface to displaying your status information. + +``` +var Gauge = require("gauge") + +var gauge = new Gauge([stream], [options]) +``` + +* **stream** – *(optional, default STDERR)* A stream that progress bar + updates are to be written to. Gauge honors backpressure and will pause + most writing if it is indicated. +* **options** – *(optional)* An option object. + +Constructs a new gauge. Gauges are drawn on a single line, and are not drawn +if **stream** isn't a tty and a tty isn't explicitly provided. + +If **stream** is a terminal or if you pass in **tty** to **options** then we +will detect terminal resizes and redraw to fit. We do this by watching for +`resize` events on the tty. (To work around a bug in verisons of Node prior +to 2.5.0, we watch for them on stdout if the tty is stderr.) Resizes to +larger window sizes will be clean, but shrinking the window will always +result in some cruft. + +**IMPORTANT:** If you prevously were passing in a non-tty stream but you still +want output (for example, a stream wrapped by the `ansi` module) then you +need to pass in the **tty** option below, as `gauge` needs access to +the underlying tty in order to do things like terminal resizes and terminal +width detection. + +The **options** object can have the following properties, all of which are +optional: + +* **updateInterval**: How often gauge updates should be drawn, in miliseconds. +* **fixedFramerate**: Defaults to false on node 0.8, true on everything + else. When this is true a timer is created to trigger once every + `updateInterval` ms, when false, updates are printed as soon as they come + in but updates more often than `updateInterval` are ignored. The reason + 0.8 doesn't have this set to true is that it can't `unref` its timer and + so it would stop your program from exiting– if you want to use this + feature with 0.8 just make sure you call `gauge.disable()` before you + expect your program to exit. +* **themes**: A themeset to use when selecting the theme to use. Defaults + to `gauge/themes`, see the [themes] documentation for details. +* **theme**: Select a theme for use, it can be a: + * Theme object, in which case the **themes** is not used. + * The name of a theme, which will be looked up in the current *themes* + object. + * A configuration object with any of `hasUnicode`, `hasColor` or + `platform` keys, which if wlll be used to override our guesses when making + a default theme selection. + + If no theme is selected then a default is picked using a combination of our + best guesses at your OS, color support and unicode support. +* **template**: Describes what you want your gauge to look like. The + default is what npm uses. Detailed [documentation] is later in this + document. +* **hideCursor**: Defaults to true. If true, then the cursor will be hidden + while the gauge is displayed. +* **tty**: The tty that you're ultimately writing to. Defaults to the same + as **stream**. This is used for detecting the width of the terminal and + resizes. The width used is `tty.columns - 1`. If no tty is available then + a width of `79` is assumed. +* **enabled**: Defaults to true if `tty` is a TTY, false otherwise. If true + the gauge starts enabled. If disabled then all update commands are + ignored and no gauge will be printed until you call `.enable()`. +* **Plumbing**: The class to use to actually generate the gauge for + printing. This defaults to `require('gauge/plumbing')` and ordinarly you + shouldn't need to override this. +* **cleanupOnExit**: Defaults to true. Ordinarily we register an exit + handler to make sure your cursor is turned back on and the progress bar + erased when your process exits, even if you Ctrl-C out or otherwise exit + unexpectedly. You can disable this and it won't register the exit handler. + +[has-unicode]: https://www.npmjs.com/package/has-unicode +[themes]: #themes +[documentation]: #templates + +#### `gauge.show(section | status, [completed])` + +The first argument is either the section, the name of the current thing +contributing to progress, or an object with keys like **section**, +**subsection** & **completed** (or any others you have types for in a custom +template). If you don't want to update or set any of these you can pass +`null` and it will be ignored. + +The second argument is the percent completed as a value between 0 and 1. +Without it, completion is just not updated. You'll also note that completion +can be passed in as part of a status object as the first argument. If both +it and the completed argument are passed in, the completed argument wins. + +#### `gauge.hide([cb])` + +Removes the gauge from the terminal. Optionally, callback `cb` after IO has +had an opportunity to happen (currently this just means after `setImmediate` +has called back.) + +It turns out this is important when you're pausing the progress bar on one +filehandle and printing to another– otherwise (with a big enough print) node +can end up printing the "end progress bar" bits to the progress bar filehandle +while other stuff is printing to another filehandle. These getting interleaved +can cause corruption in some terminals. + +#### `gauge.pulse([subsection])` + +* **subsection** – *(optional)* The specific thing that triggered this pulse + +Spins the spinner in the gauge to show output. If **subsection** is +included then it will be combined with the last name passed to `gauge.show`. + +#### `gauge.disable()` + +Hides the gauge and ignores further calls to `show` or `pulse`. + +#### `gauge.enable()` + +Shows the gauge and resumes updating when `show` or `pulse` is called. + +#### `gauge.isEnabled()` + +Returns true if the gauge is enabled. + +#### `gauge.setThemeset(themes)` + +Change the themeset to select a theme from. The same as the `themes` option +used in the constructor. The theme will be reselected from this themeset. + +#### `gauge.setTheme(theme)` + +Change the active theme, will be displayed with the next show or pulse. This can be: + +* Theme object, in which case the **themes** is not used. +* The name of a theme, which will be looked up in the current *themes* + object. +* A configuration object with any of `hasUnicode`, `hasColor` or + `platform` keys, which if wlll be used to override our guesses when making + a default theme selection. + +If no theme is selected then a default is picked using a combination of our +best guesses at your OS, color support and unicode support. + +#### `gauge.setTemplate(template)` + +Change the active template, will be displayed with the next show or pulse + +### Tracking Completion + +If you have more than one thing going on that you want to track completion +of, you may find the related [are-we-there-yet] helpful. It's `change` +event can be wired up to the `show` method to get a more traditional +progress bar interface. + +[are-we-there-yet]: https://www.npmjs.com/package/are-we-there-yet + +### THEMES + +``` +var themes = require('gauge/themes') + +// fetch the default color unicode theme for this platform +var ourTheme = themes({hasUnicode: true, hasColor: true}) + +// fetch the default non-color unicode theme for osx +var ourTheme = themes({hasUnicode: true, hasColor: false, platform: 'darwin'}) + +// create a new theme based on the color ascii theme for this platform +// that brackets the progress bar with arrows +var ourTheme = themes.newTheme(theme(hasUnicode: false, hasColor: true}), { + preProgressbar: '→', + postProgressbar: '←' +}) +``` + +The object returned by `gauge/themes` is an instance of the `ThemeSet` class. + +``` +var ThemeSet = require('gauge/theme-set') +var themes = new ThemeSet() +// or +var themes = require('gauge/themes') +var mythemes = themes.newThemeset() // creates a new themeset based on the default themes +``` + +#### themes(opts) +#### themes.getDefault(opts) + +Theme objects are a function that fetches the default theme based on +platform, unicode and color support. + +Options is an object with the following properties: + +* **hasUnicode** - If true, fetch a unicode theme, if no unicode theme is + available then a non-unicode theme will be used. +* **hasColor** - If true, fetch a color theme, if no color theme is + available a non-color theme will be used. +* **platform** (optional) - Defaults to `process.platform`. If no + platform match is available then `fallback` is used instead. + +If no compatible theme can be found then an error will be thrown with a +`code` of `EMISSINGTHEME`. + +#### themes.addTheme(themeName, themeObj) +#### themes.addTheme(themeName, [parentTheme], newTheme) + +Adds a named theme to the themeset. You can pass in either a theme object, +as returned by `themes.newTheme` or the arguments you'd pass to +`themes.newTheme`. + +#### themes.getThemeNames() + +Return a list of all of the names of the themes in this themeset. Suitable +for use in `themes.getTheme(…)`. + +#### themes.getTheme(name) + +Returns the theme object from this theme set named `name`. + +If `name` does not exist in this themeset an error will be thrown with +a `code` of `EMISSINGTHEME`. + +#### themes.setDefault([opts], themeName) + +`opts` is an object with the following properties. + +* **platform** - Defaults to `'fallback'`. If your theme is platform + specific, specify that here with the platform from `process.platform`, eg, + `win32`, `darwin`, etc. +* **hasUnicode** - Defaults to `false`. If your theme uses unicode you + should set this to true. +* **hasColor** - Defaults to `false`. If your theme uses color you should + set this to true. + +`themeName` is the name of the theme (as given to `addTheme`) to use for +this set of `opts`. + +#### themes.newTheme([parentTheme,] newTheme) + +Create a new theme object based on `parentTheme`. If no `parentTheme` is +provided then a minimal parentTheme that defines functions for rendering the +activity indicator (spinner) and progress bar will be defined. (This +fallback parent is defined in `gauge/base-theme`.) + +newTheme should be a bare object– we'll start by discussing the properties +defined by the default themes: + +* **preProgressbar** - displayed prior to the progress bar, if the progress + bar is displayed. +* **postProgressbar** - displayed after the progress bar, if the progress bar + is displayed. +* **progressBarTheme** - The subtheme passed through to the progress bar + renderer, it's an object with `complete` and `remaining` properties + that are the strings you want repeated for those sections of the progress + bar. +* **activityIndicatorTheme** - The theme for the activity indicator (spinner), + this can either be a string, in which each character is a different step, or + an array of strings. +* **preSubsection** - Displayed as a separator between the `section` and + `subsection` when the latter is printed. + +More generally, themes can have any value that would be a valid value when rendering +templates. The properties in the theme are used when their name matches a type in +the template. Their values can be: + +* **strings & numbers** - They'll be included as is +* **function (values, theme, width)** - Should return what you want in your output. + *values* is an object with values provided via `gauge.show`, + *theme* is the theme specific to this item (see below) or this theme object, + and *width* is the number of characters wide your result should be. + +There are a couple of special prefixes: + +* **pre** - Is shown prior to the property, if its displayed. +* **post** - Is shown after the property, if its displayed. + +And one special suffix: + +* **Theme** - Its value is passed to a function-type item as the theme. + +#### themes.addToAllThemes(theme) + +This *mixes-in* `theme` into all themes currently defined. It also adds it +to the default parent theme for this themeset, so future themes added to +this themeset will get the values from `theme` by default. + +#### themes.newThemeset() + +Copy the current themeset into a new one. This allows you to easily inherit +one themeset from another. + +### TEMPLATES + +A template is an array of objects and strings that, after being evaluated, +will be turned into the gauge line. The default template is: + +```javascript +[ + {type: 'progressbar', length: 20}, + {type: 'activityIndicator', kerning: 1, length: 1}, + {type: 'section', kerning: 1, default: ''}, + {type: 'subsection', kerning: 1, default: ''} +] +``` + +The various template elements can either be **plain strings**, in which case they will +be be included verbatum in the output, or objects with the following properties: + +* *type* can be any of the following plus any keys you pass into `gauge.show` plus + any keys you have on a custom theme. + * `section` – What big thing you're working on now. + * `subsection` – What component of that thing is currently working. + * `activityIndicator` – Shows a spinner using the `activityIndicatorTheme` + from your active theme. + * `progressbar` – A progress bar representing your current `completed` + using the `progressbarTheme` from your active theme. +* *kerning* – Number of spaces that must be between this item and other + items, if this item is displayed at all. +* *maxLength* – The maximum length for this element. If its value is longer it + will be truncated. +* *minLength* – The minimum length for this element. If its value is shorter it + will be padded according to the *align* value. +* *align* – (Default: left) Possible values "left", "right" and "center". Works + as you'd expect from word processors. +* *length* – Provides a single value for both *minLength* and *maxLength*. If both + *length* and *minLength or *maxLength* are specifed then the latter take precedence. +* *value* – A literal value to use for this template item. +* *default* – A default value to use for this template item if a value + wasn't otherwise passed in. + +### PLUMBING + +This is the super simple, assume nothing, do no magic internals used by gauge to +implement its ordinary interface. + +``` +var Plumbing = require('gauge/plumbing') +var gauge = new Plumbing(theme, template, width) +``` + +* **theme**: The theme to use. +* **template**: The template to use. +* **width**: How wide your gauge should be + +#### `gauge.setTheme(theme)` + +Change the active theme. + +#### `gauge.setTemplate(template)` + +Change the active template. + +#### `gauge.setWidth(width)` + +Change the width to render at. + +#### `gauge.hide()` + +Return the string necessary to hide the progress bar + +#### `gauge.hideCursor()` + +Return a string to hide the cursor. + +#### `gauge.showCursor()` + +Return a string to show the cursor. + +#### `gauge.show(status)` + +Using `status` for values, render the provided template with the theme and return +a string that is suitable for printing to update the gauge. diff --git a/node_modules/another-npm-registry-client/node_modules/gauge/base-theme.js b/node_modules/another-npm-registry-client/node_modules/gauge/base-theme.js new file mode 100644 index 0000000..0b67638 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/gauge/base-theme.js @@ -0,0 +1,14 @@ +'use strict' +var spin = require('./spin.js') +var progressBar = require('./progress-bar.js') + +module.exports = { + activityIndicator: function (values, theme, width) { + if (values.spun == null) return + return spin(theme, values.spun) + }, + progressbar: function (values, theme, width) { + if (values.completed == null) return + return progressBar(theme, width, values.completed) + } +} diff --git a/node_modules/another-npm-registry-client/node_modules/gauge/error.js b/node_modules/another-npm-registry-client/node_modules/gauge/error.js new file mode 100644 index 0000000..d9914ba --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/gauge/error.js @@ -0,0 +1,24 @@ +'use strict' +var util = require('util') + +var User = exports.User = function User (msg) { + var err = new Error(msg) + Error.captureStackTrace(err, User) + err.code = 'EGAUGE' + return err +} + +exports.MissingTemplateValue = function MissingTemplateValue (item, values) { + var err = new User(util.format('Missing template value "%s"', item.type)) + Error.captureStackTrace(err, MissingTemplateValue) + err.template = item + err.values = values + return err +} + +exports.Internal = function Internal (msg) { + var err = new Error(msg) + Error.captureStackTrace(err, Internal) + err.code = 'EGAUGEINTERNAL' + return err +} diff --git a/node_modules/another-npm-registry-client/node_modules/gauge/has-color.js b/node_modules/another-npm-registry-client/node_modules/gauge/has-color.js new file mode 100644 index 0000000..e283a25 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/gauge/has-color.js @@ -0,0 +1,12 @@ +'use strict' + +module.exports = isWin32() || isColorTerm() + +function isWin32 () { + return process.platform === 'win32' +} + +function isColorTerm () { + var termHasColor = /^screen|^xterm|^vt100|color|ansi|cygwin|linux/i + return !!process.env.COLORTERM || termHasColor.test(process.env.TERM) +} diff --git a/node_modules/another-npm-registry-client/node_modules/gauge/index.js b/node_modules/another-npm-registry-client/node_modules/gauge/index.js new file mode 100644 index 0000000..c553240 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/gauge/index.js @@ -0,0 +1,233 @@ +'use strict' +var Plumbing = require('./plumbing.js') +var hasUnicode = require('has-unicode') +var hasColor = require('./has-color.js') +var onExit = require('signal-exit') +var defaultThemes = require('./themes') +var setInterval = require('./set-interval.js') +var process = require('./process.js') +var setImmediate = require('./set-immediate') + +module.exports = Gauge + +function callWith (obj, method) { + return function () { + return method.call(obj) + } +} + +function Gauge (arg1, arg2) { + var options, writeTo + if (arg1 && arg1.write) { + writeTo = arg1 + options = arg2 || {} + } else if (arg2 && arg2.write) { + writeTo = arg2 + options = arg1 || {} + } else { + writeTo = process.stderr + options = arg1 || arg2 || {} + } + + this._status = { + spun: 0, + section: '', + subsection: '' + } + this._paused = false // are we paused for back pressure? + this._disabled = true // are all progress bar updates disabled? + this._showing = false // do we WANT the progress bar on screen + this._onScreen = false // IS the progress bar on screen + this._needsRedraw = false // should we print something at next tick? + this._hideCursor = options.hideCursor == null ? true : options.hideCursor + this._fixedFramerate = options.fixedFramerate == null + ? !(/^v0\.8\./.test(process.version)) + : options.fixedFramerate + this._lastUpdateAt = null + this._updateInterval = options.updateInterval == null ? 50 : options.updateInterval + + this._themes = options.themes || defaultThemes + this._theme = options.theme + var theme = this._computeTheme(options.theme) + var template = options.template || [ + {type: 'progressbar', length: 20}, + {type: 'activityIndicator', kerning: 1, length: 1}, + {type: 'section', kerning: 1, default: ''}, + {type: 'subsection', kerning: 1, default: ''} + ] + this.setWriteTo(writeTo, options.tty) + var PlumbingClass = options.Plumbing || Plumbing + this._gauge = new PlumbingClass(theme, template, this.getWidth()) + + this._$$doRedraw = callWith(this, this._doRedraw) + this._$$handleSizeChange = callWith(this, this._handleSizeChange) + + this._cleanupOnExit = options.cleanupOnExit == null || options.cleanupOnExit + this._removeOnExit = null + + if (options.enabled || (options.enabled == null && this._tty && this._tty.isTTY)) { + this.enable() + } else { + this.disable() + } +} +Gauge.prototype = {} + +Gauge.prototype.isEnabled = function () { + return !this._disabled +} + +Gauge.prototype.setTemplate = function (template) { + this._gauge.setTemplate(template) + if (this._showing) this._requestRedraw() +} + +Gauge.prototype._computeTheme = function (theme) { + if (!theme) theme = {} + if (typeof theme === 'string') { + theme = this._themes.getTheme(theme) + } else if (theme && (Object.keys(theme).length === 0 || theme.hasUnicode != null || theme.hasColor != null)) { + var useUnicode = theme.hasUnicode == null ? hasUnicode() : theme.hasUnicode + var useColor = theme.hasColor == null ? hasColor : theme.hasColor + theme = this._themes.getDefault({hasUnicode: useUnicode, hasColor: useColor, platform: theme.platform}) + } + return theme +} + +Gauge.prototype.setThemeset = function (themes) { + this._themes = themes + this.setTheme(this._theme) +} + +Gauge.prototype.setTheme = function (theme) { + this._gauge.setTheme(this._computeTheme(theme)) + if (this._showing) this._requestRedraw() + this._theme = theme +} + +Gauge.prototype._requestRedraw = function () { + this._needsRedraw = true + if (!this._fixedFramerate) this._doRedraw() +} + +Gauge.prototype.getWidth = function () { + return ((this._tty && this._tty.columns) || 80) - 1 +} + +Gauge.prototype.setWriteTo = function (writeTo, tty) { + var enabled = !this._disabled + if (enabled) this.disable() + this._writeTo = writeTo + this._tty = tty || + (writeTo === process.stderr && process.stdout.isTTY && process.stdout) || + (writeTo.isTTY && writeTo) || + this._tty + if (this._gauge) this._gauge.setWidth(this.getWidth()) + if (enabled) this.enable() +} + +Gauge.prototype.enable = function () { + if (!this._disabled) return + this._disabled = false + if (this._tty) this._enableEvents() + if (this._showing) this.show() +} + +Gauge.prototype.disable = function () { + if (this._disabled) return + if (this._showing) { + this._lastUpdateAt = null + this._showing = false + this._doRedraw() + this._showing = true + } + this._disabled = true + if (this._tty) this._disableEvents() +} + +Gauge.prototype._enableEvents = function () { + if (this._cleanupOnExit) { + this._removeOnExit = onExit(callWith(this, this.disable)) + } + this._tty.on('resize', this._$$handleSizeChange) + if (this._fixedFramerate) { + this.redrawTracker = setInterval(this._$$doRedraw, this._updateInterval) + if (this.redrawTracker.unref) this.redrawTracker.unref() + } +} + +Gauge.prototype._disableEvents = function () { + this._tty.removeListener('resize', this._$$handleSizeChange) + if (this._fixedFramerate) clearInterval(this.redrawTracker) + if (this._removeOnExit) this._removeOnExit() +} + +Gauge.prototype.hide = function (cb) { + if (this._disabled) return cb && process.nextTick(cb) + if (!this._showing) return cb && process.nextTick(cb) + this._showing = false + this._doRedraw() + cb && setImmediate(cb) +} + +Gauge.prototype.show = function (section, completed) { + this._showing = true + if (typeof section === 'string') { + this._status.section = section + } else if (typeof section === 'object') { + var sectionKeys = Object.keys(section) + for (var ii = 0; ii < sectionKeys.length; ++ii) { + var key = sectionKeys[ii] + this._status[key] = section[key] + } + } + if (completed != null) this._status.completed = completed + if (this._disabled) return + this._requestRedraw() +} + +Gauge.prototype.pulse = function (subsection) { + this._status.subsection = subsection || '' + this._status.spun ++ + if (this._disabled) return + if (!this._showing) return + this._requestRedraw() +} + +Gauge.prototype._handleSizeChange = function () { + this._gauge.setWidth(this._tty.columns - 1) + this._requestRedraw() +} + +Gauge.prototype._doRedraw = function () { + if (this._disabled || this._paused) return + if (!this._fixedFramerate) { + var now = Date.now() + if (this._lastUpdateAt && now - this._lastUpdateAt < this._updateInterval) return + this._lastUpdateAt = now + } + if (!this._showing && this._onScreen) { + this._onScreen = false + var result = this._gauge.hide() + if (this._hideCursor) { + result += this._gauge.showCursor() + } + return this._writeTo.write(result) + } + if (!this._showing && !this._onScreen) return + if (this._showing && !this._onScreen) { + this._onScreen = true + this._needsRedraw = true + if (this._hideCursor) { + this._writeTo.write(this._gauge.hideCursor()) + } + } + if (!this._needsRedraw) return + if (!this._writeTo.write(this._gauge.show(this._status))) { + this._paused = true + this._writeTo.on('drain', callWith(this, function () { + this._paused = false + this._doRedraw() + })) + } +} diff --git a/node_modules/another-npm-registry-client/node_modules/gauge/package.json b/node_modules/another-npm-registry-client/node_modules/gauge/package.json new file mode 100644 index 0000000..4882cff --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/gauge/package.json @@ -0,0 +1,63 @@ +{ + "name": "gauge", + "version": "2.7.4", + "description": "A terminal based horizontal guage", + "main": "index.js", + "scripts": { + "test": "standard && tap test/*.js --coverage", + "prepublish": "rm -f *~" + }, + "repository": { + "type": "git", + "url": "https://github.com/iarna/gauge" + }, + "keywords": [ + "progressbar", + "progress", + "gauge" + ], + "author": "Rebecca Turner ", + "license": "ISC", + "bugs": { + "url": "https://github.com/iarna/gauge/issues" + }, + "homepage": "https://github.com/iarna/gauge", + "dependencies": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + }, + "devDependencies": { + "readable-stream": "^2.0.6", + "require-inject": "^1.4.0", + "standard": "^7.1.2", + "tap": "^5.7.2", + "through2": "^2.0.0" + }, + "files": [ + "base-theme.js", + "CHANGELOG.md", + "error.js", + "has-color.js", + "index.js", + "LICENSE", + "package.json", + "plumbing.js", + "process.js", + "progress-bar.js", + "README.md", + "render-template.js", + "set-immediate.js", + "set-interval.js", + "spin.js", + "template-item.js", + "theme-set.js", + "themes.js", + "wide-truncate.js" + ] +} diff --git a/node_modules/another-npm-registry-client/node_modules/gauge/plumbing.js b/node_modules/another-npm-registry-client/node_modules/gauge/plumbing.js new file mode 100644 index 0000000..1afb4af --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/gauge/plumbing.js @@ -0,0 +1,48 @@ +'use strict' +var consoleControl = require('console-control-strings') +var renderTemplate = require('./render-template.js') +var validate = require('aproba') + +var Plumbing = module.exports = function (theme, template, width) { + if (!width) width = 80 + validate('OAN', [theme, template, width]) + this.showing = false + this.theme = theme + this.width = width + this.template = template +} +Plumbing.prototype = {} + +Plumbing.prototype.setTheme = function (theme) { + validate('O', [theme]) + this.theme = theme +} + +Plumbing.prototype.setTemplate = function (template) { + validate('A', [template]) + this.template = template +} + +Plumbing.prototype.setWidth = function (width) { + validate('N', [width]) + this.width = width +} + +Plumbing.prototype.hide = function () { + return consoleControl.gotoSOL() + consoleControl.eraseLine() +} + +Plumbing.prototype.hideCursor = consoleControl.hideCursor + +Plumbing.prototype.showCursor = consoleControl.showCursor + +Plumbing.prototype.show = function (status) { + var values = Object.create(this.theme) + for (var key in status) { + values[key] = status[key] + } + + return renderTemplate(this.width, this.template, values).trim() + + consoleControl.color('reset') + + consoleControl.eraseLine() + consoleControl.gotoSOL() +} diff --git a/node_modules/another-npm-registry-client/node_modules/gauge/process.js b/node_modules/another-npm-registry-client/node_modules/gauge/process.js new file mode 100644 index 0000000..05e8569 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/gauge/process.js @@ -0,0 +1,3 @@ +'use strict' +// this exists so we can replace it during testing +module.exports = process diff --git a/node_modules/another-npm-registry-client/node_modules/gauge/progress-bar.js b/node_modules/another-npm-registry-client/node_modules/gauge/progress-bar.js new file mode 100644 index 0000000..7f8dd68 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/gauge/progress-bar.js @@ -0,0 +1,35 @@ +'use strict' +var validate = require('aproba') +var renderTemplate = require('./render-template.js') +var wideTruncate = require('./wide-truncate') +var stringWidth = require('string-width') + +module.exports = function (theme, width, completed) { + validate('ONN', [theme, width, completed]) + if (completed < 0) completed = 0 + if (completed > 1) completed = 1 + if (width <= 0) return '' + var sofar = Math.round(width * completed) + var rest = width - sofar + var template = [ + {type: 'complete', value: repeat(theme.complete, sofar), length: sofar}, + {type: 'remaining', value: repeat(theme.remaining, rest), length: rest} + ] + return renderTemplate(width, template, theme) +} + +// lodash's way of repeating +function repeat (string, width) { + var result = '' + var n = width + do { + if (n % 2) { + result += string + } + n = Math.floor(n / 2) + /*eslint no-self-assign: 0*/ + string += string + } while (n && stringWidth(result) < width) + + return wideTruncate(result, width) +} diff --git a/node_modules/another-npm-registry-client/node_modules/gauge/render-template.js b/node_modules/another-npm-registry-client/node_modules/gauge/render-template.js new file mode 100644 index 0000000..3261bfb --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/gauge/render-template.js @@ -0,0 +1,181 @@ +'use strict' +var align = require('wide-align') +var validate = require('aproba') +var objectAssign = require('object-assign') +var wideTruncate = require('./wide-truncate') +var error = require('./error') +var TemplateItem = require('./template-item') + +function renderValueWithValues (values) { + return function (item) { + return renderValue(item, values) + } +} + +var renderTemplate = module.exports = function (width, template, values) { + var items = prepareItems(width, template, values) + var rendered = items.map(renderValueWithValues(values)).join('') + return align.left(wideTruncate(rendered, width), width) +} + +function preType (item) { + var cappedTypeName = item.type[0].toUpperCase() + item.type.slice(1) + return 'pre' + cappedTypeName +} + +function postType (item) { + var cappedTypeName = item.type[0].toUpperCase() + item.type.slice(1) + return 'post' + cappedTypeName +} + +function hasPreOrPost (item, values) { + if (!item.type) return + return values[preType(item)] || values[postType(item)] +} + +function generatePreAndPost (baseItem, parentValues) { + var item = objectAssign({}, baseItem) + var values = Object.create(parentValues) + var template = [] + var pre = preType(item) + var post = postType(item) + if (values[pre]) { + template.push({value: values[pre]}) + values[pre] = null + } + item.minLength = null + item.length = null + item.maxLength = null + template.push(item) + values[item.type] = values[item.type] + if (values[post]) { + template.push({value: values[post]}) + values[post] = null + } + return function ($1, $2, length) { + return renderTemplate(length, template, values) + } +} + +function prepareItems (width, template, values) { + function cloneAndObjectify (item, index, arr) { + var cloned = new TemplateItem(item, width) + var type = cloned.type + if (cloned.value == null) { + if (!(type in values)) { + if (cloned.default == null) { + throw new error.MissingTemplateValue(cloned, values) + } else { + cloned.value = cloned.default + } + } else { + cloned.value = values[type] + } + } + if (cloned.value == null || cloned.value === '') return null + cloned.index = index + cloned.first = index === 0 + cloned.last = index === arr.length - 1 + if (hasPreOrPost(cloned, values)) cloned.value = generatePreAndPost(cloned, values) + return cloned + } + + var output = template.map(cloneAndObjectify).filter(function (item) { return item != null }) + + var outputLength = 0 + var remainingSpace = width + var variableCount = output.length + + function consumeSpace (length) { + if (length > remainingSpace) length = remainingSpace + outputLength += length + remainingSpace -= length + } + + function finishSizing (item, length) { + if (item.finished) throw new error.Internal('Tried to finish template item that was already finished') + if (length === Infinity) throw new error.Internal('Length of template item cannot be infinity') + if (length != null) item.length = length + item.minLength = null + item.maxLength = null + --variableCount + item.finished = true + if (item.length == null) item.length = item.getBaseLength() + if (item.length == null) throw new error.Internal('Finished template items must have a length') + consumeSpace(item.getLength()) + } + + output.forEach(function (item) { + if (!item.kerning) return + var prevPadRight = item.first ? 0 : output[item.index - 1].padRight + if (!item.first && prevPadRight < item.kerning) item.padLeft = item.kerning - prevPadRight + if (!item.last) item.padRight = item.kerning + }) + + // Finish any that have a fixed (literal or intuited) length + output.forEach(function (item) { + if (item.getBaseLength() == null) return + finishSizing(item) + }) + + var resized = 0 + var resizing + var hunkSize + do { + resizing = false + hunkSize = Math.round(remainingSpace / variableCount) + output.forEach(function (item) { + if (item.finished) return + if (!item.maxLength) return + if (item.getMaxLength() < hunkSize) { + finishSizing(item, item.maxLength) + resizing = true + } + }) + } while (resizing && resized++ < output.length) + if (resizing) throw new error.Internal('Resize loop iterated too many times while determining maxLength') + + resized = 0 + do { + resizing = false + hunkSize = Math.round(remainingSpace / variableCount) + output.forEach(function (item) { + if (item.finished) return + if (!item.minLength) return + if (item.getMinLength() >= hunkSize) { + finishSizing(item, item.minLength) + resizing = true + } + }) + } while (resizing && resized++ < output.length) + if (resizing) throw new error.Internal('Resize loop iterated too many times while determining minLength') + + hunkSize = Math.round(remainingSpace / variableCount) + output.forEach(function (item) { + if (item.finished) return + finishSizing(item, hunkSize) + }) + + return output +} + +function renderFunction (item, values, length) { + validate('OON', arguments) + if (item.type) { + return item.value(values, values[item.type + 'Theme'] || {}, length) + } else { + return item.value(values, {}, length) + } +} + +function renderValue (item, values) { + var length = item.getBaseLength() + var value = typeof item.value === 'function' ? renderFunction(item, values, length) : item.value + if (value == null || value === '') return '' + var alignWith = align[item.align] || align.left + var leftPadding = item.padLeft ? align.left('', item.padLeft) : '' + var rightPadding = item.padRight ? align.right('', item.padRight) : '' + var truncated = wideTruncate(String(value), length) + var aligned = alignWith(truncated, length) + return leftPadding + aligned + rightPadding +} diff --git a/node_modules/another-npm-registry-client/node_modules/gauge/set-immediate.js b/node_modules/another-npm-registry-client/node_modules/gauge/set-immediate.js new file mode 100644 index 0000000..6650a48 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/gauge/set-immediate.js @@ -0,0 +1,7 @@ +'use strict' +var process = require('./process') +try { + module.exports = setImmediate +} catch (ex) { + module.exports = process.nextTick +} diff --git a/node_modules/another-npm-registry-client/node_modules/gauge/set-interval.js b/node_modules/another-npm-registry-client/node_modules/gauge/set-interval.js new file mode 100644 index 0000000..5761987 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/gauge/set-interval.js @@ -0,0 +1,3 @@ +'use strict' +// this exists so we can replace it during testing +module.exports = setInterval diff --git a/node_modules/another-npm-registry-client/node_modules/gauge/spin.js b/node_modules/another-npm-registry-client/node_modules/gauge/spin.js new file mode 100644 index 0000000..34142ee --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/gauge/spin.js @@ -0,0 +1,5 @@ +'use strict' + +module.exports = function spin (spinstr, spun) { + return spinstr[spun % spinstr.length] +} diff --git a/node_modules/another-npm-registry-client/node_modules/gauge/template-item.js b/node_modules/another-npm-registry-client/node_modules/gauge/template-item.js new file mode 100644 index 0000000..e46f447 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/gauge/template-item.js @@ -0,0 +1,73 @@ +'use strict' +var stringWidth = require('string-width') + +module.exports = TemplateItem + +function isPercent (num) { + if (typeof num !== 'string') return false + return num.slice(-1) === '%' +} + +function percent (num) { + return Number(num.slice(0, -1)) / 100 +} + +function TemplateItem (values, outputLength) { + this.overallOutputLength = outputLength + this.finished = false + this.type = null + this.value = null + this.length = null + this.maxLength = null + this.minLength = null + this.kerning = null + this.align = 'left' + this.padLeft = 0 + this.padRight = 0 + this.index = null + this.first = null + this.last = null + if (typeof values === 'string') { + this.value = values + } else { + for (var prop in values) this[prop] = values[prop] + } + // Realize percents + if (isPercent(this.length)) { + this.length = Math.round(this.overallOutputLength * percent(this.length)) + } + if (isPercent(this.minLength)) { + this.minLength = Math.round(this.overallOutputLength * percent(this.minLength)) + } + if (isPercent(this.maxLength)) { + this.maxLength = Math.round(this.overallOutputLength * percent(this.maxLength)) + } + return this +} + +TemplateItem.prototype = {} + +TemplateItem.prototype.getBaseLength = function () { + var length = this.length + if (length == null && typeof this.value === 'string' && this.maxLength == null && this.minLength == null) { + length = stringWidth(this.value) + } + return length +} + +TemplateItem.prototype.getLength = function () { + var length = this.getBaseLength() + if (length == null) return null + return length + this.padLeft + this.padRight +} + +TemplateItem.prototype.getMaxLength = function () { + if (this.maxLength == null) return null + return this.maxLength + this.padLeft + this.padRight +} + +TemplateItem.prototype.getMinLength = function () { + if (this.minLength == null) return null + return this.minLength + this.padLeft + this.padRight +} + diff --git a/node_modules/another-npm-registry-client/node_modules/gauge/theme-set.js b/node_modules/another-npm-registry-client/node_modules/gauge/theme-set.js new file mode 100644 index 0000000..68971d5 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/gauge/theme-set.js @@ -0,0 +1,115 @@ +'use strict' +var objectAssign = require('object-assign') + +module.exports = function () { + return ThemeSetProto.newThemeSet() +} + +var ThemeSetProto = {} + +ThemeSetProto.baseTheme = require('./base-theme.js') + +ThemeSetProto.newTheme = function (parent, theme) { + if (!theme) { + theme = parent + parent = this.baseTheme + } + return objectAssign({}, parent, theme) +} + +ThemeSetProto.getThemeNames = function () { + return Object.keys(this.themes) +} + +ThemeSetProto.addTheme = function (name, parent, theme) { + this.themes[name] = this.newTheme(parent, theme) +} + +ThemeSetProto.addToAllThemes = function (theme) { + var themes = this.themes + Object.keys(themes).forEach(function (name) { + objectAssign(themes[name], theme) + }) + objectAssign(this.baseTheme, theme) +} + +ThemeSetProto.getTheme = function (name) { + if (!this.themes[name]) throw this.newMissingThemeError(name) + return this.themes[name] +} + +ThemeSetProto.setDefault = function (opts, name) { + if (name == null) { + name = opts + opts = {} + } + var platform = opts.platform == null ? 'fallback' : opts.platform + var hasUnicode = !!opts.hasUnicode + var hasColor = !!opts.hasColor + if (!this.defaults[platform]) this.defaults[platform] = {true: {}, false: {}} + this.defaults[platform][hasUnicode][hasColor] = name +} + +ThemeSetProto.getDefault = function (opts) { + if (!opts) opts = {} + var platformName = opts.platform || process.platform + var platform = this.defaults[platformName] || this.defaults.fallback + var hasUnicode = !!opts.hasUnicode + var hasColor = !!opts.hasColor + if (!platform) throw this.newMissingDefaultThemeError(platformName, hasUnicode, hasColor) + if (!platform[hasUnicode][hasColor]) { + if (hasUnicode && hasColor && platform[!hasUnicode][hasColor]) { + hasUnicode = false + } else if (hasUnicode && hasColor && platform[hasUnicode][!hasColor]) { + hasColor = false + } else if (hasUnicode && hasColor && platform[!hasUnicode][!hasColor]) { + hasUnicode = false + hasColor = false + } else if (hasUnicode && !hasColor && platform[!hasUnicode][hasColor]) { + hasUnicode = false + } else if (!hasUnicode && hasColor && platform[hasUnicode][!hasColor]) { + hasColor = false + } else if (platform === this.defaults.fallback) { + throw this.newMissingDefaultThemeError(platformName, hasUnicode, hasColor) + } + } + if (platform[hasUnicode][hasColor]) { + return this.getTheme(platform[hasUnicode][hasColor]) + } else { + return this.getDefault(objectAssign({}, opts, {platform: 'fallback'})) + } +} + +ThemeSetProto.newMissingThemeError = function newMissingThemeError (name) { + var err = new Error('Could not find a gauge theme named "' + name + '"') + Error.captureStackTrace.call(err, newMissingThemeError) + err.theme = name + err.code = 'EMISSINGTHEME' + return err +} + +ThemeSetProto.newMissingDefaultThemeError = function newMissingDefaultThemeError (platformName, hasUnicode, hasColor) { + var err = new Error( + 'Could not find a gauge theme for your platform/unicode/color use combo:\n' + + ' platform = ' + platformName + '\n' + + ' hasUnicode = ' + hasUnicode + '\n' + + ' hasColor = ' + hasColor) + Error.captureStackTrace.call(err, newMissingDefaultThemeError) + err.platform = platformName + err.hasUnicode = hasUnicode + err.hasColor = hasColor + err.code = 'EMISSINGTHEME' + return err +} + +ThemeSetProto.newThemeSet = function () { + var themeset = function (opts) { + return themeset.getDefault(opts) + } + return objectAssign(themeset, ThemeSetProto, { + themes: objectAssign({}, this.themes), + baseTheme: objectAssign({}, this.baseTheme), + defaults: JSON.parse(JSON.stringify(this.defaults || {})) + }) +} + diff --git a/node_modules/another-npm-registry-client/node_modules/gauge/themes.js b/node_modules/another-npm-registry-client/node_modules/gauge/themes.js new file mode 100644 index 0000000..eb5a4f5 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/gauge/themes.js @@ -0,0 +1,54 @@ +'use strict' +var consoleControl = require('console-control-strings') +var ThemeSet = require('./theme-set.js') + +var themes = module.exports = new ThemeSet() + +themes.addTheme('ASCII', { + preProgressbar: '[', + postProgressbar: ']', + progressbarTheme: { + complete: '#', + remaining: '.' + }, + activityIndicatorTheme: '-\\|/', + preSubsection: '>' +}) + +themes.addTheme('colorASCII', themes.getTheme('ASCII'), { + progressbarTheme: { + preComplete: consoleControl.color('inverse'), + complete: ' ', + postComplete: consoleControl.color('stopInverse'), + preRemaining: consoleControl.color('brightBlack'), + remaining: '.', + postRemaining: consoleControl.color('reset') + } +}) + +themes.addTheme('brailleSpinner', { + preProgressbar: '⸨', + postProgressbar: '⸩', + progressbarTheme: { + complete: '░', + remaining: '⠂' + }, + activityIndicatorTheme: '⠋⠙⠹⠸⠼⠴⠦⠧⠇⠏', + preSubsection: '>' +}) + +themes.addTheme('colorBrailleSpinner', themes.getTheme('brailleSpinner'), { + progressbarTheme: { + preComplete: consoleControl.color('inverse'), + complete: ' ', + postComplete: consoleControl.color('stopInverse'), + preRemaining: consoleControl.color('brightBlack'), + remaining: '░', + postRemaining: consoleControl.color('reset') + } +}) + +themes.setDefault({}, 'ASCII') +themes.setDefault({hasColor: true}, 'colorASCII') +themes.setDefault({platform: 'darwin', hasUnicode: true}, 'brailleSpinner') +themes.setDefault({platform: 'darwin', hasUnicode: true, hasColor: true}, 'colorBrailleSpinner') diff --git a/node_modules/another-npm-registry-client/node_modules/gauge/wide-truncate.js b/node_modules/another-npm-registry-client/node_modules/gauge/wide-truncate.js new file mode 100644 index 0000000..c531bc4 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/gauge/wide-truncate.js @@ -0,0 +1,25 @@ +'use strict' +var stringWidth = require('string-width') +var stripAnsi = require('strip-ansi') + +module.exports = wideTruncate + +function wideTruncate (str, target) { + if (stringWidth(str) === 0) return str + if (target <= 0) return '' + if (stringWidth(str) <= target) return str + + // We compute the number of bytes of ansi sequences here and add + // that to our initial truncation to ensure that we don't slice one + // that we want to keep in half. + var noAnsi = stripAnsi(str) + var ansiSize = str.length + noAnsi.length + var truncated = str.slice(0, target + ansiSize) + + // we have to shrink the result to account for our ansi sequence buffer + // (if an ansi sequence was truncated) and double width characters. + while (stringWidth(truncated) > target) { + truncated = truncated.slice(0, -1) + } + return truncated +} diff --git a/node_modules/another-npm-registry-client/node_modules/is-fullwidth-code-point/index.js b/node_modules/another-npm-registry-client/node_modules/is-fullwidth-code-point/index.js new file mode 100644 index 0000000..a7d3e38 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/is-fullwidth-code-point/index.js @@ -0,0 +1,46 @@ +'use strict'; +var numberIsNan = require('number-is-nan'); + +module.exports = function (x) { + if (numberIsNan(x)) { + return false; + } + + // https://github.com/nodejs/io.js/blob/cff7300a578be1b10001f2d967aaedc88aee6402/lib/readline.js#L1369 + + // code points are derived from: + // http://www.unix.org/Public/UNIDATA/EastAsianWidth.txt + if (x >= 0x1100 && ( + x <= 0x115f || // Hangul Jamo + 0x2329 === x || // LEFT-POINTING ANGLE BRACKET + 0x232a === x || // RIGHT-POINTING ANGLE BRACKET + // CJK Radicals Supplement .. Enclosed CJK Letters and Months + (0x2e80 <= x && x <= 0x3247 && x !== 0x303f) || + // Enclosed CJK Letters and Months .. CJK Unified Ideographs Extension A + 0x3250 <= x && x <= 0x4dbf || + // CJK Unified Ideographs .. Yi Radicals + 0x4e00 <= x && x <= 0xa4c6 || + // Hangul Jamo Extended-A + 0xa960 <= x && x <= 0xa97c || + // Hangul Syllables + 0xac00 <= x && x <= 0xd7a3 || + // CJK Compatibility Ideographs + 0xf900 <= x && x <= 0xfaff || + // Vertical Forms + 0xfe10 <= x && x <= 0xfe19 || + // CJK Compatibility Forms .. Small Form Variants + 0xfe30 <= x && x <= 0xfe6b || + // Halfwidth and Fullwidth Forms + 0xff01 <= x && x <= 0xff60 || + 0xffe0 <= x && x <= 0xffe6 || + // Kana Supplement + 0x1b000 <= x && x <= 0x1b001 || + // Enclosed Ideographic Supplement + 0x1f200 <= x && x <= 0x1f251 || + // CJK Unified Ideographs Extension B .. Tertiary Ideographic Plane + 0x20000 <= x && x <= 0x3fffd)) { + return true; + } + + return false; +} diff --git a/node_modules/another-npm-registry-client/node_modules/is-fullwidth-code-point/license b/node_modules/another-npm-registry-client/node_modules/is-fullwidth-code-point/license new file mode 100644 index 0000000..654d0bf --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/is-fullwidth-code-point/license @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/node_modules/another-npm-registry-client/node_modules/is-fullwidth-code-point/package.json b/node_modules/another-npm-registry-client/node_modules/is-fullwidth-code-point/package.json new file mode 100644 index 0000000..b678d40 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/is-fullwidth-code-point/package.json @@ -0,0 +1,45 @@ +{ + "name": "is-fullwidth-code-point", + "version": "1.0.0", + "description": "Check if the character represented by a given Unicode code point is fullwidth", + "license": "MIT", + "repository": "sindresorhus/is-fullwidth-code-point", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=0.10.0" + }, + "scripts": { + "test": "node test.js" + }, + "files": [ + "index.js" + ], + "keywords": [ + "fullwidth", + "full-width", + "full", + "width", + "unicode", + "character", + "char", + "string", + "str", + "codepoint", + "code", + "point", + "is", + "detect", + "check" + ], + "dependencies": { + "number-is-nan": "^1.0.0" + }, + "devDependencies": { + "ava": "0.0.4", + "code-point-at": "^1.0.0" + } +} diff --git a/node_modules/another-npm-registry-client/node_modules/is-fullwidth-code-point/readme.md b/node_modules/another-npm-registry-client/node_modules/is-fullwidth-code-point/readme.md new file mode 100644 index 0000000..4936464 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/is-fullwidth-code-point/readme.md @@ -0,0 +1,39 @@ +# is-fullwidth-code-point [![Build Status](https://travis-ci.org/sindresorhus/is-fullwidth-code-point.svg?branch=master)](https://travis-ci.org/sindresorhus/is-fullwidth-code-point) + +> Check if the character represented by a given [Unicode code point](https://en.wikipedia.org/wiki/Code_point) is [fullwidth](https://en.wikipedia.org/wiki/Halfwidth_and_fullwidth_forms) + + +## Install + +``` +$ npm install --save is-fullwidth-code-point +``` + + +## Usage + +```js +var isFullwidthCodePoint = require('is-fullwidth-code-point'); + +isFullwidthCodePoint('谢'.codePointAt()); +//=> true + +isFullwidthCodePoint('a'.codePointAt()); +//=> false +``` + + +## API + +### isFullwidthCodePoint(input) + +#### input + +Type: `number` + +[Code point](https://en.wikipedia.org/wiki/Code_point) of a character. + + +## License + +MIT © [Sindre Sorhus](http://sindresorhus.com) diff --git a/node_modules/another-npm-registry-client/node_modules/npmlog/CHANGELOG.md b/node_modules/another-npm-registry-client/node_modules/npmlog/CHANGELOG.md new file mode 100644 index 0000000..51e4abc --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/npmlog/CHANGELOG.md @@ -0,0 +1,49 @@ +### v4.0.2 + +* Added installation instructions. + +### v4.0.1 + +* Fix bugs where `log.progressEnabled` got out of sync with how `gauge` kept + track of these things resulting in a progressbar that couldn't be disabled. + +### v4.0.0 + +* Allow creating log levels that are an empty string or 0. + +### v3.1.2 + +* Update to `gauge@1.6.0` adding support for default values for template + items. + +### v3.1.1 + +* Update to `gauge@1.5.3` to fix to `1.x` compatibility when it comes to + when a progress bar is enabled. In `1.x` if you didn't have a TTY the + progress bar was never shown. In `2.x` it merely defaults to disabled, + but you can enable it explicitly if you still want progress updates. + +### v3.1.0 + +* Update to `gauge@2.5.2`: + * Updates the `signal-exit` dependency which fixes an incompatibility with + the node profiler. + * Uses externalizes its ansi code generation in `console-control-strings` +* Make the default progress bar include the last line printed, colored as it + would be when printing to a tty. + +### v3.0.0 + +* Switch to `gauge@2.0.0`, for better performance, better look. +* Set stderr/stdout blocking if they're tty's, so that we can hide a + progress bar going to stderr and then safely print to stdout. Without + this the two can end up overlapping producing confusing and sometimes + corrupted output. + +### v2.0.0 + +* Make the `error` event non-fatal so that folks can use it as a prefix. + +### v1.0.0 + +* Add progress bar with `gauge@1.1.0` diff --git a/node_modules/another-npm-registry-client/node_modules/npmlog/LICENSE b/node_modules/another-npm-registry-client/node_modules/npmlog/LICENSE new file mode 100644 index 0000000..19129e3 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/npmlog/LICENSE @@ -0,0 +1,15 @@ +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. diff --git a/node_modules/another-npm-registry-client/node_modules/npmlog/README.md b/node_modules/another-npm-registry-client/node_modules/npmlog/README.md new file mode 100644 index 0000000..268a4af --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/npmlog/README.md @@ -0,0 +1,216 @@ +# npmlog + +The logger util that npm uses. + +This logger is very basic. It does the logging for npm. It supports +custom levels and colored output. + +By default, logs are written to stderr. If you want to send log messages +to outputs other than streams, then you can change the `log.stream` +member, or you can just listen to the events that it emits, and do +whatever you want with them. + +# Installation + +```console +npm install npmlog --save +``` + +# Basic Usage + +```javascript +var log = require('npmlog') + +// additional stuff ---------------------------+ +// message ----------+ | +// prefix ----+ | | +// level -+ | | | +// v v v v + log.info('fyi', 'I have a kitty cat: %j', myKittyCat) +``` + +## log.level + +* {String} + +The level to display logs at. Any logs at or above this level will be +displayed. The special level `silent` will prevent anything from being +displayed ever. + +## log.record + +* {Array} + +An array of all the log messages that have been entered. + +## log.maxRecordSize + +* {Number} + +The maximum number of records to keep. If log.record gets bigger than +10% over this value, then it is sliced down to 90% of this value. + +The reason for the 10% window is so that it doesn't have to resize a +large array on every log entry. + +## log.prefixStyle + +* {Object} + +A style object that specifies how prefixes are styled. (See below) + +## log.headingStyle + +* {Object} + +A style object that specifies how the heading is styled. (See below) + +## log.heading + +* {String} Default: "" + +If set, a heading that is printed at the start of every line. + +## log.stream + +* {Stream} Default: `process.stderr` + +The stream where output is written. + +## log.enableColor() + +Force colors to be used on all messages, regardless of the output +stream. + +## log.disableColor() + +Disable colors on all messages. + +## log.enableProgress() + +Enable the display of log activity spinner and progress bar + +## log.disableProgress() + +Disable the display of a progress bar + +## log.enableUnicode() + +Force the unicode theme to be used for the progress bar. + +## log.disableUnicode() + +Disable the use of unicode in the progress bar. + +## log.setGaugeTemplate(template) + +Set a template for outputting the progress bar. See the [gauge documentation] for details. + +[gauge documentation]: https://npmjs.com/package/gauge + +## log.setGaugeThemeset(themes) + +Select a themeset to pick themes from for the progress bar. See the [gauge documentation] for details. + +## log.pause() + +Stop emitting messages to the stream, but do not drop them. + +## log.resume() + +Emit all buffered messages that were written while paused. + +## log.log(level, prefix, message, ...) + +* `level` {String} The level to emit the message at +* `prefix` {String} A string prefix. Set to "" to skip. +* `message...` Arguments to `util.format` + +Emit a log message at the specified level. + +## log\[level](prefix, message, ...) + +For example, + +* log.silly(prefix, message, ...) +* log.verbose(prefix, message, ...) +* log.info(prefix, message, ...) +* log.http(prefix, message, ...) +* log.warn(prefix, message, ...) +* log.error(prefix, message, ...) + +Like `log.log(level, prefix, message, ...)`. In this way, each level is +given a shorthand, so you can do `log.info(prefix, message)`. + +## log.addLevel(level, n, style, disp) + +* `level` {String} Level indicator +* `n` {Number} The numeric level +* `style` {Object} Object with fg, bg, inverse, etc. +* `disp` {String} Optional replacement for `level` in the output. + +Sets up a new level with a shorthand function and so forth. + +Note that if the number is `Infinity`, then setting the level to that +will cause all log messages to be suppressed. If the number is +`-Infinity`, then the only way to show it is to enable all log messages. + +## log.newItem(name, todo, weight) + +* `name` {String} Optional; progress item name. +* `todo` {Number} Optional; total amount of work to be done. Default 0. +* `weight` {Number} Optional; the weight of this item relative to others. Default 1. + +This adds a new `are-we-there-yet` item tracker to the progress tracker. The +object returned has the `log[level]` methods but is otherwise an +`are-we-there-yet` `Tracker` object. + +## log.newStream(name, todo, weight) + +This adds a new `are-we-there-yet` stream tracker to the progress tracker. The +object returned has the `log[level]` methods but is otherwise an +`are-we-there-yet` `TrackerStream` object. + +## log.newGroup(name, weight) + +This adds a new `are-we-there-yet` tracker group to the progress tracker. The +object returned has the `log[level]` methods but is otherwise an +`are-we-there-yet` `TrackerGroup` object. + +# Events + +Events are all emitted with the message object. + +* `log` Emitted for all messages +* `log.` Emitted for all messages with the `` level. +* `` Messages with prefixes also emit their prefix as an event. + +# Style Objects + +Style objects can have the following fields: + +* `fg` {String} Color for the foreground text +* `bg` {String} Color for the background +* `bold`, `inverse`, `underline` {Boolean} Set the associated property +* `bell` {Boolean} Make a noise (This is pretty annoying, probably.) + +# Message Objects + +Every log event is emitted with a message object, and the `log.record` +list contains all of them that have been created. They have the +following fields: + +* `id` {Number} +* `level` {String} +* `prefix` {String} +* `message` {String} Result of `util.format()` +* `messageRaw` {Array} Arguments to `util.format()` + +# Blocking TTYs + +We use [`set-blocking`](https://npmjs.com/package/set-blocking) to set +stderr and stdout blocking if they are tty's and have the setBlocking call. +This is a work around for an issue in early versions of Node.js 6.x, which +made stderr and stdout non-blocking on OSX. (They are always blocking +Windows and were never blocking on Linux.) `npmlog` needs them to be blocking +so that it can allow output to stdout and stderr to be interlaced. diff --git a/node_modules/another-npm-registry-client/node_modules/npmlog/log.js b/node_modules/another-npm-registry-client/node_modules/npmlog/log.js new file mode 100644 index 0000000..341f331 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/npmlog/log.js @@ -0,0 +1,309 @@ +'use strict' +var Progress = require('are-we-there-yet') +var Gauge = require('gauge') +var EE = require('events').EventEmitter +var log = exports = module.exports = new EE() +var util = require('util') + +var setBlocking = require('set-blocking') +var consoleControl = require('console-control-strings') + +setBlocking(true) +var stream = process.stderr +Object.defineProperty(log, 'stream', { + set: function (newStream) { + stream = newStream + if (this.gauge) this.gauge.setWriteTo(stream, stream) + }, + get: function () { + return stream + } +}) + +// by default, decide based on tty-ness. +var colorEnabled +log.useColor = function () { + return colorEnabled != null ? colorEnabled : stream.isTTY +} + +log.enableColor = function () { + colorEnabled = true + this.gauge.setTheme({hasColor: colorEnabled, hasUnicode: unicodeEnabled}) +} +log.disableColor = function () { + colorEnabled = false + this.gauge.setTheme({hasColor: colorEnabled, hasUnicode: unicodeEnabled}) +} + +// default level +log.level = 'info' + +log.gauge = new Gauge(stream, { + enabled: false, // no progress bars unless asked + theme: {hasColor: log.useColor()}, + template: [ + {type: 'progressbar', length: 20}, + {type: 'activityIndicator', kerning: 1, length: 1}, + {type: 'section', default: ''}, + ':', + {type: 'logline', kerning: 1, default: ''} + ] +}) + +log.tracker = new Progress.TrackerGroup() + +// we track this separately as we may need to temporarily disable the +// display of the status bar for our own loggy purposes. +log.progressEnabled = log.gauge.isEnabled() + +var unicodeEnabled + +log.enableUnicode = function () { + unicodeEnabled = true + this.gauge.setTheme({hasColor: this.useColor(), hasUnicode: unicodeEnabled}) +} + +log.disableUnicode = function () { + unicodeEnabled = false + this.gauge.setTheme({hasColor: this.useColor(), hasUnicode: unicodeEnabled}) +} + +log.setGaugeThemeset = function (themes) { + this.gauge.setThemeset(themes) +} + +log.setGaugeTemplate = function (template) { + this.gauge.setTemplate(template) +} + +log.enableProgress = function () { + if (this.progressEnabled) return + this.progressEnabled = true + this.tracker.on('change', this.showProgress) + if (this._pause) return + this.gauge.enable() +} + +log.disableProgress = function () { + if (!this.progressEnabled) return + this.progressEnabled = false + this.tracker.removeListener('change', this.showProgress) + this.gauge.disable() +} + +var trackerConstructors = ['newGroup', 'newItem', 'newStream'] + +var mixinLog = function (tracker) { + // mixin the public methods from log into the tracker + // (except: conflicts and one's we handle specially) + Object.keys(log).forEach(function (P) { + if (P[0] === '_') return + if (trackerConstructors.filter(function (C) { return C === P }).length) return + if (tracker[P]) return + if (typeof log[P] !== 'function') return + var func = log[P] + tracker[P] = function () { + return func.apply(log, arguments) + } + }) + // if the new tracker is a group, make sure any subtrackers get + // mixed in too + if (tracker instanceof Progress.TrackerGroup) { + trackerConstructors.forEach(function (C) { + var func = tracker[C] + tracker[C] = function () { return mixinLog(func.apply(tracker, arguments)) } + }) + } + return tracker +} + +// Add tracker constructors to the top level log object +trackerConstructors.forEach(function (C) { + log[C] = function () { return mixinLog(this.tracker[C].apply(this.tracker, arguments)) } +}) + +log.clearProgress = function (cb) { + if (!this.progressEnabled) return cb && process.nextTick(cb) + this.gauge.hide(cb) +} + +log.showProgress = function (name, completed) { + if (!this.progressEnabled) return + var values = {} + if (name) values.section = name + var last = log.record[log.record.length - 1] + if (last) { + values.subsection = last.prefix + var disp = log.disp[last.level] || last.level + var logline = this._format(disp, log.style[last.level]) + if (last.prefix) logline += ' ' + this._format(last.prefix, this.prefixStyle) + logline += ' ' + last.message.split(/\r?\n/)[0] + values.logline = logline + } + values.completed = completed || this.tracker.completed() + this.gauge.show(values) +}.bind(log) // bind for use in tracker's on-change listener + +// temporarily stop emitting, but don't drop +log.pause = function () { + this._paused = true + if (this.progressEnabled) this.gauge.disable() +} + +log.resume = function () { + if (!this._paused) return + this._paused = false + + var b = this._buffer + this._buffer = [] + b.forEach(function (m) { + this.emitLog(m) + }, this) + if (this.progressEnabled) this.gauge.enable() +} + +log._buffer = [] + +var id = 0 +log.record = [] +log.maxRecordSize = 10000 +log.log = function (lvl, prefix, message) { + var l = this.levels[lvl] + if (l === undefined) { + return this.emit('error', new Error(util.format( + 'Undefined log level: %j', lvl))) + } + + var a = new Array(arguments.length - 2) + var stack = null + for (var i = 2; i < arguments.length; i++) { + var arg = a[i - 2] = arguments[i] + + // resolve stack traces to a plain string. + if (typeof arg === 'object' && arg && + (arg instanceof Error) && arg.stack) { + + Object.defineProperty(arg, 'stack', { + value: stack = arg.stack + '', + enumerable: true, + writable: true + }) + } + } + if (stack) a.unshift(stack + '\n') + message = util.format.apply(util, a) + + var m = { id: id++, + level: lvl, + prefix: String(prefix || ''), + message: message, + messageRaw: a } + + this.emit('log', m) + this.emit('log.' + lvl, m) + if (m.prefix) this.emit(m.prefix, m) + + this.record.push(m) + var mrs = this.maxRecordSize + var n = this.record.length - mrs + if (n > mrs / 10) { + var newSize = Math.floor(mrs * 0.9) + this.record = this.record.slice(-1 * newSize) + } + + this.emitLog(m) +}.bind(log) + +log.emitLog = function (m) { + if (this._paused) { + this._buffer.push(m) + return + } + if (this.progressEnabled) this.gauge.pulse(m.prefix) + var l = this.levels[m.level] + if (l === undefined) return + if (l < this.levels[this.level]) return + if (l > 0 && !isFinite(l)) return + + // If 'disp' is null or undefined, use the lvl as a default + // Allows: '', 0 as valid disp + var disp = log.disp[m.level] != null ? log.disp[m.level] : m.level + this.clearProgress() + m.message.split(/\r?\n/).forEach(function (line) { + if (this.heading) { + this.write(this.heading, this.headingStyle) + this.write(' ') + } + this.write(disp, log.style[m.level]) + var p = m.prefix || '' + if (p) this.write(' ') + this.write(p, this.prefixStyle) + this.write(' ' + line + '\n') + }, this) + this.showProgress() +} + +log._format = function (msg, style) { + if (!stream) return + + var output = '' + if (this.useColor()) { + style = style || {} + var settings = [] + if (style.fg) settings.push(style.fg) + if (style.bg) settings.push('bg' + style.bg[0].toUpperCase() + style.bg.slice(1)) + if (style.bold) settings.push('bold') + if (style.underline) settings.push('underline') + if (style.inverse) settings.push('inverse') + if (settings.length) output += consoleControl.color(settings) + if (style.beep) output += consoleControl.beep() + } + output += msg + if (this.useColor()) { + output += consoleControl.color('reset') + } + return output +} + +log.write = function (msg, style) { + if (!stream) return + + stream.write(this._format(msg, style)) +} + +log.addLevel = function (lvl, n, style, disp) { + // If 'disp' is null or undefined, use the lvl as a default + if (disp == null) disp = lvl + this.levels[lvl] = n + this.style[lvl] = style + if (!this[lvl]) { + this[lvl] = function () { + var a = new Array(arguments.length + 1) + a[0] = lvl + for (var i = 0; i < arguments.length; i++) { + a[i + 1] = arguments[i] + } + return this.log.apply(this, a) + }.bind(this) + } + this.disp[lvl] = disp +} + +log.prefixStyle = { fg: 'magenta' } +log.headingStyle = { fg: 'white', bg: 'black' } + +log.style = {} +log.levels = {} +log.disp = {} +log.addLevel('silly', -Infinity, { inverse: true }, 'sill') +log.addLevel('verbose', 1000, { fg: 'blue', bg: 'black' }, 'verb') +log.addLevel('info', 2000, { fg: 'green' }) +log.addLevel('timing', 2500, { fg: 'green', bg: 'black' }) +log.addLevel('http', 3000, { fg: 'green', bg: 'black' }) +log.addLevel('notice', 3500, { fg: 'blue', bg: 'black' }) +log.addLevel('warn', 4000, { fg: 'black', bg: 'yellow' }, 'WARN') +log.addLevel('error', 5000, { fg: 'red', bg: 'black' }, 'ERR!') +log.addLevel('silent', Infinity) + +// allow 'error' prefix +log.on('error', function () {}) diff --git a/node_modules/another-npm-registry-client/node_modules/npmlog/package.json b/node_modules/another-npm-registry-client/node_modules/npmlog/package.json new file mode 100644 index 0000000..7220f8e --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/npmlog/package.json @@ -0,0 +1,28 @@ +{ + "author": "Isaac Z. Schlueter (http://blog.izs.me/)", + "name": "npmlog", + "description": "logger for npm", + "version": "4.1.2", + "repository": { + "type": "git", + "url": "https://github.com/npm/npmlog.git" + }, + "main": "log.js", + "files": [ + "log.js" + ], + "scripts": { + "test": "standard && tap test/*.js" + }, + "dependencies": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + }, + "devDependencies": { + "standard": "~7.1.2", + "tap": "~5.7.3" + }, + "license": "ISC" +} diff --git a/node_modules/another-npm-registry-client/node_modules/string-width/index.js b/node_modules/another-npm-registry-client/node_modules/string-width/index.js new file mode 100644 index 0000000..b9bec62 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/string-width/index.js @@ -0,0 +1,37 @@ +'use strict'; +var stripAnsi = require('strip-ansi'); +var codePointAt = require('code-point-at'); +var isFullwidthCodePoint = require('is-fullwidth-code-point'); + +// https://github.com/nodejs/io.js/blob/cff7300a578be1b10001f2d967aaedc88aee6402/lib/readline.js#L1345 +module.exports = function (str) { + if (typeof str !== 'string' || str.length === 0) { + return 0; + } + + var width = 0; + + str = stripAnsi(str); + + for (var i = 0; i < str.length; i++) { + var code = codePointAt(str, i); + + // ignore control characters + if (code <= 0x1f || (code >= 0x7f && code <= 0x9f)) { + continue; + } + + // surrogates + if (code >= 0x10000) { + i++; + } + + if (isFullwidthCodePoint(code)) { + width += 2; + } else { + width++; + } + } + + return width; +}; diff --git a/node_modules/another-npm-registry-client/node_modules/string-width/license b/node_modules/another-npm-registry-client/node_modules/string-width/license new file mode 100644 index 0000000..654d0bf --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/string-width/license @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/node_modules/another-npm-registry-client/node_modules/string-width/package.json b/node_modules/another-npm-registry-client/node_modules/string-width/package.json new file mode 100644 index 0000000..5ba4361 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/string-width/package.json @@ -0,0 +1,56 @@ +{ + "name": "string-width", + "version": "1.0.2", + "description": "Get the visual width of a string - the number of columns required to display it", + "license": "MIT", + "repository": "sindresorhus/string-width", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=0.10.0" + }, + "scripts": { + "test": "xo && ava" + }, + "files": [ + "index.js" + ], + "keywords": [ + "string", + "str", + "character", + "char", + "unicode", + "width", + "visual", + "column", + "columns", + "fullwidth", + "full-width", + "full", + "ansi", + "escape", + "codes", + "cli", + "command-line", + "terminal", + "console", + "cjk", + "chinese", + "japanese", + "korean", + "fixed-width" + ], + "dependencies": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + }, + "devDependencies": { + "ava": "*", + "xo": "*" + } +} diff --git a/node_modules/another-npm-registry-client/node_modules/string-width/readme.md b/node_modules/another-npm-registry-client/node_modules/string-width/readme.md new file mode 100644 index 0000000..1ab42c9 --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/string-width/readme.md @@ -0,0 +1,42 @@ +# string-width [![Build Status](https://travis-ci.org/sindresorhus/string-width.svg?branch=master)](https://travis-ci.org/sindresorhus/string-width) + +> Get the visual width of a string - the number of columns required to display it + +Some Unicode characters are [fullwidth](https://en.wikipedia.org/wiki/Halfwidth_and_fullwidth_forms) and use double the normal width. [ANSI escape codes](http://en.wikipedia.org/wiki/ANSI_escape_code) are stripped and doesn't affect the width. + +Useful to be able to measure the actual width of command-line output. + + +## Install + +``` +$ npm install --save string-width +``` + + +## Usage + +```js +const stringWidth = require('string-width'); + +stringWidth('古'); +//=> 2 + +stringWidth('\u001b[1m古\u001b[22m'); +//=> 2 + +stringWidth('a'); +//=> 1 +``` + + +## Related + +- [string-width-cli](https://github.com/sindresorhus/string-width-cli) - CLI for this module +- [string-length](https://github.com/sindresorhus/string-length) - Get the real length of a string +- [widest-line](https://github.com/sindresorhus/widest-line) - Get the visual width of the widest line in a string + + +## License + +MIT © [Sindre Sorhus](https://sindresorhus.com) diff --git a/node_modules/another-npm-registry-client/node_modules/strip-ansi/index.js b/node_modules/another-npm-registry-client/node_modules/strip-ansi/index.js new file mode 100644 index 0000000..099480f --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/strip-ansi/index.js @@ -0,0 +1,6 @@ +'use strict'; +var ansiRegex = require('ansi-regex')(); + +module.exports = function (str) { + return typeof str === 'string' ? str.replace(ansiRegex, '') : str; +}; diff --git a/node_modules/another-npm-registry-client/node_modules/strip-ansi/license b/node_modules/another-npm-registry-client/node_modules/strip-ansi/license new file mode 100644 index 0000000..654d0bf --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/strip-ansi/license @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/node_modules/another-npm-registry-client/node_modules/strip-ansi/package.json b/node_modules/another-npm-registry-client/node_modules/strip-ansi/package.json new file mode 100644 index 0000000..301685b --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/strip-ansi/package.json @@ -0,0 +1,57 @@ +{ + "name": "strip-ansi", + "version": "3.0.1", + "description": "Strip ANSI escape codes", + "license": "MIT", + "repository": "chalk/strip-ansi", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "maintainers": [ + "Sindre Sorhus (sindresorhus.com)", + "Joshua Boy Nicolai Appelman (jbna.nl)", + "JD Ballard (github.com/qix-)" + ], + "engines": { + "node": ">=0.10.0" + }, + "scripts": { + "test": "xo && ava" + }, + "files": [ + "index.js" + ], + "keywords": [ + "strip", + "trim", + "remove", + "ansi", + "styles", + "color", + "colour", + "colors", + "terminal", + "console", + "string", + "tty", + "escape", + "formatting", + "rgb", + "256", + "shell", + "xterm", + "log", + "logging", + "command-line", + "text" + ], + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "devDependencies": { + "ava": "*", + "xo": "*" + } +} diff --git a/node_modules/another-npm-registry-client/node_modules/strip-ansi/readme.md b/node_modules/another-npm-registry-client/node_modules/strip-ansi/readme.md new file mode 100644 index 0000000..cb7d9ff --- /dev/null +++ b/node_modules/another-npm-registry-client/node_modules/strip-ansi/readme.md @@ -0,0 +1,33 @@ +# strip-ansi [![Build Status](https://travis-ci.org/chalk/strip-ansi.svg?branch=master)](https://travis-ci.org/chalk/strip-ansi) + +> Strip [ANSI escape codes](http://en.wikipedia.org/wiki/ANSI_escape_code) + + +## Install + +``` +$ npm install --save strip-ansi +``` + + +## Usage + +```js +var stripAnsi = require('strip-ansi'); + +stripAnsi('\u001b[4mcake\u001b[0m'); +//=> 'cake' +``` + + +## Related + +- [strip-ansi-cli](https://github.com/chalk/strip-ansi-cli) - CLI for this module +- [has-ansi](https://github.com/chalk/has-ansi) - Check if a string has ANSI escape codes +- [ansi-regex](https://github.com/chalk/ansi-regex) - Regular expression for matching ANSI escape codes +- [chalk](https://github.com/chalk/chalk) - Terminal string styling done right + + +## License + +MIT © [Sindre Sorhus](http://sindresorhus.com) diff --git a/node_modules/another-npm-registry-client/package.json b/node_modules/another-npm-registry-client/package.json new file mode 100644 index 0000000..087a03c --- /dev/null +++ b/node_modules/another-npm-registry-client/package.json @@ -0,0 +1,48 @@ +{ + "author": "Isaac Z. Schlueter (http://blog.izs.me/)", + "name": "another-npm-registry-client", + "description": "Client for the npm registry", + "version": "8.7.0", + "repository": { + "url": "https://github.com/openupm/another-npm-registry-client.git" + }, + "main": "index.js", + "scripts": { + "prerelease": "npm t", + "postrelease": "npm publish && git push --follow-tags", + "pretest": "standard", + "release": "standard-version -s", + "test": "tap --nyc-arg=--all --coverage test/*.js" + }, + "files": [ + "lib", + "index.js" + ], + "dependencies": { + "concat-stream": "^1.5.2", + "graceful-fs": "^4.1.6", + "normalize-package-data": "~1.0.1 || ^2.0.0", + "npm-package-arg": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0", + "once": "^1.3.3", + "request": "^2.74.0", + "retry": "^0.13.1", + "safe-buffer": "^5.1.1", + "semver": "^7.3.5", + "slide": "^1.1.3", + "ssri": "^8.0.1" + }, + "devDependencies": { + "negotiator": "^0.6.3", + "nock": "^13.2.4", + "readable-stream": "^3.6.0", + "require-inject": "^1.4.4", + "rimraf": "^3.0.2", + "standard": "^17.0.0", + "standard-version": "^9.3.2", + "tap": "^16.2.0" + }, + "optionalDependencies": { + "npmlog": "2 || ^3.1.0 || ^4.0.0" + }, + "license": "ISC" +} diff --git a/node_modules/ansi-align/CHANGELOG.md b/node_modules/ansi-align/CHANGELOG.md new file mode 100644 index 0000000..36eeb52 --- /dev/null +++ b/node_modules/ansi-align/CHANGELOG.md @@ -0,0 +1,58 @@ +# Changelog + +All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines. + +### [3.0.1](https://github.com/nexdrew/ansi-align/compare/v3.0.0...v3.0.1) (2021-09-27) + + +### Bug Fixes + +* **package:** update string-width to version 4.1.0 ([#52](https://github.com/nexdrew/ansi-align/issues/52)) ([ab5b733](https://github.com/nexdrew/ansi-align/commit/ab5b733b1c30eef87b75e15459f2216db28d7ed3)) + + +# [3.0.0](https://github.com/nexdrew/ansi-align/compare/v2.0.0...v3.0.0) (2018-12-17) + + +### Bug Fixes + +* **package:** update string-width to version 3.0.0 ([#50](https://github.com/nexdrew/ansi-align/issues/50)) ([67f0d8f](https://github.com/nexdrew/ansi-align/commit/67f0d8f)) + + +### BREAKING CHANGES + +* **package:** Node 4 no longer supported, please update to Node 6+ or use ansi-align@2.0.0 + + + + +# [2.0.0](https://github.com/nexdrew/ansi-align/compare/v1.1.0...v2.0.0) (2017-05-01) + + +### Features + +* ES2015ify, dropping support for Node <4 ([#30](https://github.com/nexdrew/ansi-align/issues/30)) ([7b43f48](https://github.com/nexdrew/ansi-align/commit/7b43f48)) + + +### BREAKING CHANGES + +* Node 0.10 or 0.12 no longer supported, please update to Node 4+ or use ansi-align@1.1.0 + + + + +# [1.1.0](https://github.com/nexdrew/ansi-align/compare/v1.0.0...v1.1.0) (2016-06-06) + + +### Features + +* support left-alignment as no-op ([#3](https://github.com/nexdrew/ansi-align/issues/3)) ([e581db6](https://github.com/nexdrew/ansi-align/commit/e581db6)) + + + + +# 1.0.0 (2016-04-30) + + +### Features + +* initial commit ([1914d90](https://github.com/nexdrew/ansi-align/commit/1914d90)) diff --git a/node_modules/ansi-align/LICENSE b/node_modules/ansi-align/LICENSE new file mode 100644 index 0000000..ab601b6 --- /dev/null +++ b/node_modules/ansi-align/LICENSE @@ -0,0 +1,13 @@ +Copyright (c) 2016, Contributors + +Permission to use, copy, modify, and/or distribute this software for any purpose +with or without fee is hereby granted, provided that the above copyright notice +and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH +REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, +INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS +OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF +THIS SOFTWARE. diff --git a/node_modules/ansi-align/README.md b/node_modules/ansi-align/README.md new file mode 100644 index 0000000..5e51682 --- /dev/null +++ b/node_modules/ansi-align/README.md @@ -0,0 +1,80 @@ +# ansi-align + +> align-text with ANSI support for CLIs + +[![Build Status](https://travis-ci.org/nexdrew/ansi-align.svg?branch=master)](https://travis-ci.org/nexdrew/ansi-align) +[![Coverage Status](https://coveralls.io/repos/github/nexdrew/ansi-align/badge.svg?branch=master)](https://coveralls.io/github/nexdrew/ansi-align?branch=master) +[![Standard Version](https://img.shields.io/badge/release-standard%20version-brightgreen.svg)](https://github.com/conventional-changelog/standard-version) +[![Greenkeeper badge](https://badges.greenkeeper.io/nexdrew/ansi-align.svg)](https://greenkeeper.io/) + +Easily center- or right- align a block of text, carefully ignoring ANSI escape codes. + +E.g. turn this: + +ansi text block no alignment :( + +Into this: + +ansi text block center aligned! + +## Install + +```sh +npm install --save ansi-align +``` + +```js +var ansiAlign = require('ansi-align') +``` + +## API + +### `ansiAlign(text, [opts])` + +Align the given text per the line with the greatest [`string-width`](https://github.com/sindresorhus/string-width), returning a new string (or array). + +#### Arguments + +- `text`: required, string or array + + The text to align. If a string is given, it will be split using either the `opts.split` value or `'\n'` by default. If an array is given, a different array of modified strings will be returned. + +- `opts`: optional, object + + Options to change behavior, see below. + +#### Options + +- `opts.align`: string, default `'center'` + + The alignment mode. Use `'center'` for center-alignment, `'right'` for right-alignment, or `'left'` for left-alignment. Note that the given `text` is assumed to be left-aligned already, so specifying `align: 'left'` just returns the `text` as is (no-op). + +- `opts.split`: string or RegExp, default `'\n'` + + The separator to use when splitting the text. Only used if text is given as a string. + +- `opts.pad`: string, default `' '` + + The value used to left-pad (prepend to) lines of lesser width. Will be repeated as necessary to adjust alignment to the line with the greatest width. + +### `ansiAlign.center(text)` + +Alias for `ansiAlign(text, { align: 'center' })`. + +### `ansiAlign.right(text)` + +Alias for `ansiAlign(text, { align: 'right' })`. + +### `ansiAlign.left(text)` + +Alias for `ansiAlign(text, { align: 'left' })`, which is a no-op. + +## Similar Packages + +- [`center-align`](https://github.com/jonschlinkert/center-align): Very close to this package, except it doesn't support ANSI codes. +- [`left-pad`](https://github.com/camwest/left-pad): Great for left-padding but does not support center alignment or ANSI codes. +- Pretty much anything by the [chalk](https://github.com/chalk) team + +## License + +ISC © Contributors diff --git a/node_modules/ansi-align/index.js b/node_modules/ansi-align/index.js new file mode 100644 index 0000000..67fa826 --- /dev/null +++ b/node_modules/ansi-align/index.js @@ -0,0 +1,61 @@ +'use strict' + +const stringWidth = require('string-width') + +function ansiAlign (text, opts) { + if (!text) return text + + opts = opts || {} + const align = opts.align || 'center' + + // short-circuit `align: 'left'` as no-op + if (align === 'left') return text + + const split = opts.split || '\n' + const pad = opts.pad || ' ' + const widthDiffFn = align !== 'right' ? halfDiff : fullDiff + + let returnString = false + if (!Array.isArray(text)) { + returnString = true + text = String(text).split(split) + } + + let width + let maxWidth = 0 + text = text.map(function (str) { + str = String(str) + width = stringWidth(str) + maxWidth = Math.max(width, maxWidth) + return { + str, + width + } + }).map(function (obj) { + return new Array(widthDiffFn(maxWidth, obj.width) + 1).join(pad) + obj.str + }) + + return returnString ? text.join(split) : text +} + +ansiAlign.left = function left (text) { + return ansiAlign(text, { align: 'left' }) +} + +ansiAlign.center = function center (text) { + return ansiAlign(text, { align: 'center' }) +} + +ansiAlign.right = function right (text) { + return ansiAlign(text, { align: 'right' }) +} + +module.exports = ansiAlign + +function halfDiff (maxWidth, curWidth) { + return Math.floor((maxWidth - curWidth) / 2) +} + +function fullDiff (maxWidth, curWidth) { + return maxWidth - curWidth +} diff --git a/node_modules/ansi-align/package.json b/node_modules/ansi-align/package.json new file mode 100644 index 0000000..96a9471 --- /dev/null +++ b/node_modules/ansi-align/package.json @@ -0,0 +1,43 @@ +{ + "name": "ansi-align", + "version": "3.0.1", + "description": "align-text with ANSI support for CLIs", + "main": "index.js", + "scripts": { + "pretest": "standard", + "test": "nyc ava", + "coverage": "nyc report --reporter=text-lcov | coveralls", + "release": "standard-version" + }, + "files": [ + "index.js" + ], + "repository": { + "type": "git", + "url": "git+https://github.com/nexdrew/ansi-align.git" + }, + "keywords": [ + "ansi", + "align", + "cli", + "center", + "pad" + ], + "author": "nexdrew", + "license": "ISC", + "bugs": { + "url": "https://github.com/nexdrew/ansi-align/issues" + }, + "homepage": "https://github.com/nexdrew/ansi-align#readme", + "dependencies": { + "string-width": "^4.1.0" + }, + "devDependencies": { + "ava": "^2.0.0", + "chalk": "^2.4.2", + "coveralls": "^3.0.3", + "nyc": "^14.0.0", + "standard": "^14.0.0", + "standard-version": "^7.0.0" + } +} diff --git a/node_modules/ansi-regex/index.d.ts b/node_modules/ansi-regex/index.d.ts new file mode 100644 index 0000000..2dbf6af --- /dev/null +++ b/node_modules/ansi-regex/index.d.ts @@ -0,0 +1,37 @@ +declare namespace ansiRegex { + interface Options { + /** + Match only the first ANSI escape. + + @default false + */ + onlyFirst: boolean; + } +} + +/** +Regular expression for matching ANSI escape codes. + +@example +``` +import ansiRegex = require('ansi-regex'); + +ansiRegex().test('\u001B[4mcake\u001B[0m'); +//=> true + +ansiRegex().test('cake'); +//=> false + +'\u001B[4mcake\u001B[0m'.match(ansiRegex()); +//=> ['\u001B[4m', '\u001B[0m'] + +'\u001B[4mcake\u001B[0m'.match(ansiRegex({onlyFirst: true})); +//=> ['\u001B[4m'] + +'\u001B]8;;https://github.com\u0007click\u001B]8;;\u0007'.match(ansiRegex()); +//=> ['\u001B]8;;https://github.com\u0007', '\u001B]8;;\u0007'] +``` +*/ +declare function ansiRegex(options?: ansiRegex.Options): RegExp; + +export = ansiRegex; diff --git a/node_modules/ansi-regex/index.js b/node_modules/ansi-regex/index.js new file mode 100644 index 0000000..616ff83 --- /dev/null +++ b/node_modules/ansi-regex/index.js @@ -0,0 +1,10 @@ +'use strict'; + +module.exports = ({onlyFirst = false} = {}) => { + const pattern = [ + '[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)', + '(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))' + ].join('|'); + + return new RegExp(pattern, onlyFirst ? undefined : 'g'); +}; diff --git a/node_modules/ansi-regex/license b/node_modules/ansi-regex/license new file mode 100644 index 0000000..e7af2f7 --- /dev/null +++ b/node_modules/ansi-regex/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/ansi-regex/package.json b/node_modules/ansi-regex/package.json new file mode 100644 index 0000000..017f531 --- /dev/null +++ b/node_modules/ansi-regex/package.json @@ -0,0 +1,55 @@ +{ + "name": "ansi-regex", + "version": "5.0.1", + "description": "Regular expression for matching ANSI escape codes", + "license": "MIT", + "repository": "chalk/ansi-regex", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd", + "view-supported": "node fixtures/view-codes.js" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "ansi", + "styles", + "color", + "colour", + "colors", + "terminal", + "console", + "cli", + "string", + "tty", + "escape", + "formatting", + "rgb", + "256", + "shell", + "xterm", + "command-line", + "text", + "regex", + "regexp", + "re", + "match", + "test", + "find", + "pattern" + ], + "devDependencies": { + "ava": "^2.4.0", + "tsd": "^0.9.0", + "xo": "^0.25.3" + } +} diff --git a/node_modules/ansi-regex/readme.md b/node_modules/ansi-regex/readme.md new file mode 100644 index 0000000..4d848bc --- /dev/null +++ b/node_modules/ansi-regex/readme.md @@ -0,0 +1,78 @@ +# ansi-regex + +> Regular expression for matching [ANSI escape codes](https://en.wikipedia.org/wiki/ANSI_escape_code) + + +## Install + +``` +$ npm install ansi-regex +``` + + +## Usage + +```js +const ansiRegex = require('ansi-regex'); + +ansiRegex().test('\u001B[4mcake\u001B[0m'); +//=> true + +ansiRegex().test('cake'); +//=> false + +'\u001B[4mcake\u001B[0m'.match(ansiRegex()); +//=> ['\u001B[4m', '\u001B[0m'] + +'\u001B[4mcake\u001B[0m'.match(ansiRegex({onlyFirst: true})); +//=> ['\u001B[4m'] + +'\u001B]8;;https://github.com\u0007click\u001B]8;;\u0007'.match(ansiRegex()); +//=> ['\u001B]8;;https://github.com\u0007', '\u001B]8;;\u0007'] +``` + + +## API + +### ansiRegex(options?) + +Returns a regex for matching ANSI escape codes. + +#### options + +Type: `object` + +##### onlyFirst + +Type: `boolean`
+Default: `false` *(Matches any ANSI escape codes in a string)* + +Match only the first ANSI escape. + + +## FAQ + +### Why do you test for codes not in the ECMA 48 standard? + +Some of the codes we run as a test are codes that we acquired finding various lists of non-standard or manufacturer specific codes. We test for both standard and non-standard codes, as most of them follow the same or similar format and can be safely matched in strings without the risk of removing actual string content. There are a few non-standard control codes that do not follow the traditional format (i.e. they end in numbers) thus forcing us to exclude them from the test because we cannot reliably match them. + +On the historical side, those ECMA standards were established in the early 90's whereas the VT100, for example, was designed in the mid/late 70's. At that point in time, control codes were still pretty ungoverned and engineers used them for a multitude of things, namely to activate hardware ports that may have been proprietary. Somewhere else you see a similar 'anarchy' of codes is in the x86 architecture for processors; there are a ton of "interrupts" that can mean different things on certain brands of processors, most of which have been phased out. + + +## Maintainers + +- [Sindre Sorhus](https://github.com/sindresorhus) +- [Josh Junon](https://github.com/qix-) + + +--- + +
+ + Get professional support for this package with a Tidelift subscription + +
+ + Tidelift helps make open source sustainable for maintainers while giving companies
assurances about security, maintenance, and licensing for their dependencies. +
+
diff --git a/node_modules/ansi-styles/index.d.ts b/node_modules/ansi-styles/index.d.ts new file mode 100644 index 0000000..44a907e --- /dev/null +++ b/node_modules/ansi-styles/index.d.ts @@ -0,0 +1,345 @@ +declare type CSSColor = + | 'aliceblue' + | 'antiquewhite' + | 'aqua' + | 'aquamarine' + | 'azure' + | 'beige' + | 'bisque' + | 'black' + | 'blanchedalmond' + | 'blue' + | 'blueviolet' + | 'brown' + | 'burlywood' + | 'cadetblue' + | 'chartreuse' + | 'chocolate' + | 'coral' + | 'cornflowerblue' + | 'cornsilk' + | 'crimson' + | 'cyan' + | 'darkblue' + | 'darkcyan' + | 'darkgoldenrod' + | 'darkgray' + | 'darkgreen' + | 'darkgrey' + | 'darkkhaki' + | 'darkmagenta' + | 'darkolivegreen' + | 'darkorange' + | 'darkorchid' + | 'darkred' + | 'darksalmon' + | 'darkseagreen' + | 'darkslateblue' + | 'darkslategray' + | 'darkslategrey' + | 'darkturquoise' + | 'darkviolet' + | 'deeppink' + | 'deepskyblue' + | 'dimgray' + | 'dimgrey' + | 'dodgerblue' + | 'firebrick' + | 'floralwhite' + | 'forestgreen' + | 'fuchsia' + | 'gainsboro' + | 'ghostwhite' + | 'gold' + | 'goldenrod' + | 'gray' + | 'green' + | 'greenyellow' + | 'grey' + | 'honeydew' + | 'hotpink' + | 'indianred' + | 'indigo' + | 'ivory' + | 'khaki' + | 'lavender' + | 'lavenderblush' + | 'lawngreen' + | 'lemonchiffon' + | 'lightblue' + | 'lightcoral' + | 'lightcyan' + | 'lightgoldenrodyellow' + | 'lightgray' + | 'lightgreen' + | 'lightgrey' + | 'lightpink' + | 'lightsalmon' + | 'lightseagreen' + | 'lightskyblue' + | 'lightslategray' + | 'lightslategrey' + | 'lightsteelblue' + | 'lightyellow' + | 'lime' + | 'limegreen' + | 'linen' + | 'magenta' + | 'maroon' + | 'mediumaquamarine' + | 'mediumblue' + | 'mediumorchid' + | 'mediumpurple' + | 'mediumseagreen' + | 'mediumslateblue' + | 'mediumspringgreen' + | 'mediumturquoise' + | 'mediumvioletred' + | 'midnightblue' + | 'mintcream' + | 'mistyrose' + | 'moccasin' + | 'navajowhite' + | 'navy' + | 'oldlace' + | 'olive' + | 'olivedrab' + | 'orange' + | 'orangered' + | 'orchid' + | 'palegoldenrod' + | 'palegreen' + | 'paleturquoise' + | 'palevioletred' + | 'papayawhip' + | 'peachpuff' + | 'peru' + | 'pink' + | 'plum' + | 'powderblue' + | 'purple' + | 'rebeccapurple' + | 'red' + | 'rosybrown' + | 'royalblue' + | 'saddlebrown' + | 'salmon' + | 'sandybrown' + | 'seagreen' + | 'seashell' + | 'sienna' + | 'silver' + | 'skyblue' + | 'slateblue' + | 'slategray' + | 'slategrey' + | 'snow' + | 'springgreen' + | 'steelblue' + | 'tan' + | 'teal' + | 'thistle' + | 'tomato' + | 'turquoise' + | 'violet' + | 'wheat' + | 'white' + | 'whitesmoke' + | 'yellow' + | 'yellowgreen'; + +declare namespace ansiStyles { + interface ColorConvert { + /** + The RGB color space. + + @param red - (`0`-`255`) + @param green - (`0`-`255`) + @param blue - (`0`-`255`) + */ + rgb(red: number, green: number, blue: number): string; + + /** + The RGB HEX color space. + + @param hex - A hexadecimal string containing RGB data. + */ + hex(hex: string): string; + + /** + @param keyword - A CSS color name. + */ + keyword(keyword: CSSColor): string; + + /** + The HSL color space. + + @param hue - (`0`-`360`) + @param saturation - (`0`-`100`) + @param lightness - (`0`-`100`) + */ + hsl(hue: number, saturation: number, lightness: number): string; + + /** + The HSV color space. + + @param hue - (`0`-`360`) + @param saturation - (`0`-`100`) + @param value - (`0`-`100`) + */ + hsv(hue: number, saturation: number, value: number): string; + + /** + The HSV color space. + + @param hue - (`0`-`360`) + @param whiteness - (`0`-`100`) + @param blackness - (`0`-`100`) + */ + hwb(hue: number, whiteness: number, blackness: number): string; + + /** + Use a [4-bit unsigned number](https://en.wikipedia.org/wiki/ANSI_escape_code#3/4-bit) to set text color. + */ + ansi(ansi: number): string; + + /** + Use an [8-bit unsigned number](https://en.wikipedia.org/wiki/ANSI_escape_code#8-bit) to set text color. + */ + ansi256(ansi: number): string; + } + + interface CSPair { + /** + The ANSI terminal control sequence for starting this style. + */ + readonly open: string; + + /** + The ANSI terminal control sequence for ending this style. + */ + readonly close: string; + } + + interface ColorBase { + readonly ansi: ColorConvert; + readonly ansi256: ColorConvert; + readonly ansi16m: ColorConvert; + + /** + The ANSI terminal control sequence for ending this color. + */ + readonly close: string; + } + + interface Modifier { + /** + Resets the current color chain. + */ + readonly reset: CSPair; + + /** + Make text bold. + */ + readonly bold: CSPair; + + /** + Emitting only a small amount of light. + */ + readonly dim: CSPair; + + /** + Make text italic. (Not widely supported) + */ + readonly italic: CSPair; + + /** + Make text underline. (Not widely supported) + */ + readonly underline: CSPair; + + /** + Inverse background and foreground colors. + */ + readonly inverse: CSPair; + + /** + Prints the text, but makes it invisible. + */ + readonly hidden: CSPair; + + /** + Puts a horizontal line through the center of the text. (Not widely supported) + */ + readonly strikethrough: CSPair; + } + + interface ForegroundColor { + readonly black: CSPair; + readonly red: CSPair; + readonly green: CSPair; + readonly yellow: CSPair; + readonly blue: CSPair; + readonly cyan: CSPair; + readonly magenta: CSPair; + readonly white: CSPair; + + /** + Alias for `blackBright`. + */ + readonly gray: CSPair; + + /** + Alias for `blackBright`. + */ + readonly grey: CSPair; + + readonly blackBright: CSPair; + readonly redBright: CSPair; + readonly greenBright: CSPair; + readonly yellowBright: CSPair; + readonly blueBright: CSPair; + readonly cyanBright: CSPair; + readonly magentaBright: CSPair; + readonly whiteBright: CSPair; + } + + interface BackgroundColor { + readonly bgBlack: CSPair; + readonly bgRed: CSPair; + readonly bgGreen: CSPair; + readonly bgYellow: CSPair; + readonly bgBlue: CSPair; + readonly bgCyan: CSPair; + readonly bgMagenta: CSPair; + readonly bgWhite: CSPair; + + /** + Alias for `bgBlackBright`. + */ + readonly bgGray: CSPair; + + /** + Alias for `bgBlackBright`. + */ + readonly bgGrey: CSPair; + + readonly bgBlackBright: CSPair; + readonly bgRedBright: CSPair; + readonly bgGreenBright: CSPair; + readonly bgYellowBright: CSPair; + readonly bgBlueBright: CSPair; + readonly bgCyanBright: CSPair; + readonly bgMagentaBright: CSPair; + readonly bgWhiteBright: CSPair; + } +} + +declare const ansiStyles: { + readonly modifier: ansiStyles.Modifier; + readonly color: ansiStyles.ForegroundColor & ansiStyles.ColorBase; + readonly bgColor: ansiStyles.BackgroundColor & ansiStyles.ColorBase; + readonly codes: ReadonlyMap; +} & ansiStyles.BackgroundColor & ansiStyles.ForegroundColor & ansiStyles.Modifier; + +export = ansiStyles; diff --git a/node_modules/ansi-styles/index.js b/node_modules/ansi-styles/index.js new file mode 100644 index 0000000..5d82581 --- /dev/null +++ b/node_modules/ansi-styles/index.js @@ -0,0 +1,163 @@ +'use strict'; + +const wrapAnsi16 = (fn, offset) => (...args) => { + const code = fn(...args); + return `\u001B[${code + offset}m`; +}; + +const wrapAnsi256 = (fn, offset) => (...args) => { + const code = fn(...args); + return `\u001B[${38 + offset};5;${code}m`; +}; + +const wrapAnsi16m = (fn, offset) => (...args) => { + const rgb = fn(...args); + return `\u001B[${38 + offset};2;${rgb[0]};${rgb[1]};${rgb[2]}m`; +}; + +const ansi2ansi = n => n; +const rgb2rgb = (r, g, b) => [r, g, b]; + +const setLazyProperty = (object, property, get) => { + Object.defineProperty(object, property, { + get: () => { + const value = get(); + + Object.defineProperty(object, property, { + value, + enumerable: true, + configurable: true + }); + + return value; + }, + enumerable: true, + configurable: true + }); +}; + +/** @type {typeof import('color-convert')} */ +let colorConvert; +const makeDynamicStyles = (wrap, targetSpace, identity, isBackground) => { + if (colorConvert === undefined) { + colorConvert = require('color-convert'); + } + + const offset = isBackground ? 10 : 0; + const styles = {}; + + for (const [sourceSpace, suite] of Object.entries(colorConvert)) { + const name = sourceSpace === 'ansi16' ? 'ansi' : sourceSpace; + if (sourceSpace === targetSpace) { + styles[name] = wrap(identity, offset); + } else if (typeof suite === 'object') { + styles[name] = wrap(suite[targetSpace], offset); + } + } + + return styles; +}; + +function assembleStyles() { + const codes = new Map(); + const styles = { + modifier: { + reset: [0, 0], + // 21 isn't widely supported and 22 does the same thing + bold: [1, 22], + dim: [2, 22], + italic: [3, 23], + underline: [4, 24], + inverse: [7, 27], + hidden: [8, 28], + strikethrough: [9, 29] + }, + color: { + black: [30, 39], + red: [31, 39], + green: [32, 39], + yellow: [33, 39], + blue: [34, 39], + magenta: [35, 39], + cyan: [36, 39], + white: [37, 39], + + // Bright color + blackBright: [90, 39], + redBright: [91, 39], + greenBright: [92, 39], + yellowBright: [93, 39], + blueBright: [94, 39], + magentaBright: [95, 39], + cyanBright: [96, 39], + whiteBright: [97, 39] + }, + bgColor: { + bgBlack: [40, 49], + bgRed: [41, 49], + bgGreen: [42, 49], + bgYellow: [43, 49], + bgBlue: [44, 49], + bgMagenta: [45, 49], + bgCyan: [46, 49], + bgWhite: [47, 49], + + // Bright color + bgBlackBright: [100, 49], + bgRedBright: [101, 49], + bgGreenBright: [102, 49], + bgYellowBright: [103, 49], + bgBlueBright: [104, 49], + bgMagentaBright: [105, 49], + bgCyanBright: [106, 49], + bgWhiteBright: [107, 49] + } + }; + + // Alias bright black as gray (and grey) + styles.color.gray = styles.color.blackBright; + styles.bgColor.bgGray = styles.bgColor.bgBlackBright; + styles.color.grey = styles.color.blackBright; + styles.bgColor.bgGrey = styles.bgColor.bgBlackBright; + + for (const [groupName, group] of Object.entries(styles)) { + for (const [styleName, style] of Object.entries(group)) { + styles[styleName] = { + open: `\u001B[${style[0]}m`, + close: `\u001B[${style[1]}m` + }; + + group[styleName] = styles[styleName]; + + codes.set(style[0], style[1]); + } + + Object.defineProperty(styles, groupName, { + value: group, + enumerable: false + }); + } + + Object.defineProperty(styles, 'codes', { + value: codes, + enumerable: false + }); + + styles.color.close = '\u001B[39m'; + styles.bgColor.close = '\u001B[49m'; + + setLazyProperty(styles.color, 'ansi', () => makeDynamicStyles(wrapAnsi16, 'ansi16', ansi2ansi, false)); + setLazyProperty(styles.color, 'ansi256', () => makeDynamicStyles(wrapAnsi256, 'ansi256', ansi2ansi, false)); + setLazyProperty(styles.color, 'ansi16m', () => makeDynamicStyles(wrapAnsi16m, 'rgb', rgb2rgb, false)); + setLazyProperty(styles.bgColor, 'ansi', () => makeDynamicStyles(wrapAnsi16, 'ansi16', ansi2ansi, true)); + setLazyProperty(styles.bgColor, 'ansi256', () => makeDynamicStyles(wrapAnsi256, 'ansi256', ansi2ansi, true)); + setLazyProperty(styles.bgColor, 'ansi16m', () => makeDynamicStyles(wrapAnsi16m, 'rgb', rgb2rgb, true)); + + return styles; +} + +// Make the export immutable +Object.defineProperty(module, 'exports', { + enumerable: true, + get: assembleStyles +}); diff --git a/node_modules/ansi-styles/license b/node_modules/ansi-styles/license new file mode 100644 index 0000000..e7af2f7 --- /dev/null +++ b/node_modules/ansi-styles/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/ansi-styles/package.json b/node_modules/ansi-styles/package.json new file mode 100644 index 0000000..7539328 --- /dev/null +++ b/node_modules/ansi-styles/package.json @@ -0,0 +1,56 @@ +{ + "name": "ansi-styles", + "version": "4.3.0", + "description": "ANSI escape codes for styling strings in the terminal", + "license": "MIT", + "repository": "chalk/ansi-styles", + "funding": "https://github.com/chalk/ansi-styles?sponsor=1", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd", + "screenshot": "svg-term --command='node screenshot' --out=screenshot.svg --padding=3 --width=55 --height=3 --at=1000 --no-cursor" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "ansi", + "styles", + "color", + "colour", + "colors", + "terminal", + "console", + "cli", + "string", + "tty", + "escape", + "formatting", + "rgb", + "256", + "shell", + "xterm", + "log", + "logging", + "command-line", + "text" + ], + "dependencies": { + "color-convert": "^2.0.1" + }, + "devDependencies": { + "@types/color-convert": "^1.9.0", + "ava": "^2.3.0", + "svg-term-cli": "^2.1.1", + "tsd": "^0.11.0", + "xo": "^0.25.3" + } +} diff --git a/node_modules/ansi-styles/readme.md b/node_modules/ansi-styles/readme.md new file mode 100644 index 0000000..24883de --- /dev/null +++ b/node_modules/ansi-styles/readme.md @@ -0,0 +1,152 @@ +# ansi-styles [![Build Status](https://travis-ci.org/chalk/ansi-styles.svg?branch=master)](https://travis-ci.org/chalk/ansi-styles) + +> [ANSI escape codes](https://en.wikipedia.org/wiki/ANSI_escape_code#Colors_and_Styles) for styling strings in the terminal + +You probably want the higher-level [chalk](https://github.com/chalk/chalk) module for styling your strings. + + + +## Install + +``` +$ npm install ansi-styles +``` + +## Usage + +```js +const style = require('ansi-styles'); + +console.log(`${style.green.open}Hello world!${style.green.close}`); + + +// Color conversion between 16/256/truecolor +// NOTE: If conversion goes to 16 colors or 256 colors, the original color +// may be degraded to fit that color palette. This means terminals +// that do not support 16 million colors will best-match the +// original color. +console.log(style.bgColor.ansi.hsl(120, 80, 72) + 'Hello world!' + style.bgColor.close); +console.log(style.color.ansi256.rgb(199, 20, 250) + 'Hello world!' + style.color.close); +console.log(style.color.ansi16m.hex('#abcdef') + 'Hello world!' + style.color.close); +``` + +## API + +Each style has an `open` and `close` property. + +## Styles + +### Modifiers + +- `reset` +- `bold` +- `dim` +- `italic` *(Not widely supported)* +- `underline` +- `inverse` +- `hidden` +- `strikethrough` *(Not widely supported)* + +### Colors + +- `black` +- `red` +- `green` +- `yellow` +- `blue` +- `magenta` +- `cyan` +- `white` +- `blackBright` (alias: `gray`, `grey`) +- `redBright` +- `greenBright` +- `yellowBright` +- `blueBright` +- `magentaBright` +- `cyanBright` +- `whiteBright` + +### Background colors + +- `bgBlack` +- `bgRed` +- `bgGreen` +- `bgYellow` +- `bgBlue` +- `bgMagenta` +- `bgCyan` +- `bgWhite` +- `bgBlackBright` (alias: `bgGray`, `bgGrey`) +- `bgRedBright` +- `bgGreenBright` +- `bgYellowBright` +- `bgBlueBright` +- `bgMagentaBright` +- `bgCyanBright` +- `bgWhiteBright` + +## Advanced usage + +By default, you get a map of styles, but the styles are also available as groups. They are non-enumerable so they don't show up unless you access them explicitly. This makes it easier to expose only a subset in a higher-level module. + +- `style.modifier` +- `style.color` +- `style.bgColor` + +###### Example + +```js +console.log(style.color.green.open); +``` + +Raw escape codes (i.e. without the CSI escape prefix `\u001B[` and render mode postfix `m`) are available under `style.codes`, which returns a `Map` with the open codes as keys and close codes as values. + +###### Example + +```js +console.log(style.codes.get(36)); +//=> 39 +``` + +## [256 / 16 million (TrueColor) support](https://gist.github.com/XVilka/8346728) + +`ansi-styles` uses the [`color-convert`](https://github.com/Qix-/color-convert) package to allow for converting between various colors and ANSI escapes, with support for 256 and 16 million colors. + +The following color spaces from `color-convert` are supported: + +- `rgb` +- `hex` +- `keyword` +- `hsl` +- `hsv` +- `hwb` +- `ansi` +- `ansi256` + +To use these, call the associated conversion function with the intended output, for example: + +```js +style.color.ansi.rgb(100, 200, 15); // RGB to 16 color ansi foreground code +style.bgColor.ansi.rgb(100, 200, 15); // RGB to 16 color ansi background code + +style.color.ansi256.hsl(120, 100, 60); // HSL to 256 color ansi foreground code +style.bgColor.ansi256.hsl(120, 100, 60); // HSL to 256 color ansi foreground code + +style.color.ansi16m.hex('#C0FFEE'); // Hex (RGB) to 16 million color foreground code +style.bgColor.ansi16m.hex('#C0FFEE'); // Hex (RGB) to 16 million color background code +``` + +## Related + +- [ansi-escapes](https://github.com/sindresorhus/ansi-escapes) - ANSI escape codes for manipulating the terminal + +## Maintainers + +- [Sindre Sorhus](https://github.com/sindresorhus) +- [Josh Junon](https://github.com/qix-) + +## For enterprise + +Available as part of the Tidelift Subscription. + +The maintainers of `ansi-styles` and thousands of other packages are working with Tidelift to deliver commercial support and maintenance for the open source dependencies you use to build your applications. Save time, reduce risk, and improve code health, while paying the maintainers of the exact dependencies you use. [Learn more.](https://tidelift.com/subscription/pkg/npm-ansi-styles?utm_source=npm-ansi-styles&utm_medium=referral&utm_campaign=enterprise&utm_term=repo) diff --git a/node_modules/aproba/CHANGELOG.md b/node_modules/aproba/CHANGELOG.md new file mode 100644 index 0000000..bab30ec --- /dev/null +++ b/node_modules/aproba/CHANGELOG.md @@ -0,0 +1,4 @@ +2.0.0 + * Drop support for 0.10 and 0.12. They haven't been in travis but still, + since we _know_ we'll break with them now it's only polite to do a + major bump. diff --git a/node_modules/aproba/LICENSE b/node_modules/aproba/LICENSE new file mode 100644 index 0000000..f4be44d --- /dev/null +++ b/node_modules/aproba/LICENSE @@ -0,0 +1,14 @@ +Copyright (c) 2015, Rebecca Turner + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + diff --git a/node_modules/aproba/README.md b/node_modules/aproba/README.md new file mode 100644 index 0000000..0bfc594 --- /dev/null +++ b/node_modules/aproba/README.md @@ -0,0 +1,94 @@ +aproba +====== + +A ridiculously light-weight function argument validator + +``` +var validate = require("aproba") + +function myfunc(a, b, c) { + // `a` must be a string, `b` a number, `c` a function + validate('SNF', arguments) // [a,b,c] is also valid +} + +myfunc('test', 23, function () {}) // ok +myfunc(123, 23, function () {}) // type error +myfunc('test', 23) // missing arg error +myfunc('test', 23, function () {}, true) // too many args error + +``` + +Valid types are: + +| type | description +| :--: | :---------- +| * | matches any type +| A | `Array.isArray` OR an `arguments` object +| S | typeof == string +| N | typeof == number +| F | typeof == function +| O | typeof == object and not type A and not type E +| B | typeof == boolean +| E | `instanceof Error` OR `null` **(special: see below)** +| Z | == `null` + +Validation failures throw one of three exception types, distinguished by a +`code` property of `EMISSINGARG`, `EINVALIDTYPE` or `ETOOMANYARGS`. + +If you pass in an invalid type then it will throw with a code of +`EUNKNOWNTYPE`. + +If an **error** argument is found and is not null then the remaining +arguments are optional. That is, if you say `ESO` then that's like using a +non-magical `E` in: `E|ESO|ZSO`. + +### But I have optional arguments?! + +You can provide more than one signature by separating them with pipes `|`. +If any signature matches the arguments then they'll be considered valid. + +So for example, say you wanted to write a signature for +`fs.createWriteStream`. The docs for it describe it thusly: + +``` +fs.createWriteStream(path[, options]) +``` + +This would be a signature of `SO|S`. That is, a string and and object, or +just a string. + +Now, if you read the full `fs` docs, you'll see that actually path can ALSO +be a buffer. And options can be a string, that is: +``` +path | +options | +``` + +To reproduce this you have to fully enumerate all of the possible +combinations and that implies a signature of `SO|SS|OO|OS|S|O`. The +awkwardness is a feature: It reminds you of the complexity you're adding to +your API when you do this sort of thing. + + +### Browser support + +This has no dependencies and should work in browsers, though you'll have +noisier stack traces. + +### Why this exists + +I wanted a very simple argument validator. It needed to do two things: + +1. Be more concise and easier to use than assertions + +2. Not encourage an infinite bikeshed of DSLs + +This is why types are specified by a single character and there's no such +thing as an optional argument. + +This is not intended to validate user data. This is specifically about +asserting the interface of your functions. + +If you need greater validation, I encourage you to write them by hand or +look elsewhere. + diff --git a/node_modules/aproba/index.js b/node_modules/aproba/index.js new file mode 100644 index 0000000..fd94748 --- /dev/null +++ b/node_modules/aproba/index.js @@ -0,0 +1,105 @@ +'use strict' +module.exports = validate + +function isArguments (thingy) { + return thingy != null && typeof thingy === 'object' && thingy.hasOwnProperty('callee') +} + +const types = { + '*': {label: 'any', check: () => true}, + A: {label: 'array', check: _ => Array.isArray(_) || isArguments(_)}, + S: {label: 'string', check: _ => typeof _ === 'string'}, + N: {label: 'number', check: _ => typeof _ === 'number'}, + F: {label: 'function', check: _ => typeof _ === 'function'}, + O: {label: 'object', check: _ => typeof _ === 'object' && _ != null && !types.A.check(_) && !types.E.check(_)}, + B: {label: 'boolean', check: _ => typeof _ === 'boolean'}, + E: {label: 'error', check: _ => _ instanceof Error}, + Z: {label: 'null', check: _ => _ == null} +} + +function addSchema (schema, arity) { + const group = arity[schema.length] = arity[schema.length] || [] + if (group.indexOf(schema) === -1) group.push(schema) +} + +function validate (rawSchemas, args) { + if (arguments.length !== 2) throw wrongNumberOfArgs(['SA'], arguments.length) + if (!rawSchemas) throw missingRequiredArg(0, 'rawSchemas') + if (!args) throw missingRequiredArg(1, 'args') + if (!types.S.check(rawSchemas)) throw invalidType(0, ['string'], rawSchemas) + if (!types.A.check(args)) throw invalidType(1, ['array'], args) + const schemas = rawSchemas.split('|') + const arity = {} + + schemas.forEach(schema => { + for (let ii = 0; ii < schema.length; ++ii) { + const type = schema[ii] + if (!types[type]) throw unknownType(ii, type) + } + if (/E.*E/.test(schema)) throw moreThanOneError(schema) + addSchema(schema, arity) + if (/E/.test(schema)) { + addSchema(schema.replace(/E.*$/, 'E'), arity) + addSchema(schema.replace(/E/, 'Z'), arity) + if (schema.length === 1) addSchema('', arity) + } + }) + let matching = arity[args.length] + if (!matching) { + throw wrongNumberOfArgs(Object.keys(arity), args.length) + } + for (let ii = 0; ii < args.length; ++ii) { + let newMatching = matching.filter(schema => { + const type = schema[ii] + const typeCheck = types[type].check + return typeCheck(args[ii]) + }) + if (!newMatching.length) { + const labels = matching.map(_ => types[_[ii]].label).filter(_ => _ != null) + throw invalidType(ii, labels, args[ii]) + } + matching = newMatching + } +} + +function missingRequiredArg (num) { + return newException('EMISSINGARG', 'Missing required argument #' + (num + 1)) +} + +function unknownType (num, type) { + return newException('EUNKNOWNTYPE', 'Unknown type ' + type + ' in argument #' + (num + 1)) +} + +function invalidType (num, expectedTypes, value) { + let valueType + Object.keys(types).forEach(typeCode => { + if (types[typeCode].check(value)) valueType = types[typeCode].label + }) + return newException('EINVALIDTYPE', 'Argument #' + (num + 1) + ': Expected ' + + englishList(expectedTypes) + ' but got ' + valueType) +} + +function englishList (list) { + return list.join(', ').replace(/, ([^,]+)$/, ' or $1') +} + +function wrongNumberOfArgs (expected, got) { + const english = englishList(expected) + const args = expected.every(ex => ex.length === 1) + ? 'argument' + : 'arguments' + return newException('EWRONGARGCOUNT', 'Expected ' + english + ' ' + args + ' but got ' + got) +} + +function moreThanOneError (schema) { + return newException('ETOOMANYERRORTYPES', + 'Only one error type per argument signature is allowed, more than one found in "' + schema + '"') +} + +function newException (code, msg) { + const err = new Error(msg) + err.code = code + /* istanbul ignore else */ + if (Error.captureStackTrace) Error.captureStackTrace(err, validate) + return err +} diff --git a/node_modules/aproba/package.json b/node_modules/aproba/package.json new file mode 100644 index 0000000..d2212d3 --- /dev/null +++ b/node_modules/aproba/package.json @@ -0,0 +1,35 @@ +{ + "name": "aproba", + "version": "2.0.0", + "description": "A ridiculously light-weight argument validator (now browser friendly)", + "main": "index.js", + "directories": { + "test": "test" + }, + "dependencies": {}, + "devDependencies": { + "standard": "^11.0.1", + "tap": "^12.0.1" + }, + "files": [ + "index.js" + ], + "scripts": { + "pretest": "standard", + "test": "tap --100 -J test/*.js" + }, + "repository": { + "type": "git", + "url": "https://github.com/iarna/aproba" + }, + "keywords": [ + "argument", + "validate" + ], + "author": "Rebecca Turner ", + "license": "ISC", + "bugs": { + "url": "https://github.com/iarna/aproba/issues" + }, + "homepage": "https://github.com/iarna/aproba" +} diff --git a/node_modules/are-we-there-yet/LICENSE.md b/node_modules/are-we-there-yet/LICENSE.md new file mode 100644 index 0000000..845be76 --- /dev/null +++ b/node_modules/are-we-there-yet/LICENSE.md @@ -0,0 +1,18 @@ +ISC License + +Copyright npm, Inc. + +Permission to use, copy, modify, and/or distribute this +software for any purpose with or without fee is hereby +granted, provided that the above copyright notice and this +permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND NPM DISCLAIMS ALL +WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO +EVENT SHALL NPM BE LIABLE FOR ANY SPECIAL, DIRECT, +INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE +USE OR PERFORMANCE OF THIS SOFTWARE. diff --git a/node_modules/are-we-there-yet/README.md b/node_modules/are-we-there-yet/README.md new file mode 100644 index 0000000..caae19b --- /dev/null +++ b/node_modules/are-we-there-yet/README.md @@ -0,0 +1,208 @@ +are-we-there-yet +---------------- + +Track complex hierarchies of asynchronous task completion statuses. This is +intended to give you a way of recording and reporting the progress of the big +recursive fan-out and gather type workflows that are so common in async. + +What you do with this completion data is up to you, but the most common use case is to +feed it to one of the many progress bar modules. + +Most progress bar modules include a rudimentary version of this, but my +needs were more complex. + +Usage +===== + +```javascript +var TrackerGroup = require("are-we-there-yet").TrackerGroup + +var top = new TrackerGroup("program") + +var single = top.newItem("one thing", 100) +single.completeWork(20) + +console.log(top.completed()) // 0.2 + +fs.stat("file", function(er, stat) { + if (er) throw er + var stream = top.newStream("file", stat.size) + console.log(top.completed()) // now 0.1 as single is 50% of the job and is 20% complete + // and 50% * 20% == 10% + fs.createReadStream("file").pipe(stream).on("data", function (chunk) { + // do stuff with chunk + }) + top.on("change", function (name) { + // called each time a chunk is read from "file" + // top.completed() will start at 0.1 and fill up to 0.6 as the file is read + }) +}) +``` + +Shared Methods +============== + +* var completed = tracker.completed() + +Implemented in: `Tracker`, `TrackerGroup`, `TrackerStream` + +Returns the ratio of completed work to work to be done. Range of 0 to 1. + +* tracker.finish() + +Implemented in: `Tracker`, `TrackerGroup` + +Marks the tracker as completed. With a TrackerGroup this marks all of its +components as completed. + +Marks all of the components of this tracker as finished, which in turn means +that `tracker.completed()` for this will now be 1. + +This will result in one or more `change` events being emitted. + +Events +====== + +All tracker objects emit `change` events with the following arguments: + +``` +function (name, completed, tracker) +``` + +`name` is the name of the tracker that originally emitted the event, +or if it didn't have one, the first containing tracker group that had one. + +`completed` is the percent complete (as returned by `tracker.completed()` method). + +`tracker` is the tracker object that you are listening for events on. + +TrackerGroup +============ + +* var tracker = new TrackerGroup(**name**) + + * **name** *(optional)* - The name of this tracker group, used in change + notifications if the component updating didn't have a name. Defaults to undefined. + +Creates a new empty tracker aggregation group. These are trackers whose +completion status is determined by the completion status of other trackers added to this aggregation group. + +Ex. + +```javascript +var tracker = new TrackerGroup("parent") +var foo = tracker.newItem("firstChild", 100) +var bar = tracker.newItem("secondChild", 100) + +foo.finish() +console.log(tracker.completed()) // 0.5 +bar.finish() +console.log(tracker.completed()) // 1 +``` + +* tracker.addUnit(**otherTracker**, **weight**) + + * **otherTracker** - Any of the other are-we-there-yet tracker objects + * **weight** *(optional)* - The weight to give the tracker, defaults to 1. + +Adds the **otherTracker** to this aggregation group. The weight determines +how long you expect this tracker to take to complete in proportion to other +units. So for instance, if you add one tracker with a weight of 1 and +another with a weight of 2, you're saying the second will take twice as long +to complete as the first. As such, the first will account for 33% of the +completion of this tracker and the second will account for the other 67%. + +Returns **otherTracker**. + +* var subGroup = tracker.newGroup(**name**, **weight**) + +The above is exactly equivalent to: + +```javascript + var subGroup = tracker.addUnit(new TrackerGroup(name), weight) +``` + +* var subItem = tracker.newItem(**name**, **todo**, **weight**) + +The above is exactly equivalent to: + +```javascript + var subItem = tracker.addUnit(new Tracker(name, todo), weight) +``` + +* var subStream = tracker.newStream(**name**, **todo**, **weight**) + +The above is exactly equivalent to: + +```javascript + var subStream = tracker.addUnit(new TrackerStream(name, todo), weight) +``` + +* console.log( tracker.debug() ) + +Returns a tree showing the completion of this tracker group and all of its +children, including recursively entering all of the children. + +Tracker +======= + +* var tracker = new Tracker(**name**, **todo**) + + * **name** *(optional)* The name of this counter to report in change + events. Defaults to undefined. + * **todo** *(optional)* The amount of work todo (a number). Defaults to 0. + +Ordinarily these are constructed as a part of a tracker group (via +`newItem`). + +* var completed = tracker.completed() + +Returns the ratio of completed work to work to be done. Range of 0 to 1. If +total work to be done is 0 then it will return 0. + +* tracker.addWork(**todo**) + + * **todo** A number to add to the amount of work to be done. + +Increases the amount of work to be done, thus decreasing the completion +percentage. Triggers a `change` event. + +* tracker.completeWork(**completed**) + + * **completed** A number to add to the work complete + +Increase the amount of work complete, thus increasing the completion percentage. +Will never increase the work completed past the amount of work todo. That is, +percentages > 100% are not allowed. Triggers a `change` event. + +* tracker.finish() + +Marks this tracker as finished, tracker.completed() will now be 1. Triggers +a `change` event. + +TrackerStream +============= + +* var tracker = new TrackerStream(**name**, **size**, **options**) + + * **name** *(optional)* The name of this counter to report in change + events. Defaults to undefined. + * **size** *(optional)* The number of bytes being sent through this stream. + * **options** *(optional)* A hash of stream options + +The tracker stream object is a pass through stream that updates an internal +tracker object each time a block passes through. It's intended to track +downloads, file extraction and other related activities. You use it by piping +your data source into it and then using it as your data source. + +If your data has a length attribute then that's used as the amount of work +completed when the chunk is passed through. If it does not (eg, object +streams) then each chunk counts as completing 1 unit of work, so your size +should be the total number of objects being streamed. + +* tracker.addWork(**todo**) + + * **todo** Increase the expected overall size by **todo** bytes. + +Increases the amount of work to be done, thus decreasing the completion +percentage. Triggers a `change` event. diff --git a/node_modules/are-we-there-yet/lib/index.js b/node_modules/are-we-there-yet/lib/index.js new file mode 100644 index 0000000..57d8743 --- /dev/null +++ b/node_modules/are-we-there-yet/lib/index.js @@ -0,0 +1,4 @@ +'use strict' +exports.TrackerGroup = require('./tracker-group.js') +exports.Tracker = require('./tracker.js') +exports.TrackerStream = require('./tracker-stream.js') diff --git a/node_modules/are-we-there-yet/lib/tracker-base.js b/node_modules/are-we-there-yet/lib/tracker-base.js new file mode 100644 index 0000000..6f43687 --- /dev/null +++ b/node_modules/are-we-there-yet/lib/tracker-base.js @@ -0,0 +1,11 @@ +'use strict' +var EventEmitter = require('events').EventEmitter +var util = require('util') + +var trackerId = 0 +var TrackerBase = module.exports = function (name) { + EventEmitter.call(this) + this.id = ++trackerId + this.name = name +} +util.inherits(TrackerBase, EventEmitter) diff --git a/node_modules/are-we-there-yet/lib/tracker-group.js b/node_modules/are-we-there-yet/lib/tracker-group.js new file mode 100644 index 0000000..9da13f8 --- /dev/null +++ b/node_modules/are-we-there-yet/lib/tracker-group.js @@ -0,0 +1,116 @@ +'use strict' +var util = require('util') +var TrackerBase = require('./tracker-base.js') +var Tracker = require('./tracker.js') +var TrackerStream = require('./tracker-stream.js') + +var TrackerGroup = module.exports = function (name) { + TrackerBase.call(this, name) + this.parentGroup = null + this.trackers = [] + this.completion = {} + this.weight = {} + this.totalWeight = 0 + this.finished = false + this.bubbleChange = bubbleChange(this) +} +util.inherits(TrackerGroup, TrackerBase) + +function bubbleChange (trackerGroup) { + return function (name, completed, tracker) { + trackerGroup.completion[tracker.id] = completed + if (trackerGroup.finished) { + return + } + trackerGroup.emit('change', name || trackerGroup.name, trackerGroup.completed(), trackerGroup) + } +} + +TrackerGroup.prototype.nameInTree = function () { + var names = [] + var from = this + while (from) { + names.unshift(from.name) + from = from.parentGroup + } + return names.join('/') +} + +TrackerGroup.prototype.addUnit = function (unit, weight) { + if (unit.addUnit) { + var toTest = this + while (toTest) { + if (unit === toTest) { + throw new Error( + 'Attempted to add tracker group ' + + unit.name + ' to tree that already includes it ' + + this.nameInTree(this)) + } + toTest = toTest.parentGroup + } + unit.parentGroup = this + } + this.weight[unit.id] = weight || 1 + this.totalWeight += this.weight[unit.id] + this.trackers.push(unit) + this.completion[unit.id] = unit.completed() + unit.on('change', this.bubbleChange) + if (!this.finished) { + this.emit('change', unit.name, this.completion[unit.id], unit) + } + return unit +} + +TrackerGroup.prototype.completed = function () { + if (this.trackers.length === 0) { + return 0 + } + var valPerWeight = 1 / this.totalWeight + var completed = 0 + for (var ii = 0; ii < this.trackers.length; ii++) { + var trackerId = this.trackers[ii].id + completed += + valPerWeight * this.weight[trackerId] * this.completion[trackerId] + } + return completed +} + +TrackerGroup.prototype.newGroup = function (name, weight) { + return this.addUnit(new TrackerGroup(name), weight) +} + +TrackerGroup.prototype.newItem = function (name, todo, weight) { + return this.addUnit(new Tracker(name, todo), weight) +} + +TrackerGroup.prototype.newStream = function (name, todo, weight) { + return this.addUnit(new TrackerStream(name, todo), weight) +} + +TrackerGroup.prototype.finish = function () { + this.finished = true + if (!this.trackers.length) { + this.addUnit(new Tracker(), 1, true) + } + for (var ii = 0; ii < this.trackers.length; ii++) { + var tracker = this.trackers[ii] + tracker.finish() + tracker.removeListener('change', this.bubbleChange) + } + this.emit('change', this.name, 1, this) +} + +var buffer = ' ' +TrackerGroup.prototype.debug = function (depth) { + depth = depth || 0 + var indent = depth ? buffer.substr(0, depth) : '' + var output = indent + (this.name || 'top') + ': ' + this.completed() + '\n' + this.trackers.forEach(function (tracker) { + if (tracker instanceof TrackerGroup) { + output += tracker.debug(depth + 1) + } else { + output += indent + ' ' + tracker.name + ': ' + tracker.completed() + '\n' + } + }) + return output +} diff --git a/node_modules/are-we-there-yet/lib/tracker-stream.js b/node_modules/are-we-there-yet/lib/tracker-stream.js new file mode 100644 index 0000000..e1cf850 --- /dev/null +++ b/node_modules/are-we-there-yet/lib/tracker-stream.js @@ -0,0 +1,36 @@ +'use strict' +var util = require('util') +var stream = require('readable-stream') +var delegate = require('delegates') +var Tracker = require('./tracker.js') + +var TrackerStream = module.exports = function (name, size, options) { + stream.Transform.call(this, options) + this.tracker = new Tracker(name, size) + this.name = name + this.id = this.tracker.id + this.tracker.on('change', delegateChange(this)) +} +util.inherits(TrackerStream, stream.Transform) + +function delegateChange (trackerStream) { + return function (name, completion, tracker) { + trackerStream.emit('change', name, completion, trackerStream) + } +} + +TrackerStream.prototype._transform = function (data, encoding, cb) { + this.tracker.completeWork(data.length ? data.length : 1) + this.push(data) + cb() +} + +TrackerStream.prototype._flush = function (cb) { + this.tracker.finish() + cb() +} + +delegate(TrackerStream.prototype, 'tracker') + .method('completed') + .method('addWork') + .method('finish') diff --git a/node_modules/are-we-there-yet/lib/tracker.js b/node_modules/are-we-there-yet/lib/tracker.js new file mode 100644 index 0000000..a8f8b3b --- /dev/null +++ b/node_modules/are-we-there-yet/lib/tracker.js @@ -0,0 +1,32 @@ +'use strict' +var util = require('util') +var TrackerBase = require('./tracker-base.js') + +var Tracker = module.exports = function (name, todo) { + TrackerBase.call(this, name) + this.workDone = 0 + this.workTodo = todo || 0 +} +util.inherits(Tracker, TrackerBase) + +Tracker.prototype.completed = function () { + return this.workTodo === 0 ? 0 : this.workDone / this.workTodo +} + +Tracker.prototype.addWork = function (work) { + this.workTodo += work + this.emit('change', this.name, this.completed(), this) +} + +Tracker.prototype.completeWork = function (work) { + this.workDone += work + if (this.workDone > this.workTodo) { + this.workDone = this.workTodo + } + this.emit('change', this.name, this.completed(), this) +} + +Tracker.prototype.finish = function () { + this.workTodo = this.workDone = 1 + this.emit('change', this.name, 1, this) +} diff --git a/node_modules/are-we-there-yet/node_modules/readable-stream/CONTRIBUTING.md b/node_modules/are-we-there-yet/node_modules/readable-stream/CONTRIBUTING.md new file mode 100644 index 0000000..f478d58 --- /dev/null +++ b/node_modules/are-we-there-yet/node_modules/readable-stream/CONTRIBUTING.md @@ -0,0 +1,38 @@ +# Developer's Certificate of Origin 1.1 + +By making a contribution to this project, I certify that: + +* (a) The contribution was created in whole or in part by me and I + have the right to submit it under the open source license + indicated in the file; or + +* (b) The contribution is based upon previous work that, to the best + of my knowledge, is covered under an appropriate open source + license and I have the right under that license to submit that + work with modifications, whether created in whole or in part + by me, under the same open source license (unless I am + permitted to submit under a different license), as indicated + in the file; or + +* (c) The contribution was provided directly to me by some other + person who certified (a), (b) or (c) and I have not modified + it. + +* (d) I understand and agree that this project and the contribution + are public and that a record of the contribution (including all + personal information I submit with it, including my sign-off) is + maintained indefinitely and may be redistributed consistent with + this project or the open source license(s) involved. + +## Moderation Policy + +The [Node.js Moderation Policy] applies to this WG. + +## Code of Conduct + +The [Node.js Code of Conduct][] applies to this WG. + +[Node.js Code of Conduct]: +https://github.com/nodejs/node/blob/master/CODE_OF_CONDUCT.md +[Node.js Moderation Policy]: +https://github.com/nodejs/TSC/blob/master/Moderation-Policy.md diff --git a/node_modules/are-we-there-yet/node_modules/readable-stream/GOVERNANCE.md b/node_modules/are-we-there-yet/node_modules/readable-stream/GOVERNANCE.md new file mode 100644 index 0000000..16ffb93 --- /dev/null +++ b/node_modules/are-we-there-yet/node_modules/readable-stream/GOVERNANCE.md @@ -0,0 +1,136 @@ +### Streams Working Group + +The Node.js Streams is jointly governed by a Working Group +(WG) +that is responsible for high-level guidance of the project. + +The WG has final authority over this project including: + +* Technical direction +* Project governance and process (including this policy) +* Contribution policy +* GitHub repository hosting +* Conduct guidelines +* Maintaining the list of additional Collaborators + +For the current list of WG members, see the project +[README.md](./README.md#current-project-team-members). + +### Collaborators + +The readable-stream GitHub repository is +maintained by the WG and additional Collaborators who are added by the +WG on an ongoing basis. + +Individuals making significant and valuable contributions are made +Collaborators and given commit-access to the project. These +individuals are identified by the WG and their addition as +Collaborators is discussed during the WG meeting. + +_Note:_ If you make a significant contribution and are not considered +for commit-access log an issue or contact a WG member directly and it +will be brought up in the next WG meeting. + +Modifications of the contents of the readable-stream repository are +made on +a collaborative basis. Anybody with a GitHub account may propose a +modification via pull request and it will be considered by the project +Collaborators. All pull requests must be reviewed and accepted by a +Collaborator with sufficient expertise who is able to take full +responsibility for the change. In the case of pull requests proposed +by an existing Collaborator, an additional Collaborator is required +for sign-off. Consensus should be sought if additional Collaborators +participate and there is disagreement around a particular +modification. See _Consensus Seeking Process_ below for further detail +on the consensus model used for governance. + +Collaborators may opt to elevate significant or controversial +modifications, or modifications that have not found consensus to the +WG for discussion by assigning the ***WG-agenda*** tag to a pull +request or issue. The WG should serve as the final arbiter where +required. + +For the current list of Collaborators, see the project +[README.md](./README.md#members). + +### WG Membership + +WG seats are not time-limited. There is no fixed size of the WG. +However, the expected target is between 6 and 12, to ensure adequate +coverage of important areas of expertise, balanced with the ability to +make decisions efficiently. + +There is no specific set of requirements or qualifications for WG +membership beyond these rules. + +The WG may add additional members to the WG by unanimous consensus. + +A WG member may be removed from the WG by voluntary resignation, or by +unanimous consensus of all other WG members. + +Changes to WG membership should be posted in the agenda, and may be +suggested as any other agenda item (see "WG Meetings" below). + +If an addition or removal is proposed during a meeting, and the full +WG is not in attendance to participate, then the addition or removal +is added to the agenda for the subsequent meeting. This is to ensure +that all members are given the opportunity to participate in all +membership decisions. If a WG member is unable to attend a meeting +where a planned membership decision is being made, then their consent +is assumed. + +No more than 1/3 of the WG members may be affiliated with the same +employer. If removal or resignation of a WG member, or a change of +employment by a WG member, creates a situation where more than 1/3 of +the WG membership shares an employer, then the situation must be +immediately remedied by the resignation or removal of one or more WG +members affiliated with the over-represented employer(s). + +### WG Meetings + +The WG meets occasionally on a Google Hangout On Air. A designated moderator +approved by the WG runs the meeting. Each meeting should be +published to YouTube. + +Items are added to the WG agenda that are considered contentious or +are modifications of governance, contribution policy, WG membership, +or release process. + +The intention of the agenda is not to approve or review all patches; +that should happen continuously on GitHub and be handled by the larger +group of Collaborators. + +Any community member or contributor can ask that something be added to +the next meeting's agenda by logging a GitHub Issue. Any Collaborator, +WG member or the moderator can add the item to the agenda by adding +the ***WG-agenda*** tag to the issue. + +Prior to each WG meeting the moderator will share the Agenda with +members of the WG. WG members can add any items they like to the +agenda at the beginning of each meeting. The moderator and the WG +cannot veto or remove items. + +The WG may invite persons or representatives from certain projects to +participate in a non-voting capacity. + +The moderator is responsible for summarizing the discussion of each +agenda item and sends it as a pull request after the meeting. + +### Consensus Seeking Process + +The WG follows a +[Consensus +Seeking](http://en.wikipedia.org/wiki/Consensus-seeking_decision-making) +decision-making model. + +When an agenda item has appeared to reach a consensus the moderator +will ask "Does anyone object?" as a final call for dissent from the +consensus. + +If an agenda item cannot reach a consensus a WG member can call for +either a closing vote or a vote to table the issue to the next +meeting. The call for a vote must be seconded by a majority of the WG +or else the discussion will continue. Simple majority wins. + +Note that changes to WG membership require a majority consensus. See +"WG Membership" above. diff --git a/node_modules/are-we-there-yet/node_modules/readable-stream/LICENSE b/node_modules/are-we-there-yet/node_modules/readable-stream/LICENSE new file mode 100644 index 0000000..2873b3b --- /dev/null +++ b/node_modules/are-we-there-yet/node_modules/readable-stream/LICENSE @@ -0,0 +1,47 @@ +Node.js is licensed for use as follows: + +""" +Copyright Node.js contributors. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to +deal in the Software without restriction, including without limitation the +rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +sell copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +IN THE SOFTWARE. +""" + +This license applies to parts of Node.js originating from the +https://github.com/joyent/node repository: + +""" +Copyright Joyent, Inc. and other Node contributors. All rights reserved. +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to +deal in the Software without restriction, including without limitation the +rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +sell copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +IN THE SOFTWARE. +""" diff --git a/node_modules/are-we-there-yet/node_modules/readable-stream/README.md b/node_modules/are-we-there-yet/node_modules/readable-stream/README.md new file mode 100644 index 0000000..6f035ab --- /dev/null +++ b/node_modules/are-we-there-yet/node_modules/readable-stream/README.md @@ -0,0 +1,106 @@ +# readable-stream + +***Node.js core streams for userland*** [![Build Status](https://travis-ci.com/nodejs/readable-stream.svg?branch=master)](https://travis-ci.com/nodejs/readable-stream) + + +[![NPM](https://nodei.co/npm/readable-stream.png?downloads=true&downloadRank=true)](https://nodei.co/npm/readable-stream/) +[![NPM](https://nodei.co/npm-dl/readable-stream.png?&months=6&height=3)](https://nodei.co/npm/readable-stream/) + + +[![Sauce Test Status](https://saucelabs.com/browser-matrix/readabe-stream.svg)](https://saucelabs.com/u/readabe-stream) + +```bash +npm install --save readable-stream +``` + +This package is a mirror of the streams implementations in Node.js. + +Full documentation may be found on the [Node.js website](https://nodejs.org/dist/v10.19.0/docs/api/stream.html). + +If you want to guarantee a stable streams base, regardless of what version of +Node you, or the users of your libraries are using, use **readable-stream** *only* and avoid the *"stream"* module in Node-core, for background see [this blogpost](http://r.va.gg/2014/06/why-i-dont-use-nodes-core-stream-module.html). + +As of version 2.0.0 **readable-stream** uses semantic versioning. + +## Version 3.x.x + +v3.x.x of `readable-stream` is a cut from Node 10. This version supports Node 6, 8, and 10, as well as evergreen browsers, IE 11 and latest Safari. The breaking changes introduced by v3 are composed by the combined breaking changes in [Node v9](https://nodejs.org/en/blog/release/v9.0.0/) and [Node v10](https://nodejs.org/en/blog/release/v10.0.0/), as follows: + +1. Error codes: https://github.com/nodejs/node/pull/13310, + https://github.com/nodejs/node/pull/13291, + https://github.com/nodejs/node/pull/16589, + https://github.com/nodejs/node/pull/15042, + https://github.com/nodejs/node/pull/15665, + https://github.com/nodejs/readable-stream/pull/344 +2. 'readable' have precedence over flowing + https://github.com/nodejs/node/pull/18994 +3. make virtual methods errors consistent + https://github.com/nodejs/node/pull/18813 +4. updated streams error handling + https://github.com/nodejs/node/pull/18438 +5. writable.end should return this. + https://github.com/nodejs/node/pull/18780 +6. readable continues to read when push('') + https://github.com/nodejs/node/pull/18211 +7. add custom inspect to BufferList + https://github.com/nodejs/node/pull/17907 +8. always defer 'readable' with nextTick + https://github.com/nodejs/node/pull/17979 + +## Version 2.x.x +v2.x.x of `readable-stream` is a cut of the stream module from Node 8 (there have been no semver-major changes from Node 4 to 8). This version supports all Node.js versions from 0.8, as well as evergreen browsers and IE 10 & 11. + +### Big Thanks + +Cross-browser Testing Platform and Open Source <3 Provided by [Sauce Labs][sauce] + +# Usage + +You can swap your `require('stream')` with `require('readable-stream')` +without any changes, if you are just using one of the main classes and +functions. + +```js +const { + Readable, + Writable, + Transform, + Duplex, + pipeline, + finished +} = require('readable-stream') +```` + +Note that `require('stream')` will return `Stream`, while +`require('readable-stream')` will return `Readable`. We discourage using +whatever is exported directly, but rather use one of the properties as +shown in the example above. + +# Streams Working Group + +`readable-stream` is maintained by the Streams Working Group, which +oversees the development and maintenance of the Streams API within +Node.js. The responsibilities of the Streams Working Group include: + +* Addressing stream issues on the Node.js issue tracker. +* Authoring and editing stream documentation within the Node.js project. +* Reviewing changes to stream subclasses within the Node.js project. +* Redirecting changes to streams from the Node.js project to this + project. +* Assisting in the implementation of stream providers within Node.js. +* Recommending versions of `readable-stream` to be included in Node.js. +* Messaging about the future of streams to give the community advance + notice of changes. + + +## Team Members + +* **Calvin Metcalf** ([@calvinmetcalf](https://github.com/calvinmetcalf)) <calvin.metcalf@gmail.com> + - Release GPG key: F3EF5F62A87FC27A22E643F714CE4FF5015AA242 +* **Mathias Buus** ([@mafintosh](https://github.com/mafintosh)) <mathiasbuus@gmail.com> +* **Matteo Collina** ([@mcollina](https://github.com/mcollina)) <matteo.collina@gmail.com> + - Release GPG key: 3ABC01543F22DD2239285CDD818674489FBC127E +* **Irina Shestak** ([@lrlna](https://github.com/lrlna)) <shestak.irina@gmail.com> +* **Yoshua Wyuts** ([@yoshuawuyts](https://github.com/yoshuawuyts)) <yoshuawuyts@gmail.com> + +[sauce]: https://saucelabs.com diff --git a/node_modules/are-we-there-yet/node_modules/readable-stream/errors-browser.js b/node_modules/are-we-there-yet/node_modules/readable-stream/errors-browser.js new file mode 100644 index 0000000..fb8e73e --- /dev/null +++ b/node_modules/are-we-there-yet/node_modules/readable-stream/errors-browser.js @@ -0,0 +1,127 @@ +'use strict'; + +function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; subClass.__proto__ = superClass; } + +var codes = {}; + +function createErrorType(code, message, Base) { + if (!Base) { + Base = Error; + } + + function getMessage(arg1, arg2, arg3) { + if (typeof message === 'string') { + return message; + } else { + return message(arg1, arg2, arg3); + } + } + + var NodeError = + /*#__PURE__*/ + function (_Base) { + _inheritsLoose(NodeError, _Base); + + function NodeError(arg1, arg2, arg3) { + return _Base.call(this, getMessage(arg1, arg2, arg3)) || this; + } + + return NodeError; + }(Base); + + NodeError.prototype.name = Base.name; + NodeError.prototype.code = code; + codes[code] = NodeError; +} // https://github.com/nodejs/node/blob/v10.8.0/lib/internal/errors.js + + +function oneOf(expected, thing) { + if (Array.isArray(expected)) { + var len = expected.length; + expected = expected.map(function (i) { + return String(i); + }); + + if (len > 2) { + return "one of ".concat(thing, " ").concat(expected.slice(0, len - 1).join(', '), ", or ") + expected[len - 1]; + } else if (len === 2) { + return "one of ".concat(thing, " ").concat(expected[0], " or ").concat(expected[1]); + } else { + return "of ".concat(thing, " ").concat(expected[0]); + } + } else { + return "of ".concat(thing, " ").concat(String(expected)); + } +} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/startsWith + + +function startsWith(str, search, pos) { + return str.substr(!pos || pos < 0 ? 0 : +pos, search.length) === search; +} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/endsWith + + +function endsWith(str, search, this_len) { + if (this_len === undefined || this_len > str.length) { + this_len = str.length; + } + + return str.substring(this_len - search.length, this_len) === search; +} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/includes + + +function includes(str, search, start) { + if (typeof start !== 'number') { + start = 0; + } + + if (start + search.length > str.length) { + return false; + } else { + return str.indexOf(search, start) !== -1; + } +} + +createErrorType('ERR_INVALID_OPT_VALUE', function (name, value) { + return 'The value "' + value + '" is invalid for option "' + name + '"'; +}, TypeError); +createErrorType('ERR_INVALID_ARG_TYPE', function (name, expected, actual) { + // determiner: 'must be' or 'must not be' + var determiner; + + if (typeof expected === 'string' && startsWith(expected, 'not ')) { + determiner = 'must not be'; + expected = expected.replace(/^not /, ''); + } else { + determiner = 'must be'; + } + + var msg; + + if (endsWith(name, ' argument')) { + // For cases like 'first argument' + msg = "The ".concat(name, " ").concat(determiner, " ").concat(oneOf(expected, 'type')); + } else { + var type = includes(name, '.') ? 'property' : 'argument'; + msg = "The \"".concat(name, "\" ").concat(type, " ").concat(determiner, " ").concat(oneOf(expected, 'type')); + } + + msg += ". Received type ".concat(typeof actual); + return msg; +}, TypeError); +createErrorType('ERR_STREAM_PUSH_AFTER_EOF', 'stream.push() after EOF'); +createErrorType('ERR_METHOD_NOT_IMPLEMENTED', function (name) { + return 'The ' + name + ' method is not implemented'; +}); +createErrorType('ERR_STREAM_PREMATURE_CLOSE', 'Premature close'); +createErrorType('ERR_STREAM_DESTROYED', function (name) { + return 'Cannot call ' + name + ' after a stream was destroyed'; +}); +createErrorType('ERR_MULTIPLE_CALLBACK', 'Callback called multiple times'); +createErrorType('ERR_STREAM_CANNOT_PIPE', 'Cannot pipe, not readable'); +createErrorType('ERR_STREAM_WRITE_AFTER_END', 'write after end'); +createErrorType('ERR_STREAM_NULL_VALUES', 'May not write null values to stream', TypeError); +createErrorType('ERR_UNKNOWN_ENCODING', function (arg) { + return 'Unknown encoding: ' + arg; +}, TypeError); +createErrorType('ERR_STREAM_UNSHIFT_AFTER_END_EVENT', 'stream.unshift() after end event'); +module.exports.codes = codes; diff --git a/node_modules/are-we-there-yet/node_modules/readable-stream/errors.js b/node_modules/are-we-there-yet/node_modules/readable-stream/errors.js new file mode 100644 index 0000000..8471526 --- /dev/null +++ b/node_modules/are-we-there-yet/node_modules/readable-stream/errors.js @@ -0,0 +1,116 @@ +'use strict'; + +const codes = {}; + +function createErrorType(code, message, Base) { + if (!Base) { + Base = Error + } + + function getMessage (arg1, arg2, arg3) { + if (typeof message === 'string') { + return message + } else { + return message(arg1, arg2, arg3) + } + } + + class NodeError extends Base { + constructor (arg1, arg2, arg3) { + super(getMessage(arg1, arg2, arg3)); + } + } + + NodeError.prototype.name = Base.name; + NodeError.prototype.code = code; + + codes[code] = NodeError; +} + +// https://github.com/nodejs/node/blob/v10.8.0/lib/internal/errors.js +function oneOf(expected, thing) { + if (Array.isArray(expected)) { + const len = expected.length; + expected = expected.map((i) => String(i)); + if (len > 2) { + return `one of ${thing} ${expected.slice(0, len - 1).join(', ')}, or ` + + expected[len - 1]; + } else if (len === 2) { + return `one of ${thing} ${expected[0]} or ${expected[1]}`; + } else { + return `of ${thing} ${expected[0]}`; + } + } else { + return `of ${thing} ${String(expected)}`; + } +} + +// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/startsWith +function startsWith(str, search, pos) { + return str.substr(!pos || pos < 0 ? 0 : +pos, search.length) === search; +} + +// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/endsWith +function endsWith(str, search, this_len) { + if (this_len === undefined || this_len > str.length) { + this_len = str.length; + } + return str.substring(this_len - search.length, this_len) === search; +} + +// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/includes +function includes(str, search, start) { + if (typeof start !== 'number') { + start = 0; + } + + if (start + search.length > str.length) { + return false; + } else { + return str.indexOf(search, start) !== -1; + } +} + +createErrorType('ERR_INVALID_OPT_VALUE', function (name, value) { + return 'The value "' + value + '" is invalid for option "' + name + '"' +}, TypeError); +createErrorType('ERR_INVALID_ARG_TYPE', function (name, expected, actual) { + // determiner: 'must be' or 'must not be' + let determiner; + if (typeof expected === 'string' && startsWith(expected, 'not ')) { + determiner = 'must not be'; + expected = expected.replace(/^not /, ''); + } else { + determiner = 'must be'; + } + + let msg; + if (endsWith(name, ' argument')) { + // For cases like 'first argument' + msg = `The ${name} ${determiner} ${oneOf(expected, 'type')}`; + } else { + const type = includes(name, '.') ? 'property' : 'argument'; + msg = `The "${name}" ${type} ${determiner} ${oneOf(expected, 'type')}`; + } + + msg += `. Received type ${typeof actual}`; + return msg; +}, TypeError); +createErrorType('ERR_STREAM_PUSH_AFTER_EOF', 'stream.push() after EOF'); +createErrorType('ERR_METHOD_NOT_IMPLEMENTED', function (name) { + return 'The ' + name + ' method is not implemented' +}); +createErrorType('ERR_STREAM_PREMATURE_CLOSE', 'Premature close'); +createErrorType('ERR_STREAM_DESTROYED', function (name) { + return 'Cannot call ' + name + ' after a stream was destroyed'; +}); +createErrorType('ERR_MULTIPLE_CALLBACK', 'Callback called multiple times'); +createErrorType('ERR_STREAM_CANNOT_PIPE', 'Cannot pipe, not readable'); +createErrorType('ERR_STREAM_WRITE_AFTER_END', 'write after end'); +createErrorType('ERR_STREAM_NULL_VALUES', 'May not write null values to stream', TypeError); +createErrorType('ERR_UNKNOWN_ENCODING', function (arg) { + return 'Unknown encoding: ' + arg +}, TypeError); +createErrorType('ERR_STREAM_UNSHIFT_AFTER_END_EVENT', 'stream.unshift() after end event'); + +module.exports.codes = codes; diff --git a/node_modules/are-we-there-yet/node_modules/readable-stream/experimentalWarning.js b/node_modules/are-we-there-yet/node_modules/readable-stream/experimentalWarning.js new file mode 100644 index 0000000..78e8414 --- /dev/null +++ b/node_modules/are-we-there-yet/node_modules/readable-stream/experimentalWarning.js @@ -0,0 +1,17 @@ +'use strict' + +var experimentalWarnings = new Set(); + +function emitExperimentalWarning(feature) { + if (experimentalWarnings.has(feature)) return; + var msg = feature + ' is an experimental feature. This feature could ' + + 'change at any time'; + experimentalWarnings.add(feature); + process.emitWarning(msg, 'ExperimentalWarning'); +} + +function noop() {} + +module.exports.emitExperimentalWarning = process.emitWarning + ? emitExperimentalWarning + : noop; diff --git a/node_modules/are-we-there-yet/node_modules/readable-stream/lib/_stream_duplex.js b/node_modules/are-we-there-yet/node_modules/readable-stream/lib/_stream_duplex.js new file mode 100644 index 0000000..6752519 --- /dev/null +++ b/node_modules/are-we-there-yet/node_modules/readable-stream/lib/_stream_duplex.js @@ -0,0 +1,139 @@ +// Copyright Joyent, Inc. and other Node contributors. +// +// Permission is hereby granted, free of charge, to any person obtaining a +// copy of this software and associated documentation files (the +// "Software"), to deal in the Software without restriction, including +// without limitation the rights to use, copy, modify, merge, publish, +// distribute, sublicense, and/or sell copies of the Software, and to permit +// persons to whom the Software is furnished to do so, subject to the +// following conditions: +// +// The above copyright notice and this permission notice shall be included +// in all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN +// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE +// USE OR OTHER DEALINGS IN THE SOFTWARE. +// a duplex stream is just a stream that is both readable and writable. +// Since JS doesn't have multiple prototypal inheritance, this class +// prototypally inherits from Readable, and then parasitically from +// Writable. +'use strict'; +/**/ + +var objectKeys = Object.keys || function (obj) { + var keys = []; + + for (var key in obj) { + keys.push(key); + } + + return keys; +}; +/**/ + + +module.exports = Duplex; + +var Readable = require('./_stream_readable'); + +var Writable = require('./_stream_writable'); + +require('inherits')(Duplex, Readable); + +{ + // Allow the keys array to be GC'ed. + var keys = objectKeys(Writable.prototype); + + for (var v = 0; v < keys.length; v++) { + var method = keys[v]; + if (!Duplex.prototype[method]) Duplex.prototype[method] = Writable.prototype[method]; + } +} + +function Duplex(options) { + if (!(this instanceof Duplex)) return new Duplex(options); + Readable.call(this, options); + Writable.call(this, options); + this.allowHalfOpen = true; + + if (options) { + if (options.readable === false) this.readable = false; + if (options.writable === false) this.writable = false; + + if (options.allowHalfOpen === false) { + this.allowHalfOpen = false; + this.once('end', onend); + } + } +} + +Object.defineProperty(Duplex.prototype, 'writableHighWaterMark', { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail + enumerable: false, + get: function get() { + return this._writableState.highWaterMark; + } +}); +Object.defineProperty(Duplex.prototype, 'writableBuffer', { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail + enumerable: false, + get: function get() { + return this._writableState && this._writableState.getBuffer(); + } +}); +Object.defineProperty(Duplex.prototype, 'writableLength', { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail + enumerable: false, + get: function get() { + return this._writableState.length; + } +}); // the no-half-open enforcer + +function onend() { + // If the writable side ended, then we're ok. + if (this._writableState.ended) return; // no more data can be written. + // But allow more writes to happen in this tick. + + process.nextTick(onEndNT, this); +} + +function onEndNT(self) { + self.end(); +} + +Object.defineProperty(Duplex.prototype, 'destroyed', { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail + enumerable: false, + get: function get() { + if (this._readableState === undefined || this._writableState === undefined) { + return false; + } + + return this._readableState.destroyed && this._writableState.destroyed; + }, + set: function set(value) { + // we ignore the value if the stream + // has not been initialized yet + if (this._readableState === undefined || this._writableState === undefined) { + return; + } // backward compatibility, the user is explicitly + // managing destroyed + + + this._readableState.destroyed = value; + this._writableState.destroyed = value; + } +}); \ No newline at end of file diff --git a/node_modules/are-we-there-yet/node_modules/readable-stream/lib/_stream_passthrough.js b/node_modules/are-we-there-yet/node_modules/readable-stream/lib/_stream_passthrough.js new file mode 100644 index 0000000..32e7414 --- /dev/null +++ b/node_modules/are-we-there-yet/node_modules/readable-stream/lib/_stream_passthrough.js @@ -0,0 +1,39 @@ +// Copyright Joyent, Inc. and other Node contributors. +// +// Permission is hereby granted, free of charge, to any person obtaining a +// copy of this software and associated documentation files (the +// "Software"), to deal in the Software without restriction, including +// without limitation the rights to use, copy, modify, merge, publish, +// distribute, sublicense, and/or sell copies of the Software, and to permit +// persons to whom the Software is furnished to do so, subject to the +// following conditions: +// +// The above copyright notice and this permission notice shall be included +// in all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN +// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE +// USE OR OTHER DEALINGS IN THE SOFTWARE. +// a passthrough stream. +// basically just the most minimal sort of Transform stream. +// Every written chunk gets output as-is. +'use strict'; + +module.exports = PassThrough; + +var Transform = require('./_stream_transform'); + +require('inherits')(PassThrough, Transform); + +function PassThrough(options) { + if (!(this instanceof PassThrough)) return new PassThrough(options); + Transform.call(this, options); +} + +PassThrough.prototype._transform = function (chunk, encoding, cb) { + cb(null, chunk); +}; \ No newline at end of file diff --git a/node_modules/are-we-there-yet/node_modules/readable-stream/lib/_stream_readable.js b/node_modules/are-we-there-yet/node_modules/readable-stream/lib/_stream_readable.js new file mode 100644 index 0000000..192d451 --- /dev/null +++ b/node_modules/are-we-there-yet/node_modules/readable-stream/lib/_stream_readable.js @@ -0,0 +1,1124 @@ +// Copyright Joyent, Inc. and other Node contributors. +// +// Permission is hereby granted, free of charge, to any person obtaining a +// copy of this software and associated documentation files (the +// "Software"), to deal in the Software without restriction, including +// without limitation the rights to use, copy, modify, merge, publish, +// distribute, sublicense, and/or sell copies of the Software, and to permit +// persons to whom the Software is furnished to do so, subject to the +// following conditions: +// +// The above copyright notice and this permission notice shall be included +// in all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN +// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE +// USE OR OTHER DEALINGS IN THE SOFTWARE. +'use strict'; + +module.exports = Readable; +/**/ + +var Duplex; +/**/ + +Readable.ReadableState = ReadableState; +/**/ + +var EE = require('events').EventEmitter; + +var EElistenerCount = function EElistenerCount(emitter, type) { + return emitter.listeners(type).length; +}; +/**/ + +/**/ + + +var Stream = require('./internal/streams/stream'); +/**/ + + +var Buffer = require('buffer').Buffer; + +var OurUint8Array = global.Uint8Array || function () {}; + +function _uint8ArrayToBuffer(chunk) { + return Buffer.from(chunk); +} + +function _isUint8Array(obj) { + return Buffer.isBuffer(obj) || obj instanceof OurUint8Array; +} +/**/ + + +var debugUtil = require('util'); + +var debug; + +if (debugUtil && debugUtil.debuglog) { + debug = debugUtil.debuglog('stream'); +} else { + debug = function debug() {}; +} +/**/ + + +var BufferList = require('./internal/streams/buffer_list'); + +var destroyImpl = require('./internal/streams/destroy'); + +var _require = require('./internal/streams/state'), + getHighWaterMark = _require.getHighWaterMark; + +var _require$codes = require('../errors').codes, + ERR_INVALID_ARG_TYPE = _require$codes.ERR_INVALID_ARG_TYPE, + ERR_STREAM_PUSH_AFTER_EOF = _require$codes.ERR_STREAM_PUSH_AFTER_EOF, + ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED, + ERR_STREAM_UNSHIFT_AFTER_END_EVENT = _require$codes.ERR_STREAM_UNSHIFT_AFTER_END_EVENT; // Lazy loaded to improve the startup performance. + + +var StringDecoder; +var createReadableStreamAsyncIterator; +var from; + +require('inherits')(Readable, Stream); + +var errorOrDestroy = destroyImpl.errorOrDestroy; +var kProxyEvents = ['error', 'close', 'destroy', 'pause', 'resume']; + +function prependListener(emitter, event, fn) { + // Sadly this is not cacheable as some libraries bundle their own + // event emitter implementation with them. + if (typeof emitter.prependListener === 'function') return emitter.prependListener(event, fn); // This is a hack to make sure that our error handler is attached before any + // userland ones. NEVER DO THIS. This is here only because this code needs + // to continue to work with older versions of Node.js that do not include + // the prependListener() method. The goal is to eventually remove this hack. + + if (!emitter._events || !emitter._events[event]) emitter.on(event, fn);else if (Array.isArray(emitter._events[event])) emitter._events[event].unshift(fn);else emitter._events[event] = [fn, emitter._events[event]]; +} + +function ReadableState(options, stream, isDuplex) { + Duplex = Duplex || require('./_stream_duplex'); + options = options || {}; // Duplex streams are both readable and writable, but share + // the same options object. + // However, some cases require setting options to different + // values for the readable and the writable sides of the duplex stream. + // These options can be provided separately as readableXXX and writableXXX. + + if (typeof isDuplex !== 'boolean') isDuplex = stream instanceof Duplex; // object stream flag. Used to make read(n) ignore n and to + // make all the buffer merging and length checks go away + + this.objectMode = !!options.objectMode; + if (isDuplex) this.objectMode = this.objectMode || !!options.readableObjectMode; // the point at which it stops calling _read() to fill the buffer + // Note: 0 is a valid value, means "don't call _read preemptively ever" + + this.highWaterMark = getHighWaterMark(this, options, 'readableHighWaterMark', isDuplex); // A linked list is used to store data chunks instead of an array because the + // linked list can remove elements from the beginning faster than + // array.shift() + + this.buffer = new BufferList(); + this.length = 0; + this.pipes = null; + this.pipesCount = 0; + this.flowing = null; + this.ended = false; + this.endEmitted = false; + this.reading = false; // a flag to be able to tell if the event 'readable'/'data' is emitted + // immediately, or on a later tick. We set this to true at first, because + // any actions that shouldn't happen until "later" should generally also + // not happen before the first read call. + + this.sync = true; // whenever we return null, then we set a flag to say + // that we're awaiting a 'readable' event emission. + + this.needReadable = false; + this.emittedReadable = false; + this.readableListening = false; + this.resumeScheduled = false; + this.paused = true; // Should close be emitted on destroy. Defaults to true. + + this.emitClose = options.emitClose !== false; // Should .destroy() be called after 'end' (and potentially 'finish') + + this.autoDestroy = !!options.autoDestroy; // has it been destroyed + + this.destroyed = false; // Crypto is kind of old and crusty. Historically, its default string + // encoding is 'binary' so we have to make this configurable. + // Everything else in the universe uses 'utf8', though. + + this.defaultEncoding = options.defaultEncoding || 'utf8'; // the number of writers that are awaiting a drain event in .pipe()s + + this.awaitDrain = 0; // if true, a maybeReadMore has been scheduled + + this.readingMore = false; + this.decoder = null; + this.encoding = null; + + if (options.encoding) { + if (!StringDecoder) StringDecoder = require('string_decoder/').StringDecoder; + this.decoder = new StringDecoder(options.encoding); + this.encoding = options.encoding; + } +} + +function Readable(options) { + Duplex = Duplex || require('./_stream_duplex'); + if (!(this instanceof Readable)) return new Readable(options); // Checking for a Stream.Duplex instance is faster here instead of inside + // the ReadableState constructor, at least with V8 6.5 + + var isDuplex = this instanceof Duplex; + this._readableState = new ReadableState(options, this, isDuplex); // legacy + + this.readable = true; + + if (options) { + if (typeof options.read === 'function') this._read = options.read; + if (typeof options.destroy === 'function') this._destroy = options.destroy; + } + + Stream.call(this); +} + +Object.defineProperty(Readable.prototype, 'destroyed', { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail + enumerable: false, + get: function get() { + if (this._readableState === undefined) { + return false; + } + + return this._readableState.destroyed; + }, + set: function set(value) { + // we ignore the value if the stream + // has not been initialized yet + if (!this._readableState) { + return; + } // backward compatibility, the user is explicitly + // managing destroyed + + + this._readableState.destroyed = value; + } +}); +Readable.prototype.destroy = destroyImpl.destroy; +Readable.prototype._undestroy = destroyImpl.undestroy; + +Readable.prototype._destroy = function (err, cb) { + cb(err); +}; // Manually shove something into the read() buffer. +// This returns true if the highWaterMark has not been hit yet, +// similar to how Writable.write() returns true if you should +// write() some more. + + +Readable.prototype.push = function (chunk, encoding) { + var state = this._readableState; + var skipChunkCheck; + + if (!state.objectMode) { + if (typeof chunk === 'string') { + encoding = encoding || state.defaultEncoding; + + if (encoding !== state.encoding) { + chunk = Buffer.from(chunk, encoding); + encoding = ''; + } + + skipChunkCheck = true; + } + } else { + skipChunkCheck = true; + } + + return readableAddChunk(this, chunk, encoding, false, skipChunkCheck); +}; // Unshift should *always* be something directly out of read() + + +Readable.prototype.unshift = function (chunk) { + return readableAddChunk(this, chunk, null, true, false); +}; + +function readableAddChunk(stream, chunk, encoding, addToFront, skipChunkCheck) { + debug('readableAddChunk', chunk); + var state = stream._readableState; + + if (chunk === null) { + state.reading = false; + onEofChunk(stream, state); + } else { + var er; + if (!skipChunkCheck) er = chunkInvalid(state, chunk); + + if (er) { + errorOrDestroy(stream, er); + } else if (state.objectMode || chunk && chunk.length > 0) { + if (typeof chunk !== 'string' && !state.objectMode && Object.getPrototypeOf(chunk) !== Buffer.prototype) { + chunk = _uint8ArrayToBuffer(chunk); + } + + if (addToFront) { + if (state.endEmitted) errorOrDestroy(stream, new ERR_STREAM_UNSHIFT_AFTER_END_EVENT());else addChunk(stream, state, chunk, true); + } else if (state.ended) { + errorOrDestroy(stream, new ERR_STREAM_PUSH_AFTER_EOF()); + } else if (state.destroyed) { + return false; + } else { + state.reading = false; + + if (state.decoder && !encoding) { + chunk = state.decoder.write(chunk); + if (state.objectMode || chunk.length !== 0) addChunk(stream, state, chunk, false);else maybeReadMore(stream, state); + } else { + addChunk(stream, state, chunk, false); + } + } + } else if (!addToFront) { + state.reading = false; + maybeReadMore(stream, state); + } + } // We can push more data if we are below the highWaterMark. + // Also, if we have no data yet, we can stand some more bytes. + // This is to work around cases where hwm=0, such as the repl. + + + return !state.ended && (state.length < state.highWaterMark || state.length === 0); +} + +function addChunk(stream, state, chunk, addToFront) { + if (state.flowing && state.length === 0 && !state.sync) { + state.awaitDrain = 0; + stream.emit('data', chunk); + } else { + // update the buffer info. + state.length += state.objectMode ? 1 : chunk.length; + if (addToFront) state.buffer.unshift(chunk);else state.buffer.push(chunk); + if (state.needReadable) emitReadable(stream); + } + + maybeReadMore(stream, state); +} + +function chunkInvalid(state, chunk) { + var er; + + if (!_isUint8Array(chunk) && typeof chunk !== 'string' && chunk !== undefined && !state.objectMode) { + er = new ERR_INVALID_ARG_TYPE('chunk', ['string', 'Buffer', 'Uint8Array'], chunk); + } + + return er; +} + +Readable.prototype.isPaused = function () { + return this._readableState.flowing === false; +}; // backwards compatibility. + + +Readable.prototype.setEncoding = function (enc) { + if (!StringDecoder) StringDecoder = require('string_decoder/').StringDecoder; + var decoder = new StringDecoder(enc); + this._readableState.decoder = decoder; // If setEncoding(null), decoder.encoding equals utf8 + + this._readableState.encoding = this._readableState.decoder.encoding; // Iterate over current buffer to convert already stored Buffers: + + var p = this._readableState.buffer.head; + var content = ''; + + while (p !== null) { + content += decoder.write(p.data); + p = p.next; + } + + this._readableState.buffer.clear(); + + if (content !== '') this._readableState.buffer.push(content); + this._readableState.length = content.length; + return this; +}; // Don't raise the hwm > 1GB + + +var MAX_HWM = 0x40000000; + +function computeNewHighWaterMark(n) { + if (n >= MAX_HWM) { + // TODO(ronag): Throw ERR_VALUE_OUT_OF_RANGE. + n = MAX_HWM; + } else { + // Get the next highest power of 2 to prevent increasing hwm excessively in + // tiny amounts + n--; + n |= n >>> 1; + n |= n >>> 2; + n |= n >>> 4; + n |= n >>> 8; + n |= n >>> 16; + n++; + } + + return n; +} // This function is designed to be inlinable, so please take care when making +// changes to the function body. + + +function howMuchToRead(n, state) { + if (n <= 0 || state.length === 0 && state.ended) return 0; + if (state.objectMode) return 1; + + if (n !== n) { + // Only flow one buffer at a time + if (state.flowing && state.length) return state.buffer.head.data.length;else return state.length; + } // If we're asking for more than the current hwm, then raise the hwm. + + + if (n > state.highWaterMark) state.highWaterMark = computeNewHighWaterMark(n); + if (n <= state.length) return n; // Don't have enough + + if (!state.ended) { + state.needReadable = true; + return 0; + } + + return state.length; +} // you can override either this method, or the async _read(n) below. + + +Readable.prototype.read = function (n) { + debug('read', n); + n = parseInt(n, 10); + var state = this._readableState; + var nOrig = n; + if (n !== 0) state.emittedReadable = false; // if we're doing read(0) to trigger a readable event, but we + // already have a bunch of data in the buffer, then just trigger + // the 'readable' event and move on. + + if (n === 0 && state.needReadable && ((state.highWaterMark !== 0 ? state.length >= state.highWaterMark : state.length > 0) || state.ended)) { + debug('read: emitReadable', state.length, state.ended); + if (state.length === 0 && state.ended) endReadable(this);else emitReadable(this); + return null; + } + + n = howMuchToRead(n, state); // if we've ended, and we're now clear, then finish it up. + + if (n === 0 && state.ended) { + if (state.length === 0) endReadable(this); + return null; + } // All the actual chunk generation logic needs to be + // *below* the call to _read. The reason is that in certain + // synthetic stream cases, such as passthrough streams, _read + // may be a completely synchronous operation which may change + // the state of the read buffer, providing enough data when + // before there was *not* enough. + // + // So, the steps are: + // 1. Figure out what the state of things will be after we do + // a read from the buffer. + // + // 2. If that resulting state will trigger a _read, then call _read. + // Note that this may be asynchronous, or synchronous. Yes, it is + // deeply ugly to write APIs this way, but that still doesn't mean + // that the Readable class should behave improperly, as streams are + // designed to be sync/async agnostic. + // Take note if the _read call is sync or async (ie, if the read call + // has returned yet), so that we know whether or not it's safe to emit + // 'readable' etc. + // + // 3. Actually pull the requested chunks out of the buffer and return. + // if we need a readable event, then we need to do some reading. + + + var doRead = state.needReadable; + debug('need readable', doRead); // if we currently have less than the highWaterMark, then also read some + + if (state.length === 0 || state.length - n < state.highWaterMark) { + doRead = true; + debug('length less than watermark', doRead); + } // however, if we've ended, then there's no point, and if we're already + // reading, then it's unnecessary. + + + if (state.ended || state.reading) { + doRead = false; + debug('reading or ended', doRead); + } else if (doRead) { + debug('do read'); + state.reading = true; + state.sync = true; // if the length is currently zero, then we *need* a readable event. + + if (state.length === 0) state.needReadable = true; // call internal read method + + this._read(state.highWaterMark); + + state.sync = false; // If _read pushed data synchronously, then `reading` will be false, + // and we need to re-evaluate how much data we can return to the user. + + if (!state.reading) n = howMuchToRead(nOrig, state); + } + + var ret; + if (n > 0) ret = fromList(n, state);else ret = null; + + if (ret === null) { + state.needReadable = state.length <= state.highWaterMark; + n = 0; + } else { + state.length -= n; + state.awaitDrain = 0; + } + + if (state.length === 0) { + // If we have nothing in the buffer, then we want to know + // as soon as we *do* get something into the buffer. + if (!state.ended) state.needReadable = true; // If we tried to read() past the EOF, then emit end on the next tick. + + if (nOrig !== n && state.ended) endReadable(this); + } + + if (ret !== null) this.emit('data', ret); + return ret; +}; + +function onEofChunk(stream, state) { + debug('onEofChunk'); + if (state.ended) return; + + if (state.decoder) { + var chunk = state.decoder.end(); + + if (chunk && chunk.length) { + state.buffer.push(chunk); + state.length += state.objectMode ? 1 : chunk.length; + } + } + + state.ended = true; + + if (state.sync) { + // if we are sync, wait until next tick to emit the data. + // Otherwise we risk emitting data in the flow() + // the readable code triggers during a read() call + emitReadable(stream); + } else { + // emit 'readable' now to make sure it gets picked up. + state.needReadable = false; + + if (!state.emittedReadable) { + state.emittedReadable = true; + emitReadable_(stream); + } + } +} // Don't emit readable right away in sync mode, because this can trigger +// another read() call => stack overflow. This way, it might trigger +// a nextTick recursion warning, but that's not so bad. + + +function emitReadable(stream) { + var state = stream._readableState; + debug('emitReadable', state.needReadable, state.emittedReadable); + state.needReadable = false; + + if (!state.emittedReadable) { + debug('emitReadable', state.flowing); + state.emittedReadable = true; + process.nextTick(emitReadable_, stream); + } +} + +function emitReadable_(stream) { + var state = stream._readableState; + debug('emitReadable_', state.destroyed, state.length, state.ended); + + if (!state.destroyed && (state.length || state.ended)) { + stream.emit('readable'); + state.emittedReadable = false; + } // The stream needs another readable event if + // 1. It is not flowing, as the flow mechanism will take + // care of it. + // 2. It is not ended. + // 3. It is below the highWaterMark, so we can schedule + // another readable later. + + + state.needReadable = !state.flowing && !state.ended && state.length <= state.highWaterMark; + flow(stream); +} // at this point, the user has presumably seen the 'readable' event, +// and called read() to consume some data. that may have triggered +// in turn another _read(n) call, in which case reading = true if +// it's in progress. +// However, if we're not ended, or reading, and the length < hwm, +// then go ahead and try to read some more preemptively. + + +function maybeReadMore(stream, state) { + if (!state.readingMore) { + state.readingMore = true; + process.nextTick(maybeReadMore_, stream, state); + } +} + +function maybeReadMore_(stream, state) { + // Attempt to read more data if we should. + // + // The conditions for reading more data are (one of): + // - Not enough data buffered (state.length < state.highWaterMark). The loop + // is responsible for filling the buffer with enough data if such data + // is available. If highWaterMark is 0 and we are not in the flowing mode + // we should _not_ attempt to buffer any extra data. We'll get more data + // when the stream consumer calls read() instead. + // - No data in the buffer, and the stream is in flowing mode. In this mode + // the loop below is responsible for ensuring read() is called. Failing to + // call read here would abort the flow and there's no other mechanism for + // continuing the flow if the stream consumer has just subscribed to the + // 'data' event. + // + // In addition to the above conditions to keep reading data, the following + // conditions prevent the data from being read: + // - The stream has ended (state.ended). + // - There is already a pending 'read' operation (state.reading). This is a + // case where the the stream has called the implementation defined _read() + // method, but they are processing the call asynchronously and have _not_ + // called push() with new data. In this case we skip performing more + // read()s. The execution ends in this method again after the _read() ends + // up calling push() with more data. + while (!state.reading && !state.ended && (state.length < state.highWaterMark || state.flowing && state.length === 0)) { + var len = state.length; + debug('maybeReadMore read 0'); + stream.read(0); + if (len === state.length) // didn't get any data, stop spinning. + break; + } + + state.readingMore = false; +} // abstract method. to be overridden in specific implementation classes. +// call cb(er, data) where data is <= n in length. +// for virtual (non-string, non-buffer) streams, "length" is somewhat +// arbitrary, and perhaps not very meaningful. + + +Readable.prototype._read = function (n) { + errorOrDestroy(this, new ERR_METHOD_NOT_IMPLEMENTED('_read()')); +}; + +Readable.prototype.pipe = function (dest, pipeOpts) { + var src = this; + var state = this._readableState; + + switch (state.pipesCount) { + case 0: + state.pipes = dest; + break; + + case 1: + state.pipes = [state.pipes, dest]; + break; + + default: + state.pipes.push(dest); + break; + } + + state.pipesCount += 1; + debug('pipe count=%d opts=%j', state.pipesCount, pipeOpts); + var doEnd = (!pipeOpts || pipeOpts.end !== false) && dest !== process.stdout && dest !== process.stderr; + var endFn = doEnd ? onend : unpipe; + if (state.endEmitted) process.nextTick(endFn);else src.once('end', endFn); + dest.on('unpipe', onunpipe); + + function onunpipe(readable, unpipeInfo) { + debug('onunpipe'); + + if (readable === src) { + if (unpipeInfo && unpipeInfo.hasUnpiped === false) { + unpipeInfo.hasUnpiped = true; + cleanup(); + } + } + } + + function onend() { + debug('onend'); + dest.end(); + } // when the dest drains, it reduces the awaitDrain counter + // on the source. This would be more elegant with a .once() + // handler in flow(), but adding and removing repeatedly is + // too slow. + + + var ondrain = pipeOnDrain(src); + dest.on('drain', ondrain); + var cleanedUp = false; + + function cleanup() { + debug('cleanup'); // cleanup event handlers once the pipe is broken + + dest.removeListener('close', onclose); + dest.removeListener('finish', onfinish); + dest.removeListener('drain', ondrain); + dest.removeListener('error', onerror); + dest.removeListener('unpipe', onunpipe); + src.removeListener('end', onend); + src.removeListener('end', unpipe); + src.removeListener('data', ondata); + cleanedUp = true; // if the reader is waiting for a drain event from this + // specific writer, then it would cause it to never start + // flowing again. + // So, if this is awaiting a drain, then we just call it now. + // If we don't know, then assume that we are waiting for one. + + if (state.awaitDrain && (!dest._writableState || dest._writableState.needDrain)) ondrain(); + } + + src.on('data', ondata); + + function ondata(chunk) { + debug('ondata'); + var ret = dest.write(chunk); + debug('dest.write', ret); + + if (ret === false) { + // If the user unpiped during `dest.write()`, it is possible + // to get stuck in a permanently paused state if that write + // also returned false. + // => Check whether `dest` is still a piping destination. + if ((state.pipesCount === 1 && state.pipes === dest || state.pipesCount > 1 && indexOf(state.pipes, dest) !== -1) && !cleanedUp) { + debug('false write response, pause', state.awaitDrain); + state.awaitDrain++; + } + + src.pause(); + } + } // if the dest has an error, then stop piping into it. + // however, don't suppress the throwing behavior for this. + + + function onerror(er) { + debug('onerror', er); + unpipe(); + dest.removeListener('error', onerror); + if (EElistenerCount(dest, 'error') === 0) errorOrDestroy(dest, er); + } // Make sure our error handler is attached before userland ones. + + + prependListener(dest, 'error', onerror); // Both close and finish should trigger unpipe, but only once. + + function onclose() { + dest.removeListener('finish', onfinish); + unpipe(); + } + + dest.once('close', onclose); + + function onfinish() { + debug('onfinish'); + dest.removeListener('close', onclose); + unpipe(); + } + + dest.once('finish', onfinish); + + function unpipe() { + debug('unpipe'); + src.unpipe(dest); + } // tell the dest that it's being piped to + + + dest.emit('pipe', src); // start the flow if it hasn't been started already. + + if (!state.flowing) { + debug('pipe resume'); + src.resume(); + } + + return dest; +}; + +function pipeOnDrain(src) { + return function pipeOnDrainFunctionResult() { + var state = src._readableState; + debug('pipeOnDrain', state.awaitDrain); + if (state.awaitDrain) state.awaitDrain--; + + if (state.awaitDrain === 0 && EElistenerCount(src, 'data')) { + state.flowing = true; + flow(src); + } + }; +} + +Readable.prototype.unpipe = function (dest) { + var state = this._readableState; + var unpipeInfo = { + hasUnpiped: false + }; // if we're not piping anywhere, then do nothing. + + if (state.pipesCount === 0) return this; // just one destination. most common case. + + if (state.pipesCount === 1) { + // passed in one, but it's not the right one. + if (dest && dest !== state.pipes) return this; + if (!dest) dest = state.pipes; // got a match. + + state.pipes = null; + state.pipesCount = 0; + state.flowing = false; + if (dest) dest.emit('unpipe', this, unpipeInfo); + return this; + } // slow case. multiple pipe destinations. + + + if (!dest) { + // remove all. + var dests = state.pipes; + var len = state.pipesCount; + state.pipes = null; + state.pipesCount = 0; + state.flowing = false; + + for (var i = 0; i < len; i++) { + dests[i].emit('unpipe', this, { + hasUnpiped: false + }); + } + + return this; + } // try to find the right one. + + + var index = indexOf(state.pipes, dest); + if (index === -1) return this; + state.pipes.splice(index, 1); + state.pipesCount -= 1; + if (state.pipesCount === 1) state.pipes = state.pipes[0]; + dest.emit('unpipe', this, unpipeInfo); + return this; +}; // set up data events if they are asked for +// Ensure readable listeners eventually get something + + +Readable.prototype.on = function (ev, fn) { + var res = Stream.prototype.on.call(this, ev, fn); + var state = this._readableState; + + if (ev === 'data') { + // update readableListening so that resume() may be a no-op + // a few lines down. This is needed to support once('readable'). + state.readableListening = this.listenerCount('readable') > 0; // Try start flowing on next tick if stream isn't explicitly paused + + if (state.flowing !== false) this.resume(); + } else if (ev === 'readable') { + if (!state.endEmitted && !state.readableListening) { + state.readableListening = state.needReadable = true; + state.flowing = false; + state.emittedReadable = false; + debug('on readable', state.length, state.reading); + + if (state.length) { + emitReadable(this); + } else if (!state.reading) { + process.nextTick(nReadingNextTick, this); + } + } + } + + return res; +}; + +Readable.prototype.addListener = Readable.prototype.on; + +Readable.prototype.removeListener = function (ev, fn) { + var res = Stream.prototype.removeListener.call(this, ev, fn); + + if (ev === 'readable') { + // We need to check if there is someone still listening to + // readable and reset the state. However this needs to happen + // after readable has been emitted but before I/O (nextTick) to + // support once('readable', fn) cycles. This means that calling + // resume within the same tick will have no + // effect. + process.nextTick(updateReadableListening, this); + } + + return res; +}; + +Readable.prototype.removeAllListeners = function (ev) { + var res = Stream.prototype.removeAllListeners.apply(this, arguments); + + if (ev === 'readable' || ev === undefined) { + // We need to check if there is someone still listening to + // readable and reset the state. However this needs to happen + // after readable has been emitted but before I/O (nextTick) to + // support once('readable', fn) cycles. This means that calling + // resume within the same tick will have no + // effect. + process.nextTick(updateReadableListening, this); + } + + return res; +}; + +function updateReadableListening(self) { + var state = self._readableState; + state.readableListening = self.listenerCount('readable') > 0; + + if (state.resumeScheduled && !state.paused) { + // flowing needs to be set to true now, otherwise + // the upcoming resume will not flow. + state.flowing = true; // crude way to check if we should resume + } else if (self.listenerCount('data') > 0) { + self.resume(); + } +} + +function nReadingNextTick(self) { + debug('readable nexttick read 0'); + self.read(0); +} // pause() and resume() are remnants of the legacy readable stream API +// If the user uses them, then switch into old mode. + + +Readable.prototype.resume = function () { + var state = this._readableState; + + if (!state.flowing) { + debug('resume'); // we flow only if there is no one listening + // for readable, but we still have to call + // resume() + + state.flowing = !state.readableListening; + resume(this, state); + } + + state.paused = false; + return this; +}; + +function resume(stream, state) { + if (!state.resumeScheduled) { + state.resumeScheduled = true; + process.nextTick(resume_, stream, state); + } +} + +function resume_(stream, state) { + debug('resume', state.reading); + + if (!state.reading) { + stream.read(0); + } + + state.resumeScheduled = false; + stream.emit('resume'); + flow(stream); + if (state.flowing && !state.reading) stream.read(0); +} + +Readable.prototype.pause = function () { + debug('call pause flowing=%j', this._readableState.flowing); + + if (this._readableState.flowing !== false) { + debug('pause'); + this._readableState.flowing = false; + this.emit('pause'); + } + + this._readableState.paused = true; + return this; +}; + +function flow(stream) { + var state = stream._readableState; + debug('flow', state.flowing); + + while (state.flowing && stream.read() !== null) { + ; + } +} // wrap an old-style stream as the async data source. +// This is *not* part of the readable stream interface. +// It is an ugly unfortunate mess of history. + + +Readable.prototype.wrap = function (stream) { + var _this = this; + + var state = this._readableState; + var paused = false; + stream.on('end', function () { + debug('wrapped end'); + + if (state.decoder && !state.ended) { + var chunk = state.decoder.end(); + if (chunk && chunk.length) _this.push(chunk); + } + + _this.push(null); + }); + stream.on('data', function (chunk) { + debug('wrapped data'); + if (state.decoder) chunk = state.decoder.write(chunk); // don't skip over falsy values in objectMode + + if (state.objectMode && (chunk === null || chunk === undefined)) return;else if (!state.objectMode && (!chunk || !chunk.length)) return; + + var ret = _this.push(chunk); + + if (!ret) { + paused = true; + stream.pause(); + } + }); // proxy all the other methods. + // important when wrapping filters and duplexes. + + for (var i in stream) { + if (this[i] === undefined && typeof stream[i] === 'function') { + this[i] = function methodWrap(method) { + return function methodWrapReturnFunction() { + return stream[method].apply(stream, arguments); + }; + }(i); + } + } // proxy certain important events. + + + for (var n = 0; n < kProxyEvents.length; n++) { + stream.on(kProxyEvents[n], this.emit.bind(this, kProxyEvents[n])); + } // when we try to consume some more bytes, simply unpause the + // underlying stream. + + + this._read = function (n) { + debug('wrapped _read', n); + + if (paused) { + paused = false; + stream.resume(); + } + }; + + return this; +}; + +if (typeof Symbol === 'function') { + Readable.prototype[Symbol.asyncIterator] = function () { + if (createReadableStreamAsyncIterator === undefined) { + createReadableStreamAsyncIterator = require('./internal/streams/async_iterator'); + } + + return createReadableStreamAsyncIterator(this); + }; +} + +Object.defineProperty(Readable.prototype, 'readableHighWaterMark', { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail + enumerable: false, + get: function get() { + return this._readableState.highWaterMark; + } +}); +Object.defineProperty(Readable.prototype, 'readableBuffer', { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail + enumerable: false, + get: function get() { + return this._readableState && this._readableState.buffer; + } +}); +Object.defineProperty(Readable.prototype, 'readableFlowing', { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail + enumerable: false, + get: function get() { + return this._readableState.flowing; + }, + set: function set(state) { + if (this._readableState) { + this._readableState.flowing = state; + } + } +}); // exposed for testing purposes only. + +Readable._fromList = fromList; +Object.defineProperty(Readable.prototype, 'readableLength', { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail + enumerable: false, + get: function get() { + return this._readableState.length; + } +}); // Pluck off n bytes from an array of buffers. +// Length is the combined lengths of all the buffers in the list. +// This function is designed to be inlinable, so please take care when making +// changes to the function body. + +function fromList(n, state) { + // nothing buffered + if (state.length === 0) return null; + var ret; + if (state.objectMode) ret = state.buffer.shift();else if (!n || n >= state.length) { + // read it all, truncate the list + if (state.decoder) ret = state.buffer.join('');else if (state.buffer.length === 1) ret = state.buffer.first();else ret = state.buffer.concat(state.length); + state.buffer.clear(); + } else { + // read part of list + ret = state.buffer.consume(n, state.decoder); + } + return ret; +} + +function endReadable(stream) { + var state = stream._readableState; + debug('endReadable', state.endEmitted); + + if (!state.endEmitted) { + state.ended = true; + process.nextTick(endReadableNT, state, stream); + } +} + +function endReadableNT(state, stream) { + debug('endReadableNT', state.endEmitted, state.length); // Check that we didn't get one last unshift. + + if (!state.endEmitted && state.length === 0) { + state.endEmitted = true; + stream.readable = false; + stream.emit('end'); + + if (state.autoDestroy) { + // In case of duplex streams we need a way to detect + // if the writable side is ready for autoDestroy as well + var wState = stream._writableState; + + if (!wState || wState.autoDestroy && wState.finished) { + stream.destroy(); + } + } + } +} + +if (typeof Symbol === 'function') { + Readable.from = function (iterable, opts) { + if (from === undefined) { + from = require('./internal/streams/from'); + } + + return from(Readable, iterable, opts); + }; +} + +function indexOf(xs, x) { + for (var i = 0, l = xs.length; i < l; i++) { + if (xs[i] === x) return i; + } + + return -1; +} \ No newline at end of file diff --git a/node_modules/are-we-there-yet/node_modules/readable-stream/lib/_stream_transform.js b/node_modules/are-we-there-yet/node_modules/readable-stream/lib/_stream_transform.js new file mode 100644 index 0000000..41a738c --- /dev/null +++ b/node_modules/are-we-there-yet/node_modules/readable-stream/lib/_stream_transform.js @@ -0,0 +1,201 @@ +// Copyright Joyent, Inc. and other Node contributors. +// +// Permission is hereby granted, free of charge, to any person obtaining a +// copy of this software and associated documentation files (the +// "Software"), to deal in the Software without restriction, including +// without limitation the rights to use, copy, modify, merge, publish, +// distribute, sublicense, and/or sell copies of the Software, and to permit +// persons to whom the Software is furnished to do so, subject to the +// following conditions: +// +// The above copyright notice and this permission notice shall be included +// in all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN +// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE +// USE OR OTHER DEALINGS IN THE SOFTWARE. +// a transform stream is a readable/writable stream where you do +// something with the data. Sometimes it's called a "filter", +// but that's not a great name for it, since that implies a thing where +// some bits pass through, and others are simply ignored. (That would +// be a valid example of a transform, of course.) +// +// While the output is causally related to the input, it's not a +// necessarily symmetric or synchronous transformation. For example, +// a zlib stream might take multiple plain-text writes(), and then +// emit a single compressed chunk some time in the future. +// +// Here's how this works: +// +// The Transform stream has all the aspects of the readable and writable +// stream classes. When you write(chunk), that calls _write(chunk,cb) +// internally, and returns false if there's a lot of pending writes +// buffered up. When you call read(), that calls _read(n) until +// there's enough pending readable data buffered up. +// +// In a transform stream, the written data is placed in a buffer. When +// _read(n) is called, it transforms the queued up data, calling the +// buffered _write cb's as it consumes chunks. If consuming a single +// written chunk would result in multiple output chunks, then the first +// outputted bit calls the readcb, and subsequent chunks just go into +// the read buffer, and will cause it to emit 'readable' if necessary. +// +// This way, back-pressure is actually determined by the reading side, +// since _read has to be called to start processing a new chunk. However, +// a pathological inflate type of transform can cause excessive buffering +// here. For example, imagine a stream where every byte of input is +// interpreted as an integer from 0-255, and then results in that many +// bytes of output. Writing the 4 bytes {ff,ff,ff,ff} would result in +// 1kb of data being output. In this case, you could write a very small +// amount of input, and end up with a very large amount of output. In +// such a pathological inflating mechanism, there'd be no way to tell +// the system to stop doing the transform. A single 4MB write could +// cause the system to run out of memory. +// +// However, even in such a pathological case, only a single written chunk +// would be consumed, and then the rest would wait (un-transformed) until +// the results of the previous transformed chunk were consumed. +'use strict'; + +module.exports = Transform; + +var _require$codes = require('../errors').codes, + ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED, + ERR_MULTIPLE_CALLBACK = _require$codes.ERR_MULTIPLE_CALLBACK, + ERR_TRANSFORM_ALREADY_TRANSFORMING = _require$codes.ERR_TRANSFORM_ALREADY_TRANSFORMING, + ERR_TRANSFORM_WITH_LENGTH_0 = _require$codes.ERR_TRANSFORM_WITH_LENGTH_0; + +var Duplex = require('./_stream_duplex'); + +require('inherits')(Transform, Duplex); + +function afterTransform(er, data) { + var ts = this._transformState; + ts.transforming = false; + var cb = ts.writecb; + + if (cb === null) { + return this.emit('error', new ERR_MULTIPLE_CALLBACK()); + } + + ts.writechunk = null; + ts.writecb = null; + if (data != null) // single equals check for both `null` and `undefined` + this.push(data); + cb(er); + var rs = this._readableState; + rs.reading = false; + + if (rs.needReadable || rs.length < rs.highWaterMark) { + this._read(rs.highWaterMark); + } +} + +function Transform(options) { + if (!(this instanceof Transform)) return new Transform(options); + Duplex.call(this, options); + this._transformState = { + afterTransform: afterTransform.bind(this), + needTransform: false, + transforming: false, + writecb: null, + writechunk: null, + writeencoding: null + }; // start out asking for a readable event once data is transformed. + + this._readableState.needReadable = true; // we have implemented the _read method, and done the other things + // that Readable wants before the first _read call, so unset the + // sync guard flag. + + this._readableState.sync = false; + + if (options) { + if (typeof options.transform === 'function') this._transform = options.transform; + if (typeof options.flush === 'function') this._flush = options.flush; + } // When the writable side finishes, then flush out anything remaining. + + + this.on('prefinish', prefinish); +} + +function prefinish() { + var _this = this; + + if (typeof this._flush === 'function' && !this._readableState.destroyed) { + this._flush(function (er, data) { + done(_this, er, data); + }); + } else { + done(this, null, null); + } +} + +Transform.prototype.push = function (chunk, encoding) { + this._transformState.needTransform = false; + return Duplex.prototype.push.call(this, chunk, encoding); +}; // This is the part where you do stuff! +// override this function in implementation classes. +// 'chunk' is an input chunk. +// +// Call `push(newChunk)` to pass along transformed output +// to the readable side. You may call 'push' zero or more times. +// +// Call `cb(err)` when you are done with this chunk. If you pass +// an error, then that'll put the hurt on the whole operation. If you +// never call cb(), then you'll never get another chunk. + + +Transform.prototype._transform = function (chunk, encoding, cb) { + cb(new ERR_METHOD_NOT_IMPLEMENTED('_transform()')); +}; + +Transform.prototype._write = function (chunk, encoding, cb) { + var ts = this._transformState; + ts.writecb = cb; + ts.writechunk = chunk; + ts.writeencoding = encoding; + + if (!ts.transforming) { + var rs = this._readableState; + if (ts.needTransform || rs.needReadable || rs.length < rs.highWaterMark) this._read(rs.highWaterMark); + } +}; // Doesn't matter what the args are here. +// _transform does all the work. +// That we got here means that the readable side wants more data. + + +Transform.prototype._read = function (n) { + var ts = this._transformState; + + if (ts.writechunk !== null && !ts.transforming) { + ts.transforming = true; + + this._transform(ts.writechunk, ts.writeencoding, ts.afterTransform); + } else { + // mark that we need a transform, so that any data that comes in + // will get processed, now that we've asked for it. + ts.needTransform = true; + } +}; + +Transform.prototype._destroy = function (err, cb) { + Duplex.prototype._destroy.call(this, err, function (err2) { + cb(err2); + }); +}; + +function done(stream, er, data) { + if (er) return stream.emit('error', er); + if (data != null) // single equals check for both `null` and `undefined` + stream.push(data); // TODO(BridgeAR): Write a test for these two error cases + // if there's nothing in the write buffer, then that means + // that nothing more will ever be provided + + if (stream._writableState.length) throw new ERR_TRANSFORM_WITH_LENGTH_0(); + if (stream._transformState.transforming) throw new ERR_TRANSFORM_ALREADY_TRANSFORMING(); + return stream.push(null); +} \ No newline at end of file diff --git a/node_modules/are-we-there-yet/node_modules/readable-stream/lib/_stream_writable.js b/node_modules/are-we-there-yet/node_modules/readable-stream/lib/_stream_writable.js new file mode 100644 index 0000000..a2634d7 --- /dev/null +++ b/node_modules/are-we-there-yet/node_modules/readable-stream/lib/_stream_writable.js @@ -0,0 +1,697 @@ +// Copyright Joyent, Inc. and other Node contributors. +// +// Permission is hereby granted, free of charge, to any person obtaining a +// copy of this software and associated documentation files (the +// "Software"), to deal in the Software without restriction, including +// without limitation the rights to use, copy, modify, merge, publish, +// distribute, sublicense, and/or sell copies of the Software, and to permit +// persons to whom the Software is furnished to do so, subject to the +// following conditions: +// +// The above copyright notice and this permission notice shall be included +// in all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN +// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE +// USE OR OTHER DEALINGS IN THE SOFTWARE. +// A bit simpler than readable streams. +// Implement an async ._write(chunk, encoding, cb), and it'll handle all +// the drain event emission and buffering. +'use strict'; + +module.exports = Writable; +/* */ + +function WriteReq(chunk, encoding, cb) { + this.chunk = chunk; + this.encoding = encoding; + this.callback = cb; + this.next = null; +} // It seems a linked list but it is not +// there will be only 2 of these for each stream + + +function CorkedRequest(state) { + var _this = this; + + this.next = null; + this.entry = null; + + this.finish = function () { + onCorkedFinish(_this, state); + }; +} +/* */ + +/**/ + + +var Duplex; +/**/ + +Writable.WritableState = WritableState; +/**/ + +var internalUtil = { + deprecate: require('util-deprecate') +}; +/**/ + +/**/ + +var Stream = require('./internal/streams/stream'); +/**/ + + +var Buffer = require('buffer').Buffer; + +var OurUint8Array = global.Uint8Array || function () {}; + +function _uint8ArrayToBuffer(chunk) { + return Buffer.from(chunk); +} + +function _isUint8Array(obj) { + return Buffer.isBuffer(obj) || obj instanceof OurUint8Array; +} + +var destroyImpl = require('./internal/streams/destroy'); + +var _require = require('./internal/streams/state'), + getHighWaterMark = _require.getHighWaterMark; + +var _require$codes = require('../errors').codes, + ERR_INVALID_ARG_TYPE = _require$codes.ERR_INVALID_ARG_TYPE, + ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED, + ERR_MULTIPLE_CALLBACK = _require$codes.ERR_MULTIPLE_CALLBACK, + ERR_STREAM_CANNOT_PIPE = _require$codes.ERR_STREAM_CANNOT_PIPE, + ERR_STREAM_DESTROYED = _require$codes.ERR_STREAM_DESTROYED, + ERR_STREAM_NULL_VALUES = _require$codes.ERR_STREAM_NULL_VALUES, + ERR_STREAM_WRITE_AFTER_END = _require$codes.ERR_STREAM_WRITE_AFTER_END, + ERR_UNKNOWN_ENCODING = _require$codes.ERR_UNKNOWN_ENCODING; + +var errorOrDestroy = destroyImpl.errorOrDestroy; + +require('inherits')(Writable, Stream); + +function nop() {} + +function WritableState(options, stream, isDuplex) { + Duplex = Duplex || require('./_stream_duplex'); + options = options || {}; // Duplex streams are both readable and writable, but share + // the same options object. + // However, some cases require setting options to different + // values for the readable and the writable sides of the duplex stream, + // e.g. options.readableObjectMode vs. options.writableObjectMode, etc. + + if (typeof isDuplex !== 'boolean') isDuplex = stream instanceof Duplex; // object stream flag to indicate whether or not this stream + // contains buffers or objects. + + this.objectMode = !!options.objectMode; + if (isDuplex) this.objectMode = this.objectMode || !!options.writableObjectMode; // the point at which write() starts returning false + // Note: 0 is a valid value, means that we always return false if + // the entire buffer is not flushed immediately on write() + + this.highWaterMark = getHighWaterMark(this, options, 'writableHighWaterMark', isDuplex); // if _final has been called + + this.finalCalled = false; // drain event flag. + + this.needDrain = false; // at the start of calling end() + + this.ending = false; // when end() has been called, and returned + + this.ended = false; // when 'finish' is emitted + + this.finished = false; // has it been destroyed + + this.destroyed = false; // should we decode strings into buffers before passing to _write? + // this is here so that some node-core streams can optimize string + // handling at a lower level. + + var noDecode = options.decodeStrings === false; + this.decodeStrings = !noDecode; // Crypto is kind of old and crusty. Historically, its default string + // encoding is 'binary' so we have to make this configurable. + // Everything else in the universe uses 'utf8', though. + + this.defaultEncoding = options.defaultEncoding || 'utf8'; // not an actual buffer we keep track of, but a measurement + // of how much we're waiting to get pushed to some underlying + // socket or file. + + this.length = 0; // a flag to see when we're in the middle of a write. + + this.writing = false; // when true all writes will be buffered until .uncork() call + + this.corked = 0; // a flag to be able to tell if the onwrite cb is called immediately, + // or on a later tick. We set this to true at first, because any + // actions that shouldn't happen until "later" should generally also + // not happen before the first write call. + + this.sync = true; // a flag to know if we're processing previously buffered items, which + // may call the _write() callback in the same tick, so that we don't + // end up in an overlapped onwrite situation. + + this.bufferProcessing = false; // the callback that's passed to _write(chunk,cb) + + this.onwrite = function (er) { + onwrite(stream, er); + }; // the callback that the user supplies to write(chunk,encoding,cb) + + + this.writecb = null; // the amount that is being written when _write is called. + + this.writelen = 0; + this.bufferedRequest = null; + this.lastBufferedRequest = null; // number of pending user-supplied write callbacks + // this must be 0 before 'finish' can be emitted + + this.pendingcb = 0; // emit prefinish if the only thing we're waiting for is _write cbs + // This is relevant for synchronous Transform streams + + this.prefinished = false; // True if the error was already emitted and should not be thrown again + + this.errorEmitted = false; // Should close be emitted on destroy. Defaults to true. + + this.emitClose = options.emitClose !== false; // Should .destroy() be called after 'finish' (and potentially 'end') + + this.autoDestroy = !!options.autoDestroy; // count buffered requests + + this.bufferedRequestCount = 0; // allocate the first CorkedRequest, there is always + // one allocated and free to use, and we maintain at most two + + this.corkedRequestsFree = new CorkedRequest(this); +} + +WritableState.prototype.getBuffer = function getBuffer() { + var current = this.bufferedRequest; + var out = []; + + while (current) { + out.push(current); + current = current.next; + } + + return out; +}; + +(function () { + try { + Object.defineProperty(WritableState.prototype, 'buffer', { + get: internalUtil.deprecate(function writableStateBufferGetter() { + return this.getBuffer(); + }, '_writableState.buffer is deprecated. Use _writableState.getBuffer ' + 'instead.', 'DEP0003') + }); + } catch (_) {} +})(); // Test _writableState for inheritance to account for Duplex streams, +// whose prototype chain only points to Readable. + + +var realHasInstance; + +if (typeof Symbol === 'function' && Symbol.hasInstance && typeof Function.prototype[Symbol.hasInstance] === 'function') { + realHasInstance = Function.prototype[Symbol.hasInstance]; + Object.defineProperty(Writable, Symbol.hasInstance, { + value: function value(object) { + if (realHasInstance.call(this, object)) return true; + if (this !== Writable) return false; + return object && object._writableState instanceof WritableState; + } + }); +} else { + realHasInstance = function realHasInstance(object) { + return object instanceof this; + }; +} + +function Writable(options) { + Duplex = Duplex || require('./_stream_duplex'); // Writable ctor is applied to Duplexes, too. + // `realHasInstance` is necessary because using plain `instanceof` + // would return false, as no `_writableState` property is attached. + // Trying to use the custom `instanceof` for Writable here will also break the + // Node.js LazyTransform implementation, which has a non-trivial getter for + // `_writableState` that would lead to infinite recursion. + // Checking for a Stream.Duplex instance is faster here instead of inside + // the WritableState constructor, at least with V8 6.5 + + var isDuplex = this instanceof Duplex; + if (!isDuplex && !realHasInstance.call(Writable, this)) return new Writable(options); + this._writableState = new WritableState(options, this, isDuplex); // legacy. + + this.writable = true; + + if (options) { + if (typeof options.write === 'function') this._write = options.write; + if (typeof options.writev === 'function') this._writev = options.writev; + if (typeof options.destroy === 'function') this._destroy = options.destroy; + if (typeof options.final === 'function') this._final = options.final; + } + + Stream.call(this); +} // Otherwise people can pipe Writable streams, which is just wrong. + + +Writable.prototype.pipe = function () { + errorOrDestroy(this, new ERR_STREAM_CANNOT_PIPE()); +}; + +function writeAfterEnd(stream, cb) { + var er = new ERR_STREAM_WRITE_AFTER_END(); // TODO: defer error events consistently everywhere, not just the cb + + errorOrDestroy(stream, er); + process.nextTick(cb, er); +} // Checks that a user-supplied chunk is valid, especially for the particular +// mode the stream is in. Currently this means that `null` is never accepted +// and undefined/non-string values are only allowed in object mode. + + +function validChunk(stream, state, chunk, cb) { + var er; + + if (chunk === null) { + er = new ERR_STREAM_NULL_VALUES(); + } else if (typeof chunk !== 'string' && !state.objectMode) { + er = new ERR_INVALID_ARG_TYPE('chunk', ['string', 'Buffer'], chunk); + } + + if (er) { + errorOrDestroy(stream, er); + process.nextTick(cb, er); + return false; + } + + return true; +} + +Writable.prototype.write = function (chunk, encoding, cb) { + var state = this._writableState; + var ret = false; + + var isBuf = !state.objectMode && _isUint8Array(chunk); + + if (isBuf && !Buffer.isBuffer(chunk)) { + chunk = _uint8ArrayToBuffer(chunk); + } + + if (typeof encoding === 'function') { + cb = encoding; + encoding = null; + } + + if (isBuf) encoding = 'buffer';else if (!encoding) encoding = state.defaultEncoding; + if (typeof cb !== 'function') cb = nop; + if (state.ending) writeAfterEnd(this, cb);else if (isBuf || validChunk(this, state, chunk, cb)) { + state.pendingcb++; + ret = writeOrBuffer(this, state, isBuf, chunk, encoding, cb); + } + return ret; +}; + +Writable.prototype.cork = function () { + this._writableState.corked++; +}; + +Writable.prototype.uncork = function () { + var state = this._writableState; + + if (state.corked) { + state.corked--; + if (!state.writing && !state.corked && !state.bufferProcessing && state.bufferedRequest) clearBuffer(this, state); + } +}; + +Writable.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) { + // node::ParseEncoding() requires lower case. + if (typeof encoding === 'string') encoding = encoding.toLowerCase(); + if (!(['hex', 'utf8', 'utf-8', 'ascii', 'binary', 'base64', 'ucs2', 'ucs-2', 'utf16le', 'utf-16le', 'raw'].indexOf((encoding + '').toLowerCase()) > -1)) throw new ERR_UNKNOWN_ENCODING(encoding); + this._writableState.defaultEncoding = encoding; + return this; +}; + +Object.defineProperty(Writable.prototype, 'writableBuffer', { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail + enumerable: false, + get: function get() { + return this._writableState && this._writableState.getBuffer(); + } +}); + +function decodeChunk(state, chunk, encoding) { + if (!state.objectMode && state.decodeStrings !== false && typeof chunk === 'string') { + chunk = Buffer.from(chunk, encoding); + } + + return chunk; +} + +Object.defineProperty(Writable.prototype, 'writableHighWaterMark', { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail + enumerable: false, + get: function get() { + return this._writableState.highWaterMark; + } +}); // if we're already writing something, then just put this +// in the queue, and wait our turn. Otherwise, call _write +// If we return false, then we need a drain event, so set that flag. + +function writeOrBuffer(stream, state, isBuf, chunk, encoding, cb) { + if (!isBuf) { + var newChunk = decodeChunk(state, chunk, encoding); + + if (chunk !== newChunk) { + isBuf = true; + encoding = 'buffer'; + chunk = newChunk; + } + } + + var len = state.objectMode ? 1 : chunk.length; + state.length += len; + var ret = state.length < state.highWaterMark; // we must ensure that previous needDrain will not be reset to false. + + if (!ret) state.needDrain = true; + + if (state.writing || state.corked) { + var last = state.lastBufferedRequest; + state.lastBufferedRequest = { + chunk: chunk, + encoding: encoding, + isBuf: isBuf, + callback: cb, + next: null + }; + + if (last) { + last.next = state.lastBufferedRequest; + } else { + state.bufferedRequest = state.lastBufferedRequest; + } + + state.bufferedRequestCount += 1; + } else { + doWrite(stream, state, false, len, chunk, encoding, cb); + } + + return ret; +} + +function doWrite(stream, state, writev, len, chunk, encoding, cb) { + state.writelen = len; + state.writecb = cb; + state.writing = true; + state.sync = true; + if (state.destroyed) state.onwrite(new ERR_STREAM_DESTROYED('write'));else if (writev) stream._writev(chunk, state.onwrite);else stream._write(chunk, encoding, state.onwrite); + state.sync = false; +} + +function onwriteError(stream, state, sync, er, cb) { + --state.pendingcb; + + if (sync) { + // defer the callback if we are being called synchronously + // to avoid piling up things on the stack + process.nextTick(cb, er); // this can emit finish, and it will always happen + // after error + + process.nextTick(finishMaybe, stream, state); + stream._writableState.errorEmitted = true; + errorOrDestroy(stream, er); + } else { + // the caller expect this to happen before if + // it is async + cb(er); + stream._writableState.errorEmitted = true; + errorOrDestroy(stream, er); // this can emit finish, but finish must + // always follow error + + finishMaybe(stream, state); + } +} + +function onwriteStateUpdate(state) { + state.writing = false; + state.writecb = null; + state.length -= state.writelen; + state.writelen = 0; +} + +function onwrite(stream, er) { + var state = stream._writableState; + var sync = state.sync; + var cb = state.writecb; + if (typeof cb !== 'function') throw new ERR_MULTIPLE_CALLBACK(); + onwriteStateUpdate(state); + if (er) onwriteError(stream, state, sync, er, cb);else { + // Check if we're actually ready to finish, but don't emit yet + var finished = needFinish(state) || stream.destroyed; + + if (!finished && !state.corked && !state.bufferProcessing && state.bufferedRequest) { + clearBuffer(stream, state); + } + + if (sync) { + process.nextTick(afterWrite, stream, state, finished, cb); + } else { + afterWrite(stream, state, finished, cb); + } + } +} + +function afterWrite(stream, state, finished, cb) { + if (!finished) onwriteDrain(stream, state); + state.pendingcb--; + cb(); + finishMaybe(stream, state); +} // Must force callback to be called on nextTick, so that we don't +// emit 'drain' before the write() consumer gets the 'false' return +// value, and has a chance to attach a 'drain' listener. + + +function onwriteDrain(stream, state) { + if (state.length === 0 && state.needDrain) { + state.needDrain = false; + stream.emit('drain'); + } +} // if there's something in the buffer waiting, then process it + + +function clearBuffer(stream, state) { + state.bufferProcessing = true; + var entry = state.bufferedRequest; + + if (stream._writev && entry && entry.next) { + // Fast case, write everything using _writev() + var l = state.bufferedRequestCount; + var buffer = new Array(l); + var holder = state.corkedRequestsFree; + holder.entry = entry; + var count = 0; + var allBuffers = true; + + while (entry) { + buffer[count] = entry; + if (!entry.isBuf) allBuffers = false; + entry = entry.next; + count += 1; + } + + buffer.allBuffers = allBuffers; + doWrite(stream, state, true, state.length, buffer, '', holder.finish); // doWrite is almost always async, defer these to save a bit of time + // as the hot path ends with doWrite + + state.pendingcb++; + state.lastBufferedRequest = null; + + if (holder.next) { + state.corkedRequestsFree = holder.next; + holder.next = null; + } else { + state.corkedRequestsFree = new CorkedRequest(state); + } + + state.bufferedRequestCount = 0; + } else { + // Slow case, write chunks one-by-one + while (entry) { + var chunk = entry.chunk; + var encoding = entry.encoding; + var cb = entry.callback; + var len = state.objectMode ? 1 : chunk.length; + doWrite(stream, state, false, len, chunk, encoding, cb); + entry = entry.next; + state.bufferedRequestCount--; // if we didn't call the onwrite immediately, then + // it means that we need to wait until it does. + // also, that means that the chunk and cb are currently + // being processed, so move the buffer counter past them. + + if (state.writing) { + break; + } + } + + if (entry === null) state.lastBufferedRequest = null; + } + + state.bufferedRequest = entry; + state.bufferProcessing = false; +} + +Writable.prototype._write = function (chunk, encoding, cb) { + cb(new ERR_METHOD_NOT_IMPLEMENTED('_write()')); +}; + +Writable.prototype._writev = null; + +Writable.prototype.end = function (chunk, encoding, cb) { + var state = this._writableState; + + if (typeof chunk === 'function') { + cb = chunk; + chunk = null; + encoding = null; + } else if (typeof encoding === 'function') { + cb = encoding; + encoding = null; + } + + if (chunk !== null && chunk !== undefined) this.write(chunk, encoding); // .end() fully uncorks + + if (state.corked) { + state.corked = 1; + this.uncork(); + } // ignore unnecessary end() calls. + + + if (!state.ending) endWritable(this, state, cb); + return this; +}; + +Object.defineProperty(Writable.prototype, 'writableLength', { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail + enumerable: false, + get: function get() { + return this._writableState.length; + } +}); + +function needFinish(state) { + return state.ending && state.length === 0 && state.bufferedRequest === null && !state.finished && !state.writing; +} + +function callFinal(stream, state) { + stream._final(function (err) { + state.pendingcb--; + + if (err) { + errorOrDestroy(stream, err); + } + + state.prefinished = true; + stream.emit('prefinish'); + finishMaybe(stream, state); + }); +} + +function prefinish(stream, state) { + if (!state.prefinished && !state.finalCalled) { + if (typeof stream._final === 'function' && !state.destroyed) { + state.pendingcb++; + state.finalCalled = true; + process.nextTick(callFinal, stream, state); + } else { + state.prefinished = true; + stream.emit('prefinish'); + } + } +} + +function finishMaybe(stream, state) { + var need = needFinish(state); + + if (need) { + prefinish(stream, state); + + if (state.pendingcb === 0) { + state.finished = true; + stream.emit('finish'); + + if (state.autoDestroy) { + // In case of duplex streams we need a way to detect + // if the readable side is ready for autoDestroy as well + var rState = stream._readableState; + + if (!rState || rState.autoDestroy && rState.endEmitted) { + stream.destroy(); + } + } + } + } + + return need; +} + +function endWritable(stream, state, cb) { + state.ending = true; + finishMaybe(stream, state); + + if (cb) { + if (state.finished) process.nextTick(cb);else stream.once('finish', cb); + } + + state.ended = true; + stream.writable = false; +} + +function onCorkedFinish(corkReq, state, err) { + var entry = corkReq.entry; + corkReq.entry = null; + + while (entry) { + var cb = entry.callback; + state.pendingcb--; + cb(err); + entry = entry.next; + } // reuse the free corkReq. + + + state.corkedRequestsFree.next = corkReq; +} + +Object.defineProperty(Writable.prototype, 'destroyed', { + // making it explicit this property is not enumerable + // because otherwise some prototype manipulation in + // userland will fail + enumerable: false, + get: function get() { + if (this._writableState === undefined) { + return false; + } + + return this._writableState.destroyed; + }, + set: function set(value) { + // we ignore the value if the stream + // has not been initialized yet + if (!this._writableState) { + return; + } // backward compatibility, the user is explicitly + // managing destroyed + + + this._writableState.destroyed = value; + } +}); +Writable.prototype.destroy = destroyImpl.destroy; +Writable.prototype._undestroy = destroyImpl.undestroy; + +Writable.prototype._destroy = function (err, cb) { + cb(err); +}; \ No newline at end of file diff --git a/node_modules/are-we-there-yet/node_modules/readable-stream/lib/internal/streams/async_iterator.js b/node_modules/are-we-there-yet/node_modules/readable-stream/lib/internal/streams/async_iterator.js new file mode 100644 index 0000000..9fb615a --- /dev/null +++ b/node_modules/are-we-there-yet/node_modules/readable-stream/lib/internal/streams/async_iterator.js @@ -0,0 +1,207 @@ +'use strict'; + +var _Object$setPrototypeO; + +function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } + +var finished = require('./end-of-stream'); + +var kLastResolve = Symbol('lastResolve'); +var kLastReject = Symbol('lastReject'); +var kError = Symbol('error'); +var kEnded = Symbol('ended'); +var kLastPromise = Symbol('lastPromise'); +var kHandlePromise = Symbol('handlePromise'); +var kStream = Symbol('stream'); + +function createIterResult(value, done) { + return { + value: value, + done: done + }; +} + +function readAndResolve(iter) { + var resolve = iter[kLastResolve]; + + if (resolve !== null) { + var data = iter[kStream].read(); // we defer if data is null + // we can be expecting either 'end' or + // 'error' + + if (data !== null) { + iter[kLastPromise] = null; + iter[kLastResolve] = null; + iter[kLastReject] = null; + resolve(createIterResult(data, false)); + } + } +} + +function onReadable(iter) { + // we wait for the next tick, because it might + // emit an error with process.nextTick + process.nextTick(readAndResolve, iter); +} + +function wrapForNext(lastPromise, iter) { + return function (resolve, reject) { + lastPromise.then(function () { + if (iter[kEnded]) { + resolve(createIterResult(undefined, true)); + return; + } + + iter[kHandlePromise](resolve, reject); + }, reject); + }; +} + +var AsyncIteratorPrototype = Object.getPrototypeOf(function () {}); +var ReadableStreamAsyncIteratorPrototype = Object.setPrototypeOf((_Object$setPrototypeO = { + get stream() { + return this[kStream]; + }, + + next: function next() { + var _this = this; + + // if we have detected an error in the meanwhile + // reject straight away + var error = this[kError]; + + if (error !== null) { + return Promise.reject(error); + } + + if (this[kEnded]) { + return Promise.resolve(createIterResult(undefined, true)); + } + + if (this[kStream].destroyed) { + // We need to defer via nextTick because if .destroy(err) is + // called, the error will be emitted via nextTick, and + // we cannot guarantee that there is no error lingering around + // waiting to be emitted. + return new Promise(function (resolve, reject) { + process.nextTick(function () { + if (_this[kError]) { + reject(_this[kError]); + } else { + resolve(createIterResult(undefined, true)); + } + }); + }); + } // if we have multiple next() calls + // we will wait for the previous Promise to finish + // this logic is optimized to support for await loops, + // where next() is only called once at a time + + + var lastPromise = this[kLastPromise]; + var promise; + + if (lastPromise) { + promise = new Promise(wrapForNext(lastPromise, this)); + } else { + // fast path needed to support multiple this.push() + // without triggering the next() queue + var data = this[kStream].read(); + + if (data !== null) { + return Promise.resolve(createIterResult(data, false)); + } + + promise = new Promise(this[kHandlePromise]); + } + + this[kLastPromise] = promise; + return promise; + } +}, _defineProperty(_Object$setPrototypeO, Symbol.asyncIterator, function () { + return this; +}), _defineProperty(_Object$setPrototypeO, "return", function _return() { + var _this2 = this; + + // destroy(err, cb) is a private API + // we can guarantee we have that here, because we control the + // Readable class this is attached to + return new Promise(function (resolve, reject) { + _this2[kStream].destroy(null, function (err) { + if (err) { + reject(err); + return; + } + + resolve(createIterResult(undefined, true)); + }); + }); +}), _Object$setPrototypeO), AsyncIteratorPrototype); + +var createReadableStreamAsyncIterator = function createReadableStreamAsyncIterator(stream) { + var _Object$create; + + var iterator = Object.create(ReadableStreamAsyncIteratorPrototype, (_Object$create = {}, _defineProperty(_Object$create, kStream, { + value: stream, + writable: true + }), _defineProperty(_Object$create, kLastResolve, { + value: null, + writable: true + }), _defineProperty(_Object$create, kLastReject, { + value: null, + writable: true + }), _defineProperty(_Object$create, kError, { + value: null, + writable: true + }), _defineProperty(_Object$create, kEnded, { + value: stream._readableState.endEmitted, + writable: true + }), _defineProperty(_Object$create, kHandlePromise, { + value: function value(resolve, reject) { + var data = iterator[kStream].read(); + + if (data) { + iterator[kLastPromise] = null; + iterator[kLastResolve] = null; + iterator[kLastReject] = null; + resolve(createIterResult(data, false)); + } else { + iterator[kLastResolve] = resolve; + iterator[kLastReject] = reject; + } + }, + writable: true + }), _Object$create)); + iterator[kLastPromise] = null; + finished(stream, function (err) { + if (err && err.code !== 'ERR_STREAM_PREMATURE_CLOSE') { + var reject = iterator[kLastReject]; // reject if we are waiting for data in the Promise + // returned by next() and store the error + + if (reject !== null) { + iterator[kLastPromise] = null; + iterator[kLastResolve] = null; + iterator[kLastReject] = null; + reject(err); + } + + iterator[kError] = err; + return; + } + + var resolve = iterator[kLastResolve]; + + if (resolve !== null) { + iterator[kLastPromise] = null; + iterator[kLastResolve] = null; + iterator[kLastReject] = null; + resolve(createIterResult(undefined, true)); + } + + iterator[kEnded] = true; + }); + stream.on('readable', onReadable.bind(null, iterator)); + return iterator; +}; + +module.exports = createReadableStreamAsyncIterator; \ No newline at end of file diff --git a/node_modules/are-we-there-yet/node_modules/readable-stream/lib/internal/streams/buffer_list.js b/node_modules/are-we-there-yet/node_modules/readable-stream/lib/internal/streams/buffer_list.js new file mode 100644 index 0000000..cdea425 --- /dev/null +++ b/node_modules/are-we-there-yet/node_modules/readable-stream/lib/internal/streams/buffer_list.js @@ -0,0 +1,210 @@ +'use strict'; + +function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } + +function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } + +function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +var _require = require('buffer'), + Buffer = _require.Buffer; + +var _require2 = require('util'), + inspect = _require2.inspect; + +var custom = inspect && inspect.custom || 'inspect'; + +function copyBuffer(src, target, offset) { + Buffer.prototype.copy.call(src, target, offset); +} + +module.exports = +/*#__PURE__*/ +function () { + function BufferList() { + _classCallCheck(this, BufferList); + + this.head = null; + this.tail = null; + this.length = 0; + } + + _createClass(BufferList, [{ + key: "push", + value: function push(v) { + var entry = { + data: v, + next: null + }; + if (this.length > 0) this.tail.next = entry;else this.head = entry; + this.tail = entry; + ++this.length; + } + }, { + key: "unshift", + value: function unshift(v) { + var entry = { + data: v, + next: this.head + }; + if (this.length === 0) this.tail = entry; + this.head = entry; + ++this.length; + } + }, { + key: "shift", + value: function shift() { + if (this.length === 0) return; + var ret = this.head.data; + if (this.length === 1) this.head = this.tail = null;else this.head = this.head.next; + --this.length; + return ret; + } + }, { + key: "clear", + value: function clear() { + this.head = this.tail = null; + this.length = 0; + } + }, { + key: "join", + value: function join(s) { + if (this.length === 0) return ''; + var p = this.head; + var ret = '' + p.data; + + while (p = p.next) { + ret += s + p.data; + } + + return ret; + } + }, { + key: "concat", + value: function concat(n) { + if (this.length === 0) return Buffer.alloc(0); + var ret = Buffer.allocUnsafe(n >>> 0); + var p = this.head; + var i = 0; + + while (p) { + copyBuffer(p.data, ret, i); + i += p.data.length; + p = p.next; + } + + return ret; + } // Consumes a specified amount of bytes or characters from the buffered data. + + }, { + key: "consume", + value: function consume(n, hasStrings) { + var ret; + + if (n < this.head.data.length) { + // `slice` is the same for buffers and strings. + ret = this.head.data.slice(0, n); + this.head.data = this.head.data.slice(n); + } else if (n === this.head.data.length) { + // First chunk is a perfect match. + ret = this.shift(); + } else { + // Result spans more than one buffer. + ret = hasStrings ? this._getString(n) : this._getBuffer(n); + } + + return ret; + } + }, { + key: "first", + value: function first() { + return this.head.data; + } // Consumes a specified amount of characters from the buffered data. + + }, { + key: "_getString", + value: function _getString(n) { + var p = this.head; + var c = 1; + var ret = p.data; + n -= ret.length; + + while (p = p.next) { + var str = p.data; + var nb = n > str.length ? str.length : n; + if (nb === str.length) ret += str;else ret += str.slice(0, n); + n -= nb; + + if (n === 0) { + if (nb === str.length) { + ++c; + if (p.next) this.head = p.next;else this.head = this.tail = null; + } else { + this.head = p; + p.data = str.slice(nb); + } + + break; + } + + ++c; + } + + this.length -= c; + return ret; + } // Consumes a specified amount of bytes from the buffered data. + + }, { + key: "_getBuffer", + value: function _getBuffer(n) { + var ret = Buffer.allocUnsafe(n); + var p = this.head; + var c = 1; + p.data.copy(ret); + n -= p.data.length; + + while (p = p.next) { + var buf = p.data; + var nb = n > buf.length ? buf.length : n; + buf.copy(ret, ret.length - n, 0, nb); + n -= nb; + + if (n === 0) { + if (nb === buf.length) { + ++c; + if (p.next) this.head = p.next;else this.head = this.tail = null; + } else { + this.head = p; + p.data = buf.slice(nb); + } + + break; + } + + ++c; + } + + this.length -= c; + return ret; + } // Make sure the linked list only shows the minimal necessary information. + + }, { + key: custom, + value: function value(_, options) { + return inspect(this, _objectSpread({}, options, { + // Only inspect one level. + depth: 0, + // It should not recurse. + customInspect: false + })); + } + }]); + + return BufferList; +}(); \ No newline at end of file diff --git a/node_modules/are-we-there-yet/node_modules/readable-stream/lib/internal/streams/destroy.js b/node_modules/are-we-there-yet/node_modules/readable-stream/lib/internal/streams/destroy.js new file mode 100644 index 0000000..3268a16 --- /dev/null +++ b/node_modules/are-we-there-yet/node_modules/readable-stream/lib/internal/streams/destroy.js @@ -0,0 +1,105 @@ +'use strict'; // undocumented cb() API, needed for core, not for public API + +function destroy(err, cb) { + var _this = this; + + var readableDestroyed = this._readableState && this._readableState.destroyed; + var writableDestroyed = this._writableState && this._writableState.destroyed; + + if (readableDestroyed || writableDestroyed) { + if (cb) { + cb(err); + } else if (err) { + if (!this._writableState) { + process.nextTick(emitErrorNT, this, err); + } else if (!this._writableState.errorEmitted) { + this._writableState.errorEmitted = true; + process.nextTick(emitErrorNT, this, err); + } + } + + return this; + } // we set destroyed to true before firing error callbacks in order + // to make it re-entrance safe in case destroy() is called within callbacks + + + if (this._readableState) { + this._readableState.destroyed = true; + } // if this is a duplex stream mark the writable part as destroyed as well + + + if (this._writableState) { + this._writableState.destroyed = true; + } + + this._destroy(err || null, function (err) { + if (!cb && err) { + if (!_this._writableState) { + process.nextTick(emitErrorAndCloseNT, _this, err); + } else if (!_this._writableState.errorEmitted) { + _this._writableState.errorEmitted = true; + process.nextTick(emitErrorAndCloseNT, _this, err); + } else { + process.nextTick(emitCloseNT, _this); + } + } else if (cb) { + process.nextTick(emitCloseNT, _this); + cb(err); + } else { + process.nextTick(emitCloseNT, _this); + } + }); + + return this; +} + +function emitErrorAndCloseNT(self, err) { + emitErrorNT(self, err); + emitCloseNT(self); +} + +function emitCloseNT(self) { + if (self._writableState && !self._writableState.emitClose) return; + if (self._readableState && !self._readableState.emitClose) return; + self.emit('close'); +} + +function undestroy() { + if (this._readableState) { + this._readableState.destroyed = false; + this._readableState.reading = false; + this._readableState.ended = false; + this._readableState.endEmitted = false; + } + + if (this._writableState) { + this._writableState.destroyed = false; + this._writableState.ended = false; + this._writableState.ending = false; + this._writableState.finalCalled = false; + this._writableState.prefinished = false; + this._writableState.finished = false; + this._writableState.errorEmitted = false; + } +} + +function emitErrorNT(self, err) { + self.emit('error', err); +} + +function errorOrDestroy(stream, err) { + // We have tests that rely on errors being emitted + // in the same tick, so changing this is semver major. + // For now when you opt-in to autoDestroy we allow + // the error to be emitted nextTick. In a future + // semver major update we should change the default to this. + var rState = stream._readableState; + var wState = stream._writableState; + if (rState && rState.autoDestroy || wState && wState.autoDestroy) stream.destroy(err);else stream.emit('error', err); +} + +module.exports = { + destroy: destroy, + undestroy: undestroy, + errorOrDestroy: errorOrDestroy +}; \ No newline at end of file diff --git a/node_modules/are-we-there-yet/node_modules/readable-stream/lib/internal/streams/end-of-stream.js b/node_modules/are-we-there-yet/node_modules/readable-stream/lib/internal/streams/end-of-stream.js new file mode 100644 index 0000000..831f286 --- /dev/null +++ b/node_modules/are-we-there-yet/node_modules/readable-stream/lib/internal/streams/end-of-stream.js @@ -0,0 +1,104 @@ +// Ported from https://github.com/mafintosh/end-of-stream with +// permission from the author, Mathias Buus (@mafintosh). +'use strict'; + +var ERR_STREAM_PREMATURE_CLOSE = require('../../../errors').codes.ERR_STREAM_PREMATURE_CLOSE; + +function once(callback) { + var called = false; + return function () { + if (called) return; + called = true; + + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + + callback.apply(this, args); + }; +} + +function noop() {} + +function isRequest(stream) { + return stream.setHeader && typeof stream.abort === 'function'; +} + +function eos(stream, opts, callback) { + if (typeof opts === 'function') return eos(stream, null, opts); + if (!opts) opts = {}; + callback = once(callback || noop); + var readable = opts.readable || opts.readable !== false && stream.readable; + var writable = opts.writable || opts.writable !== false && stream.writable; + + var onlegacyfinish = function onlegacyfinish() { + if (!stream.writable) onfinish(); + }; + + var writableEnded = stream._writableState && stream._writableState.finished; + + var onfinish = function onfinish() { + writable = false; + writableEnded = true; + if (!readable) callback.call(stream); + }; + + var readableEnded = stream._readableState && stream._readableState.endEmitted; + + var onend = function onend() { + readable = false; + readableEnded = true; + if (!writable) callback.call(stream); + }; + + var onerror = function onerror(err) { + callback.call(stream, err); + }; + + var onclose = function onclose() { + var err; + + if (readable && !readableEnded) { + if (!stream._readableState || !stream._readableState.ended) err = new ERR_STREAM_PREMATURE_CLOSE(); + return callback.call(stream, err); + } + + if (writable && !writableEnded) { + if (!stream._writableState || !stream._writableState.ended) err = new ERR_STREAM_PREMATURE_CLOSE(); + return callback.call(stream, err); + } + }; + + var onrequest = function onrequest() { + stream.req.on('finish', onfinish); + }; + + if (isRequest(stream)) { + stream.on('complete', onfinish); + stream.on('abort', onclose); + if (stream.req) onrequest();else stream.on('request', onrequest); + } else if (writable && !stream._writableState) { + // legacy streams + stream.on('end', onlegacyfinish); + stream.on('close', onlegacyfinish); + } + + stream.on('end', onend); + stream.on('finish', onfinish); + if (opts.error !== false) stream.on('error', onerror); + stream.on('close', onclose); + return function () { + stream.removeListener('complete', onfinish); + stream.removeListener('abort', onclose); + stream.removeListener('request', onrequest); + if (stream.req) stream.req.removeListener('finish', onfinish); + stream.removeListener('end', onlegacyfinish); + stream.removeListener('close', onlegacyfinish); + stream.removeListener('finish', onfinish); + stream.removeListener('end', onend); + stream.removeListener('error', onerror); + stream.removeListener('close', onclose); + }; +} + +module.exports = eos; \ No newline at end of file diff --git a/node_modules/are-we-there-yet/node_modules/readable-stream/lib/internal/streams/from-browser.js b/node_modules/are-we-there-yet/node_modules/readable-stream/lib/internal/streams/from-browser.js new file mode 100644 index 0000000..a4ce56f --- /dev/null +++ b/node_modules/are-we-there-yet/node_modules/readable-stream/lib/internal/streams/from-browser.js @@ -0,0 +1,3 @@ +module.exports = function () { + throw new Error('Readable.from is not available in the browser') +}; diff --git a/node_modules/are-we-there-yet/node_modules/readable-stream/lib/internal/streams/from.js b/node_modules/are-we-there-yet/node_modules/readable-stream/lib/internal/streams/from.js new file mode 100644 index 0000000..6c41284 --- /dev/null +++ b/node_modules/are-we-there-yet/node_modules/readable-stream/lib/internal/streams/from.js @@ -0,0 +1,64 @@ +'use strict'; + +function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } + +function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } + +function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } + +function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } + +function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } + +var ERR_INVALID_ARG_TYPE = require('../../../errors').codes.ERR_INVALID_ARG_TYPE; + +function from(Readable, iterable, opts) { + var iterator; + + if (iterable && typeof iterable.next === 'function') { + iterator = iterable; + } else if (iterable && iterable[Symbol.asyncIterator]) iterator = iterable[Symbol.asyncIterator]();else if (iterable && iterable[Symbol.iterator]) iterator = iterable[Symbol.iterator]();else throw new ERR_INVALID_ARG_TYPE('iterable', ['Iterable'], iterable); + + var readable = new Readable(_objectSpread({ + objectMode: true + }, opts)); // Reading boolean to protect against _read + // being called before last iteration completion. + + var reading = false; + + readable._read = function () { + if (!reading) { + reading = true; + next(); + } + }; + + function next() { + return _next2.apply(this, arguments); + } + + function _next2() { + _next2 = _asyncToGenerator(function* () { + try { + var _ref = yield iterator.next(), + value = _ref.value, + done = _ref.done; + + if (done) { + readable.push(null); + } else if (readable.push((yield value))) { + next(); + } else { + reading = false; + } + } catch (err) { + readable.destroy(err); + } + }); + return _next2.apply(this, arguments); + } + + return readable; +} + +module.exports = from; \ No newline at end of file diff --git a/node_modules/are-we-there-yet/node_modules/readable-stream/lib/internal/streams/pipeline.js b/node_modules/are-we-there-yet/node_modules/readable-stream/lib/internal/streams/pipeline.js new file mode 100644 index 0000000..6589909 --- /dev/null +++ b/node_modules/are-we-there-yet/node_modules/readable-stream/lib/internal/streams/pipeline.js @@ -0,0 +1,97 @@ +// Ported from https://github.com/mafintosh/pump with +// permission from the author, Mathias Buus (@mafintosh). +'use strict'; + +var eos; + +function once(callback) { + var called = false; + return function () { + if (called) return; + called = true; + callback.apply(void 0, arguments); + }; +} + +var _require$codes = require('../../../errors').codes, + ERR_MISSING_ARGS = _require$codes.ERR_MISSING_ARGS, + ERR_STREAM_DESTROYED = _require$codes.ERR_STREAM_DESTROYED; + +function noop(err) { + // Rethrow the error if it exists to avoid swallowing it + if (err) throw err; +} + +function isRequest(stream) { + return stream.setHeader && typeof stream.abort === 'function'; +} + +function destroyer(stream, reading, writing, callback) { + callback = once(callback); + var closed = false; + stream.on('close', function () { + closed = true; + }); + if (eos === undefined) eos = require('./end-of-stream'); + eos(stream, { + readable: reading, + writable: writing + }, function (err) { + if (err) return callback(err); + closed = true; + callback(); + }); + var destroyed = false; + return function (err) { + if (closed) return; + if (destroyed) return; + destroyed = true; // request.destroy just do .end - .abort is what we want + + if (isRequest(stream)) return stream.abort(); + if (typeof stream.destroy === 'function') return stream.destroy(); + callback(err || new ERR_STREAM_DESTROYED('pipe')); + }; +} + +function call(fn) { + fn(); +} + +function pipe(from, to) { + return from.pipe(to); +} + +function popCallback(streams) { + if (!streams.length) return noop; + if (typeof streams[streams.length - 1] !== 'function') return noop; + return streams.pop(); +} + +function pipeline() { + for (var _len = arguments.length, streams = new Array(_len), _key = 0; _key < _len; _key++) { + streams[_key] = arguments[_key]; + } + + var callback = popCallback(streams); + if (Array.isArray(streams[0])) streams = streams[0]; + + if (streams.length < 2) { + throw new ERR_MISSING_ARGS('streams'); + } + + var error; + var destroys = streams.map(function (stream, i) { + var reading = i < streams.length - 1; + var writing = i > 0; + return destroyer(stream, reading, writing, function (err) { + if (!error) error = err; + if (err) destroys.forEach(call); + if (reading) return; + destroys.forEach(call); + callback(error); + }); + }); + return streams.reduce(pipe); +} + +module.exports = pipeline; \ No newline at end of file diff --git a/node_modules/are-we-there-yet/node_modules/readable-stream/lib/internal/streams/state.js b/node_modules/are-we-there-yet/node_modules/readable-stream/lib/internal/streams/state.js new file mode 100644 index 0000000..19887eb --- /dev/null +++ b/node_modules/are-we-there-yet/node_modules/readable-stream/lib/internal/streams/state.js @@ -0,0 +1,27 @@ +'use strict'; + +var ERR_INVALID_OPT_VALUE = require('../../../errors').codes.ERR_INVALID_OPT_VALUE; + +function highWaterMarkFrom(options, isDuplex, duplexKey) { + return options.highWaterMark != null ? options.highWaterMark : isDuplex ? options[duplexKey] : null; +} + +function getHighWaterMark(state, options, duplexKey, isDuplex) { + var hwm = highWaterMarkFrom(options, isDuplex, duplexKey); + + if (hwm != null) { + if (!(isFinite(hwm) && Math.floor(hwm) === hwm) || hwm < 0) { + var name = isDuplex ? duplexKey : 'highWaterMark'; + throw new ERR_INVALID_OPT_VALUE(name, hwm); + } + + return Math.floor(hwm); + } // Default value + + + return state.objectMode ? 16 : 16 * 1024; +} + +module.exports = { + getHighWaterMark: getHighWaterMark +}; \ No newline at end of file diff --git a/node_modules/are-we-there-yet/node_modules/readable-stream/lib/internal/streams/stream-browser.js b/node_modules/are-we-there-yet/node_modules/readable-stream/lib/internal/streams/stream-browser.js new file mode 100644 index 0000000..9332a3f --- /dev/null +++ b/node_modules/are-we-there-yet/node_modules/readable-stream/lib/internal/streams/stream-browser.js @@ -0,0 +1 @@ +module.exports = require('events').EventEmitter; diff --git a/node_modules/are-we-there-yet/node_modules/readable-stream/lib/internal/streams/stream.js b/node_modules/are-we-there-yet/node_modules/readable-stream/lib/internal/streams/stream.js new file mode 100644 index 0000000..ce2ad5b --- /dev/null +++ b/node_modules/are-we-there-yet/node_modules/readable-stream/lib/internal/streams/stream.js @@ -0,0 +1 @@ +module.exports = require('stream'); diff --git a/node_modules/are-we-there-yet/node_modules/readable-stream/package.json b/node_modules/are-we-there-yet/node_modules/readable-stream/package.json new file mode 100644 index 0000000..0b0c4bd --- /dev/null +++ b/node_modules/are-we-there-yet/node_modules/readable-stream/package.json @@ -0,0 +1,68 @@ +{ + "name": "readable-stream", + "version": "3.6.0", + "description": "Streams3, a user-land copy of the stream library from Node.js", + "main": "readable.js", + "engines": { + "node": ">= 6" + }, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "devDependencies": { + "@babel/cli": "^7.2.0", + "@babel/core": "^7.2.0", + "@babel/polyfill": "^7.0.0", + "@babel/preset-env": "^7.2.0", + "airtap": "0.0.9", + "assert": "^1.4.0", + "bl": "^2.0.0", + "deep-strict-equal": "^0.2.0", + "events.once": "^2.0.2", + "glob": "^7.1.2", + "gunzip-maybe": "^1.4.1", + "hyperquest": "^2.1.3", + "lolex": "^2.6.0", + "nyc": "^11.0.0", + "pump": "^3.0.0", + "rimraf": "^2.6.2", + "tap": "^12.0.0", + "tape": "^4.9.0", + "tar-fs": "^1.16.2", + "util-promisify": "^2.1.0" + }, + "scripts": { + "test": "tap -J --no-esm test/parallel/*.js test/ours/*.js", + "ci": "TAP=1 tap --no-esm test/parallel/*.js test/ours/*.js | tee test.tap", + "test-browsers": "airtap --sauce-connect --loopback airtap.local -- test/browser.js", + "test-browser-local": "airtap --open --local -- test/browser.js", + "cover": "nyc npm test", + "report": "nyc report --reporter=lcov", + "update-browser-errors": "babel -o errors-browser.js errors.js" + }, + "repository": { + "type": "git", + "url": "git://github.com/nodejs/readable-stream" + }, + "keywords": [ + "readable", + "stream", + "pipe" + ], + "browser": { + "util": false, + "worker_threads": false, + "./errors": "./errors-browser.js", + "./readable.js": "./readable-browser.js", + "./lib/internal/streams/from.js": "./lib/internal/streams/from-browser.js", + "./lib/internal/streams/stream.js": "./lib/internal/streams/stream-browser.js" + }, + "nyc": { + "include": [ + "lib/**.js" + ] + }, + "license": "MIT" +} diff --git a/node_modules/are-we-there-yet/node_modules/readable-stream/readable-browser.js b/node_modules/are-we-there-yet/node_modules/readable-stream/readable-browser.js new file mode 100644 index 0000000..adbf60d --- /dev/null +++ b/node_modules/are-we-there-yet/node_modules/readable-stream/readable-browser.js @@ -0,0 +1,9 @@ +exports = module.exports = require('./lib/_stream_readable.js'); +exports.Stream = exports; +exports.Readable = exports; +exports.Writable = require('./lib/_stream_writable.js'); +exports.Duplex = require('./lib/_stream_duplex.js'); +exports.Transform = require('./lib/_stream_transform.js'); +exports.PassThrough = require('./lib/_stream_passthrough.js'); +exports.finished = require('./lib/internal/streams/end-of-stream.js'); +exports.pipeline = require('./lib/internal/streams/pipeline.js'); diff --git a/node_modules/are-we-there-yet/node_modules/readable-stream/readable.js b/node_modules/are-we-there-yet/node_modules/readable-stream/readable.js new file mode 100644 index 0000000..9e0ca12 --- /dev/null +++ b/node_modules/are-we-there-yet/node_modules/readable-stream/readable.js @@ -0,0 +1,16 @@ +var Stream = require('stream'); +if (process.env.READABLE_STREAM === 'disable' && Stream) { + module.exports = Stream.Readable; + Object.assign(module.exports, Stream); + module.exports.Stream = Stream; +} else { + exports = module.exports = require('./lib/_stream_readable.js'); + exports.Stream = Stream || exports; + exports.Readable = exports; + exports.Writable = require('./lib/_stream_writable.js'); + exports.Duplex = require('./lib/_stream_duplex.js'); + exports.Transform = require('./lib/_stream_transform.js'); + exports.PassThrough = require('./lib/_stream_passthrough.js'); + exports.finished = require('./lib/internal/streams/end-of-stream.js'); + exports.pipeline = require('./lib/internal/streams/pipeline.js'); +} diff --git a/node_modules/are-we-there-yet/package.json b/node_modules/are-we-there-yet/package.json new file mode 100644 index 0000000..67c01e9 --- /dev/null +++ b/node_modules/are-we-there-yet/package.json @@ -0,0 +1,57 @@ +{ + "name": "are-we-there-yet", + "version": "3.0.0", + "description": "Keep track of the overall completion of many disparate processes", + "main": "lib/index.js", + "scripts": { + "test": "tap", + "npmclilint": "npmcli-lint", + "lint": "eslint '**/*.js'", + "lintfix": "npm run lint -- --fix", + "posttest": "npm run lint", + "postsnap": "npm run lintfix --", + "preversion": "npm test", + "postversion": "npm publish", + "prepublishOnly": "git push origin --follow-tags", + "snap": "tap", + "postlint": "npm-template-check", + "template-copy": "npm-template-copy --force" + }, + "repository": { + "type": "git", + "url": "https://github.com/npm/are-we-there-yet.git" + }, + "author": "GitHub Inc.", + "license": "ISC", + "bugs": { + "url": "https://github.com/npm/are-we-there-yet/issues" + }, + "homepage": "https://github.com/npm/are-we-there-yet", + "devDependencies": { + "@npmcli/eslint-config": "^2.0.0", + "@npmcli/template-oss": "^2.7.1", + "eslint": "^8.8.0", + "eslint-plugin-node": "^11.1.0", + "tap": "^15.0.9" + }, + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + }, + "files": [ + "bin", + "lib" + ], + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16" + }, + "tap": { + "branches": 68, + "statements": 92, + "functions": 86, + "lines": 92 + }, + "templateOSS": { + "version": "2.7.1" + } +} diff --git a/node_modules/asn1/Jenkinsfile b/node_modules/asn1/Jenkinsfile new file mode 100644 index 0000000..d1b4593 --- /dev/null +++ b/node_modules/asn1/Jenkinsfile @@ -0,0 +1,65 @@ +@Library('jenkins-joylib@v1.0.8') _ + +pipeline { + + agent none + + options { + buildDiscarder(logRotator(numToKeepStr: '45')) + timestamps() + } + + stages { + stage('top') { + parallel { + stage('v4-zone') { + agent { + label joyCommonLabels(image_ver: '15.4.1') + } + tools { + nodejs 'sdcnode-v4-zone' + } + stages { + stage('check') { + steps{ + sh('make check') + } + } + stage('test') { + steps{ + sh('make test') + } + } + } + } + + stage('v6-zone64') { + agent { + label joyCommonLabels(image_ver: '18.4.0') + } + tools { + nodejs 'sdcnode-v6-zone64' + } + stages { + stage('check') { + steps{ + sh('make check') + } + } + stage('test') { + steps{ + sh('make test') + } + } + } + } + } + } + } + + post { + always { + joySlackNotifications() + } + } +} diff --git a/node_modules/asn1/LICENSE b/node_modules/asn1/LICENSE new file mode 100644 index 0000000..9b5dcdb --- /dev/null +++ b/node_modules/asn1/LICENSE @@ -0,0 +1,19 @@ +Copyright (c) 2011 Mark Cavage, All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE diff --git a/node_modules/asn1/README.md b/node_modules/asn1/README.md new file mode 100644 index 0000000..2208210 --- /dev/null +++ b/node_modules/asn1/README.md @@ -0,0 +1,50 @@ +node-asn1 is a library for encoding and decoding ASN.1 datatypes in pure JS. +Currently BER encoding is supported; at some point I'll likely have to do DER. + +## Usage + +Mostly, if you're *actually* needing to read and write ASN.1, you probably don't +need this readme to explain what and why. If you have no idea what ASN.1 is, +see this: ftp://ftp.rsa.com/pub/pkcs/ascii/layman.asc + +The source is pretty much self-explanatory, and has read/write methods for the +common types out there. + +### Decoding + +The following reads an ASN.1 sequence with a boolean. + + var Ber = require('asn1').Ber; + + var reader = new Ber.Reader(Buffer.from([0x30, 0x03, 0x01, 0x01, 0xff])); + + reader.readSequence(); + console.log('Sequence len: ' + reader.length); + if (reader.peek() === Ber.Boolean) + console.log(reader.readBoolean()); + +### Encoding + +The following generates the same payload as above. + + var Ber = require('asn1').Ber; + + var writer = new Ber.Writer(); + + writer.startSequence(); + writer.writeBoolean(true); + writer.endSequence(); + + console.log(writer.buffer); + +## Installation + + npm install asn1 + +## License + +MIT. + +## Bugs + +See . diff --git a/node_modules/asn1/lib/ber/errors.js b/node_modules/asn1/lib/ber/errors.js new file mode 100644 index 0000000..4557b8a --- /dev/null +++ b/node_modules/asn1/lib/ber/errors.js @@ -0,0 +1,13 @@ +// Copyright 2011 Mark Cavage All rights reserved. + + +module.exports = { + + newInvalidAsn1Error: function (msg) { + var e = new Error(); + e.name = 'InvalidAsn1Error'; + e.message = msg || ''; + return e; + } + +}; diff --git a/node_modules/asn1/lib/ber/index.js b/node_modules/asn1/lib/ber/index.js new file mode 100644 index 0000000..387d132 --- /dev/null +++ b/node_modules/asn1/lib/ber/index.js @@ -0,0 +1,27 @@ +// Copyright 2011 Mark Cavage All rights reserved. + +var errors = require('./errors'); +var types = require('./types'); + +var Reader = require('./reader'); +var Writer = require('./writer'); + + +// --- Exports + +module.exports = { + + Reader: Reader, + + Writer: Writer + +}; + +for (var t in types) { + if (types.hasOwnProperty(t)) + module.exports[t] = types[t]; +} +for (var e in errors) { + if (errors.hasOwnProperty(e)) + module.exports[e] = errors[e]; +} diff --git a/node_modules/asn1/lib/ber/reader.js b/node_modules/asn1/lib/ber/reader.js new file mode 100644 index 0000000..8a7e4ca --- /dev/null +++ b/node_modules/asn1/lib/ber/reader.js @@ -0,0 +1,262 @@ +// Copyright 2011 Mark Cavage All rights reserved. + +var assert = require('assert'); +var Buffer = require('safer-buffer').Buffer; + +var ASN1 = require('./types'); +var errors = require('./errors'); + + +// --- Globals + +var newInvalidAsn1Error = errors.newInvalidAsn1Error; + + + +// --- API + +function Reader(data) { + if (!data || !Buffer.isBuffer(data)) + throw new TypeError('data must be a node Buffer'); + + this._buf = data; + this._size = data.length; + + // These hold the "current" state + this._len = 0; + this._offset = 0; +} + +Object.defineProperty(Reader.prototype, 'length', { + enumerable: true, + get: function () { return (this._len); } +}); + +Object.defineProperty(Reader.prototype, 'offset', { + enumerable: true, + get: function () { return (this._offset); } +}); + +Object.defineProperty(Reader.prototype, 'remain', { + get: function () { return (this._size - this._offset); } +}); + +Object.defineProperty(Reader.prototype, 'buffer', { + get: function () { return (this._buf.slice(this._offset)); } +}); + + +/** + * Reads a single byte and advances offset; you can pass in `true` to make this + * a "peek" operation (i.e., get the byte, but don't advance the offset). + * + * @param {Boolean} peek true means don't move offset. + * @return {Number} the next byte, null if not enough data. + */ +Reader.prototype.readByte = function (peek) { + if (this._size - this._offset < 1) + return null; + + var b = this._buf[this._offset] & 0xff; + + if (!peek) + this._offset += 1; + + return b; +}; + + +Reader.prototype.peek = function () { + return this.readByte(true); +}; + + +/** + * Reads a (potentially) variable length off the BER buffer. This call is + * not really meant to be called directly, as callers have to manipulate + * the internal buffer afterwards. + * + * As a result of this call, you can call `Reader.length`, until the + * next thing called that does a readLength. + * + * @return {Number} the amount of offset to advance the buffer. + * @throws {InvalidAsn1Error} on bad ASN.1 + */ +Reader.prototype.readLength = function (offset) { + if (offset === undefined) + offset = this._offset; + + if (offset >= this._size) + return null; + + var lenB = this._buf[offset++] & 0xff; + if (lenB === null) + return null; + + if ((lenB & 0x80) === 0x80) { + lenB &= 0x7f; + + if (lenB === 0) + throw newInvalidAsn1Error('Indefinite length not supported'); + + if (lenB > 4) + throw newInvalidAsn1Error('encoding too long'); + + if (this._size - offset < lenB) + return null; + + this._len = 0; + for (var i = 0; i < lenB; i++) + this._len = (this._len << 8) + (this._buf[offset++] & 0xff); + + } else { + // Wasn't a variable length + this._len = lenB; + } + + return offset; +}; + + +/** + * Parses the next sequence in this BER buffer. + * + * To get the length of the sequence, call `Reader.length`. + * + * @return {Number} the sequence's tag. + */ +Reader.prototype.readSequence = function (tag) { + var seq = this.peek(); + if (seq === null) + return null; + if (tag !== undefined && tag !== seq) + throw newInvalidAsn1Error('Expected 0x' + tag.toString(16) + + ': got 0x' + seq.toString(16)); + + var o = this.readLength(this._offset + 1); // stored in `length` + if (o === null) + return null; + + this._offset = o; + return seq; +}; + + +Reader.prototype.readInt = function () { + return this._readTag(ASN1.Integer); +}; + + +Reader.prototype.readBoolean = function () { + return (this._readTag(ASN1.Boolean) === 0 ? false : true); +}; + + +Reader.prototype.readEnumeration = function () { + return this._readTag(ASN1.Enumeration); +}; + + +Reader.prototype.readString = function (tag, retbuf) { + if (!tag) + tag = ASN1.OctetString; + + var b = this.peek(); + if (b === null) + return null; + + if (b !== tag) + throw newInvalidAsn1Error('Expected 0x' + tag.toString(16) + + ': got 0x' + b.toString(16)); + + var o = this.readLength(this._offset + 1); // stored in `length` + + if (o === null) + return null; + + if (this.length > this._size - o) + return null; + + this._offset = o; + + if (this.length === 0) + return retbuf ? Buffer.alloc(0) : ''; + + var str = this._buf.slice(this._offset, this._offset + this.length); + this._offset += this.length; + + return retbuf ? str : str.toString('utf8'); +}; + +Reader.prototype.readOID = function (tag) { + if (!tag) + tag = ASN1.OID; + + var b = this.readString(tag, true); + if (b === null) + return null; + + var values = []; + var value = 0; + + for (var i = 0; i < b.length; i++) { + var byte = b[i] & 0xff; + + value <<= 7; + value += byte & 0x7f; + if ((byte & 0x80) === 0) { + values.push(value); + value = 0; + } + } + + value = values.shift(); + values.unshift(value % 40); + values.unshift((value / 40) >> 0); + + return values.join('.'); +}; + + +Reader.prototype._readTag = function (tag) { + assert.ok(tag !== undefined); + + var b = this.peek(); + + if (b === null) + return null; + + if (b !== tag) + throw newInvalidAsn1Error('Expected 0x' + tag.toString(16) + + ': got 0x' + b.toString(16)); + + var o = this.readLength(this._offset + 1); // stored in `length` + if (o === null) + return null; + + if (this.length > 4) + throw newInvalidAsn1Error('Integer too long: ' + this.length); + + if (this.length > this._size - o) + return null; + this._offset = o; + + var fb = this._buf[this._offset]; + var value = 0; + + for (var i = 0; i < this.length; i++) { + value <<= 8; + value |= (this._buf[this._offset++] & 0xff); + } + + if ((fb & 0x80) === 0x80 && i !== 4) + value -= (1 << (i * 8)); + + return value >> 0; +}; + + + +// --- Exported API + +module.exports = Reader; diff --git a/node_modules/asn1/lib/ber/types.js b/node_modules/asn1/lib/ber/types.js new file mode 100644 index 0000000..8aea000 --- /dev/null +++ b/node_modules/asn1/lib/ber/types.js @@ -0,0 +1,36 @@ +// Copyright 2011 Mark Cavage All rights reserved. + + +module.exports = { + EOC: 0, + Boolean: 1, + Integer: 2, + BitString: 3, + OctetString: 4, + Null: 5, + OID: 6, + ObjectDescriptor: 7, + External: 8, + Real: 9, // float + Enumeration: 10, + PDV: 11, + Utf8String: 12, + RelativeOID: 13, + Sequence: 16, + Set: 17, + NumericString: 18, + PrintableString: 19, + T61String: 20, + VideotexString: 21, + IA5String: 22, + UTCTime: 23, + GeneralizedTime: 24, + GraphicString: 25, + VisibleString: 26, + GeneralString: 28, + UniversalString: 29, + CharacterString: 30, + BMPString: 31, + Constructor: 32, + Context: 128 +}; diff --git a/node_modules/asn1/lib/ber/writer.js b/node_modules/asn1/lib/ber/writer.js new file mode 100644 index 0000000..3515acf --- /dev/null +++ b/node_modules/asn1/lib/ber/writer.js @@ -0,0 +1,317 @@ +// Copyright 2011 Mark Cavage All rights reserved. + +var assert = require('assert'); +var Buffer = require('safer-buffer').Buffer; +var ASN1 = require('./types'); +var errors = require('./errors'); + + +// --- Globals + +var newInvalidAsn1Error = errors.newInvalidAsn1Error; + +var DEFAULT_OPTS = { + size: 1024, + growthFactor: 8 +}; + + +// --- Helpers + +function merge(from, to) { + assert.ok(from); + assert.equal(typeof (from), 'object'); + assert.ok(to); + assert.equal(typeof (to), 'object'); + + var keys = Object.getOwnPropertyNames(from); + keys.forEach(function (key) { + if (to[key]) + return; + + var value = Object.getOwnPropertyDescriptor(from, key); + Object.defineProperty(to, key, value); + }); + + return to; +} + + + +// --- API + +function Writer(options) { + options = merge(DEFAULT_OPTS, options || {}); + + this._buf = Buffer.alloc(options.size || 1024); + this._size = this._buf.length; + this._offset = 0; + this._options = options; + + // A list of offsets in the buffer where we need to insert + // sequence tag/len pairs. + this._seq = []; +} + +Object.defineProperty(Writer.prototype, 'buffer', { + get: function () { + if (this._seq.length) + throw newInvalidAsn1Error(this._seq.length + ' unended sequence(s)'); + + return (this._buf.slice(0, this._offset)); + } +}); + +Writer.prototype.writeByte = function (b) { + if (typeof (b) !== 'number') + throw new TypeError('argument must be a Number'); + + this._ensure(1); + this._buf[this._offset++] = b; +}; + + +Writer.prototype.writeInt = function (i, tag) { + if (typeof (i) !== 'number') + throw new TypeError('argument must be a Number'); + if (typeof (tag) !== 'number') + tag = ASN1.Integer; + + var sz = 4; + + while ((((i & 0xff800000) === 0) || ((i & 0xff800000) === 0xff800000 >> 0)) && + (sz > 1)) { + sz--; + i <<= 8; + } + + if (sz > 4) + throw newInvalidAsn1Error('BER ints cannot be > 0xffffffff'); + + this._ensure(2 + sz); + this._buf[this._offset++] = tag; + this._buf[this._offset++] = sz; + + while (sz-- > 0) { + this._buf[this._offset++] = ((i & 0xff000000) >>> 24); + i <<= 8; + } + +}; + + +Writer.prototype.writeNull = function () { + this.writeByte(ASN1.Null); + this.writeByte(0x00); +}; + + +Writer.prototype.writeEnumeration = function (i, tag) { + if (typeof (i) !== 'number') + throw new TypeError('argument must be a Number'); + if (typeof (tag) !== 'number') + tag = ASN1.Enumeration; + + return this.writeInt(i, tag); +}; + + +Writer.prototype.writeBoolean = function (b, tag) { + if (typeof (b) !== 'boolean') + throw new TypeError('argument must be a Boolean'); + if (typeof (tag) !== 'number') + tag = ASN1.Boolean; + + this._ensure(3); + this._buf[this._offset++] = tag; + this._buf[this._offset++] = 0x01; + this._buf[this._offset++] = b ? 0xff : 0x00; +}; + + +Writer.prototype.writeString = function (s, tag) { + if (typeof (s) !== 'string') + throw new TypeError('argument must be a string (was: ' + typeof (s) + ')'); + if (typeof (tag) !== 'number') + tag = ASN1.OctetString; + + var len = Buffer.byteLength(s); + this.writeByte(tag); + this.writeLength(len); + if (len) { + this._ensure(len); + this._buf.write(s, this._offset); + this._offset += len; + } +}; + + +Writer.prototype.writeBuffer = function (buf, tag) { + if (typeof (tag) !== 'number') + throw new TypeError('tag must be a number'); + if (!Buffer.isBuffer(buf)) + throw new TypeError('argument must be a buffer'); + + this.writeByte(tag); + this.writeLength(buf.length); + this._ensure(buf.length); + buf.copy(this._buf, this._offset, 0, buf.length); + this._offset += buf.length; +}; + + +Writer.prototype.writeStringArray = function (strings) { + if ((!strings instanceof Array)) + throw new TypeError('argument must be an Array[String]'); + + var self = this; + strings.forEach(function (s) { + self.writeString(s); + }); +}; + +// This is really to solve DER cases, but whatever for now +Writer.prototype.writeOID = function (s, tag) { + if (typeof (s) !== 'string') + throw new TypeError('argument must be a string'); + if (typeof (tag) !== 'number') + tag = ASN1.OID; + + if (!/^([0-9]+\.){3,}[0-9]+$/.test(s)) + throw new Error('argument is not a valid OID string'); + + function encodeOctet(bytes, octet) { + if (octet < 128) { + bytes.push(octet); + } else if (octet < 16384) { + bytes.push((octet >>> 7) | 0x80); + bytes.push(octet & 0x7F); + } else if (octet < 2097152) { + bytes.push((octet >>> 14) | 0x80); + bytes.push(((octet >>> 7) | 0x80) & 0xFF); + bytes.push(octet & 0x7F); + } else if (octet < 268435456) { + bytes.push((octet >>> 21) | 0x80); + bytes.push(((octet >>> 14) | 0x80) & 0xFF); + bytes.push(((octet >>> 7) | 0x80) & 0xFF); + bytes.push(octet & 0x7F); + } else { + bytes.push(((octet >>> 28) | 0x80) & 0xFF); + bytes.push(((octet >>> 21) | 0x80) & 0xFF); + bytes.push(((octet >>> 14) | 0x80) & 0xFF); + bytes.push(((octet >>> 7) | 0x80) & 0xFF); + bytes.push(octet & 0x7F); + } + } + + var tmp = s.split('.'); + var bytes = []; + bytes.push(parseInt(tmp[0], 10) * 40 + parseInt(tmp[1], 10)); + tmp.slice(2).forEach(function (b) { + encodeOctet(bytes, parseInt(b, 10)); + }); + + var self = this; + this._ensure(2 + bytes.length); + this.writeByte(tag); + this.writeLength(bytes.length); + bytes.forEach(function (b) { + self.writeByte(b); + }); +}; + + +Writer.prototype.writeLength = function (len) { + if (typeof (len) !== 'number') + throw new TypeError('argument must be a Number'); + + this._ensure(4); + + if (len <= 0x7f) { + this._buf[this._offset++] = len; + } else if (len <= 0xff) { + this._buf[this._offset++] = 0x81; + this._buf[this._offset++] = len; + } else if (len <= 0xffff) { + this._buf[this._offset++] = 0x82; + this._buf[this._offset++] = len >> 8; + this._buf[this._offset++] = len; + } else if (len <= 0xffffff) { + this._buf[this._offset++] = 0x83; + this._buf[this._offset++] = len >> 16; + this._buf[this._offset++] = len >> 8; + this._buf[this._offset++] = len; + } else { + throw newInvalidAsn1Error('Length too long (> 4 bytes)'); + } +}; + +Writer.prototype.startSequence = function (tag) { + if (typeof (tag) !== 'number') + tag = ASN1.Sequence | ASN1.Constructor; + + this.writeByte(tag); + this._seq.push(this._offset); + this._ensure(3); + this._offset += 3; +}; + + +Writer.prototype.endSequence = function () { + var seq = this._seq.pop(); + var start = seq + 3; + var len = this._offset - start; + + if (len <= 0x7f) { + this._shift(start, len, -2); + this._buf[seq] = len; + } else if (len <= 0xff) { + this._shift(start, len, -1); + this._buf[seq] = 0x81; + this._buf[seq + 1] = len; + } else if (len <= 0xffff) { + this._buf[seq] = 0x82; + this._buf[seq + 1] = len >> 8; + this._buf[seq + 2] = len; + } else if (len <= 0xffffff) { + this._shift(start, len, 1); + this._buf[seq] = 0x83; + this._buf[seq + 1] = len >> 16; + this._buf[seq + 2] = len >> 8; + this._buf[seq + 3] = len; + } else { + throw newInvalidAsn1Error('Sequence too long'); + } +}; + + +Writer.prototype._shift = function (start, len, shift) { + assert.ok(start !== undefined); + assert.ok(len !== undefined); + assert.ok(shift); + + this._buf.copy(this._buf, start + shift, start, start + len); + this._offset += shift; +}; + +Writer.prototype._ensure = function (len) { + assert.ok(len); + + if (this._size - this._offset < len) { + var sz = this._size * this._options.growthFactor; + if (sz - this._offset < len) + sz += len; + + var buf = Buffer.alloc(sz); + + this._buf.copy(buf, 0, 0, this._offset); + this._buf = buf; + this._size = sz; + } +}; + + + +// --- Exported API + +module.exports = Writer; diff --git a/node_modules/asn1/lib/index.js b/node_modules/asn1/lib/index.js new file mode 100644 index 0000000..ede3ab2 --- /dev/null +++ b/node_modules/asn1/lib/index.js @@ -0,0 +1,20 @@ +// Copyright 2011 Mark Cavage All rights reserved. + +// If you have no idea what ASN.1 or BER is, see this: +// ftp://ftp.rsa.com/pub/pkcs/ascii/layman.asc + +var Ber = require('./ber/index'); + + + +// --- Exported API + +module.exports = { + + Ber: Ber, + + BerReader: Ber.Reader, + + BerWriter: Ber.Writer + +}; diff --git a/node_modules/asn1/package.json b/node_modules/asn1/package.json new file mode 100644 index 0000000..e31cce5 --- /dev/null +++ b/node_modules/asn1/package.json @@ -0,0 +1,31 @@ +{ + "author": "Joyent (joyent.com)", + "contributors": [ + "Mark Cavage ", + "David Gwynne ", + "Yunong Xiao ", + "Alex Wilson " + ], + "name": "asn1", + "description": "Contains parsers and serializers for ASN.1 (currently BER only)", + "version": "0.2.6", + "repository": { + "type": "git", + "url": "https://github.com/joyent/node-asn1.git" + }, + "main": "lib/index.js", + "dependencies": { + "safer-buffer": "~2.1.0" + }, + "devDependencies": { + "istanbul": "^0.3.6", + "faucet": "0.0.1", + "tape": "^3.5.0", + "eslint": "2.13.1", + "eslint-plugin-joyent": "~1.3.0" + }, + "scripts": { + "test": "./node_modules/.bin/tape ./test/ber/*.test.js" + }, + "license": "MIT" +} diff --git a/node_modules/assert-plus/AUTHORS b/node_modules/assert-plus/AUTHORS new file mode 100644 index 0000000..1923524 --- /dev/null +++ b/node_modules/assert-plus/AUTHORS @@ -0,0 +1,6 @@ +Dave Eddy +Fred Kuo +Lars-Magnus Skog +Mark Cavage +Patrick Mooney +Rob Gulewich diff --git a/node_modules/assert-plus/CHANGES.md b/node_modules/assert-plus/CHANGES.md new file mode 100644 index 0000000..57d92bf --- /dev/null +++ b/node_modules/assert-plus/CHANGES.md @@ -0,0 +1,14 @@ +# assert-plus Changelog + +## 1.0.0 + +- *BREAKING* assert.number (and derivatives) now accept Infinity as valid input +- Add assert.finite check. Previous assert.number callers should use this if + they expect Infinity inputs to throw. + +## 0.2.0 + +- Fix `assert.object(null)` so it throws +- Fix optional/arrayOf exports for non-type-of asserts +- Add optiona/arrayOf exports for Stream/Date/Regex/uuid +- Add basic unit test coverage diff --git a/node_modules/assert-plus/README.md b/node_modules/assert-plus/README.md new file mode 100644 index 0000000..ec200d1 --- /dev/null +++ b/node_modules/assert-plus/README.md @@ -0,0 +1,162 @@ +# assert-plus + +This library is a super small wrapper over node's assert module that has two +things: (1) the ability to disable assertions with the environment variable +NODE\_NDEBUG, and (2) some API wrappers for argument testing. Like +`assert.string(myArg, 'myArg')`. As a simple example, most of my code looks +like this: + +```javascript + var assert = require('assert-plus'); + + function fooAccount(options, callback) { + assert.object(options, 'options'); + assert.number(options.id, 'options.id'); + assert.bool(options.isManager, 'options.isManager'); + assert.string(options.name, 'options.name'); + assert.arrayOfString(options.email, 'options.email'); + assert.func(callback, 'callback'); + + // Do stuff + callback(null, {}); + } +``` + +# API + +All methods that *aren't* part of node's core assert API are simply assumed to +take an argument, and then a string 'name' that's not a message; `AssertionError` +will be thrown if the assertion fails with a message like: + + AssertionError: foo (string) is required + at test (/home/mark/work/foo/foo.js:3:9) + at Object. (/home/mark/work/foo/foo.js:15:1) + at Module._compile (module.js:446:26) + at Object..js (module.js:464:10) + at Module.load (module.js:353:31) + at Function._load (module.js:311:12) + at Array.0 (module.js:484:10) + at EventEmitter._tickCallback (node.js:190:38) + +from: + +```javascript + function test(foo) { + assert.string(foo, 'foo'); + } +``` + +There you go. You can check that arrays are of a homogeneous type with `Arrayof$Type`: + +```javascript + function test(foo) { + assert.arrayOfString(foo, 'foo'); + } +``` + +You can assert IFF an argument is not `undefined` (i.e., an optional arg): + +```javascript + assert.optionalString(foo, 'foo'); +``` + +Lastly, you can opt-out of assertion checking altogether by setting the +environment variable `NODE_NDEBUG=1`. This is pseudo-useful if you have +lots of assertions, and don't want to pay `typeof ()` taxes to v8 in +production. Be advised: The standard functions re-exported from `assert` are +also disabled in assert-plus if NDEBUG is specified. Using them directly from +the `assert` module avoids this behavior. + +The complete list of APIs is: + +* assert.array +* assert.bool +* assert.buffer +* assert.func +* assert.number +* assert.finite +* assert.object +* assert.string +* assert.stream +* assert.date +* assert.regexp +* assert.uuid +* assert.arrayOfArray +* assert.arrayOfBool +* assert.arrayOfBuffer +* assert.arrayOfFunc +* assert.arrayOfNumber +* assert.arrayOfFinite +* assert.arrayOfObject +* assert.arrayOfString +* assert.arrayOfStream +* assert.arrayOfDate +* assert.arrayOfRegexp +* assert.arrayOfUuid +* assert.optionalArray +* assert.optionalBool +* assert.optionalBuffer +* assert.optionalFunc +* assert.optionalNumber +* assert.optionalFinite +* assert.optionalObject +* assert.optionalString +* assert.optionalStream +* assert.optionalDate +* assert.optionalRegexp +* assert.optionalUuid +* assert.optionalArrayOfArray +* assert.optionalArrayOfBool +* assert.optionalArrayOfBuffer +* assert.optionalArrayOfFunc +* assert.optionalArrayOfNumber +* assert.optionalArrayOfFinite +* assert.optionalArrayOfObject +* assert.optionalArrayOfString +* assert.optionalArrayOfStream +* assert.optionalArrayOfDate +* assert.optionalArrayOfRegexp +* assert.optionalArrayOfUuid +* assert.AssertionError +* assert.fail +* assert.ok +* assert.equal +* assert.notEqual +* assert.deepEqual +* assert.notDeepEqual +* assert.strictEqual +* assert.notStrictEqual +* assert.throws +* assert.doesNotThrow +* assert.ifError + +# Installation + + npm install assert-plus + +## License + +The MIT License (MIT) +Copyright (c) 2012 Mark Cavage + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +## Bugs + +See . diff --git a/node_modules/assert-plus/assert.js b/node_modules/assert-plus/assert.js new file mode 100644 index 0000000..26f944e --- /dev/null +++ b/node_modules/assert-plus/assert.js @@ -0,0 +1,211 @@ +// Copyright (c) 2012, Mark Cavage. All rights reserved. +// Copyright 2015 Joyent, Inc. + +var assert = require('assert'); +var Stream = require('stream').Stream; +var util = require('util'); + + +///--- Globals + +/* JSSTYLED */ +var UUID_REGEXP = /^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$/; + + +///--- Internal + +function _capitalize(str) { + return (str.charAt(0).toUpperCase() + str.slice(1)); +} + +function _toss(name, expected, oper, arg, actual) { + throw new assert.AssertionError({ + message: util.format('%s (%s) is required', name, expected), + actual: (actual === undefined) ? typeof (arg) : actual(arg), + expected: expected, + operator: oper || '===', + stackStartFunction: _toss.caller + }); +} + +function _getClass(arg) { + return (Object.prototype.toString.call(arg).slice(8, -1)); +} + +function noop() { + // Why even bother with asserts? +} + + +///--- Exports + +var types = { + bool: { + check: function (arg) { return typeof (arg) === 'boolean'; } + }, + func: { + check: function (arg) { return typeof (arg) === 'function'; } + }, + string: { + check: function (arg) { return typeof (arg) === 'string'; } + }, + object: { + check: function (arg) { + return typeof (arg) === 'object' && arg !== null; + } + }, + number: { + check: function (arg) { + return typeof (arg) === 'number' && !isNaN(arg); + } + }, + finite: { + check: function (arg) { + return typeof (arg) === 'number' && !isNaN(arg) && isFinite(arg); + } + }, + buffer: { + check: function (arg) { return Buffer.isBuffer(arg); }, + operator: 'Buffer.isBuffer' + }, + array: { + check: function (arg) { return Array.isArray(arg); }, + operator: 'Array.isArray' + }, + stream: { + check: function (arg) { return arg instanceof Stream; }, + operator: 'instanceof', + actual: _getClass + }, + date: { + check: function (arg) { return arg instanceof Date; }, + operator: 'instanceof', + actual: _getClass + }, + regexp: { + check: function (arg) { return arg instanceof RegExp; }, + operator: 'instanceof', + actual: _getClass + }, + uuid: { + check: function (arg) { + return typeof (arg) === 'string' && UUID_REGEXP.test(arg); + }, + operator: 'isUUID' + } +}; + +function _setExports(ndebug) { + var keys = Object.keys(types); + var out; + + /* re-export standard assert */ + if (process.env.NODE_NDEBUG) { + out = noop; + } else { + out = function (arg, msg) { + if (!arg) { + _toss(msg, 'true', arg); + } + }; + } + + /* standard checks */ + keys.forEach(function (k) { + if (ndebug) { + out[k] = noop; + return; + } + var type = types[k]; + out[k] = function (arg, msg) { + if (!type.check(arg)) { + _toss(msg, k, type.operator, arg, type.actual); + } + }; + }); + + /* optional checks */ + keys.forEach(function (k) { + var name = 'optional' + _capitalize(k); + if (ndebug) { + out[name] = noop; + return; + } + var type = types[k]; + out[name] = function (arg, msg) { + if (arg === undefined || arg === null) { + return; + } + if (!type.check(arg)) { + _toss(msg, k, type.operator, arg, type.actual); + } + }; + }); + + /* arrayOf checks */ + keys.forEach(function (k) { + var name = 'arrayOf' + _capitalize(k); + if (ndebug) { + out[name] = noop; + return; + } + var type = types[k]; + var expected = '[' + k + ']'; + out[name] = function (arg, msg) { + if (!Array.isArray(arg)) { + _toss(msg, expected, type.operator, arg, type.actual); + } + var i; + for (i = 0; i < arg.length; i++) { + if (!type.check(arg[i])) { + _toss(msg, expected, type.operator, arg, type.actual); + } + } + }; + }); + + /* optionalArrayOf checks */ + keys.forEach(function (k) { + var name = 'optionalArrayOf' + _capitalize(k); + if (ndebug) { + out[name] = noop; + return; + } + var type = types[k]; + var expected = '[' + k + ']'; + out[name] = function (arg, msg) { + if (arg === undefined || arg === null) { + return; + } + if (!Array.isArray(arg)) { + _toss(msg, expected, type.operator, arg, type.actual); + } + var i; + for (i = 0; i < arg.length; i++) { + if (!type.check(arg[i])) { + _toss(msg, expected, type.operator, arg, type.actual); + } + } + }; + }); + + /* re-export built-in assertions */ + Object.keys(assert).forEach(function (k) { + if (k === 'AssertionError') { + out[k] = assert[k]; + return; + } + if (ndebug) { + out[k] = noop; + return; + } + out[k] = assert[k]; + }); + + /* export ourselves (for unit tests _only_) */ + out._setExports = _setExports; + + return out; +} + +module.exports = _setExports(process.env.NODE_NDEBUG); diff --git a/node_modules/assert-plus/package.json b/node_modules/assert-plus/package.json new file mode 100644 index 0000000..40d6a5c --- /dev/null +++ b/node_modules/assert-plus/package.json @@ -0,0 +1,23 @@ +{ + "author": "Mark Cavage ", + "name": "assert-plus", + "description": "Extra assertions on top of node's assert module", + "version": "1.0.0", + "license": "MIT", + "main": "./assert.js", + "devDependencies": { + "tape": "4.2.2", + "faucet": "0.0.1" + }, + "optionalDependencies": {}, + "scripts": { + "test": "./node_modules/.bin/tape tests/*.js | ./node_modules/.bin/faucet" + }, + "repository": { + "type": "git", + "url": "https://github.com/mcavage/node-assert-plus.git" + }, + "engines": { + "node": ">=0.8" + } +} diff --git a/node_modules/asynckit/LICENSE b/node_modules/asynckit/LICENSE new file mode 100644 index 0000000..c9eca5d --- /dev/null +++ b/node_modules/asynckit/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2016 Alex Indigo + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/node_modules/asynckit/README.md b/node_modules/asynckit/README.md new file mode 100644 index 0000000..ddcc7e6 --- /dev/null +++ b/node_modules/asynckit/README.md @@ -0,0 +1,233 @@ +# asynckit [![NPM Module](https://img.shields.io/npm/v/asynckit.svg?style=flat)](https://www.npmjs.com/package/asynckit) + +Minimal async jobs utility library, with streams support. + +[![PhantomJS Build](https://img.shields.io/travis/alexindigo/asynckit/v0.4.0.svg?label=browser&style=flat)](https://travis-ci.org/alexindigo/asynckit) +[![Linux Build](https://img.shields.io/travis/alexindigo/asynckit/v0.4.0.svg?label=linux:0.12-6.x&style=flat)](https://travis-ci.org/alexindigo/asynckit) +[![Windows Build](https://img.shields.io/appveyor/ci/alexindigo/asynckit/v0.4.0.svg?label=windows:0.12-6.x&style=flat)](https://ci.appveyor.com/project/alexindigo/asynckit) + +[![Coverage Status](https://img.shields.io/coveralls/alexindigo/asynckit/v0.4.0.svg?label=code+coverage&style=flat)](https://coveralls.io/github/alexindigo/asynckit?branch=master) +[![Dependency Status](https://img.shields.io/david/alexindigo/asynckit/v0.4.0.svg?style=flat)](https://david-dm.org/alexindigo/asynckit) +[![bitHound Overall Score](https://www.bithound.io/github/alexindigo/asynckit/badges/score.svg)](https://www.bithound.io/github/alexindigo/asynckit) + + + +AsyncKit provides harness for `parallel` and `serial` iterators over list of items represented by arrays or objects. +Optionally it accepts abort function (should be synchronously return by iterator for each item), and terminates left over jobs upon an error event. For specific iteration order built-in (`ascending` and `descending`) and custom sort helpers also supported, via `asynckit.serialOrdered` method. + +It ensures async operations to keep behavior more stable and prevent `Maximum call stack size exceeded` errors, from sync iterators. + +| compression | size | +| :----------------- | -------: | +| asynckit.js | 12.34 kB | +| asynckit.min.js | 4.11 kB | +| asynckit.min.js.gz | 1.47 kB | + + +## Install + +```sh +$ npm install --save asynckit +``` + +## Examples + +### Parallel Jobs + +Runs iterator over provided array in parallel. Stores output in the `result` array, +on the matching positions. In unlikely event of an error from one of the jobs, +will terminate rest of the active jobs (if abort function is provided) +and return error along with salvaged data to the main callback function. + +#### Input Array + +```javascript +var parallel = require('asynckit').parallel + , assert = require('assert') + ; + +var source = [ 1, 1, 4, 16, 64, 32, 8, 2 ] + , expectedResult = [ 2, 2, 8, 32, 128, 64, 16, 4 ] + , expectedTarget = [ 1, 1, 2, 4, 8, 16, 32, 64 ] + , target = [] + ; + +parallel(source, asyncJob, function(err, result) +{ + assert.deepEqual(result, expectedResult); + assert.deepEqual(target, expectedTarget); +}); + +// async job accepts one element from the array +// and a callback function +function asyncJob(item, cb) +{ + // different delays (in ms) per item + var delay = item * 25; + + // pretend different jobs take different time to finish + // and not in consequential order + var timeoutId = setTimeout(function() { + target.push(item); + cb(null, item * 2); + }, delay); + + // allow to cancel "leftover" jobs upon error + // return function, invoking of which will abort this job + return clearTimeout.bind(null, timeoutId); +} +``` + +More examples could be found in [test/test-parallel-array.js](test/test-parallel-array.js). + +#### Input Object + +Also it supports named jobs, listed via object. + +```javascript +var parallel = require('asynckit/parallel') + , assert = require('assert') + ; + +var source = { first: 1, one: 1, four: 4, sixteen: 16, sixtyFour: 64, thirtyTwo: 32, eight: 8, two: 2 } + , expectedResult = { first: 2, one: 2, four: 8, sixteen: 32, sixtyFour: 128, thirtyTwo: 64, eight: 16, two: 4 } + , expectedTarget = [ 1, 1, 2, 4, 8, 16, 32, 64 ] + , expectedKeys = [ 'first', 'one', 'two', 'four', 'eight', 'sixteen', 'thirtyTwo', 'sixtyFour' ] + , target = [] + , keys = [] + ; + +parallel(source, asyncJob, function(err, result) +{ + assert.deepEqual(result, expectedResult); + assert.deepEqual(target, expectedTarget); + assert.deepEqual(keys, expectedKeys); +}); + +// supports full value, key, callback (shortcut) interface +function asyncJob(item, key, cb) +{ + // different delays (in ms) per item + var delay = item * 25; + + // pretend different jobs take different time to finish + // and not in consequential order + var timeoutId = setTimeout(function() { + keys.push(key); + target.push(item); + cb(null, item * 2); + }, delay); + + // allow to cancel "leftover" jobs upon error + // return function, invoking of which will abort this job + return clearTimeout.bind(null, timeoutId); +} +``` + +More examples could be found in [test/test-parallel-object.js](test/test-parallel-object.js). + +### Serial Jobs + +Runs iterator over provided array sequentially. Stores output in the `result` array, +on the matching positions. In unlikely event of an error from one of the jobs, +will not proceed to the rest of the items in the list +and return error along with salvaged data to the main callback function. + +#### Input Array + +```javascript +var serial = require('asynckit/serial') + , assert = require('assert') + ; + +var source = [ 1, 1, 4, 16, 64, 32, 8, 2 ] + , expectedResult = [ 2, 2, 8, 32, 128, 64, 16, 4 ] + , expectedTarget = [ 0, 1, 2, 3, 4, 5, 6, 7 ] + , target = [] + ; + +serial(source, asyncJob, function(err, result) +{ + assert.deepEqual(result, expectedResult); + assert.deepEqual(target, expectedTarget); +}); + +// extended interface (item, key, callback) +// also supported for arrays +function asyncJob(item, key, cb) +{ + target.push(key); + + // it will be automatically made async + // even it iterator "returns" in the same event loop + cb(null, item * 2); +} +``` + +More examples could be found in [test/test-serial-array.js](test/test-serial-array.js). + +#### Input Object + +Also it supports named jobs, listed via object. + +```javascript +var serial = require('asynckit').serial + , assert = require('assert') + ; + +var source = [ 1, 1, 4, 16, 64, 32, 8, 2 ] + , expectedResult = [ 2, 2, 8, 32, 128, 64, 16, 4 ] + , expectedTarget = [ 0, 1, 2, 3, 4, 5, 6, 7 ] + , target = [] + ; + +var source = { first: 1, one: 1, four: 4, sixteen: 16, sixtyFour: 64, thirtyTwo: 32, eight: 8, two: 2 } + , expectedResult = { first: 2, one: 2, four: 8, sixteen: 32, sixtyFour: 128, thirtyTwo: 64, eight: 16, two: 4 } + , expectedTarget = [ 1, 1, 4, 16, 64, 32, 8, 2 ] + , target = [] + ; + + +serial(source, asyncJob, function(err, result) +{ + assert.deepEqual(result, expectedResult); + assert.deepEqual(target, expectedTarget); +}); + +// shortcut interface (item, callback) +// works for object as well as for the arrays +function asyncJob(item, cb) +{ + target.push(item); + + // it will be automatically made async + // even it iterator "returns" in the same event loop + cb(null, item * 2); +} +``` + +More examples could be found in [test/test-serial-object.js](test/test-serial-object.js). + +_Note: Since _object_ is an _unordered_ collection of properties, +it may produce unexpected results with sequential iterations. +Whenever order of the jobs' execution is important please use `serialOrdered` method._ + +### Ordered Serial Iterations + +TBD + +For example [compare-property](compare-property) package. + +### Streaming interface + +TBD + +## Want to Know More? + +More examples can be found in [test folder](test/). + +Or open an [issue](https://github.com/alexindigo/asynckit/issues) with questions and/or suggestions. + +## License + +AsyncKit is licensed under the MIT license. diff --git a/node_modules/asynckit/bench.js b/node_modules/asynckit/bench.js new file mode 100644 index 0000000..c612f1a --- /dev/null +++ b/node_modules/asynckit/bench.js @@ -0,0 +1,76 @@ +/* eslint no-console: "off" */ + +var asynckit = require('./') + , async = require('async') + , assert = require('assert') + , expected = 0 + ; + +var Benchmark = require('benchmark'); +var suite = new Benchmark.Suite; + +var source = []; +for (var z = 1; z < 100; z++) +{ + source.push(z); + expected += z; +} + +suite +// add tests + +.add('async.map', function(deferred) +{ + var total = 0; + + async.map(source, + function(i, cb) + { + setImmediate(function() + { + total += i; + cb(null, total); + }); + }, + function(err, result) + { + assert.ifError(err); + assert.equal(result[result.length - 1], expected); + deferred.resolve(); + }); +}, {'defer': true}) + + +.add('asynckit.parallel', function(deferred) +{ + var total = 0; + + asynckit.parallel(source, + function(i, cb) + { + setImmediate(function() + { + total += i; + cb(null, total); + }); + }, + function(err, result) + { + assert.ifError(err); + assert.equal(result[result.length - 1], expected); + deferred.resolve(); + }); +}, {'defer': true}) + + +// add listeners +.on('cycle', function(ev) +{ + console.log(String(ev.target)); +}) +.on('complete', function() +{ + console.log('Fastest is ' + this.filter('fastest').map('name')); +}) +// run async +.run({ 'async': true }); diff --git a/node_modules/asynckit/index.js b/node_modules/asynckit/index.js new file mode 100644 index 0000000..455f945 --- /dev/null +++ b/node_modules/asynckit/index.js @@ -0,0 +1,6 @@ +module.exports = +{ + parallel : require('./parallel.js'), + serial : require('./serial.js'), + serialOrdered : require('./serialOrdered.js') +}; diff --git a/node_modules/asynckit/lib/abort.js b/node_modules/asynckit/lib/abort.js new file mode 100644 index 0000000..114367e --- /dev/null +++ b/node_modules/asynckit/lib/abort.js @@ -0,0 +1,29 @@ +// API +module.exports = abort; + +/** + * Aborts leftover active jobs + * + * @param {object} state - current state object + */ +function abort(state) +{ + Object.keys(state.jobs).forEach(clean.bind(state)); + + // reset leftover jobs + state.jobs = {}; +} + +/** + * Cleans up leftover job by invoking abort function for the provided job id + * + * @this state + * @param {string|number} key - job id to abort + */ +function clean(key) +{ + if (typeof this.jobs[key] == 'function') + { + this.jobs[key](); + } +} diff --git a/node_modules/asynckit/lib/async.js b/node_modules/asynckit/lib/async.js new file mode 100644 index 0000000..7f1288a --- /dev/null +++ b/node_modules/asynckit/lib/async.js @@ -0,0 +1,34 @@ +var defer = require('./defer.js'); + +// API +module.exports = async; + +/** + * Runs provided callback asynchronously + * even if callback itself is not + * + * @param {function} callback - callback to invoke + * @returns {function} - augmented callback + */ +function async(callback) +{ + var isAsync = false; + + // check if async happened + defer(function() { isAsync = true; }); + + return function async_callback(err, result) + { + if (isAsync) + { + callback(err, result); + } + else + { + defer(function nextTick_callback() + { + callback(err, result); + }); + } + }; +} diff --git a/node_modules/asynckit/lib/defer.js b/node_modules/asynckit/lib/defer.js new file mode 100644 index 0000000..b67110c --- /dev/null +++ b/node_modules/asynckit/lib/defer.js @@ -0,0 +1,26 @@ +module.exports = defer; + +/** + * Runs provided function on next iteration of the event loop + * + * @param {function} fn - function to run + */ +function defer(fn) +{ + var nextTick = typeof setImmediate == 'function' + ? setImmediate + : ( + typeof process == 'object' && typeof process.nextTick == 'function' + ? process.nextTick + : null + ); + + if (nextTick) + { + nextTick(fn); + } + else + { + setTimeout(fn, 0); + } +} diff --git a/node_modules/asynckit/lib/iterate.js b/node_modules/asynckit/lib/iterate.js new file mode 100644 index 0000000..5d2839a --- /dev/null +++ b/node_modules/asynckit/lib/iterate.js @@ -0,0 +1,75 @@ +var async = require('./async.js') + , abort = require('./abort.js') + ; + +// API +module.exports = iterate; + +/** + * Iterates over each job object + * + * @param {array|object} list - array or object (named list) to iterate over + * @param {function} iterator - iterator to run + * @param {object} state - current job status + * @param {function} callback - invoked when all elements processed + */ +function iterate(list, iterator, state, callback) +{ + // store current index + var key = state['keyedList'] ? state['keyedList'][state.index] : state.index; + + state.jobs[key] = runJob(iterator, key, list[key], function(error, output) + { + // don't repeat yourself + // skip secondary callbacks + if (!(key in state.jobs)) + { + return; + } + + // clean up jobs + delete state.jobs[key]; + + if (error) + { + // don't process rest of the results + // stop still active jobs + // and reset the list + abort(state); + } + else + { + state.results[key] = output; + } + + // return salvaged results + callback(error, state.results); + }); +} + +/** + * Runs iterator over provided job element + * + * @param {function} iterator - iterator to invoke + * @param {string|number} key - key/index of the element in the list of jobs + * @param {mixed} item - job description + * @param {function} callback - invoked after iterator is done with the job + * @returns {function|mixed} - job abort function or something else + */ +function runJob(iterator, key, item, callback) +{ + var aborter; + + // allow shortcut if iterator expects only two arguments + if (iterator.length == 2) + { + aborter = iterator(item, async(callback)); + } + // otherwise go with full three arguments + else + { + aborter = iterator(item, key, async(callback)); + } + + return aborter; +} diff --git a/node_modules/asynckit/lib/readable_asynckit.js b/node_modules/asynckit/lib/readable_asynckit.js new file mode 100644 index 0000000..78ad240 --- /dev/null +++ b/node_modules/asynckit/lib/readable_asynckit.js @@ -0,0 +1,91 @@ +var streamify = require('./streamify.js') + , defer = require('./defer.js') + ; + +// API +module.exports = ReadableAsyncKit; + +/** + * Base constructor for all streams + * used to hold properties/methods + */ +function ReadableAsyncKit() +{ + ReadableAsyncKit.super_.apply(this, arguments); + + // list of active jobs + this.jobs = {}; + + // add stream methods + this.destroy = destroy; + this._start = _start; + this._read = _read; +} + +/** + * Destroys readable stream, + * by aborting outstanding jobs + * + * @returns {void} + */ +function destroy() +{ + if (this.destroyed) + { + return; + } + + this.destroyed = true; + + if (typeof this.terminator == 'function') + { + this.terminator(); + } +} + +/** + * Starts provided jobs in async manner + * + * @private + */ +function _start() +{ + // first argument – runner function + var runner = arguments[0] + // take away first argument + , args = Array.prototype.slice.call(arguments, 1) + // second argument - input data + , input = args[0] + // last argument - result callback + , endCb = streamify.callback.call(this, args[args.length - 1]) + ; + + args[args.length - 1] = endCb; + // third argument - iterator + args[1] = streamify.iterator.call(this, args[1]); + + // allow time for proper setup + defer(function() + { + if (!this.destroyed) + { + this.terminator = runner.apply(null, args); + } + else + { + endCb(null, Array.isArray(input) ? [] : {}); + } + }.bind(this)); +} + + +/** + * Implement _read to comply with Readable streams + * Doesn't really make sense for flowing object mode + * + * @private + */ +function _read() +{ + +} diff --git a/node_modules/asynckit/lib/readable_parallel.js b/node_modules/asynckit/lib/readable_parallel.js new file mode 100644 index 0000000..5d2929f --- /dev/null +++ b/node_modules/asynckit/lib/readable_parallel.js @@ -0,0 +1,25 @@ +var parallel = require('../parallel.js'); + +// API +module.exports = ReadableParallel; + +/** + * Streaming wrapper to `asynckit.parallel` + * + * @param {array|object} list - array or object (named list) to iterate over + * @param {function} iterator - iterator to run + * @param {function} callback - invoked when all elements processed + * @returns {stream.Readable#} + */ +function ReadableParallel(list, iterator, callback) +{ + if (!(this instanceof ReadableParallel)) + { + return new ReadableParallel(list, iterator, callback); + } + + // turn on object mode + ReadableParallel.super_.call(this, {objectMode: true}); + + this._start(parallel, list, iterator, callback); +} diff --git a/node_modules/asynckit/lib/readable_serial.js b/node_modules/asynckit/lib/readable_serial.js new file mode 100644 index 0000000..7822698 --- /dev/null +++ b/node_modules/asynckit/lib/readable_serial.js @@ -0,0 +1,25 @@ +var serial = require('../serial.js'); + +// API +module.exports = ReadableSerial; + +/** + * Streaming wrapper to `asynckit.serial` + * + * @param {array|object} list - array or object (named list) to iterate over + * @param {function} iterator - iterator to run + * @param {function} callback - invoked when all elements processed + * @returns {stream.Readable#} + */ +function ReadableSerial(list, iterator, callback) +{ + if (!(this instanceof ReadableSerial)) + { + return new ReadableSerial(list, iterator, callback); + } + + // turn on object mode + ReadableSerial.super_.call(this, {objectMode: true}); + + this._start(serial, list, iterator, callback); +} diff --git a/node_modules/asynckit/lib/readable_serial_ordered.js b/node_modules/asynckit/lib/readable_serial_ordered.js new file mode 100644 index 0000000..3de89c4 --- /dev/null +++ b/node_modules/asynckit/lib/readable_serial_ordered.js @@ -0,0 +1,29 @@ +var serialOrdered = require('../serialOrdered.js'); + +// API +module.exports = ReadableSerialOrdered; +// expose sort helpers +module.exports.ascending = serialOrdered.ascending; +module.exports.descending = serialOrdered.descending; + +/** + * Streaming wrapper to `asynckit.serialOrdered` + * + * @param {array|object} list - array or object (named list) to iterate over + * @param {function} iterator - iterator to run + * @param {function} sortMethod - custom sort function + * @param {function} callback - invoked when all elements processed + * @returns {stream.Readable#} + */ +function ReadableSerialOrdered(list, iterator, sortMethod, callback) +{ + if (!(this instanceof ReadableSerialOrdered)) + { + return new ReadableSerialOrdered(list, iterator, sortMethod, callback); + } + + // turn on object mode + ReadableSerialOrdered.super_.call(this, {objectMode: true}); + + this._start(serialOrdered, list, iterator, sortMethod, callback); +} diff --git a/node_modules/asynckit/lib/state.js b/node_modules/asynckit/lib/state.js new file mode 100644 index 0000000..cbea7ad --- /dev/null +++ b/node_modules/asynckit/lib/state.js @@ -0,0 +1,37 @@ +// API +module.exports = state; + +/** + * Creates initial state object + * for iteration over list + * + * @param {array|object} list - list to iterate over + * @param {function|null} sortMethod - function to use for keys sort, + * or `null` to keep them as is + * @returns {object} - initial state object + */ +function state(list, sortMethod) +{ + var isNamedList = !Array.isArray(list) + , initState = + { + index : 0, + keyedList: isNamedList || sortMethod ? Object.keys(list) : null, + jobs : {}, + results : isNamedList ? {} : [], + size : isNamedList ? Object.keys(list).length : list.length + } + ; + + if (sortMethod) + { + // sort array keys based on it's values + // sort object's keys just on own merit + initState.keyedList.sort(isNamedList ? sortMethod : function(a, b) + { + return sortMethod(list[a], list[b]); + }); + } + + return initState; +} diff --git a/node_modules/asynckit/lib/streamify.js b/node_modules/asynckit/lib/streamify.js new file mode 100644 index 0000000..f56a1c9 --- /dev/null +++ b/node_modules/asynckit/lib/streamify.js @@ -0,0 +1,141 @@ +var async = require('./async.js'); + +// API +module.exports = { + iterator: wrapIterator, + callback: wrapCallback +}; + +/** + * Wraps iterators with long signature + * + * @this ReadableAsyncKit# + * @param {function} iterator - function to wrap + * @returns {function} - wrapped function + */ +function wrapIterator(iterator) +{ + var stream = this; + + return function(item, key, cb) + { + var aborter + , wrappedCb = async(wrapIteratorCallback.call(stream, cb, key)) + ; + + stream.jobs[key] = wrappedCb; + + // it's either shortcut (item, cb) + if (iterator.length == 2) + { + aborter = iterator(item, wrappedCb); + } + // or long format (item, key, cb) + else + { + aborter = iterator(item, key, wrappedCb); + } + + return aborter; + }; +} + +/** + * Wraps provided callback function + * allowing to execute snitch function before + * real callback + * + * @this ReadableAsyncKit# + * @param {function} callback - function to wrap + * @returns {function} - wrapped function + */ +function wrapCallback(callback) +{ + var stream = this; + + var wrapped = function(error, result) + { + return finisher.call(stream, error, result, callback); + }; + + return wrapped; +} + +/** + * Wraps provided iterator callback function + * makes sure snitch only called once, + * but passes secondary calls to the original callback + * + * @this ReadableAsyncKit# + * @param {function} callback - callback to wrap + * @param {number|string} key - iteration key + * @returns {function} wrapped callback + */ +function wrapIteratorCallback(callback, key) +{ + var stream = this; + + return function(error, output) + { + // don't repeat yourself + if (!(key in stream.jobs)) + { + callback(error, output); + return; + } + + // clean up jobs + delete stream.jobs[key]; + + return streamer.call(stream, error, {key: key, value: output}, callback); + }; +} + +/** + * Stream wrapper for iterator callback + * + * @this ReadableAsyncKit# + * @param {mixed} error - error response + * @param {mixed} output - iterator output + * @param {function} callback - callback that expects iterator results + */ +function streamer(error, output, callback) +{ + if (error && !this.error) + { + this.error = error; + this.pause(); + this.emit('error', error); + // send back value only, as expected + callback(error, output && output.value); + return; + } + + // stream stuff + this.push(output); + + // back to original track + // send back value only, as expected + callback(error, output && output.value); +} + +/** + * Stream wrapper for finishing callback + * + * @this ReadableAsyncKit# + * @param {mixed} error - error response + * @param {mixed} output - iterator output + * @param {function} callback - callback that expects final results + */ +function finisher(error, output, callback) +{ + // signal end of the stream + // only for successfully finished streams + if (!error) + { + this.push(null); + } + + // back to original track + callback(error, output); +} diff --git a/node_modules/asynckit/lib/terminator.js b/node_modules/asynckit/lib/terminator.js new file mode 100644 index 0000000..d6eb992 --- /dev/null +++ b/node_modules/asynckit/lib/terminator.js @@ -0,0 +1,29 @@ +var abort = require('./abort.js') + , async = require('./async.js') + ; + +// API +module.exports = terminator; + +/** + * Terminates jobs in the attached state context + * + * @this AsyncKitState# + * @param {function} callback - final callback to invoke after termination + */ +function terminator(callback) +{ + if (!Object.keys(this.jobs).length) + { + return; + } + + // fast forward iteration index + this.index = this.size; + + // abort jobs + abort(this); + + // send back results we have so far + async(callback)(null, this.results); +} diff --git a/node_modules/asynckit/package.json b/node_modules/asynckit/package.json new file mode 100644 index 0000000..51147d6 --- /dev/null +++ b/node_modules/asynckit/package.json @@ -0,0 +1,63 @@ +{ + "name": "asynckit", + "version": "0.4.0", + "description": "Minimal async jobs utility library, with streams support", + "main": "index.js", + "scripts": { + "clean": "rimraf coverage", + "lint": "eslint *.js lib/*.js test/*.js", + "test": "istanbul cover --reporter=json tape -- 'test/test-*.js' | tap-spec", + "win-test": "tape test/test-*.js", + "browser": "browserify -t browserify-istanbul test/lib/browserify_adjustment.js test/test-*.js | obake --coverage | tap-spec", + "report": "istanbul report", + "size": "browserify index.js | size-table asynckit", + "debug": "tape test/test-*.js" + }, + "pre-commit": [ + "clean", + "lint", + "test", + "browser", + "report", + "size" + ], + "repository": { + "type": "git", + "url": "git+https://github.com/alexindigo/asynckit.git" + }, + "keywords": [ + "async", + "jobs", + "parallel", + "serial", + "iterator", + "array", + "object", + "stream", + "destroy", + "terminate", + "abort" + ], + "author": "Alex Indigo ", + "license": "MIT", + "bugs": { + "url": "https://github.com/alexindigo/asynckit/issues" + }, + "homepage": "https://github.com/alexindigo/asynckit#readme", + "devDependencies": { + "browserify": "^13.0.0", + "browserify-istanbul": "^2.0.0", + "coveralls": "^2.11.9", + "eslint": "^2.9.0", + "istanbul": "^0.4.3", + "obake": "^0.1.2", + "phantomjs-prebuilt": "^2.1.7", + "pre-commit": "^1.1.3", + "reamde": "^1.1.0", + "rimraf": "^2.5.2", + "size-table": "^0.2.0", + "tap-spec": "^4.1.1", + "tape": "^4.5.1" + }, + "dependencies": {} +} diff --git a/node_modules/asynckit/parallel.js b/node_modules/asynckit/parallel.js new file mode 100644 index 0000000..3c50344 --- /dev/null +++ b/node_modules/asynckit/parallel.js @@ -0,0 +1,43 @@ +var iterate = require('./lib/iterate.js') + , initState = require('./lib/state.js') + , terminator = require('./lib/terminator.js') + ; + +// Public API +module.exports = parallel; + +/** + * Runs iterator over provided array elements in parallel + * + * @param {array|object} list - array or object (named list) to iterate over + * @param {function} iterator - iterator to run + * @param {function} callback - invoked when all elements processed + * @returns {function} - jobs terminator + */ +function parallel(list, iterator, callback) +{ + var state = initState(list); + + while (state.index < (state['keyedList'] || list).length) + { + iterate(list, iterator, state, function(error, result) + { + if (error) + { + callback(error, result); + return; + } + + // looks like it's the last one + if (Object.keys(state.jobs).length === 0) + { + callback(null, state.results); + return; + } + }); + + state.index++; + } + + return terminator.bind(state, callback); +} diff --git a/node_modules/asynckit/serial.js b/node_modules/asynckit/serial.js new file mode 100644 index 0000000..6cd949a --- /dev/null +++ b/node_modules/asynckit/serial.js @@ -0,0 +1,17 @@ +var serialOrdered = require('./serialOrdered.js'); + +// Public API +module.exports = serial; + +/** + * Runs iterator over provided array elements in series + * + * @param {array|object} list - array or object (named list) to iterate over + * @param {function} iterator - iterator to run + * @param {function} callback - invoked when all elements processed + * @returns {function} - jobs terminator + */ +function serial(list, iterator, callback) +{ + return serialOrdered(list, iterator, null, callback); +} diff --git a/node_modules/asynckit/serialOrdered.js b/node_modules/asynckit/serialOrdered.js new file mode 100644 index 0000000..607eafe --- /dev/null +++ b/node_modules/asynckit/serialOrdered.js @@ -0,0 +1,75 @@ +var iterate = require('./lib/iterate.js') + , initState = require('./lib/state.js') + , terminator = require('./lib/terminator.js') + ; + +// Public API +module.exports = serialOrdered; +// sorting helpers +module.exports.ascending = ascending; +module.exports.descending = descending; + +/** + * Runs iterator over provided sorted array elements in series + * + * @param {array|object} list - array or object (named list) to iterate over + * @param {function} iterator - iterator to run + * @param {function} sortMethod - custom sort function + * @param {function} callback - invoked when all elements processed + * @returns {function} - jobs terminator + */ +function serialOrdered(list, iterator, sortMethod, callback) +{ + var state = initState(list, sortMethod); + + iterate(list, iterator, state, function iteratorHandler(error, result) + { + if (error) + { + callback(error, result); + return; + } + + state.index++; + + // are we there yet? + if (state.index < (state['keyedList'] || list).length) + { + iterate(list, iterator, state, iteratorHandler); + return; + } + + // done here + callback(null, state.results); + }); + + return terminator.bind(state, callback); +} + +/* + * -- Sort methods + */ + +/** + * sort helper to sort array elements in ascending order + * + * @param {mixed} a - an item to compare + * @param {mixed} b - an item to compare + * @returns {number} - comparison result + */ +function ascending(a, b) +{ + return a < b ? -1 : a > b ? 1 : 0; +} + +/** + * sort helper to sort array elements in descending order + * + * @param {mixed} a - an item to compare + * @param {mixed} b - an item to compare + * @returns {number} - comparison result + */ +function descending(a, b) +{ + return -1 * ascending(a, b); +} diff --git a/node_modules/asynckit/stream.js b/node_modules/asynckit/stream.js new file mode 100644 index 0000000..d43465f --- /dev/null +++ b/node_modules/asynckit/stream.js @@ -0,0 +1,21 @@ +var inherits = require('util').inherits + , Readable = require('stream').Readable + , ReadableAsyncKit = require('./lib/readable_asynckit.js') + , ReadableParallel = require('./lib/readable_parallel.js') + , ReadableSerial = require('./lib/readable_serial.js') + , ReadableSerialOrdered = require('./lib/readable_serial_ordered.js') + ; + +// API +module.exports = +{ + parallel : ReadableParallel, + serial : ReadableSerial, + serialOrdered : ReadableSerialOrdered, +}; + +inherits(ReadableAsyncKit, Readable); + +inherits(ReadableParallel, ReadableAsyncKit); +inherits(ReadableSerial, ReadableAsyncKit); +inherits(ReadableSerialOrdered, ReadableAsyncKit); diff --git a/node_modules/aws-sign2/LICENSE b/node_modules/aws-sign2/LICENSE new file mode 100644 index 0000000..a4a9aee --- /dev/null +++ b/node_modules/aws-sign2/LICENSE @@ -0,0 +1,55 @@ +Apache License + +Version 2.0, January 2004 + +http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + +"License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + +"Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + +"Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + +"You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + +"Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + +"Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + +"Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + +"Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + +"Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + +"Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + +You must give any other recipients of the Work or Derivative Works a copy of this License; and + +You must cause any modified files to carry prominent notices stating that You changed the files; and + +You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + +If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS \ No newline at end of file diff --git a/node_modules/aws-sign2/README.md b/node_modules/aws-sign2/README.md new file mode 100644 index 0000000..763564e --- /dev/null +++ b/node_modules/aws-sign2/README.md @@ -0,0 +1,4 @@ +aws-sign +======== + +AWS signing. Originally pulled from LearnBoost/knox, maintained as vendor in request, now a standalone module. diff --git a/node_modules/aws-sign2/index.js b/node_modules/aws-sign2/index.js new file mode 100644 index 0000000..fb35f6d --- /dev/null +++ b/node_modules/aws-sign2/index.js @@ -0,0 +1,212 @@ + +/*! + * Copyright 2010 LearnBoost + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * Module dependencies. + */ + +var crypto = require('crypto') + , parse = require('url').parse + ; + +/** + * Valid keys. + */ + +var keys = + [ 'acl' + , 'location' + , 'logging' + , 'notification' + , 'partNumber' + , 'policy' + , 'requestPayment' + , 'torrent' + , 'uploadId' + , 'uploads' + , 'versionId' + , 'versioning' + , 'versions' + , 'website' + ] + +/** + * Return an "Authorization" header value with the given `options` + * in the form of "AWS :" + * + * @param {Object} options + * @return {String} + * @api private + */ + +function authorization (options) { + return 'AWS ' + options.key + ':' + sign(options) +} + +module.exports = authorization +module.exports.authorization = authorization + +/** + * Simple HMAC-SHA1 Wrapper + * + * @param {Object} options + * @return {String} + * @api private + */ + +function hmacSha1 (options) { + return crypto.createHmac('sha1', options.secret).update(options.message).digest('base64') +} + +module.exports.hmacSha1 = hmacSha1 + +/** + * Create a base64 sha1 HMAC for `options`. + * + * @param {Object} options + * @return {String} + * @api private + */ + +function sign (options) { + options.message = stringToSign(options) + return hmacSha1(options) +} +module.exports.sign = sign + +/** + * Create a base64 sha1 HMAC for `options`. + * + * Specifically to be used with S3 presigned URLs + * + * @param {Object} options + * @return {String} + * @api private + */ + +function signQuery (options) { + options.message = queryStringToSign(options) + return hmacSha1(options) +} +module.exports.signQuery= signQuery + +/** + * Return a string for sign() with the given `options`. + * + * Spec: + * + * \n + * \n + * \n + * \n + * [headers\n] + * + * + * @param {Object} options + * @return {String} + * @api private + */ + +function stringToSign (options) { + var headers = options.amazonHeaders || '' + if (headers) headers += '\n' + var r = + [ options.verb + , options.md5 + , options.contentType + , options.date ? options.date.toUTCString() : '' + , headers + options.resource + ] + return r.join('\n') +} +module.exports.stringToSign = stringToSign + +/** + * Return a string for sign() with the given `options`, but is meant exclusively + * for S3 presigned URLs + * + * Spec: + * + * \n + * + * + * @param {Object} options + * @return {String} + * @api private + */ + +function queryStringToSign (options){ + return 'GET\n\n\n' + options.date + '\n' + options.resource +} +module.exports.queryStringToSign = queryStringToSign + +/** + * Perform the following: + * + * - ignore non-amazon headers + * - lowercase fields + * - sort lexicographically + * - trim whitespace between ":" + * - join with newline + * + * @param {Object} headers + * @return {String} + * @api private + */ + +function canonicalizeHeaders (headers) { + var buf = [] + , fields = Object.keys(headers) + ; + for (var i = 0, len = fields.length; i < len; ++i) { + var field = fields[i] + , val = headers[field] + , field = field.toLowerCase() + ; + if (0 !== field.indexOf('x-amz')) continue + buf.push(field + ':' + val) + } + return buf.sort().join('\n') +} +module.exports.canonicalizeHeaders = canonicalizeHeaders + +/** + * Perform the following: + * + * - ignore non sub-resources + * - sort lexicographically + * + * @param {String} resource + * @return {String} + * @api private + */ + +function canonicalizeResource (resource) { + var url = parse(resource, true) + , path = url.pathname + , buf = [] + ; + + Object.keys(url.query).forEach(function(key){ + if (!~keys.indexOf(key)) return + var val = '' == url.query[key] ? '' : '=' + encodeURIComponent(url.query[key]) + buf.push(key + val) + }) + + return path + (buf.length ? '?' + buf.sort().join('&') : '') +} +module.exports.canonicalizeResource = canonicalizeResource diff --git a/node_modules/aws-sign2/package.json b/node_modules/aws-sign2/package.json new file mode 100644 index 0000000..4c3d57e --- /dev/null +++ b/node_modules/aws-sign2/package.json @@ -0,0 +1,17 @@ +{ + "author": "Mikeal Rogers (http://www.futurealoof.com)", + "name": "aws-sign2", + "description": "AWS signing. Originally pulled from LearnBoost/knox, maintained as vendor in request, now a standalone module.", + "version": "0.7.0", + "repository": { + "url": "https://github.com/mikeal/aws-sign" + }, + "license": "Apache-2.0", + "main": "index.js", + "dependencies": {}, + "devDependencies": {}, + "optionalDependencies": {}, + "engines": { + "node": "*" + } +} diff --git a/node_modules/aws4/.github/FUNDING.yml b/node_modules/aws4/.github/FUNDING.yml new file mode 100644 index 0000000..b7fdd97 --- /dev/null +++ b/node_modules/aws4/.github/FUNDING.yml @@ -0,0 +1,3 @@ +# These are supported funding model platforms + +github: mhart diff --git a/node_modules/aws4/.travis.yml b/node_modules/aws4/.travis.yml new file mode 100644 index 0000000..178bf31 --- /dev/null +++ b/node_modules/aws4/.travis.yml @@ -0,0 +1,9 @@ +language: node_js +node_js: + - "0.10" + - "0.12" + - "4" + - "6" + - "8" + - "10" + - "12" diff --git a/node_modules/aws4/LICENSE b/node_modules/aws4/LICENSE new file mode 100644 index 0000000..4f321e5 --- /dev/null +++ b/node_modules/aws4/LICENSE @@ -0,0 +1,19 @@ +Copyright 2013 Michael Hart (michael.hart.au@gmail.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/node_modules/aws4/README.md b/node_modules/aws4/README.md new file mode 100644 index 0000000..7202e45 --- /dev/null +++ b/node_modules/aws4/README.md @@ -0,0 +1,183 @@ +aws4 +---- + +[![Build Status](https://api.travis-ci.org/mhart/aws4.png?branch=master)](https://travis-ci.org/github/mhart/aws4) + +A small utility to sign vanilla Node.js http(s) request options using Amazon's +[AWS Signature Version 4](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html). + +If you want to sign and send AWS requests in a modern browser, or an environment like [Cloudflare Workers](https://developers.cloudflare.com/workers/), then check out [aws4fetch](https://github.com/mhart/aws4fetch) – otherwise you can also bundle this library for use [in older browsers](./browser). + +The only AWS service that *doesn't* support v4 as of 2020-05-22 is +[SimpleDB](https://docs.aws.amazon.com/AmazonSimpleDB/latest/DeveloperGuide/SDB_API.html) +(it only supports [AWS Signature Version 2](https://github.com/mhart/aws2)). + +It also provides defaults for a number of core AWS headers and +request parameters, making it very easy to query AWS services, or +build out a fully-featured AWS library. + +Example +------- + +```javascript +var https = require('https') +var aws4 = require('aws4') + +// to illustrate usage, we'll create a utility function to request and pipe to stdout +function request(opts) { https.request(opts, function(res) { res.pipe(process.stdout) }).end(opts.body || '') } + +// aws4 will sign an options object as you'd pass to http.request, with an AWS service and region +var opts = { host: 'my-bucket.s3.us-west-1.amazonaws.com', path: '/my-object', service: 's3', region: 'us-west-1' } + +// aws4.sign() will sign and modify these options, ready to pass to http.request +aws4.sign(opts, { accessKeyId: '', secretAccessKey: '' }) + +// or it can get credentials from process.env.AWS_ACCESS_KEY_ID, etc +aws4.sign(opts) + +// for most AWS services, aws4 can figure out the service and region if you pass a host +opts = { host: 'my-bucket.s3.us-west-1.amazonaws.com', path: '/my-object' } + +// usually it will add/modify request headers, but you can also sign the query: +opts = { host: 'my-bucket.s3.amazonaws.com', path: '/?X-Amz-Expires=12345', signQuery: true } + +// and for services with simple hosts, aws4 can infer the host from service and region: +opts = { service: 'sqs', region: 'us-east-1', path: '/?Action=ListQueues' } + +// and if you're using us-east-1, it's the default: +opts = { service: 'sqs', path: '/?Action=ListQueues' } + +aws4.sign(opts) +console.log(opts) +/* +{ + host: 'sqs.us-east-1.amazonaws.com', + path: '/?Action=ListQueues', + headers: { + Host: 'sqs.us-east-1.amazonaws.com', + 'X-Amz-Date': '20121226T061030Z', + Authorization: 'AWS4-HMAC-SHA256 Credential=ABCDEF/20121226/us-east-1/sqs/aws4_request, ...' + } +} +*/ + +// we can now use this to query AWS +request(opts) +/* + + +... +*/ + +// aws4 can infer the HTTP method if a body is passed in +// method will be POST and Content-Type: 'application/x-www-form-urlencoded; charset=utf-8' +request(aws4.sign({ service: 'iam', body: 'Action=ListGroups&Version=2010-05-08' })) +/* + +... +*/ + +// you can specify any custom option or header as per usual +request(aws4.sign({ + service: 'dynamodb', + region: 'ap-southeast-2', + method: 'POST', + path: '/', + headers: { + 'Content-Type': 'application/x-amz-json-1.0', + 'X-Amz-Target': 'DynamoDB_20120810.ListTables' + }, + body: '{}' +})) +/* +{"TableNames":[]} +... +*/ + +// The raw RequestSigner can be used to generate CodeCommit Git passwords +var signer = new aws4.RequestSigner({ + service: 'codecommit', + host: 'git-codecommit.us-east-1.amazonaws.com', + method: 'GIT', + path: '/v1/repos/MyAwesomeRepo', +}) +var password = signer.getDateTime() + 'Z' + signer.signature() + +// see example.js for examples with other services +``` + +API +--- + +### aws4.sign(requestOptions, [credentials]) + +Calculates and populates any necessary AWS headers and/or request +options on `requestOptions`. Returns `requestOptions` as a convenience for chaining. + +`requestOptions` is an object holding the same options that the Node.js +[http.request](https://nodejs.org/docs/latest/api/http.html#http_http_request_options_callback) +function takes. + +The following properties of `requestOptions` are used in the signing or +populated if they don't already exist: + +- `hostname` or `host` (will try to be determined from `service` and `region` if not given) +- `method` (will use `'GET'` if not given or `'POST'` if there is a `body`) +- `path` (will use `'/'` if not given) +- `body` (will use `''` if not given) +- `service` (will try to be calculated from `hostname` or `host` if not given) +- `region` (will try to be calculated from `hostname` or `host` or use `'us-east-1'` if not given) +- `signQuery` (to sign the query instead of adding an `Authorization` header, defaults to false) +- `headers['Host']` (will use `hostname` or `host` or be calculated if not given) +- `headers['Content-Type']` (will use `'application/x-www-form-urlencoded; charset=utf-8'` + if not given and there is a `body`) +- `headers['Date']` (used to calculate the signature date if given, otherwise `new Date` is used) + +Your AWS credentials (which can be found in your +[AWS console](https://portal.aws.amazon.com/gp/aws/securityCredentials)) +can be specified in one of two ways: + +- As the second argument, like this: + +```javascript +aws4.sign(requestOptions, { + secretAccessKey: "", + accessKeyId: "", + sessionToken: "" +}) +``` + +- From `process.env`, such as this: + +``` +export AWS_ACCESS_KEY_ID="" +export AWS_SECRET_ACCESS_KEY="" +export AWS_SESSION_TOKEN="" +``` + +(will also use `AWS_ACCESS_KEY` and `AWS_SECRET_KEY` if available) + +The `sessionToken` property and `AWS_SESSION_TOKEN` environment variable are optional for signing +with [IAM STS temporary credentials](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html). + +Installation +------------ + +With [npm](https://www.npmjs.com/) do: + +``` +npm install aws4 +``` + +Can also be used [in the browser](./browser). + +Thanks +------ + +Thanks to [@jed](https://github.com/jed) for his +[dynamo-client](https://github.com/jed/dynamo-client) lib where I first +committed and subsequently extracted this code. + +Also thanks to the +[official Node.js AWS SDK](https://github.com/aws/aws-sdk-js) for giving +me a start on implementing the v4 signature. diff --git a/node_modules/aws4/aws4.js b/node_modules/aws4/aws4.js new file mode 100644 index 0000000..b99b319 --- /dev/null +++ b/node_modules/aws4/aws4.js @@ -0,0 +1,373 @@ +var aws4 = exports, + url = require('url'), + querystring = require('querystring'), + crypto = require('crypto'), + lru = require('./lru'), + credentialsCache = lru(1000) + +// http://docs.amazonwebservices.com/general/latest/gr/signature-version-4.html + +function hmac(key, string, encoding) { + return crypto.createHmac('sha256', key).update(string, 'utf8').digest(encoding) +} + +function hash(string, encoding) { + return crypto.createHash('sha256').update(string, 'utf8').digest(encoding) +} + +// This function assumes the string has already been percent encoded +function encodeRfc3986(urlEncodedString) { + return urlEncodedString.replace(/[!'()*]/g, function(c) { + return '%' + c.charCodeAt(0).toString(16).toUpperCase() + }) +} + +function encodeRfc3986Full(str) { + return encodeRfc3986(encodeURIComponent(str)) +} + +// A bit of a combination of: +// https://github.com/aws/aws-sdk-java-v2/blob/dc695de6ab49ad03934e1b02e7263abbd2354be0/core/auth/src/main/java/software/amazon/awssdk/auth/signer/internal/AbstractAws4Signer.java#L59 +// https://github.com/aws/aws-sdk-js/blob/18cb7e5b463b46239f9fdd4a65e2ff8c81831e8f/lib/signers/v4.js#L191-L199 +// https://github.com/mhart/aws4fetch/blob/b3aed16b6f17384cf36ea33bcba3c1e9f3bdfefd/src/main.js#L25-L34 +var HEADERS_TO_IGNORE = { + 'authorization': true, + 'connection': true, + 'x-amzn-trace-id': true, + 'user-agent': true, + 'expect': true, + 'presigned-expires': true, + 'range': true, +} + +// request: { path | body, [host], [method], [headers], [service], [region] } +// credentials: { accessKeyId, secretAccessKey, [sessionToken] } +function RequestSigner(request, credentials) { + + if (typeof request === 'string') request = url.parse(request) + + var headers = request.headers = (request.headers || {}), + hostParts = (!this.service || !this.region) && this.matchHost(request.hostname || request.host || headers.Host || headers.host) + + this.request = request + this.credentials = credentials || this.defaultCredentials() + + this.service = request.service || hostParts[0] || '' + this.region = request.region || hostParts[1] || 'us-east-1' + + // SES uses a different domain from the service name + if (this.service === 'email') this.service = 'ses' + + if (!request.method && request.body) + request.method = 'POST' + + if (!headers.Host && !headers.host) { + headers.Host = request.hostname || request.host || this.createHost() + + // If a port is specified explicitly, use it as is + if (request.port) + headers.Host += ':' + request.port + } + if (!request.hostname && !request.host) + request.hostname = headers.Host || headers.host + + this.isCodeCommitGit = this.service === 'codecommit' && request.method === 'GIT' +} + +RequestSigner.prototype.matchHost = function(host) { + var match = (host || '').match(/([^\.]+)\.(?:([^\.]*)\.)?amazonaws\.com(\.cn)?$/) + var hostParts = (match || []).slice(1, 3) + + // ES's hostParts are sometimes the other way round, if the value that is expected + // to be region equals ‘es’ switch them back + // e.g. search-cluster-name-aaaa00aaaa0aaa0aaaaaaa0aaa.us-east-1.es.amazonaws.com + if (hostParts[1] === 'es') + hostParts = hostParts.reverse() + + if (hostParts[1] == 's3') { + hostParts[0] = 's3' + hostParts[1] = 'us-east-1' + } else { + for (var i = 0; i < 2; i++) { + if (/^s3-/.test(hostParts[i])) { + hostParts[1] = hostParts[i].slice(3) + hostParts[0] = 's3' + break + } + } + } + + return hostParts +} + +// http://docs.aws.amazon.com/general/latest/gr/rande.html +RequestSigner.prototype.isSingleRegion = function() { + // Special case for S3 and SimpleDB in us-east-1 + if (['s3', 'sdb'].indexOf(this.service) >= 0 && this.region === 'us-east-1') return true + + return ['cloudfront', 'ls', 'route53', 'iam', 'importexport', 'sts'] + .indexOf(this.service) >= 0 +} + +RequestSigner.prototype.createHost = function() { + var region = this.isSingleRegion() ? '' : '.' + this.region, + subdomain = this.service === 'ses' ? 'email' : this.service + return subdomain + region + '.amazonaws.com' +} + +RequestSigner.prototype.prepareRequest = function() { + this.parsePath() + + var request = this.request, headers = request.headers, query + + if (request.signQuery) { + + this.parsedPath.query = query = this.parsedPath.query || {} + + if (this.credentials.sessionToken) + query['X-Amz-Security-Token'] = this.credentials.sessionToken + + if (this.service === 's3' && !query['X-Amz-Expires']) + query['X-Amz-Expires'] = 86400 + + if (query['X-Amz-Date']) + this.datetime = query['X-Amz-Date'] + else + query['X-Amz-Date'] = this.getDateTime() + + query['X-Amz-Algorithm'] = 'AWS4-HMAC-SHA256' + query['X-Amz-Credential'] = this.credentials.accessKeyId + '/' + this.credentialString() + query['X-Amz-SignedHeaders'] = this.signedHeaders() + + } else { + + if (!request.doNotModifyHeaders && !this.isCodeCommitGit) { + if (request.body && !headers['Content-Type'] && !headers['content-type']) + headers['Content-Type'] = 'application/x-www-form-urlencoded; charset=utf-8' + + if (request.body && !headers['Content-Length'] && !headers['content-length']) + headers['Content-Length'] = Buffer.byteLength(request.body) + + if (this.credentials.sessionToken && !headers['X-Amz-Security-Token'] && !headers['x-amz-security-token']) + headers['X-Amz-Security-Token'] = this.credentials.sessionToken + + if (this.service === 's3' && !headers['X-Amz-Content-Sha256'] && !headers['x-amz-content-sha256']) + headers['X-Amz-Content-Sha256'] = hash(this.request.body || '', 'hex') + + if (headers['X-Amz-Date'] || headers['x-amz-date']) + this.datetime = headers['X-Amz-Date'] || headers['x-amz-date'] + else + headers['X-Amz-Date'] = this.getDateTime() + } + + delete headers.Authorization + delete headers.authorization + } +} + +RequestSigner.prototype.sign = function() { + if (!this.parsedPath) this.prepareRequest() + + if (this.request.signQuery) { + this.parsedPath.query['X-Amz-Signature'] = this.signature() + } else { + this.request.headers.Authorization = this.authHeader() + } + + this.request.path = this.formatPath() + + return this.request +} + +RequestSigner.prototype.getDateTime = function() { + if (!this.datetime) { + var headers = this.request.headers, + date = new Date(headers.Date || headers.date || new Date) + + this.datetime = date.toISOString().replace(/[:\-]|\.\d{3}/g, '') + + // Remove the trailing 'Z' on the timestamp string for CodeCommit git access + if (this.isCodeCommitGit) this.datetime = this.datetime.slice(0, -1) + } + return this.datetime +} + +RequestSigner.prototype.getDate = function() { + return this.getDateTime().substr(0, 8) +} + +RequestSigner.prototype.authHeader = function() { + return [ + 'AWS4-HMAC-SHA256 Credential=' + this.credentials.accessKeyId + '/' + this.credentialString(), + 'SignedHeaders=' + this.signedHeaders(), + 'Signature=' + this.signature(), + ].join(', ') +} + +RequestSigner.prototype.signature = function() { + var date = this.getDate(), + cacheKey = [this.credentials.secretAccessKey, date, this.region, this.service].join(), + kDate, kRegion, kService, kCredentials = credentialsCache.get(cacheKey) + if (!kCredentials) { + kDate = hmac('AWS4' + this.credentials.secretAccessKey, date) + kRegion = hmac(kDate, this.region) + kService = hmac(kRegion, this.service) + kCredentials = hmac(kService, 'aws4_request') + credentialsCache.set(cacheKey, kCredentials) + } + return hmac(kCredentials, this.stringToSign(), 'hex') +} + +RequestSigner.prototype.stringToSign = function() { + return [ + 'AWS4-HMAC-SHA256', + this.getDateTime(), + this.credentialString(), + hash(this.canonicalString(), 'hex'), + ].join('\n') +} + +RequestSigner.prototype.canonicalString = function() { + if (!this.parsedPath) this.prepareRequest() + + var pathStr = this.parsedPath.path, + query = this.parsedPath.query, + headers = this.request.headers, + queryStr = '', + normalizePath = this.service !== 's3', + decodePath = this.service === 's3' || this.request.doNotEncodePath, + decodeSlashesInPath = this.service === 's3', + firstValOnly = this.service === 's3', + bodyHash + + if (this.service === 's3' && this.request.signQuery) { + bodyHash = 'UNSIGNED-PAYLOAD' + } else if (this.isCodeCommitGit) { + bodyHash = '' + } else { + bodyHash = headers['X-Amz-Content-Sha256'] || headers['x-amz-content-sha256'] || + hash(this.request.body || '', 'hex') + } + + if (query) { + var reducedQuery = Object.keys(query).reduce(function(obj, key) { + if (!key) return obj + obj[encodeRfc3986Full(key)] = !Array.isArray(query[key]) ? query[key] : + (firstValOnly ? query[key][0] : query[key]) + return obj + }, {}) + var encodedQueryPieces = [] + Object.keys(reducedQuery).sort().forEach(function(key) { + if (!Array.isArray(reducedQuery[key])) { + encodedQueryPieces.push(key + '=' + encodeRfc3986Full(reducedQuery[key])) + } else { + reducedQuery[key].map(encodeRfc3986Full).sort() + .forEach(function(val) { encodedQueryPieces.push(key + '=' + val) }) + } + }) + queryStr = encodedQueryPieces.join('&') + } + if (pathStr !== '/') { + if (normalizePath) pathStr = pathStr.replace(/\/{2,}/g, '/') + pathStr = pathStr.split('/').reduce(function(path, piece) { + if (normalizePath && piece === '..') { + path.pop() + } else if (!normalizePath || piece !== '.') { + if (decodePath) piece = decodeURIComponent(piece.replace(/\+/g, ' ')) + path.push(encodeRfc3986Full(piece)) + } + return path + }, []).join('/') + if (pathStr[0] !== '/') pathStr = '/' + pathStr + if (decodeSlashesInPath) pathStr = pathStr.replace(/%2F/g, '/') + } + + return [ + this.request.method || 'GET', + pathStr, + queryStr, + this.canonicalHeaders() + '\n', + this.signedHeaders(), + bodyHash, + ].join('\n') +} + +RequestSigner.prototype.canonicalHeaders = function() { + var headers = this.request.headers + function trimAll(header) { + return header.toString().trim().replace(/\s+/g, ' ') + } + return Object.keys(headers) + .filter(function(key) { return HEADERS_TO_IGNORE[key.toLowerCase()] == null }) + .sort(function(a, b) { return a.toLowerCase() < b.toLowerCase() ? -1 : 1 }) + .map(function(key) { return key.toLowerCase() + ':' + trimAll(headers[key]) }) + .join('\n') +} + +RequestSigner.prototype.signedHeaders = function() { + return Object.keys(this.request.headers) + .map(function(key) { return key.toLowerCase() }) + .filter(function(key) { return HEADERS_TO_IGNORE[key] == null }) + .sort() + .join(';') +} + +RequestSigner.prototype.credentialString = function() { + return [ + this.getDate(), + this.region, + this.service, + 'aws4_request', + ].join('/') +} + +RequestSigner.prototype.defaultCredentials = function() { + var env = process.env + return { + accessKeyId: env.AWS_ACCESS_KEY_ID || env.AWS_ACCESS_KEY, + secretAccessKey: env.AWS_SECRET_ACCESS_KEY || env.AWS_SECRET_KEY, + sessionToken: env.AWS_SESSION_TOKEN, + } +} + +RequestSigner.prototype.parsePath = function() { + var path = this.request.path || '/' + + // S3 doesn't always encode characters > 127 correctly and + // all services don't encode characters > 255 correctly + // So if there are non-reserved chars (and it's not already all % encoded), just encode them all + if (/[^0-9A-Za-z;,/?:@&=+$\-_.!~*'()#%]/.test(path)) { + path = encodeURI(decodeURI(path)) + } + + var queryIx = path.indexOf('?'), + query = null + + if (queryIx >= 0) { + query = querystring.parse(path.slice(queryIx + 1)) + path = path.slice(0, queryIx) + } + + this.parsedPath = { + path: path, + query: query, + } +} + +RequestSigner.prototype.formatPath = function() { + var path = this.parsedPath.path, + query = this.parsedPath.query + + if (!query) return path + + // Services don't support empty query string keys + if (query[''] != null) delete query[''] + + return path + '?' + encodeRfc3986(querystring.stringify(query)) +} + +aws4.RequestSigner = RequestSigner + +aws4.sign = function(request, credentials) { + return new RequestSigner(request, credentials).sign() +} diff --git a/node_modules/aws4/lru.js b/node_modules/aws4/lru.js new file mode 100644 index 0000000..333f66a --- /dev/null +++ b/node_modules/aws4/lru.js @@ -0,0 +1,96 @@ +module.exports = function(size) { + return new LruCache(size) +} + +function LruCache(size) { + this.capacity = size | 0 + this.map = Object.create(null) + this.list = new DoublyLinkedList() +} + +LruCache.prototype.get = function(key) { + var node = this.map[key] + if (node == null) return undefined + this.used(node) + return node.val +} + +LruCache.prototype.set = function(key, val) { + var node = this.map[key] + if (node != null) { + node.val = val + } else { + if (!this.capacity) this.prune() + if (!this.capacity) return false + node = new DoublyLinkedNode(key, val) + this.map[key] = node + this.capacity-- + } + this.used(node) + return true +} + +LruCache.prototype.used = function(node) { + this.list.moveToFront(node) +} + +LruCache.prototype.prune = function() { + var node = this.list.pop() + if (node != null) { + delete this.map[node.key] + this.capacity++ + } +} + + +function DoublyLinkedList() { + this.firstNode = null + this.lastNode = null +} + +DoublyLinkedList.prototype.moveToFront = function(node) { + if (this.firstNode == node) return + + this.remove(node) + + if (this.firstNode == null) { + this.firstNode = node + this.lastNode = node + node.prev = null + node.next = null + } else { + node.prev = null + node.next = this.firstNode + node.next.prev = node + this.firstNode = node + } +} + +DoublyLinkedList.prototype.pop = function() { + var lastNode = this.lastNode + if (lastNode != null) { + this.remove(lastNode) + } + return lastNode +} + +DoublyLinkedList.prototype.remove = function(node) { + if (this.firstNode == node) { + this.firstNode = node.next + } else if (node.prev != null) { + node.prev.next = node.next + } + if (this.lastNode == node) { + this.lastNode = node.prev + } else if (node.next != null) { + node.next.prev = node.prev + } +} + + +function DoublyLinkedNode(key, val) { + this.key = key + this.val = val + this.prev = null + this.next = null +} diff --git a/node_modules/aws4/package.json b/node_modules/aws4/package.json new file mode 100644 index 0000000..424598d --- /dev/null +++ b/node_modules/aws4/package.json @@ -0,0 +1,17 @@ +{ + "name": "aws4", + "version": "1.11.0", + "description": "Signs and prepares requests using AWS Signature Version 4", + "author": "Michael Hart (https://github.com/mhart)", + "license": "MIT", + "repository": "github:mhart/aws4", + "main": "aws4.js", + "scripts": { + "test": "mocha ./test/fast.js -R list", + "integration": "node ./test/slow.js" + }, + "devDependencies": { + "mocha": "^2.5.3", + "should": "^8.4.0" + } +} diff --git a/node_modules/balanced-match/.github/FUNDING.yml b/node_modules/balanced-match/.github/FUNDING.yml new file mode 100644 index 0000000..cea8b16 --- /dev/null +++ b/node_modules/balanced-match/.github/FUNDING.yml @@ -0,0 +1,2 @@ +tidelift: "npm/balanced-match" +patreon: juliangruber diff --git a/node_modules/balanced-match/LICENSE.md b/node_modules/balanced-match/LICENSE.md new file mode 100644 index 0000000..2cdc8e4 --- /dev/null +++ b/node_modules/balanced-match/LICENSE.md @@ -0,0 +1,21 @@ +(MIT) + +Copyright (c) 2013 Julian Gruber <julian@juliangruber.com> + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/node_modules/balanced-match/README.md b/node_modules/balanced-match/README.md new file mode 100644 index 0000000..d2a48b6 --- /dev/null +++ b/node_modules/balanced-match/README.md @@ -0,0 +1,97 @@ +# balanced-match + +Match balanced string pairs, like `{` and `}` or `` and ``. Supports regular expressions as well! + +[![build status](https://secure.travis-ci.org/juliangruber/balanced-match.svg)](http://travis-ci.org/juliangruber/balanced-match) +[![downloads](https://img.shields.io/npm/dm/balanced-match.svg)](https://www.npmjs.org/package/balanced-match) + +[![testling badge](https://ci.testling.com/juliangruber/balanced-match.png)](https://ci.testling.com/juliangruber/balanced-match) + +## Example + +Get the first matching pair of braces: + +```js +var balanced = require('balanced-match'); + +console.log(balanced('{', '}', 'pre{in{nested}}post')); +console.log(balanced('{', '}', 'pre{first}between{second}post')); +console.log(balanced(/\s+\{\s+/, /\s+\}\s+/, 'pre { in{nest} } post')); +``` + +The matches are: + +```bash +$ node example.js +{ start: 3, end: 14, pre: 'pre', body: 'in{nested}', post: 'post' } +{ start: 3, + end: 9, + pre: 'pre', + body: 'first', + post: 'between{second}post' } +{ start: 3, end: 17, pre: 'pre', body: 'in{nest}', post: 'post' } +``` + +## API + +### var m = balanced(a, b, str) + +For the first non-nested matching pair of `a` and `b` in `str`, return an +object with those keys: + +* **start** the index of the first match of `a` +* **end** the index of the matching `b` +* **pre** the preamble, `a` and `b` not included +* **body** the match, `a` and `b` not included +* **post** the postscript, `a` and `b` not included + +If there's no match, `undefined` will be returned. + +If the `str` contains more `a` than `b` / there are unmatched pairs, the first match that was closed will be used. For example, `{{a}` will match `['{', 'a', '']` and `{a}}` will match `['', 'a', '}']`. + +### var r = balanced.range(a, b, str) + +For the first non-nested matching pair of `a` and `b` in `str`, return an +array with indexes: `[ , ]`. + +If there's no match, `undefined` will be returned. + +If the `str` contains more `a` than `b` / there are unmatched pairs, the first match that was closed will be used. For example, `{{a}` will match `[ 1, 3 ]` and `{a}}` will match `[0, 2]`. + +## Installation + +With [npm](https://npmjs.org) do: + +```bash +npm install balanced-match +``` + +## Security contact information + +To report a security vulnerability, please use the +[Tidelift security contact](https://tidelift.com/security). +Tidelift will coordinate the fix and disclosure. + +## License + +(MIT) + +Copyright (c) 2013 Julian Gruber <julian@juliangruber.com> + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/node_modules/balanced-match/index.js b/node_modules/balanced-match/index.js new file mode 100644 index 0000000..c67a646 --- /dev/null +++ b/node_modules/balanced-match/index.js @@ -0,0 +1,62 @@ +'use strict'; +module.exports = balanced; +function balanced(a, b, str) { + if (a instanceof RegExp) a = maybeMatch(a, str); + if (b instanceof RegExp) b = maybeMatch(b, str); + + var r = range(a, b, str); + + return r && { + start: r[0], + end: r[1], + pre: str.slice(0, r[0]), + body: str.slice(r[0] + a.length, r[1]), + post: str.slice(r[1] + b.length) + }; +} + +function maybeMatch(reg, str) { + var m = str.match(reg); + return m ? m[0] : null; +} + +balanced.range = range; +function range(a, b, str) { + var begs, beg, left, right, result; + var ai = str.indexOf(a); + var bi = str.indexOf(b, ai + 1); + var i = ai; + + if (ai >= 0 && bi > 0) { + if(a===b) { + return [ai, bi]; + } + begs = []; + left = str.length; + + while (i >= 0 && !result) { + if (i == ai) { + begs.push(i); + ai = str.indexOf(a, i + 1); + } else if (begs.length == 1) { + result = [ begs.pop(), bi ]; + } else { + beg = begs.pop(); + if (beg < left) { + left = beg; + right = bi; + } + + bi = str.indexOf(b, i + 1); + } + + i = ai < bi && ai >= 0 ? ai : bi; + } + + if (begs.length) { + result = [ left, right ]; + } + } + + return result; +} diff --git a/node_modules/balanced-match/package.json b/node_modules/balanced-match/package.json new file mode 100644 index 0000000..ce6073e --- /dev/null +++ b/node_modules/balanced-match/package.json @@ -0,0 +1,48 @@ +{ + "name": "balanced-match", + "description": "Match balanced character pairs, like \"{\" and \"}\"", + "version": "1.0.2", + "repository": { + "type": "git", + "url": "git://github.com/juliangruber/balanced-match.git" + }, + "homepage": "https://github.com/juliangruber/balanced-match", + "main": "index.js", + "scripts": { + "test": "tape test/test.js", + "bench": "matcha test/bench.js" + }, + "devDependencies": { + "matcha": "^0.7.0", + "tape": "^4.6.0" + }, + "keywords": [ + "match", + "regexp", + "test", + "balanced", + "parse" + ], + "author": { + "name": "Julian Gruber", + "email": "mail@juliangruber.com", + "url": "http://juliangruber.com" + }, + "license": "MIT", + "testling": { + "files": "test/*.js", + "browsers": [ + "ie/8..latest", + "firefox/20..latest", + "firefox/nightly", + "chrome/25..latest", + "chrome/canary", + "opera/12..latest", + "opera/next", + "safari/5.1..latest", + "ipad/6.0..latest", + "iphone/6.0..latest", + "android-browser/4.2..latest" + ] + } +} diff --git a/node_modules/bcrypt-pbkdf/CONTRIBUTING.md b/node_modules/bcrypt-pbkdf/CONTRIBUTING.md new file mode 100644 index 0000000..401d34e --- /dev/null +++ b/node_modules/bcrypt-pbkdf/CONTRIBUTING.md @@ -0,0 +1,13 @@ +# Contributing + +This repository uses [cr.joyent.us](https://cr.joyent.us) (Gerrit) for new +changes. Anyone can submit changes. To get started, see the [cr.joyent.us user +guide](https://github.com/joyent/joyent-gerrit/blob/master/docs/user/README.md). +This repo does not use GitHub pull requests. + +See the [Joyent Engineering +Guidelines](https://github.com/joyent/eng/blob/master/docs/index.md) for general +best practices expected in this repository. + +If you're changing something non-trivial or user-facing, you may want to submit +an issue first. diff --git a/node_modules/bcrypt-pbkdf/LICENSE b/node_modules/bcrypt-pbkdf/LICENSE new file mode 100644 index 0000000..fc58d2a --- /dev/null +++ b/node_modules/bcrypt-pbkdf/LICENSE @@ -0,0 +1,66 @@ +The Blowfish portions are under the following license: + +Blowfish block cipher for OpenBSD +Copyright 1997 Niels Provos +All rights reserved. + +Implementation advice by David Mazieres . + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +3. The name of the author may not be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + +The bcrypt_pbkdf portions are under the following license: + +Copyright (c) 2013 Ted Unangst + +Permission to use, copy, modify, and distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + + + +Performance improvements (Javascript-specific): + +Copyright 2016, Joyent Inc +Author: Alex Wilson + +Permission to use, copy, modify, and distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. diff --git a/node_modules/bcrypt-pbkdf/README.md b/node_modules/bcrypt-pbkdf/README.md new file mode 100644 index 0000000..7551f33 --- /dev/null +++ b/node_modules/bcrypt-pbkdf/README.md @@ -0,0 +1,45 @@ +Port of the OpenBSD `bcrypt_pbkdf` function to pure Javascript. `npm`-ified +version of [Devi Mandiri's port](https://github.com/devi/tmp/blob/master/js/bcrypt_pbkdf.js), +with some minor performance improvements. The code is copied verbatim (and +un-styled) from Devi's work. + +This product includes software developed by Niels Provos. + +## API + +### `bcrypt_pbkdf.pbkdf(pass, passlen, salt, saltlen, key, keylen, rounds)` + +Derive a cryptographic key of arbitrary length from a given password and salt, +using the OpenBSD `bcrypt_pbkdf` function. This is a combination of Blowfish and +SHA-512. + +See [this article](http://www.tedunangst.com/flak/post/bcrypt-pbkdf) for +further information. + +Parameters: + + * `pass`, a Uint8Array of length `passlen` + * `passlen`, an integer Number + * `salt`, a Uint8Array of length `saltlen` + * `saltlen`, an integer Number + * `key`, a Uint8Array of length `keylen`, will be filled with output + * `keylen`, an integer Number + * `rounds`, an integer Number, number of rounds of the PBKDF to run + +### `bcrypt_pbkdf.hash(sha2pass, sha2salt, out)` + +Calculate a Blowfish hash, given SHA2-512 output of a password and salt. Used as +part of the inner round function in the PBKDF. + +Parameters: + + * `sha2pass`, a Uint8Array of length 64 + * `sha2salt`, a Uint8Array of length 64 + * `out`, a Uint8Array of length 32, will be filled with output + +## License + +This source form is a 1:1 port from the OpenBSD `blowfish.c` and `bcrypt_pbkdf.c`. +As a result, it retains the original copyright and license. The two files are +under slightly different (but compatible) licenses, and are here combined in +one file. For each of the full license texts see `LICENSE`. diff --git a/node_modules/bcrypt-pbkdf/index.js b/node_modules/bcrypt-pbkdf/index.js new file mode 100644 index 0000000..b1b5ad4 --- /dev/null +++ b/node_modules/bcrypt-pbkdf/index.js @@ -0,0 +1,556 @@ +'use strict'; + +var crypto_hash_sha512 = require('tweetnacl').lowlevel.crypto_hash; + +/* + * This file is a 1:1 port from the OpenBSD blowfish.c and bcrypt_pbkdf.c. As a + * result, it retains the original copyright and license. The two files are + * under slightly different (but compatible) licenses, and are here combined in + * one file. + * + * Credit for the actual porting work goes to: + * Devi Mandiri + */ + +/* + * The Blowfish portions are under the following license: + * + * Blowfish block cipher for OpenBSD + * Copyright 1997 Niels Provos + * All rights reserved. + * + * Implementation advice by David Mazieres . + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. The name of the author may not be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/* + * The bcrypt_pbkdf portions are under the following license: + * + * Copyright (c) 2013 Ted Unangst + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + +/* + * Performance improvements (Javascript-specific): + * + * Copyright 2016, Joyent Inc + * Author: Alex Wilson + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + +// Ported from OpenBSD bcrypt_pbkdf.c v1.9 + +var BLF_J = 0; + +var Blowfish = function() { + this.S = [ + new Uint32Array([ + 0xd1310ba6, 0x98dfb5ac, 0x2ffd72db, 0xd01adfb7, + 0xb8e1afed, 0x6a267e96, 0xba7c9045, 0xf12c7f99, + 0x24a19947, 0xb3916cf7, 0x0801f2e2, 0x858efc16, + 0x636920d8, 0x71574e69, 0xa458fea3, 0xf4933d7e, + 0x0d95748f, 0x728eb658, 0x718bcd58, 0x82154aee, + 0x7b54a41d, 0xc25a59b5, 0x9c30d539, 0x2af26013, + 0xc5d1b023, 0x286085f0, 0xca417918, 0xb8db38ef, + 0x8e79dcb0, 0x603a180e, 0x6c9e0e8b, 0xb01e8a3e, + 0xd71577c1, 0xbd314b27, 0x78af2fda, 0x55605c60, + 0xe65525f3, 0xaa55ab94, 0x57489862, 0x63e81440, + 0x55ca396a, 0x2aab10b6, 0xb4cc5c34, 0x1141e8ce, + 0xa15486af, 0x7c72e993, 0xb3ee1411, 0x636fbc2a, + 0x2ba9c55d, 0x741831f6, 0xce5c3e16, 0x9b87931e, + 0xafd6ba33, 0x6c24cf5c, 0x7a325381, 0x28958677, + 0x3b8f4898, 0x6b4bb9af, 0xc4bfe81b, 0x66282193, + 0x61d809cc, 0xfb21a991, 0x487cac60, 0x5dec8032, + 0xef845d5d, 0xe98575b1, 0xdc262302, 0xeb651b88, + 0x23893e81, 0xd396acc5, 0x0f6d6ff3, 0x83f44239, + 0x2e0b4482, 0xa4842004, 0x69c8f04a, 0x9e1f9b5e, + 0x21c66842, 0xf6e96c9a, 0x670c9c61, 0xabd388f0, + 0x6a51a0d2, 0xd8542f68, 0x960fa728, 0xab5133a3, + 0x6eef0b6c, 0x137a3be4, 0xba3bf050, 0x7efb2a98, + 0xa1f1651d, 0x39af0176, 0x66ca593e, 0x82430e88, + 0x8cee8619, 0x456f9fb4, 0x7d84a5c3, 0x3b8b5ebe, + 0xe06f75d8, 0x85c12073, 0x401a449f, 0x56c16aa6, + 0x4ed3aa62, 0x363f7706, 0x1bfedf72, 0x429b023d, + 0x37d0d724, 0xd00a1248, 0xdb0fead3, 0x49f1c09b, + 0x075372c9, 0x80991b7b, 0x25d479d8, 0xf6e8def7, + 0xe3fe501a, 0xb6794c3b, 0x976ce0bd, 0x04c006ba, + 0xc1a94fb6, 0x409f60c4, 0x5e5c9ec2, 0x196a2463, + 0x68fb6faf, 0x3e6c53b5, 0x1339b2eb, 0x3b52ec6f, + 0x6dfc511f, 0x9b30952c, 0xcc814544, 0xaf5ebd09, + 0xbee3d004, 0xde334afd, 0x660f2807, 0x192e4bb3, + 0xc0cba857, 0x45c8740f, 0xd20b5f39, 0xb9d3fbdb, + 0x5579c0bd, 0x1a60320a, 0xd6a100c6, 0x402c7279, + 0x679f25fe, 0xfb1fa3cc, 0x8ea5e9f8, 0xdb3222f8, + 0x3c7516df, 0xfd616b15, 0x2f501ec8, 0xad0552ab, + 0x323db5fa, 0xfd238760, 0x53317b48, 0x3e00df82, + 0x9e5c57bb, 0xca6f8ca0, 0x1a87562e, 0xdf1769db, + 0xd542a8f6, 0x287effc3, 0xac6732c6, 0x8c4f5573, + 0x695b27b0, 0xbbca58c8, 0xe1ffa35d, 0xb8f011a0, + 0x10fa3d98, 0xfd2183b8, 0x4afcb56c, 0x2dd1d35b, + 0x9a53e479, 0xb6f84565, 0xd28e49bc, 0x4bfb9790, + 0xe1ddf2da, 0xa4cb7e33, 0x62fb1341, 0xcee4c6e8, + 0xef20cada, 0x36774c01, 0xd07e9efe, 0x2bf11fb4, + 0x95dbda4d, 0xae909198, 0xeaad8e71, 0x6b93d5a0, + 0xd08ed1d0, 0xafc725e0, 0x8e3c5b2f, 0x8e7594b7, + 0x8ff6e2fb, 0xf2122b64, 0x8888b812, 0x900df01c, + 0x4fad5ea0, 0x688fc31c, 0xd1cff191, 0xb3a8c1ad, + 0x2f2f2218, 0xbe0e1777, 0xea752dfe, 0x8b021fa1, + 0xe5a0cc0f, 0xb56f74e8, 0x18acf3d6, 0xce89e299, + 0xb4a84fe0, 0xfd13e0b7, 0x7cc43b81, 0xd2ada8d9, + 0x165fa266, 0x80957705, 0x93cc7314, 0x211a1477, + 0xe6ad2065, 0x77b5fa86, 0xc75442f5, 0xfb9d35cf, + 0xebcdaf0c, 0x7b3e89a0, 0xd6411bd3, 0xae1e7e49, + 0x00250e2d, 0x2071b35e, 0x226800bb, 0x57b8e0af, + 0x2464369b, 0xf009b91e, 0x5563911d, 0x59dfa6aa, + 0x78c14389, 0xd95a537f, 0x207d5ba2, 0x02e5b9c5, + 0x83260376, 0x6295cfa9, 0x11c81968, 0x4e734a41, + 0xb3472dca, 0x7b14a94a, 0x1b510052, 0x9a532915, + 0xd60f573f, 0xbc9bc6e4, 0x2b60a476, 0x81e67400, + 0x08ba6fb5, 0x571be91f, 0xf296ec6b, 0x2a0dd915, + 0xb6636521, 0xe7b9f9b6, 0xff34052e, 0xc5855664, + 0x53b02d5d, 0xa99f8fa1, 0x08ba4799, 0x6e85076a]), + new Uint32Array([ + 0x4b7a70e9, 0xb5b32944, 0xdb75092e, 0xc4192623, + 0xad6ea6b0, 0x49a7df7d, 0x9cee60b8, 0x8fedb266, + 0xecaa8c71, 0x699a17ff, 0x5664526c, 0xc2b19ee1, + 0x193602a5, 0x75094c29, 0xa0591340, 0xe4183a3e, + 0x3f54989a, 0x5b429d65, 0x6b8fe4d6, 0x99f73fd6, + 0xa1d29c07, 0xefe830f5, 0x4d2d38e6, 0xf0255dc1, + 0x4cdd2086, 0x8470eb26, 0x6382e9c6, 0x021ecc5e, + 0x09686b3f, 0x3ebaefc9, 0x3c971814, 0x6b6a70a1, + 0x687f3584, 0x52a0e286, 0xb79c5305, 0xaa500737, + 0x3e07841c, 0x7fdeae5c, 0x8e7d44ec, 0x5716f2b8, + 0xb03ada37, 0xf0500c0d, 0xf01c1f04, 0x0200b3ff, + 0xae0cf51a, 0x3cb574b2, 0x25837a58, 0xdc0921bd, + 0xd19113f9, 0x7ca92ff6, 0x94324773, 0x22f54701, + 0x3ae5e581, 0x37c2dadc, 0xc8b57634, 0x9af3dda7, + 0xa9446146, 0x0fd0030e, 0xecc8c73e, 0xa4751e41, + 0xe238cd99, 0x3bea0e2f, 0x3280bba1, 0x183eb331, + 0x4e548b38, 0x4f6db908, 0x6f420d03, 0xf60a04bf, + 0x2cb81290, 0x24977c79, 0x5679b072, 0xbcaf89af, + 0xde9a771f, 0xd9930810, 0xb38bae12, 0xdccf3f2e, + 0x5512721f, 0x2e6b7124, 0x501adde6, 0x9f84cd87, + 0x7a584718, 0x7408da17, 0xbc9f9abc, 0xe94b7d8c, + 0xec7aec3a, 0xdb851dfa, 0x63094366, 0xc464c3d2, + 0xef1c1847, 0x3215d908, 0xdd433b37, 0x24c2ba16, + 0x12a14d43, 0x2a65c451, 0x50940002, 0x133ae4dd, + 0x71dff89e, 0x10314e55, 0x81ac77d6, 0x5f11199b, + 0x043556f1, 0xd7a3c76b, 0x3c11183b, 0x5924a509, + 0xf28fe6ed, 0x97f1fbfa, 0x9ebabf2c, 0x1e153c6e, + 0x86e34570, 0xeae96fb1, 0x860e5e0a, 0x5a3e2ab3, + 0x771fe71c, 0x4e3d06fa, 0x2965dcb9, 0x99e71d0f, + 0x803e89d6, 0x5266c825, 0x2e4cc978, 0x9c10b36a, + 0xc6150eba, 0x94e2ea78, 0xa5fc3c53, 0x1e0a2df4, + 0xf2f74ea7, 0x361d2b3d, 0x1939260f, 0x19c27960, + 0x5223a708, 0xf71312b6, 0xebadfe6e, 0xeac31f66, + 0xe3bc4595, 0xa67bc883, 0xb17f37d1, 0x018cff28, + 0xc332ddef, 0xbe6c5aa5, 0x65582185, 0x68ab9802, + 0xeecea50f, 0xdb2f953b, 0x2aef7dad, 0x5b6e2f84, + 0x1521b628, 0x29076170, 0xecdd4775, 0x619f1510, + 0x13cca830, 0xeb61bd96, 0x0334fe1e, 0xaa0363cf, + 0xb5735c90, 0x4c70a239, 0xd59e9e0b, 0xcbaade14, + 0xeecc86bc, 0x60622ca7, 0x9cab5cab, 0xb2f3846e, + 0x648b1eaf, 0x19bdf0ca, 0xa02369b9, 0x655abb50, + 0x40685a32, 0x3c2ab4b3, 0x319ee9d5, 0xc021b8f7, + 0x9b540b19, 0x875fa099, 0x95f7997e, 0x623d7da8, + 0xf837889a, 0x97e32d77, 0x11ed935f, 0x16681281, + 0x0e358829, 0xc7e61fd6, 0x96dedfa1, 0x7858ba99, + 0x57f584a5, 0x1b227263, 0x9b83c3ff, 0x1ac24696, + 0xcdb30aeb, 0x532e3054, 0x8fd948e4, 0x6dbc3128, + 0x58ebf2ef, 0x34c6ffea, 0xfe28ed61, 0xee7c3c73, + 0x5d4a14d9, 0xe864b7e3, 0x42105d14, 0x203e13e0, + 0x45eee2b6, 0xa3aaabea, 0xdb6c4f15, 0xfacb4fd0, + 0xc742f442, 0xef6abbb5, 0x654f3b1d, 0x41cd2105, + 0xd81e799e, 0x86854dc7, 0xe44b476a, 0x3d816250, + 0xcf62a1f2, 0x5b8d2646, 0xfc8883a0, 0xc1c7b6a3, + 0x7f1524c3, 0x69cb7492, 0x47848a0b, 0x5692b285, + 0x095bbf00, 0xad19489d, 0x1462b174, 0x23820e00, + 0x58428d2a, 0x0c55f5ea, 0x1dadf43e, 0x233f7061, + 0x3372f092, 0x8d937e41, 0xd65fecf1, 0x6c223bdb, + 0x7cde3759, 0xcbee7460, 0x4085f2a7, 0xce77326e, + 0xa6078084, 0x19f8509e, 0xe8efd855, 0x61d99735, + 0xa969a7aa, 0xc50c06c2, 0x5a04abfc, 0x800bcadc, + 0x9e447a2e, 0xc3453484, 0xfdd56705, 0x0e1e9ec9, + 0xdb73dbd3, 0x105588cd, 0x675fda79, 0xe3674340, + 0xc5c43465, 0x713e38d8, 0x3d28f89e, 0xf16dff20, + 0x153e21e7, 0x8fb03d4a, 0xe6e39f2b, 0xdb83adf7]), + new Uint32Array([ + 0xe93d5a68, 0x948140f7, 0xf64c261c, 0x94692934, + 0x411520f7, 0x7602d4f7, 0xbcf46b2e, 0xd4a20068, + 0xd4082471, 0x3320f46a, 0x43b7d4b7, 0x500061af, + 0x1e39f62e, 0x97244546, 0x14214f74, 0xbf8b8840, + 0x4d95fc1d, 0x96b591af, 0x70f4ddd3, 0x66a02f45, + 0xbfbc09ec, 0x03bd9785, 0x7fac6dd0, 0x31cb8504, + 0x96eb27b3, 0x55fd3941, 0xda2547e6, 0xabca0a9a, + 0x28507825, 0x530429f4, 0x0a2c86da, 0xe9b66dfb, + 0x68dc1462, 0xd7486900, 0x680ec0a4, 0x27a18dee, + 0x4f3ffea2, 0xe887ad8c, 0xb58ce006, 0x7af4d6b6, + 0xaace1e7c, 0xd3375fec, 0xce78a399, 0x406b2a42, + 0x20fe9e35, 0xd9f385b9, 0xee39d7ab, 0x3b124e8b, + 0x1dc9faf7, 0x4b6d1856, 0x26a36631, 0xeae397b2, + 0x3a6efa74, 0xdd5b4332, 0x6841e7f7, 0xca7820fb, + 0xfb0af54e, 0xd8feb397, 0x454056ac, 0xba489527, + 0x55533a3a, 0x20838d87, 0xfe6ba9b7, 0xd096954b, + 0x55a867bc, 0xa1159a58, 0xcca92963, 0x99e1db33, + 0xa62a4a56, 0x3f3125f9, 0x5ef47e1c, 0x9029317c, + 0xfdf8e802, 0x04272f70, 0x80bb155c, 0x05282ce3, + 0x95c11548, 0xe4c66d22, 0x48c1133f, 0xc70f86dc, + 0x07f9c9ee, 0x41041f0f, 0x404779a4, 0x5d886e17, + 0x325f51eb, 0xd59bc0d1, 0xf2bcc18f, 0x41113564, + 0x257b7834, 0x602a9c60, 0xdff8e8a3, 0x1f636c1b, + 0x0e12b4c2, 0x02e1329e, 0xaf664fd1, 0xcad18115, + 0x6b2395e0, 0x333e92e1, 0x3b240b62, 0xeebeb922, + 0x85b2a20e, 0xe6ba0d99, 0xde720c8c, 0x2da2f728, + 0xd0127845, 0x95b794fd, 0x647d0862, 0xe7ccf5f0, + 0x5449a36f, 0x877d48fa, 0xc39dfd27, 0xf33e8d1e, + 0x0a476341, 0x992eff74, 0x3a6f6eab, 0xf4f8fd37, + 0xa812dc60, 0xa1ebddf8, 0x991be14c, 0xdb6e6b0d, + 0xc67b5510, 0x6d672c37, 0x2765d43b, 0xdcd0e804, + 0xf1290dc7, 0xcc00ffa3, 0xb5390f92, 0x690fed0b, + 0x667b9ffb, 0xcedb7d9c, 0xa091cf0b, 0xd9155ea3, + 0xbb132f88, 0x515bad24, 0x7b9479bf, 0x763bd6eb, + 0x37392eb3, 0xcc115979, 0x8026e297, 0xf42e312d, + 0x6842ada7, 0xc66a2b3b, 0x12754ccc, 0x782ef11c, + 0x6a124237, 0xb79251e7, 0x06a1bbe6, 0x4bfb6350, + 0x1a6b1018, 0x11caedfa, 0x3d25bdd8, 0xe2e1c3c9, + 0x44421659, 0x0a121386, 0xd90cec6e, 0xd5abea2a, + 0x64af674e, 0xda86a85f, 0xbebfe988, 0x64e4c3fe, + 0x9dbc8057, 0xf0f7c086, 0x60787bf8, 0x6003604d, + 0xd1fd8346, 0xf6381fb0, 0x7745ae04, 0xd736fccc, + 0x83426b33, 0xf01eab71, 0xb0804187, 0x3c005e5f, + 0x77a057be, 0xbde8ae24, 0x55464299, 0xbf582e61, + 0x4e58f48f, 0xf2ddfda2, 0xf474ef38, 0x8789bdc2, + 0x5366f9c3, 0xc8b38e74, 0xb475f255, 0x46fcd9b9, + 0x7aeb2661, 0x8b1ddf84, 0x846a0e79, 0x915f95e2, + 0x466e598e, 0x20b45770, 0x8cd55591, 0xc902de4c, + 0xb90bace1, 0xbb8205d0, 0x11a86248, 0x7574a99e, + 0xb77f19b6, 0xe0a9dc09, 0x662d09a1, 0xc4324633, + 0xe85a1f02, 0x09f0be8c, 0x4a99a025, 0x1d6efe10, + 0x1ab93d1d, 0x0ba5a4df, 0xa186f20f, 0x2868f169, + 0xdcb7da83, 0x573906fe, 0xa1e2ce9b, 0x4fcd7f52, + 0x50115e01, 0xa70683fa, 0xa002b5c4, 0x0de6d027, + 0x9af88c27, 0x773f8641, 0xc3604c06, 0x61a806b5, + 0xf0177a28, 0xc0f586e0, 0x006058aa, 0x30dc7d62, + 0x11e69ed7, 0x2338ea63, 0x53c2dd94, 0xc2c21634, + 0xbbcbee56, 0x90bcb6de, 0xebfc7da1, 0xce591d76, + 0x6f05e409, 0x4b7c0188, 0x39720a3d, 0x7c927c24, + 0x86e3725f, 0x724d9db9, 0x1ac15bb4, 0xd39eb8fc, + 0xed545578, 0x08fca5b5, 0xd83d7cd3, 0x4dad0fc4, + 0x1e50ef5e, 0xb161e6f8, 0xa28514d9, 0x6c51133c, + 0x6fd5c7e7, 0x56e14ec4, 0x362abfce, 0xddc6c837, + 0xd79a3234, 0x92638212, 0x670efa8e, 0x406000e0]), + new Uint32Array([ + 0x3a39ce37, 0xd3faf5cf, 0xabc27737, 0x5ac52d1b, + 0x5cb0679e, 0x4fa33742, 0xd3822740, 0x99bc9bbe, + 0xd5118e9d, 0xbf0f7315, 0xd62d1c7e, 0xc700c47b, + 0xb78c1b6b, 0x21a19045, 0xb26eb1be, 0x6a366eb4, + 0x5748ab2f, 0xbc946e79, 0xc6a376d2, 0x6549c2c8, + 0x530ff8ee, 0x468dde7d, 0xd5730a1d, 0x4cd04dc6, + 0x2939bbdb, 0xa9ba4650, 0xac9526e8, 0xbe5ee304, + 0xa1fad5f0, 0x6a2d519a, 0x63ef8ce2, 0x9a86ee22, + 0xc089c2b8, 0x43242ef6, 0xa51e03aa, 0x9cf2d0a4, + 0x83c061ba, 0x9be96a4d, 0x8fe51550, 0xba645bd6, + 0x2826a2f9, 0xa73a3ae1, 0x4ba99586, 0xef5562e9, + 0xc72fefd3, 0xf752f7da, 0x3f046f69, 0x77fa0a59, + 0x80e4a915, 0x87b08601, 0x9b09e6ad, 0x3b3ee593, + 0xe990fd5a, 0x9e34d797, 0x2cf0b7d9, 0x022b8b51, + 0x96d5ac3a, 0x017da67d, 0xd1cf3ed6, 0x7c7d2d28, + 0x1f9f25cf, 0xadf2b89b, 0x5ad6b472, 0x5a88f54c, + 0xe029ac71, 0xe019a5e6, 0x47b0acfd, 0xed93fa9b, + 0xe8d3c48d, 0x283b57cc, 0xf8d56629, 0x79132e28, + 0x785f0191, 0xed756055, 0xf7960e44, 0xe3d35e8c, + 0x15056dd4, 0x88f46dba, 0x03a16125, 0x0564f0bd, + 0xc3eb9e15, 0x3c9057a2, 0x97271aec, 0xa93a072a, + 0x1b3f6d9b, 0x1e6321f5, 0xf59c66fb, 0x26dcf319, + 0x7533d928, 0xb155fdf5, 0x03563482, 0x8aba3cbb, + 0x28517711, 0xc20ad9f8, 0xabcc5167, 0xccad925f, + 0x4de81751, 0x3830dc8e, 0x379d5862, 0x9320f991, + 0xea7a90c2, 0xfb3e7bce, 0x5121ce64, 0x774fbe32, + 0xa8b6e37e, 0xc3293d46, 0x48de5369, 0x6413e680, + 0xa2ae0810, 0xdd6db224, 0x69852dfd, 0x09072166, + 0xb39a460a, 0x6445c0dd, 0x586cdecf, 0x1c20c8ae, + 0x5bbef7dd, 0x1b588d40, 0xccd2017f, 0x6bb4e3bb, + 0xdda26a7e, 0x3a59ff45, 0x3e350a44, 0xbcb4cdd5, + 0x72eacea8, 0xfa6484bb, 0x8d6612ae, 0xbf3c6f47, + 0xd29be463, 0x542f5d9e, 0xaec2771b, 0xf64e6370, + 0x740e0d8d, 0xe75b1357, 0xf8721671, 0xaf537d5d, + 0x4040cb08, 0x4eb4e2cc, 0x34d2466a, 0x0115af84, + 0xe1b00428, 0x95983a1d, 0x06b89fb4, 0xce6ea048, + 0x6f3f3b82, 0x3520ab82, 0x011a1d4b, 0x277227f8, + 0x611560b1, 0xe7933fdc, 0xbb3a792b, 0x344525bd, + 0xa08839e1, 0x51ce794b, 0x2f32c9b7, 0xa01fbac9, + 0xe01cc87e, 0xbcc7d1f6, 0xcf0111c3, 0xa1e8aac7, + 0x1a908749, 0xd44fbd9a, 0xd0dadecb, 0xd50ada38, + 0x0339c32a, 0xc6913667, 0x8df9317c, 0xe0b12b4f, + 0xf79e59b7, 0x43f5bb3a, 0xf2d519ff, 0x27d9459c, + 0xbf97222c, 0x15e6fc2a, 0x0f91fc71, 0x9b941525, + 0xfae59361, 0xceb69ceb, 0xc2a86459, 0x12baa8d1, + 0xb6c1075e, 0xe3056a0c, 0x10d25065, 0xcb03a442, + 0xe0ec6e0e, 0x1698db3b, 0x4c98a0be, 0x3278e964, + 0x9f1f9532, 0xe0d392df, 0xd3a0342b, 0x8971f21e, + 0x1b0a7441, 0x4ba3348c, 0xc5be7120, 0xc37632d8, + 0xdf359f8d, 0x9b992f2e, 0xe60b6f47, 0x0fe3f11d, + 0xe54cda54, 0x1edad891, 0xce6279cf, 0xcd3e7e6f, + 0x1618b166, 0xfd2c1d05, 0x848fd2c5, 0xf6fb2299, + 0xf523f357, 0xa6327623, 0x93a83531, 0x56cccd02, + 0xacf08162, 0x5a75ebb5, 0x6e163697, 0x88d273cc, + 0xde966292, 0x81b949d0, 0x4c50901b, 0x71c65614, + 0xe6c6c7bd, 0x327a140a, 0x45e1d006, 0xc3f27b9a, + 0xc9aa53fd, 0x62a80f00, 0xbb25bfe2, 0x35bdd2f6, + 0x71126905, 0xb2040222, 0xb6cbcf7c, 0xcd769c2b, + 0x53113ec0, 0x1640e3d3, 0x38abbd60, 0x2547adf0, + 0xba38209c, 0xf746ce76, 0x77afa1c5, 0x20756060, + 0x85cbfe4e, 0x8ae88dd8, 0x7aaaf9b0, 0x4cf9aa7e, + 0x1948c25c, 0x02fb8a8c, 0x01c36ae4, 0xd6ebe1f9, + 0x90d4f869, 0xa65cdea0, 0x3f09252d, 0xc208e69f, + 0xb74e6132, 0xce77e25b, 0x578fdfe3, 0x3ac372e6]) + ]; + this.P = new Uint32Array([ + 0x243f6a88, 0x85a308d3, 0x13198a2e, 0x03707344, + 0xa4093822, 0x299f31d0, 0x082efa98, 0xec4e6c89, + 0x452821e6, 0x38d01377, 0xbe5466cf, 0x34e90c6c, + 0xc0ac29b7, 0xc97c50dd, 0x3f84d5b5, 0xb5470917, + 0x9216d5d9, 0x8979fb1b]); +}; + +function F(S, x8, i) { + return (((S[0][x8[i+3]] + + S[1][x8[i+2]]) ^ + S[2][x8[i+1]]) + + S[3][x8[i]]); +}; + +Blowfish.prototype.encipher = function(x, x8) { + if (x8 === undefined) { + x8 = new Uint8Array(x.buffer); + if (x.byteOffset !== 0) + x8 = x8.subarray(x.byteOffset); + } + x[0] ^= this.P[0]; + for (var i = 1; i < 16; i += 2) { + x[1] ^= F(this.S, x8, 0) ^ this.P[i]; + x[0] ^= F(this.S, x8, 4) ^ this.P[i+1]; + } + var t = x[0]; + x[0] = x[1] ^ this.P[17]; + x[1] = t; +}; + +Blowfish.prototype.decipher = function(x) { + var x8 = new Uint8Array(x.buffer); + if (x.byteOffset !== 0) + x8 = x8.subarray(x.byteOffset); + x[0] ^= this.P[17]; + for (var i = 16; i > 0; i -= 2) { + x[1] ^= F(this.S, x8, 0) ^ this.P[i]; + x[0] ^= F(this.S, x8, 4) ^ this.P[i-1]; + } + var t = x[0]; + x[0] = x[1] ^ this.P[0]; + x[1] = t; +}; + +function stream2word(data, databytes){ + var i, temp = 0; + for (i = 0; i < 4; i++, BLF_J++) { + if (BLF_J >= databytes) BLF_J = 0; + temp = (temp << 8) | data[BLF_J]; + } + return temp; +}; + +Blowfish.prototype.expand0state = function(key, keybytes) { + var d = new Uint32Array(2), i, k; + var d8 = new Uint8Array(d.buffer); + + for (i = 0, BLF_J = 0; i < 18; i++) { + this.P[i] ^= stream2word(key, keybytes); + } + BLF_J = 0; + + for (i = 0; i < 18; i += 2) { + this.encipher(d, d8); + this.P[i] = d[0]; + this.P[i+1] = d[1]; + } + + for (i = 0; i < 4; i++) { + for (k = 0; k < 256; k += 2) { + this.encipher(d, d8); + this.S[i][k] = d[0]; + this.S[i][k+1] = d[1]; + } + } +}; + +Blowfish.prototype.expandstate = function(data, databytes, key, keybytes) { + var d = new Uint32Array(2), i, k; + + for (i = 0, BLF_J = 0; i < 18; i++) { + this.P[i] ^= stream2word(key, keybytes); + } + + for (i = 0, BLF_J = 0; i < 18; i += 2) { + d[0] ^= stream2word(data, databytes); + d[1] ^= stream2word(data, databytes); + this.encipher(d); + this.P[i] = d[0]; + this.P[i+1] = d[1]; + } + + for (i = 0; i < 4; i++) { + for (k = 0; k < 256; k += 2) { + d[0] ^= stream2word(data, databytes); + d[1] ^= stream2word(data, databytes); + this.encipher(d); + this.S[i][k] = d[0]; + this.S[i][k+1] = d[1]; + } + } + BLF_J = 0; +}; + +Blowfish.prototype.enc = function(data, blocks) { + for (var i = 0; i < blocks; i++) { + this.encipher(data.subarray(i*2)); + } +}; + +Blowfish.prototype.dec = function(data, blocks) { + for (var i = 0; i < blocks; i++) { + this.decipher(data.subarray(i*2)); + } +}; + +var BCRYPT_BLOCKS = 8, + BCRYPT_HASHSIZE = 32; + +function bcrypt_hash(sha2pass, sha2salt, out) { + var state = new Blowfish(), + cdata = new Uint32Array(BCRYPT_BLOCKS), i, + ciphertext = new Uint8Array([79,120,121,99,104,114,111,109,97,116,105, + 99,66,108,111,119,102,105,115,104,83,119,97,116,68,121,110,97,109, + 105,116,101]); //"OxychromaticBlowfishSwatDynamite" + + state.expandstate(sha2salt, 64, sha2pass, 64); + for (i = 0; i < 64; i++) { + state.expand0state(sha2salt, 64); + state.expand0state(sha2pass, 64); + } + + for (i = 0; i < BCRYPT_BLOCKS; i++) + cdata[i] = stream2word(ciphertext, ciphertext.byteLength); + for (i = 0; i < 64; i++) + state.enc(cdata, cdata.byteLength / 8); + + for (i = 0; i < BCRYPT_BLOCKS; i++) { + out[4*i+3] = cdata[i] >>> 24; + out[4*i+2] = cdata[i] >>> 16; + out[4*i+1] = cdata[i] >>> 8; + out[4*i+0] = cdata[i]; + } +}; + +function bcrypt_pbkdf(pass, passlen, salt, saltlen, key, keylen, rounds) { + var sha2pass = new Uint8Array(64), + sha2salt = new Uint8Array(64), + out = new Uint8Array(BCRYPT_HASHSIZE), + tmpout = new Uint8Array(BCRYPT_HASHSIZE), + countsalt = new Uint8Array(saltlen+4), + i, j, amt, stride, dest, count, + origkeylen = keylen; + + if (rounds < 1) + return -1; + if (passlen === 0 || saltlen === 0 || keylen === 0 || + keylen > (out.byteLength * out.byteLength) || saltlen > (1<<20)) + return -1; + + stride = Math.floor((keylen + out.byteLength - 1) / out.byteLength); + amt = Math.floor((keylen + stride - 1) / stride); + + for (i = 0; i < saltlen; i++) + countsalt[i] = salt[i]; + + crypto_hash_sha512(sha2pass, pass, passlen); + + for (count = 1; keylen > 0; count++) { + countsalt[saltlen+0] = count >>> 24; + countsalt[saltlen+1] = count >>> 16; + countsalt[saltlen+2] = count >>> 8; + countsalt[saltlen+3] = count; + + crypto_hash_sha512(sha2salt, countsalt, saltlen + 4); + bcrypt_hash(sha2pass, sha2salt, tmpout); + for (i = out.byteLength; i--;) + out[i] = tmpout[i]; + + for (i = 1; i < rounds; i++) { + crypto_hash_sha512(sha2salt, tmpout, tmpout.byteLength); + bcrypt_hash(sha2pass, sha2salt, tmpout); + for (j = 0; j < out.byteLength; j++) + out[j] ^= tmpout[j]; + } + + amt = Math.min(amt, keylen); + for (i = 0; i < amt; i++) { + dest = i * stride + (count - 1); + if (dest >= origkeylen) + break; + key[dest] = out[i]; + } + keylen -= i; + } + + return 0; +}; + +module.exports = { + BLOCKS: BCRYPT_BLOCKS, + HASHSIZE: BCRYPT_HASHSIZE, + hash: bcrypt_hash, + pbkdf: bcrypt_pbkdf +}; diff --git a/node_modules/bcrypt-pbkdf/package.json b/node_modules/bcrypt-pbkdf/package.json new file mode 100644 index 0000000..e93a969 --- /dev/null +++ b/node_modules/bcrypt-pbkdf/package.json @@ -0,0 +1,15 @@ +{ + "name": "bcrypt-pbkdf", + "version": "1.0.2", + "description": "Port of the OpenBSD bcrypt_pbkdf function to pure JS", + "repository": { + "type": "git", + "url": "git://github.com/joyent/node-bcrypt-pbkdf.git" + }, + "main": "index.js", + "dependencies": { + "tweetnacl": "^0.14.3" + }, + "devDependencies": {}, + "license": "BSD-3-Clause" +} diff --git a/node_modules/boxen/index.d.ts b/node_modules/boxen/index.d.ts new file mode 100644 index 0000000..69ebd42 --- /dev/null +++ b/node_modules/boxen/index.d.ts @@ -0,0 +1,200 @@ +import {LiteralUnion} from 'type-fest'; +import {BoxStyle, Boxes} from 'cli-boxes'; + +declare namespace boxen { + /** + Characters used for custom border. + + @example + ``` + // affffb + // e e + // dffffc + + const border: CustomBorderStyle = { + topLeft: 'a', + topRight: 'b', + bottomRight: 'c', + bottomLeft: 'd', + vertical: 'e', + horizontal: 'f' + }; + ``` + */ + interface CustomBorderStyle extends BoxStyle {} + + /** + Spacing used for `padding` and `margin`. + */ + interface Spacing { + readonly top: number; + readonly right: number; + readonly bottom: number; + readonly left: number; + } + + interface Options { + /** + Color of the box border. + */ + readonly borderColor?: LiteralUnion< + | 'black' + | 'red' + | 'green' + | 'yellow' + | 'blue' + | 'magenta' + | 'cyan' + | 'white' + | 'gray' + | 'grey' + | 'blackBright' + | 'redBright' + | 'greenBright' + | 'yellowBright' + | 'blueBright' + | 'magentaBright' + | 'cyanBright' + | 'whiteBright', + string + >; + + /** + Style of the box border. + + @default 'single' + */ + readonly borderStyle?: keyof Boxes | CustomBorderStyle; + + /** + Reduce opacity of the border. + + @default false + */ + readonly dimBorder?: boolean; + + /** + Space between the text and box border. + + @default 0 + */ + readonly padding?: number | Spacing; + + /** + Space around the box. + + @default 0 + */ + readonly margin?: number | Spacing; + + /** + Float the box on the available terminal screen space. + + @default 'left' + */ + readonly float?: 'left' | 'right' | 'center'; + + /** + Color of the background. + */ + readonly backgroundColor?: LiteralUnion< + | 'black' + | 'red' + | 'green' + | 'yellow' + | 'blue' + | 'magenta' + | 'cyan' + | 'white' + | 'blackBright' + | 'redBright' + | 'greenBright' + | 'yellowBright' + | 'blueBright' + | 'magentaBright' + | 'cyanBright' + | 'whiteBright', + string + >; + + /** + Align the text in the box based on the widest line. + + @default 'left' + @deprecated Use `textAlignment` instead. + */ + readonly align?: 'left' | 'right' | 'center'; + + /** + Align the text in the box based on the widest line. + + @default 'left' + */ + readonly textAlignment?: 'left' | 'right' | 'center'; + + /** + Display a title at the top of the box. + If needed, the box will horizontally expand to fit the title. + + @example + ``` + console.log(boxen('foo bar', {title: 'example'})); + // ┌ example ┐ + // │foo bar │ + // └─────────┘ + ``` + */ + readonly title?: string; + + /** + Align the title in the top bar. + + @default 'left' + + @example + ``` + console.log(boxen('foo bar foo bar', {title: 'example', titleAlignment: 'center'})); + // ┌─── example ───┐ + // │foo bar foo bar│ + // └───────────────┘ + + console.log(boxen('foo bar foo bar', {title: 'example', titleAlignment: 'right'})); + // ┌────── example ┐ + // │foo bar foo bar│ + // └───────────────┘ + ``` + */ + readonly titleAlignment?: 'left' | 'right' | 'center'; + } +} + +/** +Creates a box in the terminal. + +@param text - The text inside the box. +@returns The box. + +@example +``` +import boxen = require('boxen'); + +console.log(boxen('unicorn', {padding: 1})); +// ┌─────────────┐ +// │ │ +// │ unicorn │ +// │ │ +// └─────────────┘ + +console.log(boxen('unicorn', {padding: 1, margin: 1, borderStyle: 'double'})); +// +// ╔═════════════╗ +// ║ ║ +// ║ unicorn ║ +// ║ ║ +// ╚═════════════╝ +// +``` +*/ +declare const boxen: (text: string, options?: boxen.Options) => string; + +export = boxen; diff --git a/node_modules/boxen/index.js b/node_modules/boxen/index.js new file mode 100644 index 0000000..d6bc693 --- /dev/null +++ b/node_modules/boxen/index.js @@ -0,0 +1,279 @@ +'use strict'; +const stringWidth = require('string-width'); +const chalk = require('chalk'); +const widestLine = require('widest-line'); +const cliBoxes = require('cli-boxes'); +const camelCase = require('camelcase'); +const ansiAlign = require('ansi-align'); +const wrapAnsi = require('wrap-ansi'); + +const NL = '\n'; +const PAD = ' '; + +const terminalColumns = () => { + const {env, stdout, stderr} = process; + + if (stdout && stdout.columns) { + return stdout.columns; + } + + if (stderr && stderr.columns) { + return stderr.columns; + } + + if (env.COLUMNS) { + return Number.parseInt(env.COLUMNS, 10); + } + + return 80; +}; + +const getObject = detail => { + return typeof detail === 'number' ? { + top: detail, + right: detail * 3, + bottom: detail, + left: detail * 3 + } : { + top: 0, + right: 0, + bottom: 0, + left: 0, + ...detail + }; +}; + +const getBorderChars = borderStyle => { + const sides = [ + 'topLeft', + 'topRight', + 'bottomRight', + 'bottomLeft', + 'vertical', + 'horizontal' + ]; + + let chararacters; + + if (typeof borderStyle === 'string') { + chararacters = cliBoxes[borderStyle]; + + if (!chararacters) { + throw new TypeError(`Invalid border style: ${borderStyle}`); + } + } else { + for (const side of sides) { + if (!borderStyle[side] || typeof borderStyle[side] !== 'string') { + throw new TypeError(`Invalid border style: ${side}`); + } + } + + chararacters = borderStyle; + } + + return chararacters; +}; + +const makeTitle = (text, horizontal, alignement) => { + let title = ''; + + const textWidth = stringWidth(text); + + switch (alignement) { + case 'left': + title = text + horizontal.slice(textWidth); + break; + case 'right': + title = horizontal.slice(textWidth) + text; + break; + default: + horizontal = horizontal.slice(textWidth); + + if (horizontal.length % 2 === 1) { // This is needed in case the length is odd + horizontal = horizontal.slice(Math.floor(horizontal.length / 2)); + title = horizontal.slice(1) + text + horizontal; // We reduce the left part of one character to avoid the bar to go beyond its limit + } else { + horizontal = horizontal.slice(horizontal.length / 2); + title = horizontal + text + horizontal; + } + + break; + } + + return title; +}; + +const makeContentText = (text, padding, columns, align) => { + text = ansiAlign(text, {align}); + let lines = text.split(NL); + const textWidth = widestLine(text); + + const max = columns - padding.left - padding.right; + + if (textWidth > max) { + const newLines = []; + for (const line of lines) { + const createdLines = wrapAnsi(line, max, {hard: true}); + const alignedLines = ansiAlign(createdLines, {align}); + const alignedLinesArray = alignedLines.split('\n'); + const longestLength = Math.max(...alignedLinesArray.map(s => stringWidth(s))); + + for (const alignedLine of alignedLinesArray) { + let paddedLine; + switch (align) { + case 'center': + paddedLine = PAD.repeat((max - longestLength) / 2) + alignedLine; + break; + case 'right': + paddedLine = PAD.repeat(max - longestLength) + alignedLine; + break; + default: + paddedLine = alignedLine; + break; + } + + newLines.push(paddedLine); + } + } + + lines = newLines; + } + + if (align === 'center' && textWidth < max) { + lines = lines.map(line => PAD.repeat((max - textWidth) / 2) + line); + } else if (align === 'right' && textWidth < max) { + lines = lines.map(line => PAD.repeat(max - textWidth) + line); + } + + const paddingLeft = PAD.repeat(padding.left); + const paddingRight = PAD.repeat(padding.right); + + lines = lines.map(line => paddingLeft + line + paddingRight); + + lines = lines.map(line => { + if (columns - stringWidth(line) > 0) { + switch (align) { + case 'center': + return line + PAD.repeat(columns - stringWidth(line)); + case 'right': + return line + PAD.repeat(columns - stringWidth(line)); + default: + return line + PAD.repeat(columns - stringWidth(line)); + } + } + + return line; + }); + + if (padding.top > 0) { + lines = new Array(padding.top).fill(PAD.repeat(columns)).concat(lines); + } + + if (padding.bottom > 0) { + lines = lines.concat(new Array(padding.bottom).fill(PAD.repeat(columns))); + } + + return lines.join(NL); +}; + +const isHex = color => color.match(/^#(?:[0-f]{3}){1,2}$/i); +const isColorValid = color => typeof color === 'string' && ((chalk[color]) || isHex(color)); +const getColorFn = color => isHex(color) ? chalk.hex(color) : chalk[color]; +const getBGColorFn = color => isHex(color) ? chalk.bgHex(color) : chalk[camelCase(['bg', color])]; + +module.exports = (text, options) => { + options = { + padding: 0, + borderStyle: 'single', + dimBorder: false, + textAlignment: 'left', + float: 'left', + titleAlignment: 'left', + ...options + }; + + // This option is deprecated + if (options.align) { + options.textAlignment = options.align; + } + + const BORDERS_WIDTH = 2; + + if (options.borderColor && !isColorValid(options.borderColor)) { + throw new Error(`${options.borderColor} is not a valid borderColor`); + } + + if (options.backgroundColor && !isColorValid(options.backgroundColor)) { + throw new Error(`${options.backgroundColor} is not a valid backgroundColor`); + } + + const chars = getBorderChars(options.borderStyle); + const padding = getObject(options.padding); + const margin = getObject(options.margin); + + const colorizeBorder = border => { + const newBorder = options.borderColor ? getColorFn(options.borderColor)(border) : border; + return options.dimBorder ? chalk.dim(newBorder) : newBorder; + }; + + const colorizeContent = content => options.backgroundColor ? getBGColorFn(options.backgroundColor)(content) : content; + + const columns = terminalColumns(); + + let contentWidth = widestLine(wrapAnsi(text, columns - BORDERS_WIDTH, {hard: true, trim: false})) + padding.left + padding.right; + + // This prevents the title bar to exceed the console's width + let title = options.title && options.title.slice(0, columns - 4 - margin.left - margin.right); + + if (title) { + title = ` ${title} `; + // Make the box larger to fit a larger title + if (stringWidth(title) > contentWidth) { + contentWidth = stringWidth(title); + } + } + + if ((margin.left && margin.right) && contentWidth + BORDERS_WIDTH + margin.left + margin.right > columns) { + // Let's assume we have margins: left = 3, right = 5, in total = 8 + const spaceForMargins = columns - contentWidth - BORDERS_WIDTH; + // Let's assume we have space = 4 + const multiplier = spaceForMargins / (margin.left + margin.right); + // Here: multiplier = 4/8 = 0.5 + margin.left = Math.max(0, Math.floor(margin.left * multiplier)); + margin.right = Math.max(0, Math.floor(margin.right * multiplier)); + // Left: 3 * 0.5 = 1.5 -> 1 + // Right: 6 * 0.5 = 3 + } + + // Prevent content from exceeding the console's width + contentWidth = Math.min(contentWidth, columns - BORDERS_WIDTH - margin.left - margin.right); + + text = makeContentText(text, padding, contentWidth, options.textAlignment); + + let marginLeft = PAD.repeat(margin.left); + + if (options.float === 'center') { + const marginWidth = Math.max((columns - contentWidth - BORDERS_WIDTH) / 2, 0); + marginLeft = PAD.repeat(marginWidth); + } else if (options.float === 'right') { + const marginWidth = Math.max(columns - contentWidth - margin.right - BORDERS_WIDTH, 0); + marginLeft = PAD.repeat(marginWidth); + } + + const horizontal = chars.horizontal.repeat(contentWidth); + const top = colorizeBorder(NL.repeat(margin.top) + marginLeft + chars.topLeft + (title ? makeTitle(title, horizontal, options.titleAlignment) : horizontal) + chars.topRight); + const bottom = colorizeBorder(marginLeft + chars.bottomLeft + horizontal + chars.bottomRight + NL.repeat(margin.bottom)); + const side = colorizeBorder(chars.vertical); + + const LINE_SEPARATOR = (contentWidth + BORDERS_WIDTH + margin.left >= columns) ? '' : NL; + + const lines = text.split(NL); + + const middle = lines.map(line => { + return marginLeft + side + colorizeContent(line) + side; + }).join(LINE_SEPARATOR); + + return top + LINE_SEPARATOR + middle + LINE_SEPARATOR + bottom; +}; + +module.exports._borderStyles = cliBoxes; diff --git a/node_modules/boxen/license b/node_modules/boxen/license new file mode 100644 index 0000000..fa7ceba --- /dev/null +++ b/node_modules/boxen/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (https://sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/boxen/package.json b/node_modules/boxen/package.json new file mode 100644 index 0000000..53a6e40 --- /dev/null +++ b/node_modules/boxen/package.json @@ -0,0 +1,51 @@ +{ + "name": "boxen", + "version": "5.1.2", + "description": "Create boxes in the terminal", + "license": "MIT", + "repository": "sindresorhus/boxen", + "funding": "https://github.com/sponsors/sindresorhus", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "https://sindresorhus.com" + }, + "engines": { + "node": ">=10" + }, + "scripts": { + "test": "xo && nyc ava && tsd" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "cli", + "box", + "boxes", + "terminal", + "term", + "console", + "ascii", + "unicode", + "border", + "text" + ], + "dependencies": { + "ansi-align": "^3.0.0", + "camelcase": "^6.2.0", + "chalk": "^4.1.0", + "cli-boxes": "^2.2.1", + "string-width": "^4.2.2", + "type-fest": "^0.20.2", + "widest-line": "^3.1.0", + "wrap-ansi": "^7.0.0" + }, + "devDependencies": { + "ava": "^2.4.0", + "nyc": "^15.1.0", + "tsd": "^0.14.0", + "xo": "^0.36.1" + } +} diff --git a/node_modules/boxen/readme.md b/node_modules/boxen/readme.md new file mode 100644 index 0000000..c7ed496 --- /dev/null +++ b/node_modules/boxen/readme.md @@ -0,0 +1,244 @@ +# boxen + +> Create boxes in the terminal + +![](screenshot.png) + +## Install + +``` +$ npm install boxen +``` + +## Usage + +```js +const boxen = require('boxen'); + +console.log(boxen('unicorn', {padding: 1})); +/* +┌─────────────┐ +│ │ +│ unicorn │ +│ │ +└─────────────┘ +*/ + +console.log(boxen('unicorn', {padding: 1, margin: 1, borderStyle: 'double'})); +/* + + ╔═════════════╗ + ║ ║ + ║ unicorn ║ + ║ ║ + ╚═════════════╝ + +*/ + +console.log(boxen('unicorns love rainbows', {title: 'magical', titleAlignment: 'center'})); +/* +┌────── magical ───────┐ +│unicorns love rainbows│ +└──────────────────────┘ +*/ +``` + +## API + +### boxen(text, options?) + +#### text + +Type: `string` + +Text inside the box. + +#### options + +Type: `object` + +##### borderColor + +Type: `string`\ +Values: `'black'` `'red'` `'green'` `'yellow'` `'blue'` `'magenta'` `'cyan'` `'white'` `'gray'` or a hex value like `'#ff0000'` + +Color of the box border. + +##### borderStyle + +Type: `string | object`\ +Default: `'single'`\ +Values: +- `'single'` +``` +┌───┐ +│foo│ +└───┘ +``` +- `'double'` +``` +╔═══╗ +║foo║ +╚═══╝ +``` +- `'round'` (`'single'` sides with round corners) +``` +╭───╮ +│foo│ +╰───╯ +``` +- `'bold'` +``` +┏━━━┓ +┃foo┃ +┗━━━┛ +``` +- `'singleDouble'` (`'single'` on top and bottom, `'double'` on right and left) +``` +╓───╖ +║foo║ +╙───╜ +``` +- `'doubleSingle'` (`'double'` on top and bottom, `'single'` on right and left) +``` +╒═══╕ +│foo│ +╘═══╛ +``` +- `'classic'` +``` ++---+ +|foo| ++---+ +``` + +Style of the box border. + +Can be any of the above predefined styles or an object with the following keys: + +```js +{ + topLeft: '+', + topRight: '+', + bottomLeft: '+', + bottomRight: '+', + horizontal: '-', + vertical: '|' +} +``` + +##### dimBorder + +Type: `boolean`\ +Default: `false` + +Reduce opacity of the border. + +##### title + +Type: `string` + +Display a title at the top of the box. +If needed, the box will horizontally expand to fit the title. + +Example: +```js +console.log(boxen('foo bar', {title: 'example'})); +/* +┌ example ┐ +│foo bar │ +└─────────┘ +*/ +``` + +##### titleAlignment + +Type: `string`\ +Default: `'left'` + +Align the title in the top bar. + +Values: +- `'left'` +```js +/* +┌ example ──────┐ +│foo bar foo bar│ +└───────────────┘ +*/ +``` +- `'center'` +```js +/* +┌─── example ───┐ +│foo bar foo bar│ +└───────────────┘ +*/ +``` +- `'right'` +```js +/* +┌────── example ┐ +│foo bar foo bar│ +└───────────────┘ +*/ +``` + +##### padding + +Type: `number | object`\ +Default: `0` + +Space between the text and box border. + +Accepts a number or an object with any of the `top`, `right`, `bottom`, `left` properties. When a number is specified, the left/right padding is 3 times the top/bottom to make it look nice. + +##### margin + +Type: `number | object`\ +Default: `0` + +Space around the box. + +Accepts a number or an object with any of the `top`, `right`, `bottom`, `left` properties. When a number is specified, the left/right margin is 3 times the top/bottom to make it look nice. + +##### float + +Type: `string`\ +Default: `'left'`\ +Values: `'right'` `'center'` `'left'` + +Float the box on the available terminal screen space. + +##### backgroundColor + +Type: `string`\ +Values: `'black'` `'red'` `'green'` `'yellow'` `'blue'` `'magenta'` `'cyan'` `'white'` `'gray'` or a hex value like `'#ff0000'` + +Color of the background. + +##### textAlignment + +Type: `string`\ +Default: `'left'`\ +Values: `'left'` `'center'` `'right'` + +Align the text in the box based on the widest line. + +## Related + +- [boxen-cli](https://github.com/sindresorhus/boxen-cli) - CLI for this module +- [cli-boxes](https://github.com/sindresorhus/cli-boxes) - Boxes for use in the terminal +- [ink-box](https://github.com/sindresorhus/ink-box) - Box component for Ink that uses this package + +--- + + diff --git a/node_modules/brace-expansion/.github/FUNDING.yml b/node_modules/brace-expansion/.github/FUNDING.yml new file mode 100644 index 0000000..79d1eaf --- /dev/null +++ b/node_modules/brace-expansion/.github/FUNDING.yml @@ -0,0 +1,2 @@ +tidelift: "npm/brace-expansion" +patreon: juliangruber diff --git a/node_modules/brace-expansion/LICENSE b/node_modules/brace-expansion/LICENSE new file mode 100644 index 0000000..de32266 --- /dev/null +++ b/node_modules/brace-expansion/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2013 Julian Gruber + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/node_modules/brace-expansion/README.md b/node_modules/brace-expansion/README.md new file mode 100644 index 0000000..e55c583 --- /dev/null +++ b/node_modules/brace-expansion/README.md @@ -0,0 +1,135 @@ +# brace-expansion + +[Brace expansion](https://www.gnu.org/software/bash/manual/html_node/Brace-Expansion.html), +as known from sh/bash, in JavaScript. + +[![build status](https://secure.travis-ci.org/juliangruber/brace-expansion.svg)](http://travis-ci.org/juliangruber/brace-expansion) +[![downloads](https://img.shields.io/npm/dm/brace-expansion.svg)](https://www.npmjs.org/package/brace-expansion) +[![Greenkeeper badge](https://badges.greenkeeper.io/juliangruber/brace-expansion.svg)](https://greenkeeper.io/) + +[![testling badge](https://ci.testling.com/juliangruber/brace-expansion.png)](https://ci.testling.com/juliangruber/brace-expansion) + +## Example + +```js +var expand = require('brace-expansion'); + +expand('file-{a,b,c}.jpg') +// => ['file-a.jpg', 'file-b.jpg', 'file-c.jpg'] + +expand('-v{,,}') +// => ['-v', '-v', '-v'] + +expand('file{0..2}.jpg') +// => ['file0.jpg', 'file1.jpg', 'file2.jpg'] + +expand('file-{a..c}.jpg') +// => ['file-a.jpg', 'file-b.jpg', 'file-c.jpg'] + +expand('file{2..0}.jpg') +// => ['file2.jpg', 'file1.jpg', 'file0.jpg'] + +expand('file{0..4..2}.jpg') +// => ['file0.jpg', 'file2.jpg', 'file4.jpg'] + +expand('file-{a..e..2}.jpg') +// => ['file-a.jpg', 'file-c.jpg', 'file-e.jpg'] + +expand('file{00..10..5}.jpg') +// => ['file00.jpg', 'file05.jpg', 'file10.jpg'] + +expand('{{A..C},{a..c}}') +// => ['A', 'B', 'C', 'a', 'b', 'c'] + +expand('ppp{,config,oe{,conf}}') +// => ['ppp', 'pppconfig', 'pppoe', 'pppoeconf'] +``` + +## API + +```js +var expand = require('brace-expansion'); +``` + +### var expanded = expand(str) + +Return an array of all possible and valid expansions of `str`. If none are +found, `[str]` is returned. + +Valid expansions are: + +```js +/^(.*,)+(.+)?$/ +// {a,b,...} +``` + +A comma separated list of options, like `{a,b}` or `{a,{b,c}}` or `{,a,}`. + +```js +/^-?\d+\.\.-?\d+(\.\.-?\d+)?$/ +// {x..y[..incr]} +``` + +A numeric sequence from `x` to `y` inclusive, with optional increment. +If `x` or `y` start with a leading `0`, all the numbers will be padded +to have equal length. Negative numbers and backwards iteration work too. + +```js +/^-?\d+\.\.-?\d+(\.\.-?\d+)?$/ +// {x..y[..incr]} +``` + +An alphabetic sequence from `x` to `y` inclusive, with optional increment. +`x` and `y` must be exactly one character, and if given, `incr` must be a +number. + +For compatibility reasons, the string `${` is not eligible for brace expansion. + +## Installation + +With [npm](https://npmjs.org) do: + +```bash +npm install brace-expansion +``` + +## Contributors + +- [Julian Gruber](https://github.com/juliangruber) +- [Isaac Z. Schlueter](https://github.com/isaacs) + +## Sponsors + +This module is proudly supported by my [Sponsors](https://github.com/juliangruber/sponsors)! + +Do you want to support modules like this to improve their quality, stability and weigh in on new features? Then please consider donating to my [Patreon](https://www.patreon.com/juliangruber). Not sure how much of my modules you're using? Try [feross/thanks](https://github.com/feross/thanks)! + +## Security contact information + +To report a security vulnerability, please use the +[Tidelift security contact](https://tidelift.com/security). +Tidelift will coordinate the fix and disclosure. + +## License + +(MIT) + +Copyright (c) 2013 Julian Gruber <julian@juliangruber.com> + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/node_modules/brace-expansion/index.js b/node_modules/brace-expansion/index.js new file mode 100644 index 0000000..4af9dde --- /dev/null +++ b/node_modules/brace-expansion/index.js @@ -0,0 +1,203 @@ +var balanced = require('balanced-match'); + +module.exports = expandTop; + +var escSlash = '\0SLASH'+Math.random()+'\0'; +var escOpen = '\0OPEN'+Math.random()+'\0'; +var escClose = '\0CLOSE'+Math.random()+'\0'; +var escComma = '\0COMMA'+Math.random()+'\0'; +var escPeriod = '\0PERIOD'+Math.random()+'\0'; + +function numeric(str) { + return parseInt(str, 10) == str + ? parseInt(str, 10) + : str.charCodeAt(0); +} + +function escapeBraces(str) { + return str.split('\\\\').join(escSlash) + .split('\\{').join(escOpen) + .split('\\}').join(escClose) + .split('\\,').join(escComma) + .split('\\.').join(escPeriod); +} + +function unescapeBraces(str) { + return str.split(escSlash).join('\\') + .split(escOpen).join('{') + .split(escClose).join('}') + .split(escComma).join(',') + .split(escPeriod).join('.'); +} + + +// Basically just str.split(","), but handling cases +// where we have nested braced sections, which should be +// treated as individual members, like {a,{b,c},d} +function parseCommaParts(str) { + if (!str) + return ['']; + + var parts = []; + var m = balanced('{', '}', str); + + if (!m) + return str.split(','); + + var pre = m.pre; + var body = m.body; + var post = m.post; + var p = pre.split(','); + + p[p.length-1] += '{' + body + '}'; + var postParts = parseCommaParts(post); + if (post.length) { + p[p.length-1] += postParts.shift(); + p.push.apply(p, postParts); + } + + parts.push.apply(parts, p); + + return parts; +} + +function expandTop(str) { + if (!str) + return []; + + // I don't know why Bash 4.3 does this, but it does. + // Anything starting with {} will have the first two bytes preserved + // but *only* at the top level, so {},a}b will not expand to anything, + // but a{},b}c will be expanded to [a}c,abc]. + // One could argue that this is a bug in Bash, but since the goal of + // this module is to match Bash's rules, we escape a leading {} + if (str.substr(0, 2) === '{}') { + str = '\\{\\}' + str.substr(2); + } + + return expand(escapeBraces(str), true).map(unescapeBraces); +} + +function embrace(str) { + return '{' + str + '}'; +} +function isPadded(el) { + return /^-?0\d/.test(el); +} + +function lte(i, y) { + return i <= y; +} +function gte(i, y) { + return i >= y; +} + +function expand(str, isTop) { + var expansions = []; + + var m = balanced('{', '}', str); + if (!m) return [str]; + + // no need to expand pre, since it is guaranteed to be free of brace-sets + var pre = m.pre; + var post = m.post.length + ? expand(m.post, false) + : ['']; + + if (/\$$/.test(m.pre)) { + for (var k = 0; k < post.length; k++) { + var expansion = pre+ '{' + m.body + '}' + post[k]; + expansions.push(expansion); + } + } else { + var isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body); + var isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body); + var isSequence = isNumericSequence || isAlphaSequence; + var isOptions = m.body.indexOf(',') >= 0; + if (!isSequence && !isOptions) { + // {a},b} + if (m.post.match(/,.*\}/)) { + str = m.pre + '{' + m.body + escClose + m.post; + return expand(str); + } + return [str]; + } + + var n; + if (isSequence) { + n = m.body.split(/\.\./); + } else { + n = parseCommaParts(m.body); + if (n.length === 1) { + // x{{a,b}}y ==> x{a}y x{b}y + n = expand(n[0], false).map(embrace); + if (n.length === 1) { + return post.map(function(p) { + return m.pre + n[0] + p; + }); + } + } + } + + // at this point, n is the parts, and we know it's not a comma set + // with a single entry. + var N; + + if (isSequence) { + var x = numeric(n[0]); + var y = numeric(n[1]); + var width = Math.max(n[0].length, n[1].length) + var incr = n.length == 3 + ? Math.abs(numeric(n[2])) + : 1; + var test = lte; + var reverse = y < x; + if (reverse) { + incr *= -1; + test = gte; + } + var pad = n.some(isPadded); + + N = []; + + for (var i = x; test(i, y); i += incr) { + var c; + if (isAlphaSequence) { + c = String.fromCharCode(i); + if (c === '\\') + c = ''; + } else { + c = String(i); + if (pad) { + var need = width - c.length; + if (need > 0) { + var z = new Array(need + 1).join('0'); + if (i < 0) + c = '-' + z + c.slice(1); + else + c = z + c; + } + } + } + N.push(c); + } + } else { + N = []; + + for (var j = 0; j < n.length; j++) { + N.push.apply(N, expand(n[j], false)); + } + } + + for (var j = 0; j < N.length; j++) { + for (var k = 0; k < post.length; k++) { + var expansion = pre + N[j] + post[k]; + if (!isTop || isSequence || expansion) + expansions.push(expansion); + } + } + } + + return expansions; +} + diff --git a/node_modules/brace-expansion/package.json b/node_modules/brace-expansion/package.json new file mode 100644 index 0000000..7097d41 --- /dev/null +++ b/node_modules/brace-expansion/package.json @@ -0,0 +1,46 @@ +{ + "name": "brace-expansion", + "description": "Brace expansion as known from sh/bash", + "version": "2.0.1", + "repository": { + "type": "git", + "url": "git://github.com/juliangruber/brace-expansion.git" + }, + "homepage": "https://github.com/juliangruber/brace-expansion", + "main": "index.js", + "scripts": { + "test": "tape test/*.js", + "gentest": "bash test/generate.sh", + "bench": "matcha test/perf/bench.js" + }, + "dependencies": { + "balanced-match": "^1.0.0" + }, + "devDependencies": { + "@c4312/matcha": "^1.3.1", + "tape": "^4.6.0" + }, + "keywords": [], + "author": { + "name": "Julian Gruber", + "email": "mail@juliangruber.com", + "url": "http://juliangruber.com" + }, + "license": "MIT", + "testling": { + "files": "test/*.js", + "browsers": [ + "ie/8..latest", + "firefox/20..latest", + "firefox/nightly", + "chrome/25..latest", + "chrome/canary", + "opera/12..latest", + "opera/next", + "safari/5.1..latest", + "ipad/6.0..latest", + "iphone/6.0..latest", + "android-browser/4.2..latest" + ] + } +} diff --git a/node_modules/buffer-from/LICENSE b/node_modules/buffer-from/LICENSE new file mode 100644 index 0000000..e4bf1d6 --- /dev/null +++ b/node_modules/buffer-from/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2016, 2018 Linus Unnebäck + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/node_modules/buffer-from/index.js b/node_modules/buffer-from/index.js new file mode 100644 index 0000000..e1a58b5 --- /dev/null +++ b/node_modules/buffer-from/index.js @@ -0,0 +1,72 @@ +/* eslint-disable node/no-deprecated-api */ + +var toString = Object.prototype.toString + +var isModern = ( + typeof Buffer !== 'undefined' && + typeof Buffer.alloc === 'function' && + typeof Buffer.allocUnsafe === 'function' && + typeof Buffer.from === 'function' +) + +function isArrayBuffer (input) { + return toString.call(input).slice(8, -1) === 'ArrayBuffer' +} + +function fromArrayBuffer (obj, byteOffset, length) { + byteOffset >>>= 0 + + var maxLength = obj.byteLength - byteOffset + + if (maxLength < 0) { + throw new RangeError("'offset' is out of bounds") + } + + if (length === undefined) { + length = maxLength + } else { + length >>>= 0 + + if (length > maxLength) { + throw new RangeError("'length' is out of bounds") + } + } + + return isModern + ? Buffer.from(obj.slice(byteOffset, byteOffset + length)) + : new Buffer(new Uint8Array(obj.slice(byteOffset, byteOffset + length))) +} + +function fromString (string, encoding) { + if (typeof encoding !== 'string' || encoding === '') { + encoding = 'utf8' + } + + if (!Buffer.isEncoding(encoding)) { + throw new TypeError('"encoding" must be a valid string encoding') + } + + return isModern + ? Buffer.from(string, encoding) + : new Buffer(string, encoding) +} + +function bufferFrom (value, encodingOrOffset, length) { + if (typeof value === 'number') { + throw new TypeError('"value" argument must not be a number') + } + + if (isArrayBuffer(value)) { + return fromArrayBuffer(value, encodingOrOffset, length) + } + + if (typeof value === 'string') { + return fromString(value, encodingOrOffset) + } + + return isModern + ? Buffer.from(value) + : new Buffer(value) +} + +module.exports = bufferFrom diff --git a/node_modules/buffer-from/package.json b/node_modules/buffer-from/package.json new file mode 100644 index 0000000..6ac5327 --- /dev/null +++ b/node_modules/buffer-from/package.json @@ -0,0 +1,19 @@ +{ + "name": "buffer-from", + "version": "1.1.2", + "license": "MIT", + "repository": "LinusU/buffer-from", + "files": [ + "index.js" + ], + "scripts": { + "test": "standard && node test" + }, + "devDependencies": { + "standard": "^12.0.1" + }, + "keywords": [ + "buffer", + "buffer from" + ] +} diff --git a/node_modules/buffer-from/readme.md b/node_modules/buffer-from/readme.md new file mode 100644 index 0000000..9880a55 --- /dev/null +++ b/node_modules/buffer-from/readme.md @@ -0,0 +1,69 @@ +# Buffer From + +A [ponyfill](https://ponyfill.com) for `Buffer.from`, uses native implementation if available. + +## Installation + +```sh +npm install --save buffer-from +``` + +## Usage + +```js +const bufferFrom = require('buffer-from') + +console.log(bufferFrom([1, 2, 3, 4])) +//=> + +const arr = new Uint8Array([1, 2, 3, 4]) +console.log(bufferFrom(arr.buffer, 1, 2)) +//=> + +console.log(bufferFrom('test', 'utf8')) +//=> + +const buf = bufferFrom('test') +console.log(bufferFrom(buf)) +//=> +``` + +## API + +### bufferFrom(array) + +- `array` <Array> + +Allocates a new `Buffer` using an `array` of octets. + +### bufferFrom(arrayBuffer[, byteOffset[, length]]) + +- `arrayBuffer` <ArrayBuffer> The `.buffer` property of a TypedArray or ArrayBuffer +- `byteOffset` <Integer> Where to start copying from `arrayBuffer`. **Default:** `0` +- `length` <Integer> How many bytes to copy from `arrayBuffer`. **Default:** `arrayBuffer.length - byteOffset` + +When passed a reference to the `.buffer` property of a TypedArray instance, the +newly created `Buffer` will share the same allocated memory as the TypedArray. + +The optional `byteOffset` and `length` arguments specify a memory range within +the `arrayBuffer` that will be shared by the `Buffer`. + +### bufferFrom(buffer) + +- `buffer` <Buffer> An existing `Buffer` to copy data from + +Copies the passed `buffer` data onto a new `Buffer` instance. + +### bufferFrom(string[, encoding]) + +- `string` <String> A string to encode. +- `encoding` <String> The encoding of `string`. **Default:** `'utf8'` + +Creates a new `Buffer` containing the given JavaScript string `string`. If +provided, the `encoding` parameter identifies the character encoding of +`string`. + +## See also + +- [buffer-alloc](https://github.com/LinusU/buffer-alloc) A ponyfill for `Buffer.alloc` +- [buffer-alloc-unsafe](https://github.com/LinusU/buffer-alloc-unsafe) A ponyfill for `Buffer.allocUnsafe` diff --git a/node_modules/builtins/.travis.yml b/node_modules/builtins/.travis.yml new file mode 100644 index 0000000..cc4dba2 --- /dev/null +++ b/node_modules/builtins/.travis.yml @@ -0,0 +1,4 @@ +language: node_js +node_js: + - "0.8" + - "0.10" diff --git a/node_modules/builtins/History.md b/node_modules/builtins/History.md new file mode 100644 index 0000000..0eb45c4 --- /dev/null +++ b/node_modules/builtins/History.md @@ -0,0 +1,39 @@ + +0.0.7 / 2014-09-01 +================== + + * update .repository + +0.0.6 / 2014-09-01 +================== + + * add travis + * add test script + * add constants + +0.0.5 / 2014-06-27 +================== + + * add module + * publish to public npm + +0.0.4 / 2014-04-25 +================== + + * add timers + +0.0.3 / 2014-02-22 +================== + + * add buffer + +0.0.2 / 2014-02-11 +================== + + * add assert + +0.0.1 / 2014-02-11 +================== + + * add main + * initial commit diff --git a/node_modules/builtins/License b/node_modules/builtins/License new file mode 100644 index 0000000..b142e5d --- /dev/null +++ b/node_modules/builtins/License @@ -0,0 +1,20 @@ +Copyright (c) 2015 Julian Gruber + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/builtins/Readme.md b/node_modules/builtins/Readme.md new file mode 100644 index 0000000..96f4b1f --- /dev/null +++ b/node_modules/builtins/Readme.md @@ -0,0 +1,18 @@ + +# builtins + + List of node.js [builtin modules](http://nodejs.org/api/). + + [![build status](https://secure.travis-ci.org/juliangruber/builtins.svg)](http://travis-ci.org/juliangruber/builtins) + +## Example + +```js +var builtins = require('builtins'); + +assert(builtins.indexOf('http') > -1); +``` + +## License + + MIT diff --git a/node_modules/builtins/builtins.json b/node_modules/builtins/builtins.json new file mode 100644 index 0000000..45c0522 --- /dev/null +++ b/node_modules/builtins/builtins.json @@ -0,0 +1,35 @@ +[ + "assert", + "buffer", + "child_process", + "cluster", + "console", + "constants", + "crypto", + "dgram", + "dns", + "domain", + "events", + "fs", + "http", + "https", + "module", + "net", + "os", + "path", + "process", + "punycode", + "querystring", + "readline", + "repl", + "stream", + "string_decoder", + "timers", + "tls", + "tty", + "url", + "util", + "v8", + "vm", + "zlib" +] diff --git a/node_modules/builtins/package.json b/node_modules/builtins/package.json new file mode 100644 index 0000000..8199965 --- /dev/null +++ b/node_modules/builtins/package.json @@ -0,0 +1,14 @@ +{ + "name": "builtins", + "version": "1.0.3", + "description": "List of node.js builtin modules", + "repository": "juliangruber/builtins", + "license": "MIT", + "main": "builtins.json", + "publishConfig": { + "registry": "https://registry.npmjs.org" + }, + "scripts": { + "test": "node test.js" + } +} diff --git a/node_modules/builtins/test.js b/node_modules/builtins/test.js new file mode 100644 index 0000000..ffbe838 --- /dev/null +++ b/node_modules/builtins/test.js @@ -0,0 +1,5 @@ +var builtins = require('./builtins'); + +builtins.forEach(function(name){ + require(name); +}); diff --git a/node_modules/cacache/LICENSE.md b/node_modules/cacache/LICENSE.md new file mode 100644 index 0000000..8d28acf --- /dev/null +++ b/node_modules/cacache/LICENSE.md @@ -0,0 +1,16 @@ +ISC License + +Copyright (c) npm, Inc. + +Permission to use, copy, modify, and/or distribute this software for +any purpose with or without fee is hereby granted, provided that the +above copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE COPYRIGHT HOLDER DISCLAIMS +ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE +COPYRIGHT HOLDER BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR +CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS +OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE +OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE +USE OR PERFORMANCE OF THIS SOFTWARE. diff --git a/node_modules/cacache/README.md b/node_modules/cacache/README.md new file mode 100644 index 0000000..cd39b37 --- /dev/null +++ b/node_modules/cacache/README.md @@ -0,0 +1,716 @@ +# cacache [![npm version](https://img.shields.io/npm/v/cacache.svg)](https://npm.im/cacache) [![license](https://img.shields.io/npm/l/cacache.svg)](https://npm.im/cacache) [![Travis](https://img.shields.io/travis/npm/cacache.svg)](https://travis-ci.org/npm/cacache) [![AppVeyor](https://ci.appveyor.com/api/projects/status/github/npm/cacache?svg=true)](https://ci.appveyor.com/project/npm/cacache) [![Coverage Status](https://coveralls.io/repos/github/npm/cacache/badge.svg?branch=latest)](https://coveralls.io/github/npm/cacache?branch=latest) + +[`cacache`](https://github.com/npm/cacache) is a Node.js library for managing +local key and content address caches. It's really fast, really good at +concurrency, and it will never give you corrupted data, even if cache files +get corrupted or manipulated. + +On systems that support user and group settings on files, cacache will +match the `uid` and `gid` values to the folder where the cache lives, even +when running as `root`. + +It was written to be used as [npm](https://npm.im)'s local cache, but can +just as easily be used on its own. + +## Install + +`$ npm install --save cacache` + +## Table of Contents + +* [Example](#example) +* [Features](#features) +* [Contributing](#contributing) +* [API](#api) + * [Using localized APIs](#localized-api) + * Reading + * [`ls`](#ls) + * [`ls.stream`](#ls-stream) + * [`get`](#get-data) + * [`get.stream`](#get-stream) + * [`get.info`](#get-info) + * [`get.hasContent`](#get-hasContent) + * Writing + * [`put`](#put-data) + * [`put.stream`](#put-stream) + * [`rm.all`](#rm-all) + * [`rm.entry`](#rm-entry) + * [`rm.content`](#rm-content) + * [`index.compact`](#index-compact) + * [`index.insert`](#index-insert) + * Utilities + * [`clearMemoized`](#clear-memoized) + * [`tmp.mkdir`](#tmp-mkdir) + * [`tmp.withTmp`](#with-tmp) + * Integrity + * [Subresource Integrity](#integrity) + * [`verify`](#verify) + * [`verify.lastRun`](#verify-last-run) + +### Example + +```javascript +const cacache = require('cacache') +const fs = require('fs') + +const tarball = '/path/to/mytar.tgz' +const cachePath = '/tmp/my-toy-cache' +const key = 'my-unique-key-1234' + +// Cache it! Use `cachePath` as the root of the content cache +cacache.put(cachePath, key, '10293801983029384').then(integrity => { + console.log(`Saved content to ${cachePath}.`) +}) + +const destination = '/tmp/mytar.tgz' + +// Copy the contents out of the cache and into their destination! +// But this time, use stream instead! +cacache.get.stream( + cachePath, key +).pipe( + fs.createWriteStream(destination) +).on('finish', () => { + console.log('done extracting!') +}) + +// The same thing, but skip the key index. +cacache.get.byDigest(cachePath, integrityHash).then(data => { + fs.writeFile(destination, data, err => { + console.log('tarball data fetched based on its sha512sum and written out!') + }) +}) +``` + +### Features + +* Extraction by key or by content address (shasum, etc) +* [Subresource Integrity](#integrity) web standard support +* Multi-hash support - safely host sha1, sha512, etc, in a single cache +* Automatic content deduplication +* Fault tolerance (immune to corruption, partial writes, process races, etc) +* Consistency guarantees on read and write (full data verification) +* Lockless, high-concurrency cache access +* Streaming support +* Promise support +* Fast -- sub-millisecond reads and writes including verification +* Arbitrary metadata storage +* Garbage collection and additional offline verification +* Thorough test coverage +* There's probably a bloom filter in there somewhere. Those are cool, right? 🤔 + +### Contributing + +The cacache team enthusiastically welcomes contributions and project participation! There's a bunch of things you can do if you want to contribute! The [Contributor Guide](CONTRIBUTING.md) has all the information you need for everything from reporting bugs to contributing entire new features. Please don't hesitate to jump in if you'd like to, or even ask us questions if something isn't clear. + +All participants and maintainers in this project are expected to follow [Code of Conduct](CODE_OF_CONDUCT.md), and just generally be excellent to each other. + +Please refer to the [Changelog](CHANGELOG.md) for project history details, too. + +Happy hacking! + +### API + +#### `> cacache.ls(cache) -> Promise` + +Lists info for all entries currently in the cache as a single large object. Each +entry in the object will be keyed by the unique index key, with corresponding +[`get.info`](#get-info) objects as the values. + +##### Example + +```javascript +cacache.ls(cachePath).then(console.log) +// Output +{ + 'my-thing': { + key: 'my-thing', + integrity: 'sha512-BaSe64/EnCoDED+HAsh==' + path: '.testcache/content/deadbeef', // joined with `cachePath` + time: 12345698490, + size: 4023948, + metadata: { + name: 'blah', + version: '1.2.3', + description: 'this was once a package but now it is my-thing' + } + }, + 'other-thing': { + key: 'other-thing', + integrity: 'sha1-ANothER+hasH=', + path: '.testcache/content/bada55', + time: 11992309289, + size: 111112 + } +} +``` + +#### `> cacache.ls.stream(cache) -> Readable` + +Lists info for all entries currently in the cache as a single large object. + +This works just like [`ls`](#ls), except [`get.info`](#get-info) entries are +returned as `'data'` events on the returned stream. + +##### Example + +```javascript +cacache.ls.stream(cachePath).on('data', console.log) +// Output +{ + key: 'my-thing', + integrity: 'sha512-BaSe64HaSh', + path: '.testcache/content/deadbeef', // joined with `cachePath` + time: 12345698490, + size: 13423, + metadata: { + name: 'blah', + version: '1.2.3', + description: 'this was once a package but now it is my-thing' + } +} + +{ + key: 'other-thing', + integrity: 'whirlpool-WoWSoMuchSupport', + path: '.testcache/content/bada55', + time: 11992309289, + size: 498023984029 +} + +{ + ... +} +``` + +#### `> cacache.get(cache, key, [opts]) -> Promise({data, metadata, integrity})` + +Returns an object with the cached data, digest, and metadata identified by +`key`. The `data` property of this object will be a `Buffer` instance that +presumably holds some data that means something to you. I'm sure you know what +to do with it! cacache just won't care. + +`integrity` is a [Subresource +Integrity](#integrity) +string. That is, a string that can be used to verify `data`, which looks like +`-`. + +If there is no content identified by `key`, or if the locally-stored data does +not pass the validity checksum, the promise will be rejected. + +A sub-function, `get.byDigest` may be used for identical behavior, except lookup +will happen by integrity hash, bypassing the index entirely. This version of the +function *only* returns `data` itself, without any wrapper. + +See: [options](#get-options) + +##### Note + +This function loads the entire cache entry into memory before returning it. If +you're dealing with Very Large data, consider using [`get.stream`](#get-stream) +instead. + +##### Example + +```javascript +// Look up by key +cache.get(cachePath, 'my-thing').then(console.log) +// Output: +{ + metadata: { + thingName: 'my' + }, + integrity: 'sha512-BaSe64HaSh', + data: Buffer#, + size: 9320 +} + +// Look up by digest +cache.get.byDigest(cachePath, 'sha512-BaSe64HaSh').then(console.log) +// Output: +Buffer# +``` + +#### `> cacache.get.stream(cache, key, [opts]) -> Readable` + +Returns a [Readable Stream](https://nodejs.org/api/stream.html#stream_readable_streams) of the cached data identified by `key`. + +If there is no content identified by `key`, or if the locally-stored data does +not pass the validity checksum, an error will be emitted. + +`metadata` and `integrity` events will be emitted before the stream closes, if +you need to collect that extra data about the cached entry. + +A sub-function, `get.stream.byDigest` may be used for identical behavior, +except lookup will happen by integrity hash, bypassing the index entirely. This +version does not emit the `metadata` and `integrity` events at all. + +See: [options](#get-options) + +##### Example + +```javascript +// Look up by key +cache.get.stream( + cachePath, 'my-thing' +).on('metadata', metadata => { + console.log('metadata:', metadata) +}).on('integrity', integrity => { + console.log('integrity:', integrity) +}).pipe( + fs.createWriteStream('./x.tgz') +) +// Outputs: +metadata: { ... } +integrity: 'sha512-SoMeDIGest+64==' + +// Look up by digest +cache.get.stream.byDigest( + cachePath, 'sha512-SoMeDIGest+64==' +).pipe( + fs.createWriteStream('./x.tgz') +) +``` + +#### `> cacache.get.info(cache, key) -> Promise` + +Looks up `key` in the cache index, returning information about the entry if +one exists. + +##### Fields + +* `key` - Key the entry was looked up under. Matches the `key` argument. +* `integrity` - [Subresource Integrity hash](#integrity) for the content this entry refers to. +* `path` - Filesystem path where content is stored, joined with `cache` argument. +* `time` - Timestamp the entry was first added on. +* `metadata` - User-assigned metadata associated with the entry/content. + +##### Example + +```javascript +cacache.get.info(cachePath, 'my-thing').then(console.log) + +// Output +{ + key: 'my-thing', + integrity: 'sha256-MUSTVERIFY+ALL/THINGS==' + path: '.testcache/content/deadbeef', + time: 12345698490, + size: 849234, + metadata: { + name: 'blah', + version: '1.2.3', + description: 'this was once a package but now it is my-thing' + } +} +``` + +#### `> cacache.get.hasContent(cache, integrity) -> Promise` + +Looks up a [Subresource Integrity hash](#integrity) in the cache. If content +exists for this `integrity`, it will return an object, with the specific single integrity hash +that was found in `sri` key, and the size of the found content as `size`. If no content exists for this integrity, it will return `false`. + +##### Example + +```javascript +cacache.get.hasContent(cachePath, 'sha256-MUSTVERIFY+ALL/THINGS==').then(console.log) + +// Output +{ + sri: { + source: 'sha256-MUSTVERIFY+ALL/THINGS==', + algorithm: 'sha256', + digest: 'MUSTVERIFY+ALL/THINGS==', + options: [] + }, + size: 9001 +} + +cacache.get.hasContent(cachePath, 'sha521-NOT+IN/CACHE==').then(console.log) + +// Output +false +``` + +##### Options + +##### `opts.integrity` +If present, the pre-calculated digest for the inserted content. If this option +is provided and does not match the post-insertion digest, insertion will fail +with an `EINTEGRITY` error. + +##### `opts.memoize` + +Default: null + +If explicitly truthy, cacache will read from memory and memoize data on bulk read. If `false`, cacache will read from disk data. Reader functions by default read from in-memory cache. + +##### `opts.size` +If provided, the data stream will be verified to check that enough data was +passed through. If there's more or less data than expected, insertion will fail +with an `EBADSIZE` error. + + +#### `> cacache.put(cache, key, data, [opts]) -> Promise` + +Inserts data passed to it into the cache. The returned Promise resolves with a +digest (generated according to [`opts.algorithms`](#optsalgorithms)) after the +cache entry has been successfully written. + +See: [options](#put-options) + +##### Example + +```javascript +fetch( + 'https://registry.npmjs.org/cacache/-/cacache-1.0.0.tgz' +).then(data => { + return cacache.put(cachePath, 'registry.npmjs.org|cacache@1.0.0', data) +}).then(integrity => { + console.log('integrity hash is', integrity) +}) +``` + +#### `> cacache.put.stream(cache, key, [opts]) -> Writable` + +Returns a [Writable +Stream](https://nodejs.org/api/stream.html#stream_writable_streams) that inserts +data written to it into the cache. Emits an `integrity` event with the digest of +written contents when it succeeds. + +See: [options](#put-options) + +##### Example + +```javascript +request.get( + 'https://registry.npmjs.org/cacache/-/cacache-1.0.0.tgz' +).pipe( + cacache.put.stream( + cachePath, 'registry.npmjs.org|cacache@1.0.0' + ).on('integrity', d => console.log(`integrity digest is ${d}`)) +) +``` + +##### Options + +##### `opts.metadata` + +Arbitrary metadata to be attached to the inserted key. + +##### `opts.size` + +If provided, the data stream will be verified to check that enough data was +passed through. If there's more or less data than expected, insertion will fail +with an `EBADSIZE` error. + +##### `opts.integrity` + +If present, the pre-calculated digest for the inserted content. If this option +is provided and does not match the post-insertion digest, insertion will fail +with an `EINTEGRITY` error. + +`algorithms` has no effect if this option is present. + +##### `opts.integrityEmitter` + +*Streaming only* If present, uses the provided event emitter as a source of +truth for both integrity and size. This allows use cases where integrity is +already being calculated outside of cacache to reuse that data instead of +calculating it a second time. + +The emitter must emit both the `'integrity'` and `'size'` events. + +NOTE: If this option is provided, you must verify that you receive the correct +integrity value yourself and emit an `'error'` event if there is a mismatch. +[ssri Integrity Streams](https://github.com/npm/ssri#integrity-stream) do this for you when given an expected integrity. + +##### `opts.algorithms` + +Default: ['sha512'] + +Hashing algorithms to use when calculating the [subresource integrity +digest](#integrity) +for inserted data. Can use any algorithm listed in `crypto.getHashes()` or +`'omakase'`/`'お任せします'` to pick a random hash algorithm on each insertion. You +may also use any anagram of `'modnar'` to use this feature. + +Currently only supports one algorithm at a time (i.e., an array length of +exactly `1`). Has no effect if `opts.integrity` is present. + +##### `opts.memoize` + +Default: null + +If provided, cacache will memoize the given cache insertion in memory, bypassing +any filesystem checks for that key or digest in future cache fetches. Nothing +will be written to the in-memory cache unless this option is explicitly truthy. + +If `opts.memoize` is an object or a `Map`-like (that is, an object with `get` +and `set` methods), it will be written to instead of the global memoization +cache. + +Reading from disk data can be forced by explicitly passing `memoize: false` to +the reader functions, but their default will be to read from memory. + +##### `opts.tmpPrefix` +Default: null + +Prefix to append on the temporary directory name inside the cache's tmp dir. + +#### `> cacache.rm.all(cache) -> Promise` + +Clears the entire cache. Mainly by blowing away the cache directory itself. + +##### Example + +```javascript +cacache.rm.all(cachePath).then(() => { + console.log('THE APOCALYPSE IS UPON US 😱') +}) +``` + +#### `> cacache.rm.entry(cache, key, [opts]) -> Promise` + +Alias: `cacache.rm` + +Removes the index entry for `key`. Content will still be accessible if +requested directly by content address ([`get.stream.byDigest`](#get-stream)). + +By default, this appends a new entry to the index with an integrity of `null`. +If `opts.removeFully` is set to `true` then the index file itself will be +physically deleted rather than appending a `null`. + +To remove the content itself (which might still be used by other entries), use +[`rm.content`](#rm-content). Or, to safely vacuum any unused content, use +[`verify`](#verify). + +##### Example + +```javascript +cacache.rm.entry(cachePath, 'my-thing').then(() => { + console.log('I did not like it anyway') +}) +``` + +#### `> cacache.rm.content(cache, integrity) -> Promise` + +Removes the content identified by `integrity`. Any index entries referring to it +will not be usable again until the content is re-added to the cache with an +identical digest. + +##### Example + +```javascript +cacache.rm.content(cachePath, 'sha512-SoMeDIGest/IN+BaSE64==').then(() => { + console.log('data for my-thing is gone!') +}) +``` + +#### `> cacache.index.compact(cache, key, matchFn, [opts]) -> Promise` + +Uses `matchFn`, which must be a synchronous function that accepts two entries +and returns a boolean indicating whether or not the two entries match, to +deduplicate all entries in the cache for the given `key`. + +If `opts.validateEntry` is provided, it will be called as a function with the +only parameter being a single index entry. The function must return a Boolean, +if it returns `true` the entry is considered valid and will be kept in the index, +if it returns `false` the entry will be removed from the index. + +If `opts.validateEntry` is not provided, however, every entry in the index will +be deduplicated and kept until the first `null` integrity is reached, removing +all entries that were written before the `null`. + +The deduplicated list of entries is both written to the index, replacing the +existing content, and returned in the Promise. + +#### `> cacache.index.insert(cache, key, integrity, opts) -> Promise` + +Writes an index entry to the cache for the given `key` without writing content. + +It is assumed if you are using this method, you have already stored the content +some other way and you only wish to add a new index to that content. The `metadata` +and `size` properties are read from `opts` and used as part of the index entry. + +Returns a Promise resolving to the newly added entry. + +#### `> cacache.clearMemoized()` + +Completely resets the in-memory entry cache. + +#### `> tmp.mkdir(cache, opts) -> Promise` + +Returns a unique temporary directory inside the cache's `tmp` dir. This +directory will use the same safe user assignment that all the other stuff use. + +Once the directory is made, it's the user's responsibility that all files +within are given the appropriate `gid`/`uid` ownership settings to match +the rest of the cache. If not, you can ask cacache to do it for you by +calling [`tmp.fix()`](#tmp-fix), which will fix all tmp directory +permissions. + +If you want automatic cleanup of this directory, use +[`tmp.withTmp()`](#with-tpm) + +See: [options](#tmp-options) + +##### Example + +```javascript +cacache.tmp.mkdir(cache).then(dir => { + fs.writeFile(path.join(dir, 'blablabla'), Buffer#<1234>, ...) +}) +``` + +#### `> tmp.fix(cache) -> Promise` + +Sets the `uid` and `gid` properties on all files and folders within the tmp +folder to match the rest of the cache. + +Use this after manually writing files into [`tmp.mkdir`](#tmp-mkdir) or +[`tmp.withTmp`](#with-tmp). + +##### Example + +```javascript +cacache.tmp.mkdir(cache).then(dir => { + writeFile(path.join(dir, 'file'), someData).then(() => { + // make sure we didn't just put a root-owned file in the cache + cacache.tmp.fix().then(() => { + // all uids and gids match now + }) + }) +}) +``` + +#### `> tmp.withTmp(cache, opts, cb) -> Promise` + +Creates a temporary directory with [`tmp.mkdir()`](#tmp-mkdir) and calls `cb` +with it. The created temporary directory will be removed when the return value +of `cb()` resolves, the tmp directory will be automatically deleted once that +promise completes. + +The same caveats apply when it comes to managing permissions for the tmp dir's +contents. + +See: [options](#tmp-options) + +##### Example + +```javascript +cacache.tmp.withTmp(cache, dir => { + return fs.writeFileAsync(path.join(dir, 'blablabla'), Buffer#<1234>, ...) +}).then(() => { + // `dir` no longer exists +}) +``` + +##### Options + +##### `opts.tmpPrefix` +Default: null + +Prefix to append on the temporary directory name inside the cache's tmp dir. + +#### Subresource Integrity Digests + +For content verification and addressing, cacache uses strings following the +[Subresource +Integrity spec](https://developer.mozilla.org/en-US/docs/Web/Security/Subresource_Integrity). +That is, any time cacache expects an `integrity` argument or option, it +should be in the format `-`. + +One deviation from the current spec is that cacache will support any hash +algorithms supported by the underlying Node.js process. You can use +`crypto.getHashes()` to see which ones you can use. + +##### Generating Digests Yourself + +If you have an existing content shasum, they are generally formatted as a +hexadecimal string (that is, a sha1 would look like: +`5f5513f8822fdbe5145af33b64d8d970dcf95c6e`). In order to be compatible with +cacache, you'll need to convert this to an equivalent subresource integrity +string. For this example, the corresponding hash would be: +`sha1-X1UT+IIv2+UUWvM7ZNjZcNz5XG4=`. + +If you want to generate an integrity string yourself for existing data, you can +use something like this: + +```javascript +const crypto = require('crypto') +const hashAlgorithm = 'sha512' +const data = 'foobarbaz' + +const integrity = ( + hashAlgorithm + + '-' + + crypto.createHash(hashAlgorithm).update(data).digest('base64') +) +``` + +You can also use [`ssri`](https://npm.im/ssri) to have a richer set of functionality +around SRI strings, including generation, parsing, and translating from existing +hex-formatted strings. + +#### `> cacache.verify(cache, opts) -> Promise` + +Checks out and fixes up your cache: + +* Cleans up corrupted or invalid index entries. +* Custom entry filtering options. +* Garbage collects any content entries not referenced by the index. +* Checks integrity for all content entries and removes invalid content. +* Fixes cache ownership. +* Removes the `tmp` directory in the cache and all its contents. + +When it's done, it'll return an object with various stats about the verification +process, including amount of storage reclaimed, number of valid entries, number +of entries removed, etc. + +##### Options + +##### `opts.concurrency` + +Default: 20 + +Number of concurrently read files in the filesystem while doing clean up. + +##### `opts.filter` +Receives a formatted entry. Return false to remove it. +Note: might be called more than once on the same entry. + +##### `opts.log` +Custom logger function: +``` + log: { silly () {} } + log.silly('verify', 'verifying cache at', cache) +``` + +##### Example + +```sh +echo somegarbage >> $CACHEPATH/content/deadbeef +``` + +```javascript +cacache.verify(cachePath).then(stats => { + // deadbeef collected, because of invalid checksum. + console.log('cache is much nicer now! stats:', stats) +}) +``` + +#### `> cacache.verify.lastRun(cache) -> Promise` + +Returns a `Date` representing the last time `cacache.verify` was run on `cache`. + +##### Example + +```javascript +cacache.verify(cachePath).then(() => { + cacache.verify.lastRun(cachePath).then(lastTime => { + console.log('cacache.verify was last called on' + lastTime) + }) +}) +``` diff --git a/node_modules/cacache/lib/content/path.js b/node_modules/cacache/lib/content/path.js new file mode 100644 index 0000000..ad5a76a --- /dev/null +++ b/node_modules/cacache/lib/content/path.js @@ -0,0 +1,29 @@ +'use strict' + +const contentVer = require('../../package.json')['cache-version'].content +const hashToSegments = require('../util/hash-to-segments') +const path = require('path') +const ssri = require('ssri') + +// Current format of content file path: +// +// sha512-BaSE64Hex= -> +// ~/.my-cache/content-v2/sha512/ba/da/55deadbeefc0ffee +// +module.exports = contentPath + +function contentPath (cache, integrity) { + const sri = ssri.parse(integrity, { single: true }) + // contentPath is the *strongest* algo given + return path.join( + contentDir(cache), + sri.algorithm, + ...hashToSegments(sri.hexDigest()) + ) +} + +module.exports.contentDir = contentDir + +function contentDir (cache) { + return path.join(cache, `content-v${contentVer}`) +} diff --git a/node_modules/cacache/lib/content/read.js b/node_modules/cacache/lib/content/read.js new file mode 100644 index 0000000..f5128fe --- /dev/null +++ b/node_modules/cacache/lib/content/read.js @@ -0,0 +1,241 @@ +'use strict' + +const fs = require('@npmcli/fs') +const fsm = require('fs-minipass') +const ssri = require('ssri') +const contentPath = require('./path') +const Pipeline = require('minipass-pipeline') + +module.exports = read + +const MAX_SINGLE_READ_SIZE = 64 * 1024 * 1024 +async function read (cache, integrity, opts = {}) { + const { size } = opts + const { stat, cpath, sri } = await withContentSri(cache, integrity, async (cpath, sri) => { + // get size + const stat = await fs.lstat(cpath) + return { stat, cpath, sri } + }) + if (typeof size === 'number' && stat.size !== size) { + throw sizeError(size, stat.size) + } + + if (stat.size > MAX_SINGLE_READ_SIZE) { + return readPipeline(cpath, stat.size, sri, new Pipeline()).concat() + } + + const data = await fs.readFile(cpath, { encoding: null }) + if (!ssri.checkData(data, sri)) { + throw integrityError(sri, cpath) + } + + return data +} + +const readPipeline = (cpath, size, sri, stream) => { + stream.push( + new fsm.ReadStream(cpath, { + size, + readSize: MAX_SINGLE_READ_SIZE, + }), + ssri.integrityStream({ + integrity: sri, + size, + }) + ) + return stream +} + +module.exports.sync = readSync + +function readSync (cache, integrity, opts = {}) { + const { size } = opts + return withContentSriSync(cache, integrity, (cpath, sri) => { + const data = fs.readFileSync(cpath, { encoding: null }) + if (typeof size === 'number' && size !== data.length) { + throw sizeError(size, data.length) + } + + if (ssri.checkData(data, sri)) { + return data + } + + throw integrityError(sri, cpath) + }) +} + +module.exports.stream = readStream +module.exports.readStream = readStream + +function readStream (cache, integrity, opts = {}) { + const { size } = opts + const stream = new Pipeline() + // Set all this up to run on the stream and then just return the stream + Promise.resolve().then(async () => { + const { stat, cpath, sri } = await withContentSri(cache, integrity, async (cpath, sri) => { + // just lstat to ensure it exists + const stat = await fs.lstat(cpath) + return { stat, cpath, sri } + }) + if (typeof size === 'number' && size !== stat.size) { + return stream.emit('error', sizeError(size, stat.size)) + } + + readPipeline(cpath, stat.size, sri, stream) + }).catch(err => stream.emit('error', err)) + + return stream +} + +module.exports.copy = copy +module.exports.copy.sync = copySync + +function copy (cache, integrity, dest) { + return withContentSri(cache, integrity, (cpath, sri) => { + return fs.copyFile(cpath, dest) + }) +} + +function copySync (cache, integrity, dest) { + return withContentSriSync(cache, integrity, (cpath, sri) => { + return fs.copyFileSync(cpath, dest) + }) +} + +module.exports.hasContent = hasContent + +async function hasContent (cache, integrity) { + if (!integrity) { + return false + } + + try { + return await withContentSri(cache, integrity, async (cpath, sri) => { + const stat = await fs.lstat(cpath) + return { size: stat.size, sri, stat } + }) + } catch (err) { + if (err.code === 'ENOENT') { + return false + } + + if (err.code === 'EPERM') { + /* istanbul ignore else */ + if (process.platform !== 'win32') { + throw err + } else { + return false + } + } + } +} + +module.exports.hasContent.sync = hasContentSync + +function hasContentSync (cache, integrity) { + if (!integrity) { + return false + } + + return withContentSriSync(cache, integrity, (cpath, sri) => { + try { + const stat = fs.lstatSync(cpath) + return { size: stat.size, sri, stat } + } catch (err) { + if (err.code === 'ENOENT') { + return false + } + + if (err.code === 'EPERM') { + /* istanbul ignore else */ + if (process.platform !== 'win32') { + throw err + } else { + return false + } + } + } + }) +} + +async function withContentSri (cache, integrity, fn) { + const sri = ssri.parse(integrity) + // If `integrity` has multiple entries, pick the first digest + // with available local data. + const algo = sri.pickAlgorithm() + const digests = sri[algo] + + if (digests.length <= 1) { + const cpath = contentPath(cache, digests[0]) + return fn(cpath, digests[0]) + } else { + // Can't use race here because a generic error can happen before + // a ENOENT error, and can happen before a valid result + const results = await Promise.all(digests.map(async (meta) => { + try { + return await withContentSri(cache, meta, fn) + } catch (err) { + if (err.code === 'ENOENT') { + return Object.assign( + new Error('No matching content found for ' + sri.toString()), + { code: 'ENOENT' } + ) + } + return err + } + })) + // Return the first non error if it is found + const result = results.find((r) => !(r instanceof Error)) + if (result) { + return result + } + + // Throw the No matching content found error + const enoentError = results.find((r) => r.code === 'ENOENT') + if (enoentError) { + throw enoentError + } + + // Throw generic error + throw results.find((r) => r instanceof Error) + } +} + +function withContentSriSync (cache, integrity, fn) { + const sri = ssri.parse(integrity) + // If `integrity` has multiple entries, pick the first digest + // with available local data. + const algo = sri.pickAlgorithm() + const digests = sri[algo] + if (digests.length <= 1) { + const cpath = contentPath(cache, digests[0]) + return fn(cpath, digests[0]) + } else { + let lastErr = null + for (const meta of digests) { + try { + return withContentSriSync(cache, meta, fn) + } catch (err) { + lastErr = err + } + } + throw lastErr + } +} + +function sizeError (expected, found) { + /* eslint-disable-next-line max-len */ + const err = new Error(`Bad data size: expected inserted data to be ${expected} bytes, but got ${found} instead`) + err.expected = expected + err.found = found + err.code = 'EBADSIZE' + return err +} + +function integrityError (sri, path) { + const err = new Error(`Integrity verification failed for ${sri} (${path})`) + err.code = 'EINTEGRITY' + err.sri = sri + err.path = path + return err +} diff --git a/node_modules/cacache/lib/content/rm.js b/node_modules/cacache/lib/content/rm.js new file mode 100644 index 0000000..f733305 --- /dev/null +++ b/node_modules/cacache/lib/content/rm.js @@ -0,0 +1,20 @@ +'use strict' + +const util = require('util') + +const contentPath = require('./path') +const { hasContent } = require('./read') +const rimraf = util.promisify(require('rimraf')) + +module.exports = rm + +async function rm (cache, integrity) { + const content = await hasContent(cache, integrity) + // ~pretty~ sure we can't end up with a content lacking sri, but be safe + if (content && content.sri) { + await rimraf(contentPath(cache, content.sri)) + return true + } else { + return false + } +} diff --git a/node_modules/cacache/lib/content/write.js b/node_modules/cacache/lib/content/write.js new file mode 100644 index 0000000..62388dc --- /dev/null +++ b/node_modules/cacache/lib/content/write.js @@ -0,0 +1,187 @@ +'use strict' + +const events = require('events') +const util = require('util') + +const contentPath = require('./path') +const fixOwner = require('../util/fix-owner') +const fs = require('@npmcli/fs') +const moveFile = require('../util/move-file') +const Minipass = require('minipass') +const Pipeline = require('minipass-pipeline') +const Flush = require('minipass-flush') +const path = require('path') +const rimraf = util.promisify(require('rimraf')) +const ssri = require('ssri') +const uniqueFilename = require('unique-filename') +const fsm = require('fs-minipass') + +module.exports = write + +async function write (cache, data, opts = {}) { + const { algorithms, size, integrity } = opts + if (algorithms && algorithms.length > 1) { + throw new Error('opts.algorithms only supports a single algorithm for now') + } + + if (typeof size === 'number' && data.length !== size) { + throw sizeError(size, data.length) + } + + const sri = ssri.fromData(data, algorithms ? { algorithms } : {}) + if (integrity && !ssri.checkData(data, integrity, opts)) { + throw checksumError(integrity, sri) + } + + const tmp = await makeTmp(cache, opts) + try { + await fs.writeFile(tmp.target, data, { flag: 'wx' }) + await moveToDestination(tmp, cache, sri, opts) + return { integrity: sri, size: data.length } + } finally { + if (!tmp.moved) { + await rimraf(tmp.target) + } + } +} + +module.exports.stream = writeStream + +// writes proxied to the 'inputStream' that is passed to the Promise +// 'end' is deferred until content is handled. +class CacacheWriteStream extends Flush { + constructor (cache, opts) { + super() + this.opts = opts + this.cache = cache + this.inputStream = new Minipass() + this.inputStream.on('error', er => this.emit('error', er)) + this.inputStream.on('drain', () => this.emit('drain')) + this.handleContentP = null + } + + write (chunk, encoding, cb) { + if (!this.handleContentP) { + this.handleContentP = handleContent( + this.inputStream, + this.cache, + this.opts + ) + } + return this.inputStream.write(chunk, encoding, cb) + } + + flush (cb) { + this.inputStream.end(() => { + if (!this.handleContentP) { + const e = new Error('Cache input stream was empty') + e.code = 'ENODATA' + // empty streams are probably emitting end right away. + // defer this one tick by rejecting a promise on it. + return Promise.reject(e).catch(cb) + } + this.handleContentP.then( + (res) => { + res.integrity && this.emit('integrity', res.integrity) + res.size !== null && this.emit('size', res.size) + cb() + }, + (er) => cb(er) + ) + }) + } +} + +function writeStream (cache, opts = {}) { + return new CacacheWriteStream(cache, opts) +} + +async function handleContent (inputStream, cache, opts) { + const tmp = await makeTmp(cache, opts) + try { + const res = await pipeToTmp(inputStream, cache, tmp.target, opts) + await moveToDestination( + tmp, + cache, + res.integrity, + opts + ) + return res + } finally { + if (!tmp.moved) { + await rimraf(tmp.target) + } + } +} + +async function pipeToTmp (inputStream, cache, tmpTarget, opts) { + const outStream = new fsm.WriteStream(tmpTarget, { + flags: 'wx', + }) + + if (opts.integrityEmitter) { + // we need to create these all simultaneously since they can fire in any order + const [integrity, size] = await Promise.all([ + events.once(opts.integrityEmitter, 'integrity').then(res => res[0]), + events.once(opts.integrityEmitter, 'size').then(res => res[0]), + new Pipeline(inputStream, outStream).promise(), + ]) + return { integrity, size } + } + + let integrity + let size + const hashStream = ssri.integrityStream({ + integrity: opts.integrity, + algorithms: opts.algorithms, + size: opts.size, + }) + hashStream.on('integrity', i => { + integrity = i + }) + hashStream.on('size', s => { + size = s + }) + + const pipeline = new Pipeline(inputStream, hashStream, outStream) + await pipeline.promise() + return { integrity, size } +} + +async function makeTmp (cache, opts) { + const tmpTarget = uniqueFilename(path.join(cache, 'tmp'), opts.tmpPrefix) + await fixOwner.mkdirfix(cache, path.dirname(tmpTarget)) + return { + target: tmpTarget, + moved: false, + } +} + +async function moveToDestination (tmp, cache, sri, opts) { + const destination = contentPath(cache, sri) + const destDir = path.dirname(destination) + + await fixOwner.mkdirfix(cache, destDir) + await moveFile(tmp.target, destination) + tmp.moved = true + await fixOwner.chownr(cache, destination) +} + +function sizeError (expected, found) { + /* eslint-disable-next-line max-len */ + const err = new Error(`Bad data size: expected inserted data to be ${expected} bytes, but got ${found} instead`) + err.expected = expected + err.found = found + err.code = 'EBADSIZE' + return err +} + +function checksumError (expected, found) { + const err = new Error(`Integrity check failed: + Wanted: ${expected} + Found: ${found}`) + err.code = 'EINTEGRITY' + err.expected = expected + err.found = found + return err +} diff --git a/node_modules/cacache/lib/entry-index.js b/node_modules/cacache/lib/entry-index.js new file mode 100644 index 0000000..cbfa619 --- /dev/null +++ b/node_modules/cacache/lib/entry-index.js @@ -0,0 +1,403 @@ +'use strict' + +const util = require('util') +const crypto = require('crypto') +const fs = require('@npmcli/fs') +const Minipass = require('minipass') +const path = require('path') +const ssri = require('ssri') +const uniqueFilename = require('unique-filename') + +const contentPath = require('./content/path') +const fixOwner = require('./util/fix-owner') +const hashToSegments = require('./util/hash-to-segments') +const indexV = require('../package.json')['cache-version'].index +const moveFile = require('@npmcli/move-file') +const _rimraf = require('rimraf') +const rimraf = util.promisify(_rimraf) +rimraf.sync = _rimraf.sync + +module.exports.NotFoundError = class NotFoundError extends Error { + constructor (cache, key) { + super(`No cache entry for ${key} found in ${cache}`) + this.code = 'ENOENT' + this.cache = cache + this.key = key + } +} + +module.exports.compact = compact + +async function compact (cache, key, matchFn, opts = {}) { + const bucket = bucketPath(cache, key) + const entries = await bucketEntries(bucket) + const newEntries = [] + // we loop backwards because the bottom-most result is the newest + // since we add new entries with appendFile + for (let i = entries.length - 1; i >= 0; --i) { + const entry = entries[i] + // a null integrity could mean either a delete was appended + // or the user has simply stored an index that does not map + // to any content. we determine if the user wants to keep the + // null integrity based on the validateEntry function passed in options. + // if the integrity is null and no validateEntry is provided, we break + // as we consider the null integrity to be a deletion of everything + // that came before it. + if (entry.integrity === null && !opts.validateEntry) { + break + } + + // if this entry is valid, and it is either the first entry or + // the newEntries array doesn't already include an entry that + // matches this one based on the provided matchFn, then we add + // it to the beginning of our list + if ((!opts.validateEntry || opts.validateEntry(entry) === true) && + (newEntries.length === 0 || + !newEntries.find((oldEntry) => matchFn(oldEntry, entry)))) { + newEntries.unshift(entry) + } + } + + const newIndex = '\n' + newEntries.map((entry) => { + const stringified = JSON.stringify(entry) + const hash = hashEntry(stringified) + return `${hash}\t${stringified}` + }).join('\n') + + const setup = async () => { + const target = uniqueFilename(path.join(cache, 'tmp'), opts.tmpPrefix) + await fixOwner.mkdirfix(cache, path.dirname(target)) + return { + target, + moved: false, + } + } + + const teardown = async (tmp) => { + if (!tmp.moved) { + return rimraf(tmp.target) + } + } + + const write = async (tmp) => { + await fs.writeFile(tmp.target, newIndex, { flag: 'wx' }) + await fixOwner.mkdirfix(cache, path.dirname(bucket)) + // we use @npmcli/move-file directly here because we + // want to overwrite the existing file + await moveFile(tmp.target, bucket) + tmp.moved = true + try { + await fixOwner.chownr(cache, bucket) + } catch (err) { + if (err.code !== 'ENOENT') { + throw err + } + } + } + + // write the file atomically + const tmp = await setup() + try { + await write(tmp) + } finally { + await teardown(tmp) + } + + // we reverse the list we generated such that the newest + // entries come first in order to make looping through them easier + // the true passed to formatEntry tells it to keep null + // integrity values, if they made it this far it's because + // validateEntry returned true, and as such we should return it + return newEntries.reverse().map((entry) => formatEntry(cache, entry, true)) +} + +module.exports.insert = insert + +async function insert (cache, key, integrity, opts = {}) { + const { metadata, size } = opts + const bucket = bucketPath(cache, key) + const entry = { + key, + integrity: integrity && ssri.stringify(integrity), + time: Date.now(), + size, + metadata, + } + try { + await fixOwner.mkdirfix(cache, path.dirname(bucket)) + const stringified = JSON.stringify(entry) + // NOTE - Cleverness ahoy! + // + // This works because it's tremendously unlikely for an entry to corrupt + // another while still preserving the string length of the JSON in + // question. So, we just slap the length in there and verify it on read. + // + // Thanks to @isaacs for the whiteboarding session that ended up with + // this. + await fs.appendFile(bucket, `\n${hashEntry(stringified)}\t${stringified}`) + await fixOwner.chownr(cache, bucket) + } catch (err) { + if (err.code === 'ENOENT') { + return undefined + } + + throw err + // There's a class of race conditions that happen when things get deleted + // during fixOwner, or between the two mkdirfix/chownr calls. + // + // It's perfectly fine to just not bother in those cases and lie + // that the index entry was written. Because it's a cache. + } + return formatEntry(cache, entry) +} + +module.exports.insert.sync = insertSync + +function insertSync (cache, key, integrity, opts = {}) { + const { metadata, size } = opts + const bucket = bucketPath(cache, key) + const entry = { + key, + integrity: integrity && ssri.stringify(integrity), + time: Date.now(), + size, + metadata, + } + fixOwner.mkdirfix.sync(cache, path.dirname(bucket)) + const stringified = JSON.stringify(entry) + fs.appendFileSync(bucket, `\n${hashEntry(stringified)}\t${stringified}`) + try { + fixOwner.chownr.sync(cache, bucket) + } catch (err) { + if (err.code !== 'ENOENT') { + throw err + } + } + return formatEntry(cache, entry) +} + +module.exports.find = find + +async function find (cache, key) { + const bucket = bucketPath(cache, key) + try { + const entries = await bucketEntries(bucket) + return entries.reduce((latest, next) => { + if (next && next.key === key) { + return formatEntry(cache, next) + } else { + return latest + } + }, null) + } catch (err) { + if (err.code === 'ENOENT') { + return null + } else { + throw err + } + } +} + +module.exports.find.sync = findSync + +function findSync (cache, key) { + const bucket = bucketPath(cache, key) + try { + return bucketEntriesSync(bucket).reduce((latest, next) => { + if (next && next.key === key) { + return formatEntry(cache, next) + } else { + return latest + } + }, null) + } catch (err) { + if (err.code === 'ENOENT') { + return null + } else { + throw err + } + } +} + +module.exports.delete = del + +function del (cache, key, opts = {}) { + if (!opts.removeFully) { + return insert(cache, key, null, opts) + } + + const bucket = bucketPath(cache, key) + return rimraf(bucket) +} + +module.exports.delete.sync = delSync + +function delSync (cache, key, opts = {}) { + if (!opts.removeFully) { + return insertSync(cache, key, null, opts) + } + + const bucket = bucketPath(cache, key) + return rimraf.sync(bucket) +} + +module.exports.lsStream = lsStream + +function lsStream (cache) { + const indexDir = bucketDir(cache) + const stream = new Minipass({ objectMode: true }) + + // Set all this up to run on the stream and then just return the stream + Promise.resolve().then(async () => { + const buckets = await readdirOrEmpty(indexDir) + await Promise.all(buckets.map(async (bucket) => { + const bucketPath = path.join(indexDir, bucket) + const subbuckets = await readdirOrEmpty(bucketPath) + await Promise.all(subbuckets.map(async (subbucket) => { + const subbucketPath = path.join(bucketPath, subbucket) + + // "/cachename//./*" + const subbucketEntries = await readdirOrEmpty(subbucketPath) + await Promise.all(subbucketEntries.map(async (entry) => { + const entryPath = path.join(subbucketPath, entry) + try { + const entries = await bucketEntries(entryPath) + // using a Map here prevents duplicate keys from showing up + // twice, I guess? + const reduced = entries.reduce((acc, entry) => { + acc.set(entry.key, entry) + return acc + }, new Map()) + // reduced is a map of key => entry + for (const entry of reduced.values()) { + const formatted = formatEntry(cache, entry) + if (formatted) { + stream.write(formatted) + } + } + } catch (err) { + if (err.code === 'ENOENT') { + return undefined + } + throw err + } + })) + })) + })) + stream.end() + }).catch(err => stream.emit('error', err)) + + return stream +} + +module.exports.ls = ls + +async function ls (cache) { + const entries = await lsStream(cache).collect() + return entries.reduce((acc, xs) => { + acc[xs.key] = xs + return acc + }, {}) +} + +module.exports.bucketEntries = bucketEntries + +async function bucketEntries (bucket, filter) { + const data = await fs.readFile(bucket, 'utf8') + return _bucketEntries(data, filter) +} + +module.exports.bucketEntries.sync = bucketEntriesSync + +function bucketEntriesSync (bucket, filter) { + const data = fs.readFileSync(bucket, 'utf8') + return _bucketEntries(data, filter) +} + +function _bucketEntries (data, filter) { + const entries = [] + data.split('\n').forEach((entry) => { + if (!entry) { + return + } + + const pieces = entry.split('\t') + if (!pieces[1] || hashEntry(pieces[1]) !== pieces[0]) { + // Hash is no good! Corruption or malice? Doesn't matter! + // EJECT EJECT + return + } + let obj + try { + obj = JSON.parse(pieces[1]) + } catch (e) { + // Entry is corrupted! + return + } + if (obj) { + entries.push(obj) + } + }) + return entries +} + +module.exports.bucketDir = bucketDir + +function bucketDir (cache) { + return path.join(cache, `index-v${indexV}`) +} + +module.exports.bucketPath = bucketPath + +function bucketPath (cache, key) { + const hashed = hashKey(key) + return path.join.apply( + path, + [bucketDir(cache)].concat(hashToSegments(hashed)) + ) +} + +module.exports.hashKey = hashKey + +function hashKey (key) { + return hash(key, 'sha256') +} + +module.exports.hashEntry = hashEntry + +function hashEntry (str) { + return hash(str, 'sha1') +} + +function hash (str, digest) { + return crypto + .createHash(digest) + .update(str) + .digest('hex') +} + +function formatEntry (cache, entry, keepAll) { + // Treat null digests as deletions. They'll shadow any previous entries. + if (!entry.integrity && !keepAll) { + return null + } + + return { + key: entry.key, + integrity: entry.integrity, + path: entry.integrity ? contentPath(cache, entry.integrity) : undefined, + size: entry.size, + time: entry.time, + metadata: entry.metadata, + } +} + +function readdirOrEmpty (dir) { + return fs.readdir(dir).catch((err) => { + if (err.code === 'ENOENT' || err.code === 'ENOTDIR') { + return [] + } + + throw err + }) +} diff --git a/node_modules/cacache/lib/get.js b/node_modules/cacache/lib/get.js new file mode 100644 index 0000000..cc9d8f6 --- /dev/null +++ b/node_modules/cacache/lib/get.js @@ -0,0 +1,224 @@ +'use strict' + +const Collect = require('minipass-collect') +const Minipass = require('minipass') +const Pipeline = require('minipass-pipeline') + +const index = require('./entry-index') +const memo = require('./memoization') +const read = require('./content/read') + +async function getData (cache, key, opts = {}) { + const { integrity, memoize, size } = opts + const memoized = memo.get(cache, key, opts) + if (memoized && memoize !== false) { + return { + metadata: memoized.entry.metadata, + data: memoized.data, + integrity: memoized.entry.integrity, + size: memoized.entry.size, + } + } + + const entry = await index.find(cache, key, opts) + if (!entry) { + throw new index.NotFoundError(cache, key) + } + const data = await read(cache, entry.integrity, { integrity, size }) + if (memoize) { + memo.put(cache, entry, data, opts) + } + + return { + data, + metadata: entry.metadata, + size: entry.size, + integrity: entry.integrity, + } +} +module.exports = getData + +async function getDataByDigest (cache, key, opts = {}) { + const { integrity, memoize, size } = opts + const memoized = memo.get.byDigest(cache, key, opts) + if (memoized && memoize !== false) { + return memoized + } + + const res = await read(cache, key, { integrity, size }) + if (memoize) { + memo.put.byDigest(cache, key, res, opts) + } + return res +} +module.exports.byDigest = getDataByDigest + +function getDataSync (cache, key, opts = {}) { + const { integrity, memoize, size } = opts + const memoized = memo.get(cache, key, opts) + + if (memoized && memoize !== false) { + return { + metadata: memoized.entry.metadata, + data: memoized.data, + integrity: memoized.entry.integrity, + size: memoized.entry.size, + } + } + const entry = index.find.sync(cache, key, opts) + if (!entry) { + throw new index.NotFoundError(cache, key) + } + const data = read.sync(cache, entry.integrity, { + integrity: integrity, + size: size, + }) + const res = { + metadata: entry.metadata, + data: data, + size: entry.size, + integrity: entry.integrity, + } + if (memoize) { + memo.put(cache, entry, res.data, opts) + } + + return res +} + +module.exports.sync = getDataSync + +function getDataByDigestSync (cache, digest, opts = {}) { + const { integrity, memoize, size } = opts + const memoized = memo.get.byDigest(cache, digest, opts) + + if (memoized && memoize !== false) { + return memoized + } + + const res = read.sync(cache, digest, { + integrity: integrity, + size: size, + }) + if (memoize) { + memo.put.byDigest(cache, digest, res, opts) + } + + return res +} +module.exports.sync.byDigest = getDataByDigestSync + +const getMemoizedStream = (memoized) => { + const stream = new Minipass() + stream.on('newListener', function (ev, cb) { + ev === 'metadata' && cb(memoized.entry.metadata) + ev === 'integrity' && cb(memoized.entry.integrity) + ev === 'size' && cb(memoized.entry.size) + }) + stream.end(memoized.data) + return stream +} + +function getStream (cache, key, opts = {}) { + const { memoize, size } = opts + const memoized = memo.get(cache, key, opts) + if (memoized && memoize !== false) { + return getMemoizedStream(memoized) + } + + const stream = new Pipeline() + // Set all this up to run on the stream and then just return the stream + Promise.resolve().then(async () => { + const entry = await index.find(cache, key) + if (!entry) { + throw new index.NotFoundError(cache, key) + } + + stream.emit('metadata', entry.metadata) + stream.emit('integrity', entry.integrity) + stream.emit('size', entry.size) + stream.on('newListener', function (ev, cb) { + ev === 'metadata' && cb(entry.metadata) + ev === 'integrity' && cb(entry.integrity) + ev === 'size' && cb(entry.size) + }) + + const src = read.readStream( + cache, + entry.integrity, + { ...opts, size: typeof size !== 'number' ? entry.size : size } + ) + + if (memoize) { + const memoStream = new Collect.PassThrough() + memoStream.on('collect', data => memo.put(cache, entry, data, opts)) + stream.unshift(memoStream) + } + stream.unshift(src) + }).catch((err) => stream.emit('error', err)) + + return stream +} + +module.exports.stream = getStream + +function getStreamDigest (cache, integrity, opts = {}) { + const { memoize } = opts + const memoized = memo.get.byDigest(cache, integrity, opts) + if (memoized && memoize !== false) { + const stream = new Minipass() + stream.end(memoized) + return stream + } else { + const stream = read.readStream(cache, integrity, opts) + if (!memoize) { + return stream + } + + const memoStream = new Collect.PassThrough() + memoStream.on('collect', data => memo.put.byDigest( + cache, + integrity, + data, + opts + )) + return new Pipeline(stream, memoStream) + } +} + +module.exports.stream.byDigest = getStreamDigest + +function info (cache, key, opts = {}) { + const { memoize } = opts + const memoized = memo.get(cache, key, opts) + if (memoized && memoize !== false) { + return Promise.resolve(memoized.entry) + } else { + return index.find(cache, key) + } +} +module.exports.info = info + +async function copy (cache, key, dest, opts = {}) { + const entry = await index.find(cache, key, opts) + if (!entry) { + throw new index.NotFoundError(cache, key) + } + await read.copy(cache, entry.integrity, dest, opts) + return { + metadata: entry.metadata, + size: entry.size, + integrity: entry.integrity, + } +} + +module.exports.copy = copy + +async function copyByDigest (cache, key, dest, opts = {}) { + await read.copy(cache, key, dest, opts) + return key +} + +module.exports.copy.byDigest = copyByDigest + +module.exports.hasContent = read.hasContent diff --git a/node_modules/cacache/lib/index.js b/node_modules/cacache/lib/index.js new file mode 100644 index 0000000..1c56be6 --- /dev/null +++ b/node_modules/cacache/lib/index.js @@ -0,0 +1,45 @@ +'use strict' + +const get = require('./get.js') +const put = require('./put.js') +const rm = require('./rm.js') +const verify = require('./verify.js') +const { clearMemoized } = require('./memoization.js') +const tmp = require('./util/tmp.js') +const index = require('./entry-index.js') + +module.exports.index = {} +module.exports.index.compact = index.compact +module.exports.index.insert = index.insert + +module.exports.ls = index.ls +module.exports.ls.stream = index.lsStream + +module.exports.get = get +module.exports.get.byDigest = get.byDigest +module.exports.get.sync = get.sync +module.exports.get.sync.byDigest = get.sync.byDigest +module.exports.get.stream = get.stream +module.exports.get.stream.byDigest = get.stream.byDigest +module.exports.get.copy = get.copy +module.exports.get.copy.byDigest = get.copy.byDigest +module.exports.get.info = get.info +module.exports.get.hasContent = get.hasContent +module.exports.get.hasContent.sync = get.hasContent.sync + +module.exports.put = put +module.exports.put.stream = put.stream + +module.exports.rm = rm.entry +module.exports.rm.all = rm.all +module.exports.rm.entry = module.exports.rm +module.exports.rm.content = rm.content + +module.exports.clearMemoized = clearMemoized + +module.exports.tmp = {} +module.exports.tmp.mkdir = tmp.mkdir +module.exports.tmp.withTmp = tmp.withTmp + +module.exports.verify = verify +module.exports.verify.lastRun = verify.lastRun diff --git a/node_modules/cacache/lib/memoization.js b/node_modules/cacache/lib/memoization.js new file mode 100644 index 0000000..0ff604a --- /dev/null +++ b/node_modules/cacache/lib/memoization.js @@ -0,0 +1,72 @@ +'use strict' + +const LRU = require('lru-cache') + +const MEMOIZED = new LRU({ + max: 500, + maxSize: 50 * 1024 * 1024, // 50MB + ttl: 3 * 60 * 1000, // 3 minutes + sizeCalculation: (entry, key) => key.startsWith('key:') ? entry.data.length : entry.length, +}) + +module.exports.clearMemoized = clearMemoized + +function clearMemoized () { + const old = {} + MEMOIZED.forEach((v, k) => { + old[k] = v + }) + MEMOIZED.clear() + return old +} + +module.exports.put = put + +function put (cache, entry, data, opts) { + pickMem(opts).set(`key:${cache}:${entry.key}`, { entry, data }) + putDigest(cache, entry.integrity, data, opts) +} + +module.exports.put.byDigest = putDigest + +function putDigest (cache, integrity, data, opts) { + pickMem(opts).set(`digest:${cache}:${integrity}`, data) +} + +module.exports.get = get + +function get (cache, key, opts) { + return pickMem(opts).get(`key:${cache}:${key}`) +} + +module.exports.get.byDigest = getDigest + +function getDigest (cache, integrity, opts) { + return pickMem(opts).get(`digest:${cache}:${integrity}`) +} + +class ObjProxy { + constructor (obj) { + this.obj = obj + } + + get (key) { + return this.obj[key] + } + + set (key, val) { + this.obj[key] = val + } +} + +function pickMem (opts) { + if (!opts || !opts.memoize) { + return MEMOIZED + } else if (opts.memoize.get && opts.memoize.set) { + return opts.memoize + } else if (typeof opts.memoize === 'object') { + return new ObjProxy(opts.memoize) + } else { + return MEMOIZED + } +} diff --git a/node_modules/cacache/lib/put.js b/node_modules/cacache/lib/put.js new file mode 100644 index 0000000..9fc932d --- /dev/null +++ b/node_modules/cacache/lib/put.js @@ -0,0 +1,80 @@ +'use strict' + +const index = require('./entry-index') +const memo = require('./memoization') +const write = require('./content/write') +const Flush = require('minipass-flush') +const { PassThrough } = require('minipass-collect') +const Pipeline = require('minipass-pipeline') + +const putOpts = (opts) => ({ + algorithms: ['sha512'], + ...opts, +}) + +module.exports = putData + +async function putData (cache, key, data, opts = {}) { + const { memoize } = opts + opts = putOpts(opts) + const res = await write(cache, data, opts) + const entry = await index.insert(cache, key, res.integrity, { ...opts, size: res.size }) + if (memoize) { + memo.put(cache, entry, data, opts) + } + + return res.integrity +} + +module.exports.stream = putStream + +function putStream (cache, key, opts = {}) { + const { memoize } = opts + opts = putOpts(opts) + let integrity + let size + let error + + let memoData + const pipeline = new Pipeline() + // first item in the pipeline is the memoizer, because we need + // that to end first and get the collected data. + if (memoize) { + const memoizer = new PassThrough().on('collect', data => { + memoData = data + }) + pipeline.push(memoizer) + } + + // contentStream is a write-only, not a passthrough + // no data comes out of it. + const contentStream = write.stream(cache, opts) + .on('integrity', (int) => { + integrity = int + }) + .on('size', (s) => { + size = s + }) + .on('error', (err) => { + error = err + }) + + pipeline.push(contentStream) + + // last but not least, we write the index and emit hash and size, + // and memoize if we're doing that + pipeline.push(new Flush({ + async flush () { + if (!error) { + const entry = await index.insert(cache, key, integrity, { ...opts, size }) + if (memoize && memoData) { + memo.put(cache, entry, memoData, opts) + } + pipeline.emit('integrity', integrity) + pipeline.emit('size', size) + } + }, + })) + + return pipeline +} diff --git a/node_modules/cacache/lib/rm.js b/node_modules/cacache/lib/rm.js new file mode 100644 index 0000000..5f00071 --- /dev/null +++ b/node_modules/cacache/lib/rm.js @@ -0,0 +1,31 @@ +'use strict' + +const util = require('util') + +const index = require('./entry-index') +const memo = require('./memoization') +const path = require('path') +const rimraf = util.promisify(require('rimraf')) +const rmContent = require('./content/rm') + +module.exports = entry +module.exports.entry = entry + +function entry (cache, key, opts) { + memo.clearMemoized() + return index.delete(cache, key, opts) +} + +module.exports.content = content + +function content (cache, integrity) { + memo.clearMemoized() + return rmContent(cache, integrity) +} + +module.exports.all = all + +function all (cache) { + memo.clearMemoized() + return rimraf(path.join(cache, '*(content-*|index-*)')) +} diff --git a/node_modules/cacache/lib/util/fix-owner.js b/node_modules/cacache/lib/util/fix-owner.js new file mode 100644 index 0000000..182fcb0 --- /dev/null +++ b/node_modules/cacache/lib/util/fix-owner.js @@ -0,0 +1,145 @@ +'use strict' + +const util = require('util') + +const chownr = util.promisify(require('chownr')) +const mkdirp = require('mkdirp') +const inflight = require('promise-inflight') +const inferOwner = require('infer-owner') + +// Memoize getuid()/getgid() calls. +// patch process.setuid/setgid to invalidate cached value on change +const self = { uid: null, gid: null } +const getSelf = () => { + if (typeof self.uid !== 'number') { + self.uid = process.getuid() + const setuid = process.setuid + process.setuid = (uid) => { + self.uid = null + process.setuid = setuid + return process.setuid(uid) + } + } + if (typeof self.gid !== 'number') { + self.gid = process.getgid() + const setgid = process.setgid + process.setgid = (gid) => { + self.gid = null + process.setgid = setgid + return process.setgid(gid) + } + } +} + +module.exports.chownr = fixOwner + +async function fixOwner (cache, filepath) { + if (!process.getuid) { + // This platform doesn't need ownership fixing + return + } + + getSelf() + if (self.uid !== 0) { + // almost certainly can't chown anyway + return + } + + const { uid, gid } = await inferOwner(cache) + + // No need to override if it's already what we used. + if (self.uid === uid && self.gid === gid) { + return + } + + return inflight('fixOwner: fixing ownership on ' + filepath, () => + chownr( + filepath, + typeof uid === 'number' ? uid : self.uid, + typeof gid === 'number' ? gid : self.gid + ).catch((err) => { + if (err.code === 'ENOENT') { + return null + } + + throw err + }) + ) +} + +module.exports.chownr.sync = fixOwnerSync + +function fixOwnerSync (cache, filepath) { + if (!process.getuid) { + // This platform doesn't need ownership fixing + return + } + const { uid, gid } = inferOwner.sync(cache) + getSelf() + if (self.uid !== 0) { + // almost certainly can't chown anyway + return + } + + if (self.uid === uid && self.gid === gid) { + // No need to override if it's already what we used. + return + } + try { + chownr.sync( + filepath, + typeof uid === 'number' ? uid : self.uid, + typeof gid === 'number' ? gid : self.gid + ) + } catch (err) { + // only catch ENOENT, any other error is a problem. + if (err.code === 'ENOENT') { + return null + } + + throw err + } +} + +module.exports.mkdirfix = mkdirfix + +async function mkdirfix (cache, p, cb) { + // we have to infer the owner _before_ making the directory, even though + // we aren't going to use the results, since the cache itself might not + // exist yet. If we mkdirp it, then our current uid/gid will be assumed + // to be correct if it creates the cache folder in the process. + await inferOwner(cache) + try { + const made = await mkdirp(p) + if (made) { + await fixOwner(cache, made) + return made + } + } catch (err) { + if (err.code === 'EEXIST') { + await fixOwner(cache, p) + return null + } + throw err + } +} + +module.exports.mkdirfix.sync = mkdirfixSync + +function mkdirfixSync (cache, p) { + try { + inferOwner.sync(cache) + const made = mkdirp.sync(p) + if (made) { + fixOwnerSync(cache, made) + return made + } + } catch (err) { + if (err.code === 'EEXIST') { + fixOwnerSync(cache, p) + return null + } else { + throw err + } + } +} diff --git a/node_modules/cacache/lib/util/hash-to-segments.js b/node_modules/cacache/lib/util/hash-to-segments.js new file mode 100644 index 0000000..445599b --- /dev/null +++ b/node_modules/cacache/lib/util/hash-to-segments.js @@ -0,0 +1,7 @@ +'use strict' + +module.exports = hashToSegments + +function hashToSegments (hash) { + return [hash.slice(0, 2), hash.slice(2, 4), hash.slice(4)] +} diff --git a/node_modules/cacache/lib/util/move-file.js b/node_modules/cacache/lib/util/move-file.js new file mode 100644 index 0000000..a0b4041 --- /dev/null +++ b/node_modules/cacache/lib/util/move-file.js @@ -0,0 +1,56 @@ +'use strict' + +const fs = require('@npmcli/fs') +const move = require('@npmcli/move-file') +const pinflight = require('promise-inflight') + +module.exports = moveFile + +async function moveFile (src, dest) { + const isWindows = process.platform === 'win32' + + // This isn't quite an fs.rename -- the assumption is that + // if `dest` already exists, and we get certain errors while + // trying to move it, we should just not bother. + // + // In the case of cache corruption, users will receive an + // EINTEGRITY error elsewhere, and can remove the offending + // content their own way. + // + // Note that, as the name suggests, this strictly only supports file moves. + try { + await fs.link(src, dest) + } catch (err) { + if (isWindows && err.code === 'EPERM') { + // XXX This is a really weird way to handle this situation, as it + // results in the src file being deleted even though the dest + // might not exist. Since we pretty much always write files to + // deterministic locations based on content hash, this is likely + // ok (or at worst, just ends in a future cache miss). But it would + // be worth investigating at some time in the future if this is + // really what we want to do here. + } else if (err.code === 'EEXIST' || err.code === 'EBUSY') { + // file already exists, so whatever + } else { + throw err + } + } + try { + await Promise.all([ + fs.unlink(src), + !isWindows && fs.chmod(dest, '0444'), + ]) + } catch (e) { + return pinflight('cacache-move-file:' + dest, async () => { + await fs.stat(dest).catch((err) => { + if (err.code !== 'ENOENT') { + // Something else is wrong here. Bail bail bail + throw err + } + }) + // file doesn't already exist! let's try a rename -> copy fallback + // only delete if it successfully copies + return move(src, dest) + }) + } +} diff --git a/node_modules/cacache/lib/util/tmp.js b/node_modules/cacache/lib/util/tmp.js new file mode 100644 index 0000000..b4437cf --- /dev/null +++ b/node_modules/cacache/lib/util/tmp.js @@ -0,0 +1,33 @@ +'use strict' + +const fs = require('@npmcli/fs') + +const fixOwner = require('./fix-owner') +const path = require('path') + +module.exports.mkdir = mktmpdir + +async function mktmpdir (cache, opts = {}) { + const { tmpPrefix } = opts + const tmpDir = path.join(cache, 'tmp') + await fs.mkdir(tmpDir, { recursive: true, owner: 'inherit' }) + // do not use path.join(), it drops the trailing / if tmpPrefix is unset + const target = `${tmpDir}${path.sep}${tmpPrefix || ''}` + return fs.mkdtemp(target, { owner: 'inherit' }) +} + +module.exports.withTmp = withTmp + +function withTmp (cache, opts, cb) { + if (!cb) { + cb = opts + opts = {} + } + return fs.withTempDir(path.join(cache, 'tmp'), cb, opts) +} + +module.exports.fix = fixtmpdir + +function fixtmpdir (cache) { + return fixOwner(cache, path.join(cache, 'tmp')) +} diff --git a/node_modules/cacache/lib/verify.js b/node_modules/cacache/lib/verify.js new file mode 100644 index 0000000..52692a0 --- /dev/null +++ b/node_modules/cacache/lib/verify.js @@ -0,0 +1,257 @@ +'use strict' + +const util = require('util') + +const pMap = require('p-map') +const contentPath = require('./content/path') +const fixOwner = require('./util/fix-owner') +const fs = require('@npmcli/fs') +const fsm = require('fs-minipass') +const glob = util.promisify(require('glob')) +const index = require('./entry-index') +const path = require('path') +const rimraf = util.promisify(require('rimraf')) +const ssri = require('ssri') + +const globify = pattern => pattern.split('\\').join('/') + +const hasOwnProperty = (obj, key) => + Object.prototype.hasOwnProperty.call(obj, key) + +const verifyOpts = (opts) => ({ + concurrency: 20, + log: { silly () {} }, + ...opts, +}) + +module.exports = verify + +async function verify (cache, opts) { + opts = verifyOpts(opts) + opts.log.silly('verify', 'verifying cache at', cache) + + const steps = [ + markStartTime, + fixPerms, + garbageCollect, + rebuildIndex, + cleanTmp, + writeVerifile, + markEndTime, + ] + + const stats = {} + for (const step of steps) { + const label = step.name + const start = new Date() + const s = await step(cache, opts) + if (s) { + Object.keys(s).forEach((k) => { + stats[k] = s[k] + }) + } + const end = new Date() + if (!stats.runTime) { + stats.runTime = {} + } + stats.runTime[label] = end - start + } + stats.runTime.total = stats.endTime - stats.startTime + opts.log.silly( + 'verify', + 'verification finished for', + cache, + 'in', + `${stats.runTime.total}ms` + ) + return stats +} + +async function markStartTime (cache, opts) { + return { startTime: new Date() } +} + +async function markEndTime (cache, opts) { + return { endTime: new Date() } +} + +async function fixPerms (cache, opts) { + opts.log.silly('verify', 'fixing cache permissions') + await fixOwner.mkdirfix(cache, cache) + // TODO - fix file permissions too + await fixOwner.chownr(cache, cache) + return null +} + +// Implements a naive mark-and-sweep tracing garbage collector. +// +// The algorithm is basically as follows: +// 1. Read (and filter) all index entries ("pointers") +// 2. Mark each integrity value as "live" +// 3. Read entire filesystem tree in `content-vX/` dir +// 4. If content is live, verify its checksum and delete it if it fails +// 5. If content is not marked as live, rimraf it. +// +async function garbageCollect (cache, opts) { + opts.log.silly('verify', 'garbage collecting content') + const indexStream = index.lsStream(cache) + const liveContent = new Set() + indexStream.on('data', (entry) => { + if (opts.filter && !opts.filter(entry)) { + return + } + + liveContent.add(entry.integrity.toString()) + }) + await new Promise((resolve, reject) => { + indexStream.on('end', resolve).on('error', reject) + }) + const contentDir = contentPath.contentDir(cache) + const files = await glob(globify(path.join(contentDir, '**')), { + follow: false, + nodir: true, + nosort: true, + }) + const stats = { + verifiedContent: 0, + reclaimedCount: 0, + reclaimedSize: 0, + badContentCount: 0, + keptSize: 0, + } + await pMap( + files, + async (f) => { + const split = f.split(/[/\\]/) + const digest = split.slice(split.length - 3).join('') + const algo = split[split.length - 4] + const integrity = ssri.fromHex(digest, algo) + if (liveContent.has(integrity.toString())) { + const info = await verifyContent(f, integrity) + if (!info.valid) { + stats.reclaimedCount++ + stats.badContentCount++ + stats.reclaimedSize += info.size + } else { + stats.verifiedContent++ + stats.keptSize += info.size + } + } else { + // No entries refer to this content. We can delete. + stats.reclaimedCount++ + const s = await fs.stat(f) + await rimraf(f) + stats.reclaimedSize += s.size + } + return stats + }, + { concurrency: opts.concurrency } + ) + return stats +} + +async function verifyContent (filepath, sri) { + const contentInfo = {} + try { + const { size } = await fs.stat(filepath) + contentInfo.size = size + contentInfo.valid = true + await ssri.checkStream(new fsm.ReadStream(filepath), sri) + } catch (err) { + if (err.code === 'ENOENT') { + return { size: 0, valid: false } + } + if (err.code !== 'EINTEGRITY') { + throw err + } + + await rimraf(filepath) + contentInfo.valid = false + } + return contentInfo +} + +async function rebuildIndex (cache, opts) { + opts.log.silly('verify', 'rebuilding index') + const entries = await index.ls(cache) + const stats = { + missingContent: 0, + rejectedEntries: 0, + totalEntries: 0, + } + const buckets = {} + for (const k in entries) { + /* istanbul ignore else */ + if (hasOwnProperty(entries, k)) { + const hashed = index.hashKey(k) + const entry = entries[k] + const excluded = opts.filter && !opts.filter(entry) + excluded && stats.rejectedEntries++ + if (buckets[hashed] && !excluded) { + buckets[hashed].push(entry) + } else if (buckets[hashed] && excluded) { + // skip + } else if (excluded) { + buckets[hashed] = [] + buckets[hashed]._path = index.bucketPath(cache, k) + } else { + buckets[hashed] = [entry] + buckets[hashed]._path = index.bucketPath(cache, k) + } + } + } + await pMap( + Object.keys(buckets), + (key) => { + return rebuildBucket(cache, buckets[key], stats, opts) + }, + { concurrency: opts.concurrency } + ) + return stats +} + +async function rebuildBucket (cache, bucket, stats, opts) { + await fs.truncate(bucket._path) + // This needs to be serialized because cacache explicitly + // lets very racy bucket conflicts clobber each other. + for (const entry of bucket) { + const content = contentPath(cache, entry.integrity) + try { + await fs.stat(content) + await index.insert(cache, entry.key, entry.integrity, { + metadata: entry.metadata, + size: entry.size, + }) + stats.totalEntries++ + } catch (err) { + if (err.code === 'ENOENT') { + stats.rejectedEntries++ + stats.missingContent++ + } else { + throw err + } + } + } +} + +function cleanTmp (cache, opts) { + opts.log.silly('verify', 'cleaning tmp directory') + return rimraf(path.join(cache, 'tmp')) +} + +function writeVerifile (cache, opts) { + const verifile = path.join(cache, '_lastverified') + opts.log.silly('verify', 'writing verifile to ' + verifile) + try { + return fs.writeFile(verifile, `${Date.now()}`) + } finally { + fixOwner.chownr.sync(cache, verifile) + } +} + +module.exports.lastRun = lastRun + +async function lastRun (cache) { + const data = await fs.readFile(path.join(cache, '_lastverified'), { encoding: 'utf8' }) + return new Date(+data) +} diff --git a/node_modules/cacache/node_modules/ssri/LICENSE.md b/node_modules/cacache/node_modules/ssri/LICENSE.md new file mode 100644 index 0000000..e335388 --- /dev/null +++ b/node_modules/cacache/node_modules/ssri/LICENSE.md @@ -0,0 +1,16 @@ +ISC License + +Copyright 2021 (c) npm, Inc. + +Permission to use, copy, modify, and/or distribute this software for +any purpose with or without fee is hereby granted, provided that the +above copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE COPYRIGHT HOLDER DISCLAIMS +ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE +COPYRIGHT HOLDER BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR +CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS +OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE +OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE +USE OR PERFORMANCE OF THIS SOFTWARE. diff --git a/node_modules/cacache/node_modules/ssri/README.md b/node_modules/cacache/node_modules/ssri/README.md new file mode 100644 index 0000000..6f46aa5 --- /dev/null +++ b/node_modules/cacache/node_modules/ssri/README.md @@ -0,0 +1,528 @@ +# ssri [![npm version](https://img.shields.io/npm/v/ssri.svg)](https://npm.im/ssri) [![license](https://img.shields.io/npm/l/ssri.svg)](https://npm.im/ssri) [![Travis](https://img.shields.io/travis/npm/ssri.svg)](https://travis-ci.org/npm/ssri) [![AppVeyor](https://ci.appveyor.com/api/projects/status/github/npm/ssri?svg=true)](https://ci.appveyor.com/project/npm/ssri) [![Coverage Status](https://coveralls.io/repos/github/npm/ssri/badge.svg?branch=latest)](https://coveralls.io/github/npm/ssri?branch=latest) + +[`ssri`](https://github.com/npm/ssri), short for Standard Subresource +Integrity, is a Node.js utility for parsing, manipulating, serializing, +generating, and verifying [Subresource +Integrity](https://w3c.github.io/webappsec/specs/subresourceintegrity/) hashes. + +## Install + +`$ npm install --save ssri` + +## Table of Contents + +* [Example](#example) +* [Features](#features) +* [Contributing](#contributing) +* [API](#api) + * Parsing & Serializing + * [`parse`](#parse) + * [`stringify`](#stringify) + * [`Integrity#concat`](#integrity-concat) + * [`Integrity#merge`](#integrity-merge) + * [`Integrity#toString`](#integrity-to-string) + * [`Integrity#toJSON`](#integrity-to-json) + * [`Integrity#match`](#integrity-match) + * [`Integrity#pickAlgorithm`](#integrity-pick-algorithm) + * [`Integrity#hexDigest`](#integrity-hex-digest) + * Integrity Generation + * [`fromHex`](#from-hex) + * [`fromData`](#from-data) + * [`fromStream`](#from-stream) + * [`create`](#create) + * Integrity Verification + * [`checkData`](#check-data) + * [`checkStream`](#check-stream) + * [`integrityStream`](#integrity-stream) + +### Example + +```javascript +const ssri = require('ssri') + +const integrity = 'sha512-9KhgCRIx/AmzC8xqYJTZRrnO8OW2Pxyl2DIMZSBOr0oDvtEFyht3xpp71j/r/pAe1DM+JI/A+line3jUBgzQ7A==?foo' + +// Parsing and serializing +const parsed = ssri.parse(integrity) +ssri.stringify(parsed) // === integrity (works on non-Integrity objects) +parsed.toString() // === integrity + +// Async stream functions +ssri.checkStream(fs.createReadStream('./my-file'), integrity).then(...) +ssri.fromStream(fs.createReadStream('./my-file')).then(sri => { + sri.toString() === integrity +}) +fs.createReadStream('./my-file').pipe(ssri.createCheckerStream(sri)) + +// Sync data functions +ssri.fromData(fs.readFileSync('./my-file')) // === parsed +ssri.checkData(fs.readFileSync('./my-file'), integrity) // => 'sha512' +``` + +### Features + +* Parses and stringifies SRI strings. +* Generates SRI strings from raw data or Streams. +* Strict standard compliance. +* `?foo` metadata option support. +* Multiple entries for the same algorithm. +* Object-based integrity hash manipulation. +* Small footprint: no dependencies, concise implementation. +* Full test coverage. +* Customizable algorithm picker. + +### Contributing + +The ssri team enthusiastically welcomes contributions and project participation! +There's a bunch of things you can do if you want to contribute! The [Contributor +Guide](CONTRIBUTING.md) has all the information you need for everything from +reporting bugs to contributing entire new features. Please don't hesitate to +jump in if you'd like to, or even ask us questions if something isn't clear. + +### API + +#### `> ssri.parse(sri, [opts]) -> Integrity` + +Parses `sri` into an `Integrity` data structure. `sri` can be an integrity +string, an `Hash`-like with `digest` and `algorithm` fields and an optional +`options` field, or an `Integrity`-like object. The resulting object will be an +`Integrity` instance that has this shape: + +```javascript +{ + 'sha1': [{algorithm: 'sha1', digest: 'deadbeef', options: []}], + 'sha512': [ + {algorithm: 'sha512', digest: 'c0ffee', options: []}, + {algorithm: 'sha512', digest: 'bad1dea', options: ['foo']} + ], +} +``` + +If `opts.single` is truthy, a single `Hash` object will be returned. That is, a +single object that looks like `{algorithm, digest, options}`, as opposed to a +larger object with multiple of these. + +If `opts.strict` is truthy, the resulting object will be filtered such that +it strictly follows the Subresource Integrity spec, throwing away any entries +with any invalid components. This also means a restricted set of algorithms +will be used -- the spec limits them to `sha256`, `sha384`, and `sha512`. + +Strict mode is recommended if the integrity strings are intended for use in +browsers, or in other situations where strict adherence to the spec is needed. + +##### Example + +```javascript +ssri.parse('sha512-9KhgCRIx/AmzC8xqYJTZRrnO8OW2Pxyl2DIMZSBOr0oDvtEFyht3xpp71j/r/pAe1DM+JI/A+line3jUBgzQ7A==?foo') // -> Integrity object +``` + +#### `> ssri.stringify(sri, [opts]) -> String` + +This function is identical to [`Integrity#toString()`](#integrity-to-string), +except it can be used on _any_ object that [`parse`](#parse) can handle -- that +is, a string, an `Hash`-like, or an `Integrity`-like. + +The `opts.sep` option defines the string to use when joining multiple entries +together. To be spec-compliant, this _must_ be whitespace. The default is a +single space (`' '`). + +If `opts.strict` is true, the integrity string will be created using strict +parsing rules. See [`ssri.parse`](#parse). + +##### Example + +```javascript +// Useful for cleaning up input SRI strings: +ssri.stringify('\n\rsha512-foo\n\t\tsha384-bar') +// -> 'sha512-foo sha384-bar' + +// Hash-like: only a single entry. +ssri.stringify({ + algorithm: 'sha512', + digest:'9KhgCRIx/AmzC8xqYJTZRrnO8OW2Pxyl2DIMZSBOr0oDvtEFyht3xpp71j/r/pAe1DM+JI/A+line3jUBgzQ7A==', + options: ['foo'] +}) +// -> +// 'sha512-9KhgCRIx/AmzC8xqYJTZRrnO8OW2Pxyl2DIMZSBOr0oDvtEFyht3xpp71j/r/pAe1DM+JI/A+line3jUBgzQ7A==?foo' + +// Integrity-like: full multi-entry syntax. Similar to output of `ssri.parse` +ssri.stringify({ + 'sha512': [ + { + algorithm: 'sha512', + digest:'9KhgCRIx/AmzC8xqYJTZRrnO8OW2Pxyl2DIMZSBOr0oDvtEFyht3xpp71j/r/pAe1DM+JI/A+line3jUBgzQ7A==', + options: ['foo'] + } + ] +}) +// -> +// 'sha512-9KhgCRIx/AmzC8xqYJTZRrnO8OW2Pxyl2DIMZSBOr0oDvtEFyht3xpp71j/r/pAe1DM+JI/A+line3jUBgzQ7A==?foo' +``` + +#### `> Integrity#concat(otherIntegrity, [opts]) -> Integrity` + +Concatenates an `Integrity` object with another IntegrityLike, or an integrity +string. + +This is functionally equivalent to concatenating the string format of both +integrity arguments, and calling [`ssri.parse`](#ssri-parse) on the new string. + +If `opts.strict` is true, the new `Integrity` will be created using strict +parsing rules. See [`ssri.parse`](#parse). + +##### Example + +```javascript +// This will combine the integrity checks for two different versions of +// your index.js file so you can use a single integrity string and serve +// either of these to clients, from a single ` + +``` + +--- + +To use iMurmurHash in Node.js, install the module using NPM: + +```bash +npm install imurmurhash +``` + +Then simply include it in your scripts: + +```javascript +MurmurHash3 = require('imurmurhash'); +``` + +Quick Example +------------- + +```javascript +// Create the initial hash +var hashState = MurmurHash3('string'); + +// Incrementally add text +hashState.hash('more strings'); +hashState.hash('even more strings'); + +// All calls can be chained if desired +hashState.hash('and').hash('some').hash('more'); + +// Get a result +hashState.result(); +// returns 0xe4ccfe6b +``` + +Functions +--------- + +### MurmurHash3 ([string], [seed]) +Get a hash state object, optionally initialized with the given _string_ and _seed_. _Seed_ must be a positive integer if provided. Calling this function without the `new` keyword will return a cached state object that has been reset. This is safe to use as long as the object is only used from a single thread and no other hashes are created while operating on this one. If this constraint cannot be met, you can use `new` to create a new state object. For example: + +```javascript +// Use the cached object, calling the function again will return the same +// object (but reset, so the current state would be lost) +hashState = MurmurHash3(); +... + +// Create a new object that can be safely used however you wish. Calling the +// function again will simply return a new state object, and no state loss +// will occur, at the cost of creating more objects. +hashState = new MurmurHash3(); +``` + +Both methods can be mixed however you like if you have different use cases. + +--- + +### MurmurHash3.prototype.hash (string) +Incrementally add _string_ to the hash. This can be called as many times as you want for the hash state object, including after a call to `result()`. Returns `this` so calls can be chained. + +--- + +### MurmurHash3.prototype.result () +Get the result of the hash as a 32-bit positive integer. This performs the tail and finalizer portions of the algorithm, but does not store the result in the state object. This means that it is perfectly safe to get results and then continue adding strings via `hash`. + +```javascript +// Do the whole string at once +MurmurHash3('this is a test string').result(); +// 0x70529328 + +// Do part of the string, get a result, then the other part +var m = MurmurHash3('this is a'); +m.result(); +// 0xbfc4f834 +m.hash(' test string').result(); +// 0x70529328 (same as above) +``` + +--- + +### MurmurHash3.prototype.reset ([seed]) +Reset the state object for reuse, optionally using the given _seed_ (defaults to 0 like the constructor). Returns `this` so calls can be chained. + +--- + +License (MIT) +------------- +Copyright (c) 2013 Gary Court, Jens Taylor + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/imurmurhash/imurmurhash.js b/node_modules/imurmurhash/imurmurhash.js new file mode 100644 index 0000000..e63146a --- /dev/null +++ b/node_modules/imurmurhash/imurmurhash.js @@ -0,0 +1,138 @@ +/** + * @preserve + * JS Implementation of incremental MurmurHash3 (r150) (as of May 10, 2013) + * + * @author Jens Taylor + * @see http://github.com/homebrewing/brauhaus-diff + * @author Gary Court + * @see http://github.com/garycourt/murmurhash-js + * @author Austin Appleby + * @see http://sites.google.com/site/murmurhash/ + */ +(function(){ + var cache; + + // Call this function without `new` to use the cached object (good for + // single-threaded environments), or with `new` to create a new object. + // + // @param {string} key A UTF-16 or ASCII string + // @param {number} seed An optional positive integer + // @return {object} A MurmurHash3 object for incremental hashing + function MurmurHash3(key, seed) { + var m = this instanceof MurmurHash3 ? this : cache; + m.reset(seed) + if (typeof key === 'string' && key.length > 0) { + m.hash(key); + } + + if (m !== this) { + return m; + } + }; + + // Incrementally add a string to this hash + // + // @param {string} key A UTF-16 or ASCII string + // @return {object} this + MurmurHash3.prototype.hash = function(key) { + var h1, k1, i, top, len; + + len = key.length; + this.len += len; + + k1 = this.k1; + i = 0; + switch (this.rem) { + case 0: k1 ^= len > i ? (key.charCodeAt(i++) & 0xffff) : 0; + case 1: k1 ^= len > i ? (key.charCodeAt(i++) & 0xffff) << 8 : 0; + case 2: k1 ^= len > i ? (key.charCodeAt(i++) & 0xffff) << 16 : 0; + case 3: + k1 ^= len > i ? (key.charCodeAt(i) & 0xff) << 24 : 0; + k1 ^= len > i ? (key.charCodeAt(i++) & 0xff00) >> 8 : 0; + } + + this.rem = (len + this.rem) & 3; // & 3 is same as % 4 + len -= this.rem; + if (len > 0) { + h1 = this.h1; + while (1) { + k1 = (k1 * 0x2d51 + (k1 & 0xffff) * 0xcc9e0000) & 0xffffffff; + k1 = (k1 << 15) | (k1 >>> 17); + k1 = (k1 * 0x3593 + (k1 & 0xffff) * 0x1b870000) & 0xffffffff; + + h1 ^= k1; + h1 = (h1 << 13) | (h1 >>> 19); + h1 = (h1 * 5 + 0xe6546b64) & 0xffffffff; + + if (i >= len) { + break; + } + + k1 = ((key.charCodeAt(i++) & 0xffff)) ^ + ((key.charCodeAt(i++) & 0xffff) << 8) ^ + ((key.charCodeAt(i++) & 0xffff) << 16); + top = key.charCodeAt(i++); + k1 ^= ((top & 0xff) << 24) ^ + ((top & 0xff00) >> 8); + } + + k1 = 0; + switch (this.rem) { + case 3: k1 ^= (key.charCodeAt(i + 2) & 0xffff) << 16; + case 2: k1 ^= (key.charCodeAt(i + 1) & 0xffff) << 8; + case 1: k1 ^= (key.charCodeAt(i) & 0xffff); + } + + this.h1 = h1; + } + + this.k1 = k1; + return this; + }; + + // Get the result of this hash + // + // @return {number} The 32-bit hash + MurmurHash3.prototype.result = function() { + var k1, h1; + + k1 = this.k1; + h1 = this.h1; + + if (k1 > 0) { + k1 = (k1 * 0x2d51 + (k1 & 0xffff) * 0xcc9e0000) & 0xffffffff; + k1 = (k1 << 15) | (k1 >>> 17); + k1 = (k1 * 0x3593 + (k1 & 0xffff) * 0x1b870000) & 0xffffffff; + h1 ^= k1; + } + + h1 ^= this.len; + + h1 ^= h1 >>> 16; + h1 = (h1 * 0xca6b + (h1 & 0xffff) * 0x85eb0000) & 0xffffffff; + h1 ^= h1 >>> 13; + h1 = (h1 * 0xae35 + (h1 & 0xffff) * 0xc2b20000) & 0xffffffff; + h1 ^= h1 >>> 16; + + return h1 >>> 0; + }; + + // Reset the hash object for reuse + // + // @param {number} seed An optional positive integer + MurmurHash3.prototype.reset = function(seed) { + this.h1 = typeof seed === 'number' ? seed : 0; + this.rem = this.k1 = this.len = 0; + return this; + }; + + // A cached object to use. This can be safely used if you're in a single- + // threaded environment, otherwise you need to create new hashes to use. + cache = new MurmurHash3(); + + if (typeof(module) != 'undefined') { + module.exports = MurmurHash3; + } else { + this.MurmurHash3 = MurmurHash3; + } +}()); diff --git a/node_modules/imurmurhash/imurmurhash.min.js b/node_modules/imurmurhash/imurmurhash.min.js new file mode 100644 index 0000000..dc0ee88 --- /dev/null +++ b/node_modules/imurmurhash/imurmurhash.min.js @@ -0,0 +1,12 @@ +/** + * @preserve + * JS Implementation of incremental MurmurHash3 (r150) (as of May 10, 2013) + * + * @author Jens Taylor + * @see http://github.com/homebrewing/brauhaus-diff + * @author Gary Court + * @see http://github.com/garycourt/murmurhash-js + * @author Austin Appleby + * @see http://sites.google.com/site/murmurhash/ + */ +!function(){function t(h,r){var s=this instanceof t?this:e;return s.reset(r),"string"==typeof h&&h.length>0&&s.hash(h),s!==this?s:void 0}var e;t.prototype.hash=function(t){var e,h,r,s,i;switch(i=t.length,this.len+=i,h=this.k1,r=0,this.rem){case 0:h^=i>r?65535&t.charCodeAt(r++):0;case 1:h^=i>r?(65535&t.charCodeAt(r++))<<8:0;case 2:h^=i>r?(65535&t.charCodeAt(r++))<<16:0;case 3:h^=i>r?(255&t.charCodeAt(r))<<24:0,h^=i>r?(65280&t.charCodeAt(r++))>>8:0}if(this.rem=3&i+this.rem,i-=this.rem,i>0){for(e=this.h1;;){if(h=4294967295&11601*h+3432906752*(65535&h),h=h<<15|h>>>17,h=4294967295&13715*h+461832192*(65535&h),e^=h,e=e<<13|e>>>19,e=4294967295&5*e+3864292196,r>=i)break;h=65535&t.charCodeAt(r++)^(65535&t.charCodeAt(r++))<<8^(65535&t.charCodeAt(r++))<<16,s=t.charCodeAt(r++),h^=(255&s)<<24^(65280&s)>>8}switch(h=0,this.rem){case 3:h^=(65535&t.charCodeAt(r+2))<<16;case 2:h^=(65535&t.charCodeAt(r+1))<<8;case 1:h^=65535&t.charCodeAt(r)}this.h1=e}return this.k1=h,this},t.prototype.result=function(){var t,e;return t=this.k1,e=this.h1,t>0&&(t=4294967295&11601*t+3432906752*(65535&t),t=t<<15|t>>>17,t=4294967295&13715*t+461832192*(65535&t),e^=t),e^=this.len,e^=e>>>16,e=4294967295&51819*e+2246770688*(65535&e),e^=e>>>13,e=4294967295&44597*e+3266445312*(65535&e),e^=e>>>16,e>>>0},t.prototype.reset=function(t){return this.h1="number"==typeof t?t:0,this.rem=this.k1=this.len=0,this},e=new t,"undefined"!=typeof module?module.exports=t:this.MurmurHash3=t}(); \ No newline at end of file diff --git a/node_modules/imurmurhash/package.json b/node_modules/imurmurhash/package.json new file mode 100644 index 0000000..8a93edb --- /dev/null +++ b/node_modules/imurmurhash/package.json @@ -0,0 +1,40 @@ +{ + "name": "imurmurhash", + "version": "0.1.4", + "description": "An incremental implementation of MurmurHash3", + "homepage": "https://github.com/jensyt/imurmurhash-js", + "main": "imurmurhash.js", + "files": [ + "imurmurhash.js", + "imurmurhash.min.js", + "package.json", + "README.md" + ], + "repository": { + "type": "git", + "url": "https://github.com/jensyt/imurmurhash-js" + }, + "bugs": { + "url": "https://github.com/jensyt/imurmurhash-js/issues" + }, + "keywords": [ + "murmur", + "murmurhash", + "murmurhash3", + "hash", + "incremental" + ], + "author": { + "name": "Jens Taylor", + "email": "jensyt@gmail.com", + "url": "https://github.com/homebrewing" + }, + "license": "MIT", + "dependencies": { + }, + "devDependencies": { + }, + "engines": { + "node": ">=0.8.19" + } +} diff --git a/node_modules/indent-string/index.d.ts b/node_modules/indent-string/index.d.ts new file mode 100644 index 0000000..1185231 --- /dev/null +++ b/node_modules/indent-string/index.d.ts @@ -0,0 +1,42 @@ +declare namespace indentString { + interface Options { + /** + The string to use for the indent. + + @default ' ' + */ + readonly indent?: string; + + /** + Also indent empty lines. + + @default false + */ + readonly includeEmptyLines?: boolean; + } +} + +/** +Indent each line in a string. + +@param string - The string to indent. +@param count - How many times you want `options.indent` repeated. Default: `1`. + +@example +``` +import indentString = require('indent-string'); + +indentString('Unicorns\nRainbows', 4); +//=> ' Unicorns\n Rainbows' + +indentString('Unicorns\nRainbows', 4, {indent: '♥'}); +//=> '♥♥♥♥Unicorns\n♥♥♥♥Rainbows' +``` +*/ +declare function indentString( + string: string, + count?: number, + options?: indentString.Options +): string; + +export = indentString; diff --git a/node_modules/indent-string/index.js b/node_modules/indent-string/index.js new file mode 100644 index 0000000..e1ab804 --- /dev/null +++ b/node_modules/indent-string/index.js @@ -0,0 +1,35 @@ +'use strict'; + +module.exports = (string, count = 1, options) => { + options = { + indent: ' ', + includeEmptyLines: false, + ...options + }; + + if (typeof string !== 'string') { + throw new TypeError( + `Expected \`input\` to be a \`string\`, got \`${typeof string}\`` + ); + } + + if (typeof count !== 'number') { + throw new TypeError( + `Expected \`count\` to be a \`number\`, got \`${typeof count}\`` + ); + } + + if (typeof options.indent !== 'string') { + throw new TypeError( + `Expected \`options.indent\` to be a \`string\`, got \`${typeof options.indent}\`` + ); + } + + if (count === 0) { + return string; + } + + const regex = options.includeEmptyLines ? /^/gm : /^(?!\s*$)/gm; + + return string.replace(regex, options.indent.repeat(count)); +}; diff --git a/node_modules/indent-string/license b/node_modules/indent-string/license new file mode 100644 index 0000000..e7af2f7 --- /dev/null +++ b/node_modules/indent-string/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/indent-string/package.json b/node_modules/indent-string/package.json new file mode 100644 index 0000000..497bb83 --- /dev/null +++ b/node_modules/indent-string/package.json @@ -0,0 +1,37 @@ +{ + "name": "indent-string", + "version": "4.0.0", + "description": "Indent each line in a string", + "license": "MIT", + "repository": "sindresorhus/indent-string", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "indent", + "string", + "pad", + "align", + "line", + "text", + "each", + "every" + ], + "devDependencies": { + "ava": "^1.4.1", + "tsd": "^0.7.2", + "xo": "^0.24.0" + } +} diff --git a/node_modules/indent-string/readme.md b/node_modules/indent-string/readme.md new file mode 100644 index 0000000..49967de --- /dev/null +++ b/node_modules/indent-string/readme.md @@ -0,0 +1,70 @@ +# indent-string [![Build Status](https://travis-ci.org/sindresorhus/indent-string.svg?branch=master)](https://travis-ci.org/sindresorhus/indent-string) + +> Indent each line in a string + + +## Install + +``` +$ npm install indent-string +``` + + +## Usage + +```js +const indentString = require('indent-string'); + +indentString('Unicorns\nRainbows', 4); +//=> ' Unicorns\n Rainbows' + +indentString('Unicorns\nRainbows', 4, {indent: '♥'}); +//=> '♥♥♥♥Unicorns\n♥♥♥♥Rainbows' +``` + + +## API + +### indentString(string, [count], [options]) + +#### string + +Type: `string` + +The string to indent. + +#### count + +Type: `number`
+Default: `1` + +How many times you want `options.indent` repeated. + +#### options + +Type: `object` + +##### indent + +Type: `string`
+Default: `' '` + +The string to use for the indent. + +##### includeEmptyLines + +Type: `boolean`
+Default: `false` + +Also indent empty lines. + + +## Related + +- [indent-string-cli](https://github.com/sindresorhus/indent-string-cli) - CLI for this module +- [strip-indent](https://github.com/sindresorhus/strip-indent) - Strip leading whitespace from every line in a string + + +## License + +MIT © [Sindre Sorhus](https://sindresorhus.com) diff --git a/node_modules/infer-owner/LICENSE b/node_modules/infer-owner/LICENSE new file mode 100644 index 0000000..20a4762 --- /dev/null +++ b/node_modules/infer-owner/LICENSE @@ -0,0 +1,15 @@ +The ISC License + +Copyright (c) npm, Inc. and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. diff --git a/node_modules/infer-owner/README.md b/node_modules/infer-owner/README.md new file mode 100644 index 0000000..146caf7 --- /dev/null +++ b/node_modules/infer-owner/README.md @@ -0,0 +1,41 @@ +# infer-owner + +Infer the owner of a path based on the owner of its nearest existing parent + +## USAGE + +```js +const inferOwner = require('infer-owner') + +inferOwner('/some/cache/folder/file').then(owner => { + // owner is {uid, gid} that should be attached to + // the /some/cache/folder/file, based on ownership + // of /some/cache/folder, /some/cache, /some, or /, + // whichever is the first to exist +}) + +// same, but not async +const owner = inferOwner.sync('/some/cache/folder/file') + +// results are cached! to reset the cache (eg, to change +// permissions for whatever reason), do this: +inferOwner.clearCache() +``` + +This module endeavors to be as performant as possible. Parallel requests +for ownership of the same path will only stat the directories one time. + +## API + +* `inferOwner(path) -> Promise<{ uid, gid }>` + + If the path exists, return its uid and gid. If it does not, look to + its parent, then its grandparent, and so on. + +* `inferOwner(path) -> { uid, gid }` + + Sync form of `inferOwner(path)`. + +* `inferOwner.clearCache()` + + Delete all cached ownership information and in-flight tracking. diff --git a/node_modules/infer-owner/index.js b/node_modules/infer-owner/index.js new file mode 100644 index 0000000..a7bddcb --- /dev/null +++ b/node_modules/infer-owner/index.js @@ -0,0 +1,71 @@ +const cache = new Map() +const fs = require('fs') +const { dirname, resolve } = require('path') + + +const lstat = path => new Promise((res, rej) => + fs.lstat(path, (er, st) => er ? rej(er) : res(st))) + +const inferOwner = path => { + path = resolve(path) + if (cache.has(path)) + return Promise.resolve(cache.get(path)) + + const statThen = st => { + const { uid, gid } = st + cache.set(path, { uid, gid }) + return { uid, gid } + } + const parent = dirname(path) + const parentTrap = parent === path ? null : er => { + return inferOwner(parent).then((owner) => { + cache.set(path, owner) + return owner + }) + } + return lstat(path).then(statThen, parentTrap) +} + +const inferOwnerSync = path => { + path = resolve(path) + if (cache.has(path)) + return cache.get(path) + + const parent = dirname(path) + + // avoid obscuring call site by re-throwing + // "catch" the error by returning from a finally, + // only if we're not at the root, and the parent call works. + let threw = true + try { + const st = fs.lstatSync(path) + threw = false + const { uid, gid } = st + cache.set(path, { uid, gid }) + return { uid, gid } + } finally { + if (threw && parent !== path) { + const owner = inferOwnerSync(parent) + cache.set(path, owner) + return owner // eslint-disable-line no-unsafe-finally + } + } +} + +const inflight = new Map() +module.exports = path => { + path = resolve(path) + if (inflight.has(path)) + return Promise.resolve(inflight.get(path)) + const p = inferOwner(path).then(owner => { + inflight.delete(path) + return owner + }) + inflight.set(path, p) + return p +} +module.exports.sync = inferOwnerSync +module.exports.clearCache = () => { + cache.clear() + inflight.clear() +} diff --git a/node_modules/infer-owner/package.json b/node_modules/infer-owner/package.json new file mode 100644 index 0000000..c4b2b6e --- /dev/null +++ b/node_modules/infer-owner/package.json @@ -0,0 +1,26 @@ +{ + "name": "infer-owner", + "version": "1.0.4", + "description": "Infer the owner of a path based on the owner of its nearest existing parent", + "author": "Isaac Z. Schlueter (https://izs.me)", + "license": "ISC", + "scripts": { + "test": "tap -J test/*.js --100", + "snap": "TAP_SNAPSHOT=1 tap -J test/*.js --100", + "preversion": "npm test", + "postversion": "npm publish", + "postpublish": "git push origin --follow-tags" + }, + "devDependencies": { + "mutate-fs": "^2.1.1", + "tap": "^12.4.2" + }, + "main": "index.js", + "repository": "https://github.com/npm/infer-owner", + "publishConfig": { + "access": "public" + }, + "files": [ + "index.js" + ] +} diff --git a/node_modules/inflight/LICENSE b/node_modules/inflight/LICENSE new file mode 100644 index 0000000..05eeeb8 --- /dev/null +++ b/node_modules/inflight/LICENSE @@ -0,0 +1,15 @@ +The ISC License + +Copyright (c) Isaac Z. Schlueter + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. diff --git a/node_modules/inflight/README.md b/node_modules/inflight/README.md new file mode 100644 index 0000000..6dc8929 --- /dev/null +++ b/node_modules/inflight/README.md @@ -0,0 +1,37 @@ +# inflight + +Add callbacks to requests in flight to avoid async duplication + +## USAGE + +```javascript +var inflight = require('inflight') + +// some request that does some stuff +function req(key, callback) { + // key is any random string. like a url or filename or whatever. + // + // will return either a falsey value, indicating that the + // request for this key is already in flight, or a new callback + // which when called will call all callbacks passed to inflightk + // with the same key + callback = inflight(key, callback) + + // If we got a falsey value back, then there's already a req going + if (!callback) return + + // this is where you'd fetch the url or whatever + // callback is also once()-ified, so it can safely be assigned + // to multiple events etc. First call wins. + setTimeout(function() { + callback(null, key) + }, 100) +} + +// only assigns a single setTimeout +// when it dings, all cbs get called +req('foo', cb1) +req('foo', cb2) +req('foo', cb3) +req('foo', cb4) +``` diff --git a/node_modules/inflight/inflight.js b/node_modules/inflight/inflight.js new file mode 100644 index 0000000..48202b3 --- /dev/null +++ b/node_modules/inflight/inflight.js @@ -0,0 +1,54 @@ +var wrappy = require('wrappy') +var reqs = Object.create(null) +var once = require('once') + +module.exports = wrappy(inflight) + +function inflight (key, cb) { + if (reqs[key]) { + reqs[key].push(cb) + return null + } else { + reqs[key] = [cb] + return makeres(key) + } +} + +function makeres (key) { + return once(function RES () { + var cbs = reqs[key] + var len = cbs.length + var args = slice(arguments) + + // XXX It's somewhat ambiguous whether a new callback added in this + // pass should be queued for later execution if something in the + // list of callbacks throws, or if it should just be discarded. + // However, it's such an edge case that it hardly matters, and either + // choice is likely as surprising as the other. + // As it happens, we do go ahead and schedule it for later execution. + try { + for (var i = 0; i < len; i++) { + cbs[i].apply(null, args) + } + } finally { + if (cbs.length > len) { + // added more in the interim. + // de-zalgo, just in case, but don't call again. + cbs.splice(0, len) + process.nextTick(function () { + RES.apply(null, args) + }) + } else { + delete reqs[key] + } + } + }) +} + +function slice (args) { + var length = args.length + var array = [] + + for (var i = 0; i < length; i++) array[i] = args[i] + return array +} diff --git a/node_modules/inflight/package.json b/node_modules/inflight/package.json new file mode 100644 index 0000000..6084d35 --- /dev/null +++ b/node_modules/inflight/package.json @@ -0,0 +1,29 @@ +{ + "name": "inflight", + "version": "1.0.6", + "description": "Add callbacks to requests in flight to avoid async duplication", + "main": "inflight.js", + "files": [ + "inflight.js" + ], + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + }, + "devDependencies": { + "tap": "^7.1.2" + }, + "scripts": { + "test": "tap test.js --100" + }, + "repository": { + "type": "git", + "url": "https://github.com/npm/inflight.git" + }, + "author": "Isaac Z. Schlueter (http://blog.izs.me/)", + "bugs": { + "url": "https://github.com/isaacs/inflight/issues" + }, + "homepage": "https://github.com/isaacs/inflight", + "license": "ISC" +} diff --git a/node_modules/inherits/LICENSE b/node_modules/inherits/LICENSE new file mode 100644 index 0000000..dea3013 --- /dev/null +++ b/node_modules/inherits/LICENSE @@ -0,0 +1,16 @@ +The ISC License + +Copyright (c) Isaac Z. Schlueter + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH +REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, +INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM +LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR +OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THIS SOFTWARE. + diff --git a/node_modules/inherits/README.md b/node_modules/inherits/README.md new file mode 100644 index 0000000..b1c5665 --- /dev/null +++ b/node_modules/inherits/README.md @@ -0,0 +1,42 @@ +Browser-friendly inheritance fully compatible with standard node.js +[inherits](http://nodejs.org/api/util.html#util_util_inherits_constructor_superconstructor). + +This package exports standard `inherits` from node.js `util` module in +node environment, but also provides alternative browser-friendly +implementation through [browser +field](https://gist.github.com/shtylman/4339901). Alternative +implementation is a literal copy of standard one located in standalone +module to avoid requiring of `util`. It also has a shim for old +browsers with no `Object.create` support. + +While keeping you sure you are using standard `inherits` +implementation in node.js environment, it allows bundlers such as +[browserify](https://github.com/substack/node-browserify) to not +include full `util` package to your client code if all you need is +just `inherits` function. It worth, because browser shim for `util` +package is large and `inherits` is often the single function you need +from it. + +It's recommended to use this package instead of +`require('util').inherits` for any code that has chances to be used +not only in node.js but in browser too. + +## usage + +```js +var inherits = require('inherits'); +// then use exactly as the standard one +``` + +## note on version ~1.0 + +Version ~1.0 had completely different motivation and is not compatible +neither with 2.0 nor with standard node.js `inherits`. + +If you are using version ~1.0 and planning to switch to ~2.0, be +careful: + +* new version uses `super_` instead of `super` for referencing + superclass +* new version overwrites current prototype while old one preserves any + existing fields on it diff --git a/node_modules/inherits/inherits.js b/node_modules/inherits/inherits.js new file mode 100644 index 0000000..f71f2d9 --- /dev/null +++ b/node_modules/inherits/inherits.js @@ -0,0 +1,9 @@ +try { + var util = require('util'); + /* istanbul ignore next */ + if (typeof util.inherits !== 'function') throw ''; + module.exports = util.inherits; +} catch (e) { + /* istanbul ignore next */ + module.exports = require('./inherits_browser.js'); +} diff --git a/node_modules/inherits/inherits_browser.js b/node_modules/inherits/inherits_browser.js new file mode 100644 index 0000000..86bbb3d --- /dev/null +++ b/node_modules/inherits/inherits_browser.js @@ -0,0 +1,27 @@ +if (typeof Object.create === 'function') { + // implementation from standard node.js 'util' module + module.exports = function inherits(ctor, superCtor) { + if (superCtor) { + ctor.super_ = superCtor + ctor.prototype = Object.create(superCtor.prototype, { + constructor: { + value: ctor, + enumerable: false, + writable: true, + configurable: true + } + }) + } + }; +} else { + // old school shim for old browsers + module.exports = function inherits(ctor, superCtor) { + if (superCtor) { + ctor.super_ = superCtor + var TempCtor = function () {} + TempCtor.prototype = superCtor.prototype + ctor.prototype = new TempCtor() + ctor.prototype.constructor = ctor + } + } +} diff --git a/node_modules/inherits/package.json b/node_modules/inherits/package.json new file mode 100644 index 0000000..37b4366 --- /dev/null +++ b/node_modules/inherits/package.json @@ -0,0 +1,29 @@ +{ + "name": "inherits", + "description": "Browser-friendly inheritance fully compatible with standard node.js inherits()", + "version": "2.0.4", + "keywords": [ + "inheritance", + "class", + "klass", + "oop", + "object-oriented", + "inherits", + "browser", + "browserify" + ], + "main": "./inherits.js", + "browser": "./inherits_browser.js", + "repository": "git://github.com/isaacs/inherits", + "license": "ISC", + "scripts": { + "test": "tap" + }, + "devDependencies": { + "tap": "^14.2.4" + }, + "files": [ + "inherits.js", + "inherits_browser.js" + ] +} diff --git a/node_modules/ini/LICENSE b/node_modules/ini/LICENSE new file mode 100644 index 0000000..19129e3 --- /dev/null +++ b/node_modules/ini/LICENSE @@ -0,0 +1,15 @@ +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. diff --git a/node_modules/ini/README.md b/node_modules/ini/README.md new file mode 100644 index 0000000..33df258 --- /dev/null +++ b/node_modules/ini/README.md @@ -0,0 +1,102 @@ +An ini format parser and serializer for node. + +Sections are treated as nested objects. Items before the first +heading are saved on the object directly. + +## Usage + +Consider an ini-file `config.ini` that looks like this: + + ; this comment is being ignored + scope = global + + [database] + user = dbuser + password = dbpassword + database = use_this_database + + [paths.default] + datadir = /var/lib/data + array[] = first value + array[] = second value + array[] = third value + +You can read, manipulate and write the ini-file like so: + + var fs = require('fs') + , ini = require('ini') + + var config = ini.parse(fs.readFileSync('./config.ini', 'utf-8')) + + config.scope = 'local' + config.database.database = 'use_another_database' + config.paths.default.tmpdir = '/tmp' + delete config.paths.default.datadir + config.paths.default.array.push('fourth value') + + fs.writeFileSync('./config_modified.ini', ini.stringify(config, { section: 'section' })) + +This will result in a file called `config_modified.ini` being written +to the filesystem with the following content: + + [section] + scope=local + [section.database] + user=dbuser + password=dbpassword + database=use_another_database + [section.paths.default] + tmpdir=/tmp + array[]=first value + array[]=second value + array[]=third value + array[]=fourth value + + +## API + +### decode(inistring) + +Decode the ini-style formatted `inistring` into a nested object. + +### parse(inistring) + +Alias for `decode(inistring)` + +### encode(object, [options]) + +Encode the object `object` into an ini-style formatted string. If the +optional parameter `section` is given, then all top-level properties +of the object are put into this section and the `section`-string is +prepended to all sub-sections, see the usage example above. + +The `options` object may contain the following: + +* `section` A string which will be the first `section` in the encoded + ini data. Defaults to none. +* `whitespace` Boolean to specify whether to put whitespace around the + `=` character. By default, whitespace is omitted, to be friendly to + some persnickety old parsers that don't tolerate it well. But some + find that it's more human-readable and pretty with the whitespace. + +For backwards compatibility reasons, if a `string` options is passed +in, then it is assumed to be the `section` value. + +### stringify(object, [options]) + +Alias for `encode(object, [options])` + +### safe(val) + +Escapes the string `val` such that it is safe to be used as a key or +value in an ini-file. Basically escapes quotes. For example + + ini.safe('"unsafe string"') + +would result in + + "\"unsafe string\"" + +### unsafe(val) + +Unescapes the string `val` diff --git a/node_modules/ini/ini.js b/node_modules/ini/ini.js new file mode 100644 index 0000000..7d05a71 --- /dev/null +++ b/node_modules/ini/ini.js @@ -0,0 +1,206 @@ +const { hasOwnProperty } = Object.prototype + +const eol = typeof process !== 'undefined' && + process.platform === 'win32' ? '\r\n' : '\n' + +const encode = (obj, opt) => { + const children = [] + let out = '' + + if (typeof opt === 'string') { + opt = { + section: opt, + whitespace: false, + } + } else { + opt = opt || Object.create(null) + opt.whitespace = opt.whitespace === true + } + + const separator = opt.whitespace ? ' = ' : '=' + + for (const k of Object.keys(obj)) { + const val = obj[k] + if (val && Array.isArray(val)) { + for (const item of val) + out += safe(k + '[]') + separator + safe(item) + '\n' + } else if (val && typeof val === 'object') + children.push(k) + else + out += safe(k) + separator + safe(val) + eol + } + + if (opt.section && out.length) + out = '[' + safe(opt.section) + ']' + eol + out + + for (const k of children) { + const nk = dotSplit(k).join('\\.') + const section = (opt.section ? opt.section + '.' : '') + nk + const { whitespace } = opt + const child = encode(obj[k], { + section, + whitespace, + }) + if (out.length && child.length) + out += eol + + out += child + } + + return out +} + +const dotSplit = str => + str.replace(/\1/g, '\u0002LITERAL\\1LITERAL\u0002') + .replace(/\\\./g, '\u0001') + .split(/\./) + .map(part => + part.replace(/\1/g, '\\.') + .replace(/\2LITERAL\\1LITERAL\2/g, '\u0001')) + +const decode = str => { + const out = Object.create(null) + let p = out + let section = null + // section |key = value + const re = /^\[([^\]]*)\]$|^([^=]+)(=(.*))?$/i + const lines = str.split(/[\r\n]+/g) + + for (const line of lines) { + if (!line || line.match(/^\s*[;#]/)) + continue + const match = line.match(re) + if (!match) + continue + if (match[1] !== undefined) { + section = unsafe(match[1]) + if (section === '__proto__') { + // not allowed + // keep parsing the section, but don't attach it. + p = Object.create(null) + continue + } + p = out[section] = out[section] || Object.create(null) + continue + } + const keyRaw = unsafe(match[2]) + const isArray = keyRaw.length > 2 && keyRaw.slice(-2) === '[]' + const key = isArray ? keyRaw.slice(0, -2) : keyRaw + if (key === '__proto__') + continue + const valueRaw = match[3] ? unsafe(match[4]) : true + const value = valueRaw === 'true' || + valueRaw === 'false' || + valueRaw === 'null' ? JSON.parse(valueRaw) + : valueRaw + + // Convert keys with '[]' suffix to an array + if (isArray) { + if (!hasOwnProperty.call(p, key)) + p[key] = [] + else if (!Array.isArray(p[key])) + p[key] = [p[key]] + } + + // safeguard against resetting a previously defined + // array by accidentally forgetting the brackets + if (Array.isArray(p[key])) + p[key].push(value) + else + p[key] = value + } + + // {a:{y:1},"a.b":{x:2}} --> {a:{y:1,b:{x:2}}} + // use a filter to return the keys that have to be deleted. + const remove = [] + for (const k of Object.keys(out)) { + if (!hasOwnProperty.call(out, k) || + typeof out[k] !== 'object' || + Array.isArray(out[k])) + continue + + // see if the parent section is also an object. + // if so, add it to that, and mark this one for deletion + const parts = dotSplit(k) + let p = out + const l = parts.pop() + const nl = l.replace(/\\\./g, '.') + for (const part of parts) { + if (part === '__proto__') + continue + if (!hasOwnProperty.call(p, part) || typeof p[part] !== 'object') + p[part] = Object.create(null) + p = p[part] + } + if (p === out && nl === l) + continue + + p[nl] = out[k] + remove.push(k) + } + for (const del of remove) + delete out[del] + + return out +} + +const isQuoted = val => + (val.charAt(0) === '"' && val.slice(-1) === '"') || + (val.charAt(0) === "'" && val.slice(-1) === "'") + +const safe = val => + (typeof val !== 'string' || + val.match(/[=\r\n]/) || + val.match(/^\[/) || + (val.length > 1 && + isQuoted(val)) || + val !== val.trim()) + ? JSON.stringify(val) + : val.replace(/;/g, '\\;').replace(/#/g, '\\#') + +const unsafe = (val, doUnesc) => { + val = (val || '').trim() + if (isQuoted(val)) { + // remove the single quotes before calling JSON.parse + if (val.charAt(0) === "'") + val = val.substr(1, val.length - 2) + + try { + val = JSON.parse(val) + } catch (_) {} + } else { + // walk the val to find the first not-escaped ; character + let esc = false + let unesc = '' + for (let i = 0, l = val.length; i < l; i++) { + const c = val.charAt(i) + if (esc) { + if ('\\;#'.indexOf(c) !== -1) + unesc += c + else + unesc += '\\' + c + + esc = false + } else if (';#'.indexOf(c) !== -1) + break + else if (c === '\\') + esc = true + else + unesc += c + } + if (esc) + unesc += '\\' + + return unesc.trim() + } + return val +} + +module.exports = { + parse: decode, + decode, + stringify: encode, + encode, + safe, + unsafe, +} diff --git a/node_modules/ini/package.json b/node_modules/ini/package.json new file mode 100644 index 0000000..59b7d5d --- /dev/null +++ b/node_modules/ini/package.json @@ -0,0 +1,36 @@ +{ + "author": "Isaac Z. Schlueter (http://blog.izs.me/)", + "name": "ini", + "description": "An ini encoder/decoder for node", + "version": "2.0.0", + "repository": { + "type": "git", + "url": "git://github.com/isaacs/ini.git" + }, + "main": "ini.js", + "scripts": { + "eslint": "eslint", + "lint": "npm run eslint -- ini.js test/*.js", + "lintfix": "npm run lint -- --fix", + "test": "tap", + "posttest": "npm run lint", + "preversion": "npm test", + "postversion": "npm publish", + "prepublishOnly": "git push origin --follow-tags" + }, + "devDependencies": { + "eslint": "^7.9.0", + "eslint-plugin-import": "^2.22.0", + "eslint-plugin-node": "^11.1.0", + "eslint-plugin-promise": "^4.2.1", + "eslint-plugin-standard": "^4.0.1", + "tap": "14" + }, + "license": "ISC", + "files": [ + "ini.js" + ], + "engines": { + "node": ">=10" + } +} diff --git a/node_modules/ip/README.md b/node_modules/ip/README.md new file mode 100644 index 0000000..22e5819 --- /dev/null +++ b/node_modules/ip/README.md @@ -0,0 +1,90 @@ +# IP +[![](https://badge.fury.io/js/ip.svg)](https://www.npmjs.com/package/ip) + +IP address utilities for node.js + +## Installation + +### npm +```shell +npm install ip +``` + +### git + +```shell +git clone https://github.com/indutny/node-ip.git +``` + +## Usage +Get your ip address, compare ip addresses, validate ip addresses, etc. + +```js +var ip = require('ip'); + +ip.address() // my ip address +ip.isEqual('::1', '::0:1'); // true +ip.toBuffer('127.0.0.1') // Buffer([127, 0, 0, 1]) +ip.toString(new Buffer([127, 0, 0, 1])) // 127.0.0.1 +ip.fromPrefixLen(24) // 255.255.255.0 +ip.mask('192.168.1.134', '255.255.255.0') // 192.168.1.0 +ip.cidr('192.168.1.134/26') // 192.168.1.128 +ip.not('255.255.255.0') // 0.0.0.255 +ip.or('192.168.1.134', '0.0.0.255') // 192.168.1.255 +ip.isPrivate('127.0.0.1') // true +ip.isV4Format('127.0.0.1'); // true +ip.isV6Format('::ffff:127.0.0.1'); // true + +// operate on buffers in-place +var buf = new Buffer(128); +var offset = 64; +ip.toBuffer('127.0.0.1', buf, offset); // [127, 0, 0, 1] at offset 64 +ip.toString(buf, offset, 4); // '127.0.0.1' + +// subnet information +ip.subnet('192.168.1.134', '255.255.255.192') +// { networkAddress: '192.168.1.128', +// firstAddress: '192.168.1.129', +// lastAddress: '192.168.1.190', +// broadcastAddress: '192.168.1.191', +// subnetMask: '255.255.255.192', +// subnetMaskLength: 26, +// numHosts: 62, +// length: 64, +// contains: function(addr){...} } +ip.cidrSubnet('192.168.1.134/26') +// Same as previous. + +// range checking +ip.cidrSubnet('192.168.1.134/26').contains('192.168.1.190') // true + + +// ipv4 long conversion +ip.toLong('127.0.0.1'); // 2130706433 +ip.fromLong(2130706433); // '127.0.0.1' +``` + +### License + +This software is licensed under the MIT License. + +Copyright Fedor Indutny, 2012. + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to permit +persons to whom the Software is furnished to do so, subject to the +following conditions: + +The above copyright notice and this permission notice shall be included +in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN +NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE +USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/ip/lib/ip.js b/node_modules/ip/lib/ip.js new file mode 100644 index 0000000..5b5ccc2 --- /dev/null +++ b/node_modules/ip/lib/ip.js @@ -0,0 +1,427 @@ +var ip = exports; +var { Buffer } = require('buffer'); +var os = require('os'); + +ip.toBuffer = function (ip, buff, offset) { + offset = ~~offset; + + var result; + + if (this.isV4Format(ip)) { + result = buff || new Buffer(offset + 4); + ip.split(/\./g).map((byte) => { + result[offset++] = parseInt(byte, 10) & 0xff; + }); + } else if (this.isV6Format(ip)) { + var sections = ip.split(':', 8); + + var i; + for (i = 0; i < sections.length; i++) { + var isv4 = this.isV4Format(sections[i]); + var v4Buffer; + + if (isv4) { + v4Buffer = this.toBuffer(sections[i]); + sections[i] = v4Buffer.slice(0, 2).toString('hex'); + } + + if (v4Buffer && ++i < 8) { + sections.splice(i, 0, v4Buffer.slice(2, 4).toString('hex')); + } + } + + if (sections[0] === '') { + while (sections.length < 8) sections.unshift('0'); + } else if (sections[sections.length - 1] === '') { + while (sections.length < 8) sections.push('0'); + } else if (sections.length < 8) { + for (i = 0; i < sections.length && sections[i] !== ''; i++); + var argv = [i, 1]; + for (i = 9 - sections.length; i > 0; i--) { + argv.push('0'); + } + sections.splice.apply(sections, argv); + } + + result = buff || new Buffer(offset + 16); + for (i = 0; i < sections.length; i++) { + var word = parseInt(sections[i], 16); + result[offset++] = (word >> 8) & 0xff; + result[offset++] = word & 0xff; + } + } + + if (!result) { + throw Error(`Invalid ip address: ${ip}`); + } + + return result; +}; + +ip.toString = function (buff, offset, length) { + offset = ~~offset; + length = length || (buff.length - offset); + + var result = []; + var i; + if (length === 4) { + // IPv4 + for (i = 0; i < length; i++) { + result.push(buff[offset + i]); + } + result = result.join('.'); + } else if (length === 16) { + // IPv6 + for (i = 0; i < length; i += 2) { + result.push(buff.readUInt16BE(offset + i).toString(16)); + } + result = result.join(':'); + result = result.replace(/(^|:)0(:0)*:0(:|$)/, '$1::$3'); + result = result.replace(/:{3,4}/, '::'); + } + + return result; +}; + +var ipv4Regex = /^(\d{1,3}\.){3,3}\d{1,3}$/; +var ipv6Regex = /^(::)?(((\d{1,3}\.){3}(\d{1,3}){1})?([0-9a-f]){0,4}:{0,2}){1,8}(::)?$/i; + +ip.isV4Format = function (ip) { + return ipv4Regex.test(ip); +}; + +ip.isV6Format = function (ip) { + return ipv6Regex.test(ip); +}; + +function _normalizeFamily(family) { + if (family === 4) { + return 'ipv4'; + } + if (family === 6) { + return 'ipv6'; + } + return family ? family.toLowerCase() : 'ipv4'; +} + +ip.fromPrefixLen = function (prefixlen, family) { + if (prefixlen > 32) { + family = 'ipv6'; + } else { + family = _normalizeFamily(family); + } + + var len = 4; + if (family === 'ipv6') { + len = 16; + } + var buff = new Buffer(len); + + for (var i = 0, n = buff.length; i < n; ++i) { + var bits = 8; + if (prefixlen < 8) { + bits = prefixlen; + } + prefixlen -= bits; + + buff[i] = ~(0xff >> bits) & 0xff; + } + + return ip.toString(buff); +}; + +ip.mask = function (addr, mask) { + addr = ip.toBuffer(addr); + mask = ip.toBuffer(mask); + + var result = new Buffer(Math.max(addr.length, mask.length)); + + // Same protocol - do bitwise and + var i; + if (addr.length === mask.length) { + for (i = 0; i < addr.length; i++) { + result[i] = addr[i] & mask[i]; + } + } else if (mask.length === 4) { + // IPv6 address and IPv4 mask + // (Mask low bits) + for (i = 0; i < mask.length; i++) { + result[i] = addr[addr.length - 4 + i] & mask[i]; + } + } else { + // IPv6 mask and IPv4 addr + for (i = 0; i < result.length - 6; i++) { + result[i] = 0; + } + + // ::ffff:ipv4 + result[10] = 0xff; + result[11] = 0xff; + for (i = 0; i < addr.length; i++) { + result[i + 12] = addr[i] & mask[i + 12]; + } + i += 12; + } + for (; i < result.length; i++) { + result[i] = 0; + } + + return ip.toString(result); +}; + +ip.cidr = function (cidrString) { + var cidrParts = cidrString.split('/'); + + var addr = cidrParts[0]; + if (cidrParts.length !== 2) { + throw new Error(`invalid CIDR subnet: ${addr}`); + } + + var mask = ip.fromPrefixLen(parseInt(cidrParts[1], 10)); + + return ip.mask(addr, mask); +}; + +ip.subnet = function (addr, mask) { + var networkAddress = ip.toLong(ip.mask(addr, mask)); + + // Calculate the mask's length. + var maskBuffer = ip.toBuffer(mask); + var maskLength = 0; + + for (var i = 0; i < maskBuffer.length; i++) { + if (maskBuffer[i] === 0xff) { + maskLength += 8; + } else { + var octet = maskBuffer[i] & 0xff; + while (octet) { + octet = (octet << 1) & 0xff; + maskLength++; + } + } + } + + var numberOfAddresses = Math.pow(2, 32 - maskLength); + + return { + networkAddress: ip.fromLong(networkAddress), + firstAddress: numberOfAddresses <= 2 + ? ip.fromLong(networkAddress) + : ip.fromLong(networkAddress + 1), + lastAddress: numberOfAddresses <= 2 + ? ip.fromLong(networkAddress + numberOfAddresses - 1) + : ip.fromLong(networkAddress + numberOfAddresses - 2), + broadcastAddress: ip.fromLong(networkAddress + numberOfAddresses - 1), + subnetMask: mask, + subnetMaskLength: maskLength, + numHosts: numberOfAddresses <= 2 + ? numberOfAddresses : numberOfAddresses - 2, + length: numberOfAddresses, + contains(other) { + return networkAddress === ip.toLong(ip.mask(other, mask)); + }, + }; +}; + +ip.cidrSubnet = function (cidrString) { + var cidrParts = cidrString.split('/'); + + var addr = cidrParts[0]; + if (cidrParts.length !== 2) { + throw new Error(`invalid CIDR subnet: ${addr}`); + } + + var mask = ip.fromPrefixLen(parseInt(cidrParts[1], 10)); + + return ip.subnet(addr, mask); +}; + +ip.not = function (addr) { + var buff = ip.toBuffer(addr); + for (var i = 0; i < buff.length; i++) { + buff[i] = 0xff ^ buff[i]; + } + return ip.toString(buff); +}; + +ip.or = function (a, b) { + var i; + + a = ip.toBuffer(a); + b = ip.toBuffer(b); + + // same protocol + if (a.length === b.length) { + for (i = 0; i < a.length; ++i) { + a[i] |= b[i]; + } + return ip.toString(a); + + // mixed protocols + } + var buff = a; + var other = b; + if (b.length > a.length) { + buff = b; + other = a; + } + + var offset = buff.length - other.length; + for (i = offset; i < buff.length; ++i) { + buff[i] |= other[i - offset]; + } + + return ip.toString(buff); +}; + +ip.isEqual = function (a, b) { + var i; + + a = ip.toBuffer(a); + b = ip.toBuffer(b); + + // Same protocol + if (a.length === b.length) { + for (i = 0; i < a.length; i++) { + if (a[i] !== b[i]) return false; + } + return true; + } + + // Swap + if (b.length === 4) { + var t = b; + b = a; + a = t; + } + + // a - IPv4, b - IPv6 + for (i = 0; i < 10; i++) { + if (b[i] !== 0) return false; + } + + var word = b.readUInt16BE(10); + if (word !== 0 && word !== 0xffff) return false; + + for (i = 0; i < 4; i++) { + if (a[i] !== b[i + 12]) return false; + } + + return true; +}; + +ip.isPrivate = function (addr) { + return /^(::f{4}:)?10\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})$/i + .test(addr) + || /^(::f{4}:)?192\.168\.([0-9]{1,3})\.([0-9]{1,3})$/i.test(addr) + || /^(::f{4}:)?172\.(1[6-9]|2\d|30|31)\.([0-9]{1,3})\.([0-9]{1,3})$/i + .test(addr) + || /^(::f{4}:)?127\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})$/i.test(addr) + || /^(::f{4}:)?169\.254\.([0-9]{1,3})\.([0-9]{1,3})$/i.test(addr) + || /^f[cd][0-9a-f]{2}:/i.test(addr) + || /^fe80:/i.test(addr) + || /^::1$/.test(addr) + || /^::$/.test(addr); +}; + +ip.isPublic = function (addr) { + return !ip.isPrivate(addr); +}; + +ip.isLoopback = function (addr) { + return /^(::f{4}:)?127\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})/ + .test(addr) + || /^fe80::1$/.test(addr) + || /^::1$/.test(addr) + || /^::$/.test(addr); +}; + +ip.loopback = function (family) { + // + // Default to `ipv4` + // + family = _normalizeFamily(family); + + if (family !== 'ipv4' && family !== 'ipv6') { + throw new Error('family must be ipv4 or ipv6'); + } + + return family === 'ipv4' ? '127.0.0.1' : 'fe80::1'; +}; + +// +// ### function address (name, family) +// #### @name {string|'public'|'private'} **Optional** Name or security +// of the network interface. +// #### @family {ipv4|ipv6} **Optional** IP family of the address (defaults +// to ipv4). +// +// Returns the address for the network interface on the current system with +// the specified `name`: +// * String: First `family` address of the interface. +// If not found see `undefined`. +// * 'public': the first public ip address of family. +// * 'private': the first private ip address of family. +// * undefined: First address with `ipv4` or loopback address `127.0.0.1`. +// +ip.address = function (name, family) { + var interfaces = os.networkInterfaces(); + + // + // Default to `ipv4` + // + family = _normalizeFamily(family); + + // + // If a specific network interface has been named, + // return the address. + // + if (name && name !== 'private' && name !== 'public') { + var res = interfaces[name].filter((details) => { + var itemFamily = _normalizeFamily(details.family); + return itemFamily === family; + }); + if (res.length === 0) { + return undefined; + } + return res[0].address; + } + + var all = Object.keys(interfaces).map((nic) => { + // + // Note: name will only be `public` or `private` + // when this is called. + // + var addresses = interfaces[nic].filter((details) => { + details.family = _normalizeFamily(details.family); + if (details.family !== family || ip.isLoopback(details.address)) { + return false; + } if (!name) { + return true; + } + + return name === 'public' ? ip.isPrivate(details.address) + : ip.isPublic(details.address); + }); + + return addresses.length ? addresses[0].address : undefined; + }).filter(Boolean); + + return !all.length ? ip.loopback(family) : all[0]; +}; + +ip.toLong = function (ip) { + var ipl = 0; + ip.split('.').forEach((octet) => { + ipl <<= 8; + ipl += parseInt(octet); + }); + return (ipl >>> 0); +}; + +ip.fromLong = function (ipl) { + return (`${ipl >>> 24}.${ + ipl >> 16 & 255}.${ + ipl >> 8 & 255}.${ + ipl & 255}`); +}; diff --git a/node_modules/ip/package.json b/node_modules/ip/package.json new file mode 100644 index 0000000..70e1a4f --- /dev/null +++ b/node_modules/ip/package.json @@ -0,0 +1,25 @@ +{ + "name": "ip", + "version": "1.1.8", + "author": "Fedor Indutny ", + "homepage": "https://github.com/indutny/node-ip", + "repository": { + "type": "git", + "url": "http://github.com/indutny/node-ip.git" + }, + "files": [ + "lib", + "README.md" + ], + "main": "lib/ip", + "devDependencies": { + "eslint": "^8.15.0", + "mocha": "^10.0.0" + }, + "scripts": { + "lint": "eslint lib/*.js test/*.js", + "test": "npm run lint && mocha --reporter spec test/*-test.js", + "fix": "npm run lint -- --fix" + }, + "license": "MIT" +} diff --git a/node_modules/is-ci/CHANGELOG.md b/node_modules/is-ci/CHANGELOG.md new file mode 100644 index 0000000..c519277 --- /dev/null +++ b/node_modules/is-ci/CHANGELOG.md @@ -0,0 +1,14 @@ +# Changelog + +## v2.0.0 + +Breaking changes: + +* Drop support for Node.js end-of-life versions: 0.10, 0.12, 4, 5, 7, + and 9 + +Other changes: + +See [ci-info +changelog](https://github.com/watson/ci-info/blob/master/CHANGELOG.md#v200) +for a list of newly supported CI servers. diff --git a/node_modules/is-ci/LICENSE b/node_modules/is-ci/LICENSE new file mode 100644 index 0000000..6784683 --- /dev/null +++ b/node_modules/is-ci/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2016-2018 Thomas Watson Steen + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/node_modules/is-ci/README.md b/node_modules/is-ci/README.md new file mode 100644 index 0000000..bc3840a --- /dev/null +++ b/node_modules/is-ci/README.md @@ -0,0 +1,50 @@ +# is-ci + +Returns `true` if the current environment is a Continuous Integration +server. + +Please [open an issue](https://github.com/watson/is-ci/issues) if your +CI server isn't properly detected :) + +[![npm](https://img.shields.io/npm/v/is-ci.svg)](https://www.npmjs.com/package/is-ci) +[![Build status](https://travis-ci.org/watson/is-ci.svg?branch=master)](https://travis-ci.org/watson/is-ci) +[![js-standard-style](https://img.shields.io/badge/code%20style-standard-brightgreen.svg?style=flat)](https://github.com/feross/standard) + +## Installation + +```bash +npm install is-ci --save +``` + +## Programmatic Usage + +```js +const isCI = require('is-ci') + +if (isCI) { + console.log('The code is running on a CI server') +} +``` + +## CLI Usage + +For CLI usage you need to have the `is-ci` executable in your `PATH`. +There's a few ways to do that: + +- Either install the module globally using `npm install is-ci -g` +- Or add the module as a dependency to your app in which case it can be + used inside your package.json scripts as is +- Or provide the full path to the executable, e.g. + `./node_modules/.bin/is-ci` + +```bash +is-ci && echo "This is a CI server" +``` + +## Supported CI tools + +Refer to [ci-info](https://github.com/watson/ci-info#supported-ci-tools) docs for all supported CI's + +## License + +[MIT](LICENSE) diff --git a/node_modules/is-ci/bin.js b/node_modules/is-ci/bin.js new file mode 100644 index 0000000..0c56c01 --- /dev/null +++ b/node_modules/is-ci/bin.js @@ -0,0 +1,4 @@ +#!/usr/bin/env node +'use strict' + +process.exit(require('./') ? 0 : 1) diff --git a/node_modules/is-ci/index.js b/node_modules/is-ci/index.js new file mode 100644 index 0000000..d4cb67a --- /dev/null +++ b/node_modules/is-ci/index.js @@ -0,0 +1,3 @@ +'use strict' + +module.exports = require('ci-info').isCI diff --git a/node_modules/is-ci/package.json b/node_modules/is-ci/package.json new file mode 100644 index 0000000..055e57d --- /dev/null +++ b/node_modules/is-ci/package.json @@ -0,0 +1,38 @@ +{ + "name": "is-ci", + "version": "2.0.0", + "description": "Detect if the current environment is a CI server", + "bin": "bin.js", + "main": "index.js", + "dependencies": { + "ci-info": "^2.0.0" + }, + "devDependencies": { + "clear-module": "^3.0.0", + "standard": "^12.0.1" + }, + "scripts": { + "test": "standard && node test.js" + }, + "repository": { + "type": "git", + "url": "https://github.com/watson/is-ci.git" + }, + "keywords": [ + "ci", + "continuous", + "integration", + "test", + "detect" + ], + "author": "Thomas Watson Steen (https://twitter.com/wa7son)", + "license": "MIT", + "bugs": { + "url": "https://github.com/watson/is-ci/issues" + }, + "homepage": "https://github.com/watson/is-ci", + "coordinates": [ + 55.778272, + 12.593116 + ] +} diff --git a/node_modules/is-core-module/.eslintrc b/node_modules/is-core-module/.eslintrc new file mode 100644 index 0000000..f2e0726 --- /dev/null +++ b/node_modules/is-core-module/.eslintrc @@ -0,0 +1,18 @@ +{ + "extends": "@ljharb", + "root": true, + "rules": { + "func-style": 1, + }, + "overrides": [ + { + "files": "test/**", + "rules": { + "global-require": 0, + "max-depth": 0, + "max-lines-per-function": 0, + "no-negated-condition": 0, + }, + }, + ], +} diff --git a/node_modules/is-core-module/.nycrc b/node_modules/is-core-module/.nycrc new file mode 100644 index 0000000..bdd626c --- /dev/null +++ b/node_modules/is-core-module/.nycrc @@ -0,0 +1,9 @@ +{ + "all": true, + "check-coverage": false, + "reporter": ["text-summary", "text", "html", "json"], + "exclude": [ + "coverage", + "test" + ] +} diff --git a/node_modules/is-core-module/CHANGELOG.md b/node_modules/is-core-module/CHANGELOG.md new file mode 100644 index 0000000..1f4d1d6 --- /dev/null +++ b/node_modules/is-core-module/CHANGELOG.md @@ -0,0 +1,136 @@ +# Changelog + +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## [v2.9.0](https://github.com/inspect-js/is-core-module/compare/v2.8.1...v2.9.0) - 2022-04-19 + +### Commits + +- [New] add `node:test`, in node 18+ [`f853eca`](https://github.com/inspect-js/is-core-module/commit/f853eca801d0a7d4e1dbb670f1b6d9837d9533c5) +- [Tests] use `mock-property` [`03b3644`](https://github.com/inspect-js/is-core-module/commit/03b3644dff4417f4ba5a7d0aa0138f5f6b3e5c46) +- [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `aud`, `auto-changelog`, `tape` [`7c0e2d0`](https://github.com/inspect-js/is-core-module/commit/7c0e2d06ed2a89acf53abe2ab34d703ed5b03455) +- [meta] simplify "exports" [`d6ed201`](https://github.com/inspect-js/is-core-module/commit/d6ed201eba7fbba0e59814a9050fc49a6e9878c8) + +## [v2.8.1](https://github.com/inspect-js/is-core-module/compare/v2.8.0...v2.8.1) - 2022-01-05 + +### Commits + +- [actions] reuse common workflows [`cd2cf9b`](https://github.com/inspect-js/is-core-module/commit/cd2cf9b3b66c8d328f65610efe41e9325db7716d) +- [Fix] update node 0.4 results [`062195d`](https://github.com/inspect-js/is-core-module/commit/062195d89f0876a88b95d378b43f7fcc1205bc5b) +- [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `safe-publish-latest`, `tape` [`0790b62`](https://github.com/inspect-js/is-core-module/commit/0790b6222848c6167132f9f73acc3520fa8d1298) +- [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `tape` [`7d139a6`](https://github.com/inspect-js/is-core-module/commit/7d139a6d767709eabf0a0251e074ec1fb230c06e) +- [Tests] run `nyc` in `tests-only`, not `test` [`780e8a0`](https://github.com/inspect-js/is-core-module/commit/780e8a049951c71cf78b1707f0871c48a28bde14) + +## [v2.8.0](https://github.com/inspect-js/is-core-module/compare/v2.7.0...v2.8.0) - 2021-10-14 + +### Commits + +- [actions] update codecov uploader [`0cfe94e`](https://github.com/inspect-js/is-core-module/commit/0cfe94e106a7d005ea03e008c0a21dec13a77904) +- [New] add `readline/promises` to node v17+ [`4f78c30`](https://github.com/inspect-js/is-core-module/commit/4f78c3008b1b58b4db6dc91d99610b1bc859da7e) +- [Tests] node ^14.18 supports `node:` prefixes for CJS [`43e2f17`](https://github.com/inspect-js/is-core-module/commit/43e2f177452cea2f0eaf34f61b5407217bbdb6f4) + +## [v2.7.0](https://github.com/inspect-js/is-core-module/compare/v2.6.0...v2.7.0) - 2021-09-27 + +### Commits + +- [New] node `v14.18` added `node:`-prefixed core modules to `require` [`6d943ab`](https://github.com/inspect-js/is-core-module/commit/6d943abe81382b9bbe344384d80fbfebe1cc0526) +- [Tests] add coverage for Object.prototype pollution [`c6baf5f`](https://github.com/inspect-js/is-core-module/commit/c6baf5f942311a1945c1af41167bb80b84df2af7) +- [Dev Deps] update `@ljharb/eslint-config` [`6717f00`](https://github.com/inspect-js/is-core-module/commit/6717f000d063ea57beb772bded36c2f056ac404c) +- [eslint] fix linter warning [`594c10b`](https://github.com/inspect-js/is-core-module/commit/594c10bb7d39d7eb00925c90924199ff596184b2) +- [meta] add `sideEffects` flag [`c32cfa5`](https://github.com/inspect-js/is-core-module/commit/c32cfa5195632944c4dd4284a142b8476e75be13) + +## [v2.6.0](https://github.com/inspect-js/is-core-module/compare/v2.5.0...v2.6.0) - 2021-08-17 + +### Commits + +- [Dev Deps] update `eslint`, `tape` [`6cc928f`](https://github.com/inspect-js/is-core-module/commit/6cc928f8a4bba66aeeccc4f6beeac736d4bd3081) +- [New] add `stream/consumers` to node `>= 16.7` [`a1a423e`](https://github.com/inspect-js/is-core-module/commit/a1a423e467e4cc27df180234fad5bab45943e67d) +- [Refactor] Remove duplicated `&&` operand [`86faea7`](https://github.com/inspect-js/is-core-module/commit/86faea738213a2433c62d1098488dc9314dca832) +- [Tests] include prereleases [`a4da7a6`](https://github.com/inspect-js/is-core-module/commit/a4da7a6abf7568e2aa4fd98e69452179f1850963) + +## [v2.5.0](https://github.com/inspect-js/is-core-module/compare/v2.4.0...v2.5.0) - 2021-07-12 + +### Commits + +- [Dev Deps] update `auto-changelog`, `eslint` [`6334cc9`](https://github.com/inspect-js/is-core-module/commit/6334cc94f3af7469685bd8f236740991baaf2705) +- [New] add `stream/web` to node v16.5+ [`17ac59b`](https://github.com/inspect-js/is-core-module/commit/17ac59b662d63e220a2e5728625f005c24f177b2) + +## [v2.4.0](https://github.com/inspect-js/is-core-module/compare/v2.3.0...v2.4.0) - 2021-05-09 + +### Commits + +- [readme] add actions and codecov badges [`82b7faa`](https://github.com/inspect-js/is-core-module/commit/82b7faa12b56dbe47fbea67e1a5b9e447027ba40) +- [Dev Deps] update `@ljharb/eslint-config`, `aud` [`8096868`](https://github.com/inspect-js/is-core-module/commit/8096868c024a161ccd4d44110b136763e92eace8) +- [Dev Deps] update `eslint` [`6726824`](https://github.com/inspect-js/is-core-module/commit/67268249b88230018c510f6532a8046d7326346f) +- [New] add `diagnostics_channel` to node `^14.17` [`86c6563`](https://github.com/inspect-js/is-core-module/commit/86c65634201b8ff9b3e48a9a782594579c7f5c3c) +- [meta] fix prepublish script [`697a01e`](https://github.com/inspect-js/is-core-module/commit/697a01e3c9c0be074066520954f30fb28532ec57) + +## [v2.3.0](https://github.com/inspect-js/is-core-module/compare/v2.2.0...v2.3.0) - 2021-04-24 + +### Commits + +- [meta] do not publish github action workflow files [`060d4bb`](https://github.com/inspect-js/is-core-module/commit/060d4bb971a29451c19ff336eb56bee27f9fa95a) +- [New] add support for `node:` prefix, in node 16+ [`7341223`](https://github.com/inspect-js/is-core-module/commit/73412230a769f6e81c05eea50b6520cebf54ed2f) +- [actions] use `node/install` instead of `node/run`; use `codecov` action [`016269a`](https://github.com/inspect-js/is-core-module/commit/016269abae9f6657a5254adfbb813f09a05067f9) +- [patch] remove unneeded `.0` in version ranges [`cb466a6`](https://github.com/inspect-js/is-core-module/commit/cb466a6d89e52b8389e5c12715efcd550c41cea3) +- [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `aud`, `tape` [`c9f9c39`](https://github.com/inspect-js/is-core-module/commit/c9f9c396ace60ef81906f98059c064e6452473ed) +- [actions] update workflows [`3ee4a89`](https://github.com/inspect-js/is-core-module/commit/3ee4a89fd5a02fccd43882d905448ea6a98e9a3c) +- [Dev Deps] update `eslint`, `@ljharb/eslint-config` [`dee4fed`](https://github.com/inspect-js/is-core-module/commit/dee4fed79690c1d43a22f7fa9426abebdc6d727f) +- [Dev Deps] update `eslint`, `@ljharb/eslint-config` [`7d046ba`](https://github.com/inspect-js/is-core-module/commit/7d046ba07ae8c9292e43652694ca808d7b309de8) +- [meta] use `prepublishOnly` script for npm 7+ [`149e677`](https://github.com/inspect-js/is-core-module/commit/149e6771a5ede6d097e71785b467a9c4b4977cc7) +- [readme] remove travis badge [`903b51d`](https://github.com/inspect-js/is-core-module/commit/903b51d6b69b98abeabfbc3695c345b02646f19c) + +## [v2.2.0](https://github.com/inspect-js/is-core-module/compare/v2.1.0...v2.2.0) - 2020-11-26 + +### Commits + +- [Tests] migrate tests to Github Actions [`c919f57`](https://github.com/inspect-js/is-core-module/commit/c919f573c0a92d10a0acad0b650b5aecb033d426) +- [patch] `core.json`: %s/ /\t/g [`db3f685`](https://github.com/inspect-js/is-core-module/commit/db3f68581f53e73cc09cd675955eb1bdd6a5a39b) +- [Tests] run `nyc` on all tests [`b2f925f`](https://github.com/inspect-js/is-core-module/commit/b2f925f8866f210ef441f39fcc8cc42692ab89b1) +- [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `aud`; add `safe-publish-latest` [`89f02a2`](https://github.com/inspect-js/is-core-module/commit/89f02a2b4162246dea303a6ee31bb9a550b05c72) +- [New] add `path/posix`, `path/win32`, `util/types` [`77f94f1`](https://github.com/inspect-js/is-core-module/commit/77f94f1e90ffd7c0be2a3f1aa8574ebf7fd981b3) + +## [v2.1.0](https://github.com/inspect-js/is-core-module/compare/v2.0.0...v2.1.0) - 2020-11-04 + +### Commits + +- [Dev Deps] update `eslint` [`5e0034e`](https://github.com/inspect-js/is-core-module/commit/5e0034eae57c09c8f1bd769f502486a00f56c6e4) +- [New] Add `diagnostics_channel` [`c2d83d0`](https://github.com/inspect-js/is-core-module/commit/c2d83d0a0225a1a658945d9bab7036ea347d29ec) + +## [v2.0.0](https://github.com/inspect-js/is-core-module/compare/v1.0.2...v2.0.0) - 2020-09-29 + +### Commits + +- v2 implementation [`865aeb5`](https://github.com/inspect-js/is-core-module/commit/865aeb5ca0e90248a3dfff5d7622e4751fdeb9cd) +- Only apps should have lockfiles [`5a5e660`](https://github.com/inspect-js/is-core-module/commit/5a5e660d568e37eb44e17fb1ebb12a105205fc2b) +- Initial commit for v2 [`5a51524`](https://github.com/inspect-js/is-core-module/commit/5a51524e06f92adece5fbb138c69b7b9748a2348) +- Tests [`116eae4`](https://github.com/inspect-js/is-core-module/commit/116eae4fccd01bc72c1fd3cc4b7561c387afc496) +- [meta] add `auto-changelog` [`c24388b`](https://github.com/inspect-js/is-core-module/commit/c24388bee828d223040519d1f5b226ca35beee63) +- [actions] add "Automatic Rebase" and "require allow edits" actions [`34292db`](https://github.com/inspect-js/is-core-module/commit/34292dbcbadae0868aff03c22dbd8b7b8a11558a) +- [Tests] add `npm run lint` [`4f9eeee`](https://github.com/inspect-js/is-core-module/commit/4f9eeee7ddff10698bbf528620f4dc8d4fa3e697) +- [readme] fix travis badges, https all URLs [`e516a73`](https://github.com/inspect-js/is-core-module/commit/e516a73b0dccce20938c432b1ba512eae8eff9e9) +- [meta] create FUNDING.yml [`1aabebc`](https://github.com/inspect-js/is-core-module/commit/1aabebca98d01f8a04e46bc2e2520fa93cf21ac6) +- [Fix] `domain`: domain landed sometime > v0.7.7 and <= v0.7.12 [`2df7d37`](https://github.com/inspect-js/is-core-module/commit/2df7d37595d41b15eeada732b706b926c2771655) +- [Fix] `sys`: worked in 0.6, not 0.7, and 0.8+ [`a75c134`](https://github.com/inspect-js/is-core-module/commit/a75c134229e1e9441801f6b73f6a52489346eb65) + +## [v1.0.2](https://github.com/inspect-js/is-core-module/compare/v1.0.1...v1.0.2) - 2014-09-28 + +### Commits + +- simpler [`66fe90f`](https://github.com/inspect-js/is-core-module/commit/66fe90f9771581b9adc0c3900baa52c21b5baea2) + +## [v1.0.1](https://github.com/inspect-js/is-core-module/compare/v1.0.0...v1.0.1) - 2014-09-28 + +### Commits + +- remove stupid [`f21f906`](https://github.com/inspect-js/is-core-module/commit/f21f906f882c2bd656a5fc5ed6fbe48ddaffb2ac) +- update readme [`1eff0ec`](https://github.com/inspect-js/is-core-module/commit/1eff0ec69798d1ec65771552d1562911e90a8027) + +## v1.0.0 - 2014-09-28 + +### Commits + +- init [`48e5e76`](https://github.com/inspect-js/is-core-module/commit/48e5e76cac378fddb8c1f7d4055b8dfc943d6b96) diff --git a/node_modules/is-core-module/LICENSE b/node_modules/is-core-module/LICENSE new file mode 100644 index 0000000..2e50287 --- /dev/null +++ b/node_modules/is-core-module/LICENSE @@ -0,0 +1,20 @@ +The MIT License (MIT) + +Copyright (c) 2014 Dave Justice + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. \ No newline at end of file diff --git a/node_modules/is-core-module/README.md b/node_modules/is-core-module/README.md new file mode 100644 index 0000000..062d906 --- /dev/null +++ b/node_modules/is-core-module/README.md @@ -0,0 +1,40 @@ +# is-core-module [![Version Badge][2]][1] + +[![github actions][actions-image]][actions-url] +[![coverage][codecov-image]][codecov-url] +[![dependency status][5]][6] +[![dev dependency status][7]][8] +[![License][license-image]][license-url] +[![Downloads][downloads-image]][downloads-url] + +[![npm badge][11]][1] + +Is this specifier a node.js core module? Optionally provide a node version to check; defaults to the current node version. + +## Example + +```js +var isCore = require('is-core-module'); +var assert = require('assert'); +assert(isCore('fs')); +assert(!isCore('butts')); +``` + +## Tests +Clone the repo, `npm install`, and run `npm test` + +[1]: https://npmjs.org/package/is-core-module +[2]: https://versionbadg.es/inspect-js/is-core-module.svg +[5]: https://david-dm.org/inspect-js/is-core-module.svg +[6]: https://david-dm.org/inspect-js/is-core-module +[7]: https://david-dm.org/inspect-js/is-core-module/dev-status.svg +[8]: https://david-dm.org/inspect-js/is-core-module#info=devDependencies +[11]: https://nodei.co/npm/is-core-module.png?downloads=true&stars=true +[license-image]: https://img.shields.io/npm/l/is-core-module.svg +[license-url]: LICENSE +[downloads-image]: https://img.shields.io/npm/dm/is-core-module.svg +[downloads-url]: https://npm-stat.com/charts.html?package=is-core-module +[codecov-image]: https://codecov.io/gh/inspect-js/is-core-module/branch/main/graphs/badge.svg +[codecov-url]: https://app.codecov.io/gh/inspect-js/is-core-module/ +[actions-image]: https://img.shields.io/endpoint?url=https://github-actions-badge-u3jn4tfpocch.runkit.sh/inspect-js/is-core-module +[actions-url]: https://github.com/inspect-js/is-core-module/actions diff --git a/node_modules/is-core-module/core.json b/node_modules/is-core-module/core.json new file mode 100644 index 0000000..058584b --- /dev/null +++ b/node_modules/is-core-module/core.json @@ -0,0 +1,153 @@ +{ + "assert": true, + "node:assert": [">= 14.18 && < 15", ">= 16"], + "assert/strict": ">= 15", + "node:assert/strict": ">= 16", + "async_hooks": ">= 8", + "node:async_hooks": [">= 14.18 && < 15", ">= 16"], + "buffer_ieee754": ">= 0.5 && < 0.9.7", + "buffer": true, + "node:buffer": [">= 14.18 && < 15", ">= 16"], + "child_process": true, + "node:child_process": [">= 14.18 && < 15", ">= 16"], + "cluster": ">= 0.5", + "node:cluster": [">= 14.18 && < 15", ">= 16"], + "console": true, + "node:console": [">= 14.18 && < 15", ">= 16"], + "constants": true, + "node:constants": [">= 14.18 && < 15", ">= 16"], + "crypto": true, + "node:crypto": [">= 14.18 && < 15", ">= 16"], + "_debug_agent": ">= 1 && < 8", + "_debugger": "< 8", + "dgram": true, + "node:dgram": [">= 14.18 && < 15", ">= 16"], + "diagnostics_channel": [">= 14.17 && < 15", ">= 15.1"], + "node:diagnostics_channel": [">= 14.18 && < 15", ">= 16"], + "dns": true, + "node:dns": [">= 14.18 && < 15", ">= 16"], + "dns/promises": ">= 15", + "node:dns/promises": ">= 16", + "domain": ">= 0.7.12", + "node:domain": [">= 14.18 && < 15", ">= 16"], + "events": true, + "node:events": [">= 14.18 && < 15", ">= 16"], + "freelist": "< 6", + "fs": true, + "node:fs": [">= 14.18 && < 15", ">= 16"], + "fs/promises": [">= 10 && < 10.1", ">= 14"], + "node:fs/promises": [">= 14.18 && < 15", ">= 16"], + "_http_agent": ">= 0.11.1", + "node:_http_agent": [">= 14.18 && < 15", ">= 16"], + "_http_client": ">= 0.11.1", + "node:_http_client": [">= 14.18 && < 15", ">= 16"], + "_http_common": ">= 0.11.1", + "node:_http_common": [">= 14.18 && < 15", ">= 16"], + "_http_incoming": ">= 0.11.1", + "node:_http_incoming": [">= 14.18 && < 15", ">= 16"], + "_http_outgoing": ">= 0.11.1", + "node:_http_outgoing": [">= 14.18 && < 15", ">= 16"], + "_http_server": ">= 0.11.1", + "node:_http_server": [">= 14.18 && < 15", ">= 16"], + "http": true, + "node:http": [">= 14.18 && < 15", ">= 16"], + "http2": ">= 8.8", + "node:http2": [">= 14.18 && < 15", ">= 16"], + "https": true, + "node:https": [">= 14.18 && < 15", ">= 16"], + "inspector": ">= 8", + "node:inspector": [">= 14.18 && < 15", ">= 16"], + "_linklist": "< 8", + "module": true, + "node:module": [">= 14.18 && < 15", ">= 16"], + "net": true, + "node:net": [">= 14.18 && < 15", ">= 16"], + "node-inspect/lib/_inspect": ">= 7.6 && < 12", + "node-inspect/lib/internal/inspect_client": ">= 7.6 && < 12", + "node-inspect/lib/internal/inspect_repl": ">= 7.6 && < 12", + "os": true, + "node:os": [">= 14.18 && < 15", ">= 16"], + "path": true, + "node:path": [">= 14.18 && < 15", ">= 16"], + "path/posix": ">= 15.3", + "node:path/posix": ">= 16", + "path/win32": ">= 15.3", + "node:path/win32": ">= 16", + "perf_hooks": ">= 8.5", + "node:perf_hooks": [">= 14.18 && < 15", ">= 16"], + "process": ">= 1", + "node:process": [">= 14.18 && < 15", ">= 16"], + "punycode": ">= 0.5", + "node:punycode": [">= 14.18 && < 15", ">= 16"], + "querystring": true, + "node:querystring": [">= 14.18 && < 15", ">= 16"], + "readline": true, + "node:readline": [">= 14.18 && < 15", ">= 16"], + "readline/promises": ">= 17", + "node:readline/promises": ">= 17", + "repl": true, + "node:repl": [">= 14.18 && < 15", ">= 16"], + "smalloc": ">= 0.11.5 && < 3", + "_stream_duplex": ">= 0.9.4", + "node:_stream_duplex": [">= 14.18 && < 15", ">= 16"], + "_stream_transform": ">= 0.9.4", + "node:_stream_transform": [">= 14.18 && < 15", ">= 16"], + "_stream_wrap": ">= 1.4.1", + "node:_stream_wrap": [">= 14.18 && < 15", ">= 16"], + "_stream_passthrough": ">= 0.9.4", + "node:_stream_passthrough": [">= 14.18 && < 15", ">= 16"], + "_stream_readable": ">= 0.9.4", + "node:_stream_readable": [">= 14.18 && < 15", ">= 16"], + "_stream_writable": ">= 0.9.4", + "node:_stream_writable": [">= 14.18 && < 15", ">= 16"], + "stream": true, + "node:stream": [">= 14.18 && < 15", ">= 16"], + "stream/consumers": ">= 16.7", + "node:stream/consumers": ">= 16.7", + "stream/promises": ">= 15", + "node:stream/promises": ">= 16", + "stream/web": ">= 16.5", + "node:stream/web": ">= 16.5", + "string_decoder": true, + "node:string_decoder": [">= 14.18 && < 15", ">= 16"], + "sys": [">= 0.4 && < 0.7", ">= 0.8"], + "node:sys": [">= 14.18 && < 15", ">= 16"], + "node:test": ">= 18", + "timers": true, + "node:timers": [">= 14.18 && < 15", ">= 16"], + "timers/promises": ">= 15", + "node:timers/promises": ">= 16", + "_tls_common": ">= 0.11.13", + "node:_tls_common": [">= 14.18 && < 15", ">= 16"], + "_tls_legacy": ">= 0.11.3 && < 10", + "_tls_wrap": ">= 0.11.3", + "node:_tls_wrap": [">= 14.18 && < 15", ">= 16"], + "tls": true, + "node:tls": [">= 14.18 && < 15", ">= 16"], + "trace_events": ">= 10", + "node:trace_events": [">= 14.18 && < 15", ">= 16"], + "tty": true, + "node:tty": [">= 14.18 && < 15", ">= 16"], + "url": true, + "node:url": [">= 14.18 && < 15", ">= 16"], + "util": true, + "node:util": [">= 14.18 && < 15", ">= 16"], + "util/types": ">= 15.3", + "node:util/types": ">= 16", + "v8/tools/arguments": ">= 10 && < 12", + "v8/tools/codemap": [">= 4.4 && < 5", ">= 5.2 && < 12"], + "v8/tools/consarray": [">= 4.4 && < 5", ">= 5.2 && < 12"], + "v8/tools/csvparser": [">= 4.4 && < 5", ">= 5.2 && < 12"], + "v8/tools/logreader": [">= 4.4 && < 5", ">= 5.2 && < 12"], + "v8/tools/profile_view": [">= 4.4 && < 5", ">= 5.2 && < 12"], + "v8/tools/splaytree": [">= 4.4 && < 5", ">= 5.2 && < 12"], + "v8": ">= 1", + "node:v8": [">= 14.18 && < 15", ">= 16"], + "vm": true, + "node:vm": [">= 14.18 && < 15", ">= 16"], + "wasi": ">= 13.4 && < 13.5", + "worker_threads": ">= 11.7", + "node:worker_threads": [">= 14.18 && < 15", ">= 16"], + "zlib": ">= 0.5", + "node:zlib": [">= 14.18 && < 15", ">= 16"] +} diff --git a/node_modules/is-core-module/index.js b/node_modules/is-core-module/index.js new file mode 100644 index 0000000..f9637e0 --- /dev/null +++ b/node_modules/is-core-module/index.js @@ -0,0 +1,69 @@ +'use strict'; + +var has = require('has'); + +function specifierIncluded(current, specifier) { + var nodeParts = current.split('.'); + var parts = specifier.split(' '); + var op = parts.length > 1 ? parts[0] : '='; + var versionParts = (parts.length > 1 ? parts[1] : parts[0]).split('.'); + + for (var i = 0; i < 3; ++i) { + var cur = parseInt(nodeParts[i] || 0, 10); + var ver = parseInt(versionParts[i] || 0, 10); + if (cur === ver) { + continue; // eslint-disable-line no-restricted-syntax, no-continue + } + if (op === '<') { + return cur < ver; + } + if (op === '>=') { + return cur >= ver; + } + return false; + } + return op === '>='; +} + +function matchesRange(current, range) { + var specifiers = range.split(/ ?&& ?/); + if (specifiers.length === 0) { + return false; + } + for (var i = 0; i < specifiers.length; ++i) { + if (!specifierIncluded(current, specifiers[i])) { + return false; + } + } + return true; +} + +function versionIncluded(nodeVersion, specifierValue) { + if (typeof specifierValue === 'boolean') { + return specifierValue; + } + + var current = typeof nodeVersion === 'undefined' + ? process.versions && process.versions.node + : nodeVersion; + + if (typeof current !== 'string') { + throw new TypeError(typeof nodeVersion === 'undefined' ? 'Unable to determine current node version' : 'If provided, a valid node version is required'); + } + + if (specifierValue && typeof specifierValue === 'object') { + for (var i = 0; i < specifierValue.length; ++i) { + if (matchesRange(current, specifierValue[i])) { + return true; + } + } + return false; + } + return matchesRange(current, specifierValue); +} + +var data = require('./core.json'); + +module.exports = function isCore(x, nodeVersion) { + return has(data, x) && versionIncluded(nodeVersion, data[x]); +}; diff --git a/node_modules/is-core-module/package.json b/node_modules/is-core-module/package.json new file mode 100644 index 0000000..80ce9f5 --- /dev/null +++ b/node_modules/is-core-module/package.json @@ -0,0 +1,65 @@ +{ + "name": "is-core-module", + "version": "2.9.0", + "description": "Is this specifier a node.js core module?", + "main": "index.js", + "sideEffects": false, + "exports": { + ".": "./index.js", + "./package.json": "./package.json" + }, + "scripts": { + "prepublish": "not-in-publish || npm run prepublishOnly", + "prepublishOnly": "safe-publish-latest", + "lint": "eslint .", + "pretest": "npm run lint", + "tests-only": "nyc tape 'test/**/*.js'", + "test": "npm run tests-only", + "posttest": "aud --production", + "version": "auto-changelog && git add CHANGELOG.md", + "postversion": "auto-changelog && git add CHANGELOG.md && git commit --no-edit --amend && git tag -f \"v$(node -e \"console.log(require('./package.json').version)\")\"" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/inspect-js/is-core-module.git" + }, + "keywords": [ + "core", + "modules", + "module", + "npm", + "node", + "dependencies" + ], + "author": "Jordan Harband ", + "funding": { + "url": "https://github.com/sponsors/ljharb" + }, + "license": "MIT", + "bugs": { + "url": "https://github.com/inspect-js/is-core-module/issues" + }, + "homepage": "https://github.com/inspect-js/is-core-module", + "dependencies": { + "has": "^1.0.3" + }, + "devDependencies": { + "@ljharb/eslint-config": "^21.0.0", + "aud": "^2.0.0", + "auto-changelog": "^2.4.0", + "eslint": "=8.8.0", + "mock-property": "^1.0.0", + "nyc": "^10.3.2", + "safe-publish-latest": "^2.0.0", + "semver": "^6.3.0", + "tape": "^5.5.3" + }, + "auto-changelog": { + "output": "CHANGELOG.md", + "template": "keepachangelog", + "unreleased": false, + "commitLimit": false, + "backfillLimit": false, + "hideCredit": true + } +} diff --git a/node_modules/is-core-module/test/index.js b/node_modules/is-core-module/test/index.js new file mode 100644 index 0000000..4385b20 --- /dev/null +++ b/node_modules/is-core-module/test/index.js @@ -0,0 +1,133 @@ +'use strict'; + +var test = require('tape'); +var keys = require('object-keys'); +var semver = require('semver'); +var mockProperty = require('mock-property'); + +var isCore = require('../'); +var data = require('../core.json'); + +var supportsNodePrefix = semver.satisfies(process.versions.node, '^14.18 || >= 16', { includePrerelease: true }); + +test('core modules', function (t) { + t.test('isCore()', function (st) { + st.ok(isCore('fs')); + st.ok(isCore('net')); + st.ok(isCore('http')); + + st.ok(!isCore('seq')); + st.ok(!isCore('../')); + + st.ok(!isCore('toString')); + + st.end(); + }); + + t.test('core list', function (st) { + var cores = keys(data); + st.plan(cores.length); + + for (var i = 0; i < cores.length; ++i) { + var mod = cores[i]; + var requireFunc = function () { require(mod); }; // eslint-disable-line no-loop-func + if (isCore(mod)) { + st.doesNotThrow(requireFunc, mod + ' supported; requiring does not throw'); + } else { + st['throws'](requireFunc, mod + ' not supported; requiring throws'); + } + } + + st.end(); + }); + + t.test('core via repl module', { skip: !data.repl }, function (st) { + var libs = require('repl')._builtinLibs; // eslint-disable-line no-underscore-dangle + if (!libs) { + st.skip('module.builtinModules does not exist'); + } else { + for (var i = 0; i < libs.length; ++i) { + var mod = libs[i]; + st.ok(data[mod], mod + ' is a core module'); + st.doesNotThrow( + function () { require(mod); }, // eslint-disable-line no-loop-func + 'requiring ' + mod + ' does not throw' + ); + if (mod.slice(0, 5) !== 'node:') { + if (supportsNodePrefix) { + st.doesNotThrow( + function () { require('node:' + mod); }, // eslint-disable-line no-loop-func + 'requiring node:' + mod + ' does not throw' + ); + } else { + st['throws']( + function () { require('node:' + mod); }, // eslint-disable-line no-loop-func + 'requiring node:' + mod + ' throws' + ); + } + } + } + } + st.end(); + }); + + t.test('core via builtinModules list', { skip: !data.module }, function (st) { + var libs = require('module').builtinModules; + if (!libs) { + st.skip('module.builtinModules does not exist'); + } else { + var excludeList = [ + '_debug_agent', + 'v8/tools/tickprocessor-driver', + 'v8/tools/SourceMap', + 'v8/tools/tickprocessor', + 'v8/tools/profile' + ]; + // see https://github.com/nodejs/node/issues/42785 + if (semver.satisfies(process.version, '>= 18')) { + libs = libs.concat('node:test'); + } + for (var i = 0; i < libs.length; ++i) { + var mod = libs[i]; + if (excludeList.indexOf(mod) === -1) { + st.ok(data[mod], mod + ' is a core module'); + st.doesNotThrow( + function () { require(mod); }, // eslint-disable-line no-loop-func + 'requiring ' + mod + ' does not throw' + ); + if (mod.slice(0, 5) !== 'node:') { + if (supportsNodePrefix) { + st.doesNotThrow( + function () { require('node:' + mod); }, // eslint-disable-line no-loop-func + 'requiring node:' + mod + ' does not throw' + ); + } else { + st['throws']( + function () { require('node:' + mod); }, // eslint-disable-line no-loop-func + 'requiring node:' + mod + ' throws' + ); + } + } + } + } + } + st.end(); + }); + + t.test('Object.prototype pollution', function (st) { + var nonKey = 'not a core module'; + st.teardown(mockProperty(Object.prototype, 'fs', { value: false })); + st.teardown(mockProperty(Object.prototype, 'path', { value: '>= 999999999' })); + st.teardown(mockProperty(Object.prototype, 'http', { value: data.http })); + st.teardown(mockProperty(Object.prototype, nonKey, { value: true })); + + st.equal(isCore('fs'), true, 'fs is a core module even if Object.prototype lies'); + st.equal(isCore('path'), true, 'path is a core module even if Object.prototype lies'); + st.equal(isCore('http'), true, 'path is a core module even if Object.prototype matches data'); + st.equal(isCore(nonKey), false, '"' + nonKey + '" is not a core module even if Object.prototype lies'); + + st.end(); + }); + + t.end(); +}); diff --git a/node_modules/is-docker/cli.js b/node_modules/is-docker/cli.js new file mode 100644 index 0000000..58f2861 --- /dev/null +++ b/node_modules/is-docker/cli.js @@ -0,0 +1,5 @@ +#!/usr/bin/env node +'use strict'; +const isDocker = require('.'); + +process.exitCode = isDocker() ? 0 : 2; diff --git a/node_modules/is-docker/index.d.ts b/node_modules/is-docker/index.d.ts new file mode 100644 index 0000000..c801881 --- /dev/null +++ b/node_modules/is-docker/index.d.ts @@ -0,0 +1,15 @@ +/** +Check if the process is running inside a Docker container. + +@example +``` +import isDocker = require('is-docker'); + +if (isDocker()) { + console.log('Running inside a Docker container'); +} +``` +*/ +declare function isDocker(): boolean; + +export = isDocker; diff --git a/node_modules/is-docker/index.js b/node_modules/is-docker/index.js new file mode 100644 index 0000000..cbb7b6f --- /dev/null +++ b/node_modules/is-docker/index.js @@ -0,0 +1,29 @@ +'use strict'; +const fs = require('fs'); + +let isDocker; + +function hasDockerEnv() { + try { + fs.statSync('/.dockerenv'); + return true; + } catch (_) { + return false; + } +} + +function hasDockerCGroup() { + try { + return fs.readFileSync('/proc/self/cgroup', 'utf8').includes('docker'); + } catch (_) { + return false; + } +} + +module.exports = () => { + if (isDocker === undefined) { + isDocker = hasDockerEnv() || hasDockerCGroup(); + } + + return isDocker; +}; diff --git a/node_modules/is-docker/license b/node_modules/is-docker/license new file mode 100644 index 0000000..fa7ceba --- /dev/null +++ b/node_modules/is-docker/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (https://sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/is-docker/package.json b/node_modules/is-docker/package.json new file mode 100644 index 0000000..ae28225 --- /dev/null +++ b/node_modules/is-docker/package.json @@ -0,0 +1,42 @@ +{ + "name": "is-docker", + "version": "2.2.1", + "description": "Check if the process is running inside a Docker container", + "license": "MIT", + "repository": "sindresorhus/is-docker", + "funding": "https://github.com/sponsors/sindresorhus", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "https://sindresorhus.com" + }, + "bin": "cli.js", + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd" + }, + "files": [ + "index.js", + "index.d.ts", + "cli.js" + ], + "keywords": [ + "detect", + "docker", + "dockerized", + "container", + "inside", + "is", + "env", + "environment", + "process" + ], + "devDependencies": { + "ava": "^1.4.1", + "sinon": "^7.3.2", + "tsd": "^0.7.2", + "xo": "^0.24.0" + } +} diff --git a/node_modules/is-docker/readme.md b/node_modules/is-docker/readme.md new file mode 100644 index 0000000..f09b254 --- /dev/null +++ b/node_modules/is-docker/readme.md @@ -0,0 +1,27 @@ +# is-docker + +> Check if the process is running inside a Docker container + +## Install + +``` +$ npm install is-docker +``` + +## Usage + +```js +const isDocker = require('is-docker'); + +if (isDocker()) { + console.log('Running inside a Docker container'); +} +``` + +## CLI + +``` +$ is-docker +``` + +Exits with code 0 if inside a Docker container and 2 if not. diff --git a/node_modules/is-fullwidth-code-point/index.d.ts b/node_modules/is-fullwidth-code-point/index.d.ts new file mode 100644 index 0000000..729d202 --- /dev/null +++ b/node_modules/is-fullwidth-code-point/index.d.ts @@ -0,0 +1,17 @@ +/** +Check if the character represented by a given [Unicode code point](https://en.wikipedia.org/wiki/Code_point) is [fullwidth](https://en.wikipedia.org/wiki/Halfwidth_and_fullwidth_forms). + +@param codePoint - The [code point](https://en.wikipedia.org/wiki/Code_point) of a character. + +@example +``` +import isFullwidthCodePoint from 'is-fullwidth-code-point'; + +isFullwidthCodePoint('谢'.codePointAt(0)); +//=> true + +isFullwidthCodePoint('a'.codePointAt(0)); +//=> false +``` +*/ +export default function isFullwidthCodePoint(codePoint: number): boolean; diff --git a/node_modules/is-fullwidth-code-point/index.js b/node_modules/is-fullwidth-code-point/index.js new file mode 100644 index 0000000..671f97f --- /dev/null +++ b/node_modules/is-fullwidth-code-point/index.js @@ -0,0 +1,50 @@ +/* eslint-disable yoda */ +'use strict'; + +const isFullwidthCodePoint = codePoint => { + if (Number.isNaN(codePoint)) { + return false; + } + + // Code points are derived from: + // http://www.unix.org/Public/UNIDATA/EastAsianWidth.txt + if ( + codePoint >= 0x1100 && ( + codePoint <= 0x115F || // Hangul Jamo + codePoint === 0x2329 || // LEFT-POINTING ANGLE BRACKET + codePoint === 0x232A || // RIGHT-POINTING ANGLE BRACKET + // CJK Radicals Supplement .. Enclosed CJK Letters and Months + (0x2E80 <= codePoint && codePoint <= 0x3247 && codePoint !== 0x303F) || + // Enclosed CJK Letters and Months .. CJK Unified Ideographs Extension A + (0x3250 <= codePoint && codePoint <= 0x4DBF) || + // CJK Unified Ideographs .. Yi Radicals + (0x4E00 <= codePoint && codePoint <= 0xA4C6) || + // Hangul Jamo Extended-A + (0xA960 <= codePoint && codePoint <= 0xA97C) || + // Hangul Syllables + (0xAC00 <= codePoint && codePoint <= 0xD7A3) || + // CJK Compatibility Ideographs + (0xF900 <= codePoint && codePoint <= 0xFAFF) || + // Vertical Forms + (0xFE10 <= codePoint && codePoint <= 0xFE19) || + // CJK Compatibility Forms .. Small Form Variants + (0xFE30 <= codePoint && codePoint <= 0xFE6B) || + // Halfwidth and Fullwidth Forms + (0xFF01 <= codePoint && codePoint <= 0xFF60) || + (0xFFE0 <= codePoint && codePoint <= 0xFFE6) || + // Kana Supplement + (0x1B000 <= codePoint && codePoint <= 0x1B001) || + // Enclosed Ideographic Supplement + (0x1F200 <= codePoint && codePoint <= 0x1F251) || + // CJK Unified Ideographs Extension B .. Tertiary Ideographic Plane + (0x20000 <= codePoint && codePoint <= 0x3FFFD) + ) + ) { + return true; + } + + return false; +}; + +module.exports = isFullwidthCodePoint; +module.exports.default = isFullwidthCodePoint; diff --git a/node_modules/is-fullwidth-code-point/license b/node_modules/is-fullwidth-code-point/license new file mode 100644 index 0000000..e7af2f7 --- /dev/null +++ b/node_modules/is-fullwidth-code-point/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/is-fullwidth-code-point/package.json b/node_modules/is-fullwidth-code-point/package.json new file mode 100644 index 0000000..2137e88 --- /dev/null +++ b/node_modules/is-fullwidth-code-point/package.json @@ -0,0 +1,42 @@ +{ + "name": "is-fullwidth-code-point", + "version": "3.0.0", + "description": "Check if the character represented by a given Unicode code point is fullwidth", + "license": "MIT", + "repository": "sindresorhus/is-fullwidth-code-point", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd-check" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "fullwidth", + "full-width", + "full", + "width", + "unicode", + "character", + "string", + "codepoint", + "code", + "point", + "is", + "detect", + "check" + ], + "devDependencies": { + "ava": "^1.3.1", + "tsd-check": "^0.5.0", + "xo": "^0.24.0" + } +} diff --git a/node_modules/is-fullwidth-code-point/readme.md b/node_modules/is-fullwidth-code-point/readme.md new file mode 100644 index 0000000..4236bba --- /dev/null +++ b/node_modules/is-fullwidth-code-point/readme.md @@ -0,0 +1,39 @@ +# is-fullwidth-code-point [![Build Status](https://travis-ci.org/sindresorhus/is-fullwidth-code-point.svg?branch=master)](https://travis-ci.org/sindresorhus/is-fullwidth-code-point) + +> Check if the character represented by a given [Unicode code point](https://en.wikipedia.org/wiki/Code_point) is [fullwidth](https://en.wikipedia.org/wiki/Halfwidth_and_fullwidth_forms) + + +## Install + +``` +$ npm install is-fullwidth-code-point +``` + + +## Usage + +```js +const isFullwidthCodePoint = require('is-fullwidth-code-point'); + +isFullwidthCodePoint('谢'.codePointAt(0)); +//=> true + +isFullwidthCodePoint('a'.codePointAt(0)); +//=> false +``` + + +## API + +### isFullwidthCodePoint(codePoint) + +#### codePoint + +Type: `number` + +The [code point](https://en.wikipedia.org/wiki/Code_point) of a character. + + +## License + +MIT © [Sindre Sorhus](https://sindresorhus.com) diff --git a/node_modules/is-installed-globally/index.d.ts b/node_modules/is-installed-globally/index.d.ts new file mode 100644 index 0000000..4c2cbba --- /dev/null +++ b/node_modules/is-installed-globally/index.d.ts @@ -0,0 +1,19 @@ +/** +Check if your package was installed globally. + +@example +``` +import isInstalledGlobally = require('is-installed-globally'); + +// With `npm install your-package` +console.log(isInstalledGlobally); +//=> false + +// With `npm install --global your-package` +console.log(isInstalledGlobally); +//=> true +``` +*/ +declare const isInstalledGlobally: boolean; + +export = isInstalledGlobally; diff --git a/node_modules/is-installed-globally/index.js b/node_modules/is-installed-globally/index.js new file mode 100644 index 0000000..7fefcda --- /dev/null +++ b/node_modules/is-installed-globally/index.js @@ -0,0 +1,15 @@ +'use strict'; +const fs = require('fs'); +const globalDirs = require('global-dirs'); +const isPathInside = require('is-path-inside'); + +module.exports = (() => { + try { + return ( + isPathInside(__dirname, globalDirs.yarn.packages) || + isPathInside(__dirname, fs.realpathSync(globalDirs.npm.packages)) + ); + } catch { + return false; + } +})(); diff --git a/node_modules/is-installed-globally/license b/node_modules/is-installed-globally/license new file mode 100644 index 0000000..fa7ceba --- /dev/null +++ b/node_modules/is-installed-globally/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (https://sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/is-installed-globally/package.json b/node_modules/is-installed-globally/package.json new file mode 100644 index 0000000..955eabb --- /dev/null +++ b/node_modules/is-installed-globally/package.json @@ -0,0 +1,54 @@ +{ + "name": "is-installed-globally", + "version": "0.4.0", + "description": "Check if your package was installed globally", + "license": "MIT", + "repository": "sindresorhus/is-installed-globally", + "funding": "https://github.com/sponsors/sindresorhus", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "https://sindresorhus.com" + }, + "engines": { + "node": ">=10" + }, + "scripts": { + "test": "xo && ava && tsd" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "global", + "package", + "globally", + "module", + "install", + "installed", + "npm", + "yarn", + "is", + "check", + "detect", + "local", + "locally", + "cli", + "bin", + "binary" + ], + "dependencies": { + "global-dirs": "^3.0.0", + "is-path-inside": "^3.0.2" + }, + "devDependencies": { + "ava": "^2.4.0", + "cpy": "^8.1.1", + "del": "^6.0.0", + "execa": "^5.0.0", + "make-dir": "^3.1.0", + "tsd": "^0.14.0", + "xo": "^0.37.1" + } +} diff --git a/node_modules/is-installed-globally/readme.md b/node_modules/is-installed-globally/readme.md new file mode 100644 index 0000000..ef9e18a --- /dev/null +++ b/node_modules/is-installed-globally/readme.md @@ -0,0 +1,31 @@ +# is-installed-globally + +> Check if your package was installed globally + +Can be useful if your CLI needs different behavior when installed globally and locally. + +## Install + +``` +$ npm install is-installed-globally +``` + +## Usage + +```js +const isInstalledGlobally = require('is-installed-globally'); + +// With `npm install your-package` +console.log(isInstalledGlobally); +//=> false + +// With `npm install --global your-package` +console.log(isInstalledGlobally); +//=> true +``` + +## Related + +- [import-global](https://github.com/sindresorhus/import-global) - Import a globally installed module +- [resolve-global](https://github.com/sindresorhus/resolve-global) - Resolve the path of a globally installed module +- [global-dirs](https://github.com/sindresorhus/global-dirs) - Get the directory of globally installed packages and binaries diff --git a/node_modules/is-lambda/.npmignore b/node_modules/is-lambda/.npmignore new file mode 100644 index 0000000..3c3629e --- /dev/null +++ b/node_modules/is-lambda/.npmignore @@ -0,0 +1 @@ +node_modules diff --git a/node_modules/is-lambda/.travis.yml b/node_modules/is-lambda/.travis.yml new file mode 100644 index 0000000..03dcca5 --- /dev/null +++ b/node_modules/is-lambda/.travis.yml @@ -0,0 +1,8 @@ +language: node_js +node_js: +- '7' +- '6' +- '5' +- '4' +- '0.12' +- '0.10' diff --git a/node_modules/is-lambda/LICENSE b/node_modules/is-lambda/LICENSE new file mode 100644 index 0000000..4a59c94 --- /dev/null +++ b/node_modules/is-lambda/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2016-2017 Thomas Watson Steen + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/node_modules/is-lambda/README.md b/node_modules/is-lambda/README.md new file mode 100644 index 0000000..31a8f56 --- /dev/null +++ b/node_modules/is-lambda/README.md @@ -0,0 +1,27 @@ +# is-lambda + +Returns `true` if the current environment is an [AWS +Lambda](https://aws.amazon.com/lambda/) server. + +[![Build status](https://travis-ci.org/watson/is-lambda.svg?branch=master)](https://travis-ci.org/watson/is-lambda) +[![js-standard-style](https://img.shields.io/badge/code%20style-standard-brightgreen.svg?style=flat)](https://github.com/feross/standard) + +## Installation + +``` +npm install is-lambda +``` + +## Usage + +```js +var isLambda = require('is-lambda') + +if (isLambda) { + console.log('The code is running on a AWS Lambda') +} +``` + +## License + +MIT diff --git a/node_modules/is-lambda/index.js b/node_modules/is-lambda/index.js new file mode 100644 index 0000000..b245ab1 --- /dev/null +++ b/node_modules/is-lambda/index.js @@ -0,0 +1,6 @@ +'use strict' + +module.exports = !!( + (process.env.LAMBDA_TASK_ROOT && process.env.AWS_EXECUTION_ENV) || + false +) diff --git a/node_modules/is-lambda/package.json b/node_modules/is-lambda/package.json new file mode 100644 index 0000000..d855089 --- /dev/null +++ b/node_modules/is-lambda/package.json @@ -0,0 +1,35 @@ +{ + "name": "is-lambda", + "version": "1.0.1", + "description": "Detect if your code is running on an AWS Lambda server", + "main": "index.js", + "dependencies": {}, + "devDependencies": { + "clear-require": "^1.0.1", + "standard": "^10.0.2" + }, + "scripts": { + "test": "standard && node test.js" + }, + "repository": { + "type": "git", + "url": "https://github.com/watson/is-lambda.git" + }, + "keywords": [ + "aws", + "hosting", + "hosted", + "lambda", + "detect" + ], + "author": "Thomas Watson Steen (https://twitter.com/wa7son)", + "license": "MIT", + "bugs": { + "url": "https://github.com/watson/is-lambda/issues" + }, + "homepage": "https://github.com/watson/is-lambda", + "coordinates": [ + 37.3859955, + -122.0838831 + ] +} diff --git a/node_modules/is-lambda/test.js b/node_modules/is-lambda/test.js new file mode 100644 index 0000000..e8e7325 --- /dev/null +++ b/node_modules/is-lambda/test.js @@ -0,0 +1,16 @@ +'use strict' + +var assert = require('assert') +var clearRequire = require('clear-require') + +process.env.AWS_EXECUTION_ENV = 'AWS_Lambda_nodejs6.10' +process.env.LAMBDA_TASK_ROOT = '/var/task' + +var isCI = require('./') +assert(isCI) + +delete process.env.AWS_EXECUTION_ENV + +clearRequire('./') +isCI = require('./') +assert(!isCI) diff --git a/node_modules/is-npm/index.d.ts b/node_modules/is-npm/index.d.ts new file mode 100644 index 0000000..5338775 --- /dev/null +++ b/node_modules/is-npm/index.d.ts @@ -0,0 +1,41 @@ +/** +Check if your code is running as an [npm](https://docs.npmjs.com/misc/scripts) or [yarn](https://yarnpkg.com/lang/en/docs/cli/run/) script. + +@example +``` +import {isNpmOrYarn} from 'is-npm'; + +if (isNpmOrYarn) { + console.log('Running as an npm or yarn script!'); +} +``` +*/ +export const isNpmOrYarn: boolean; + +/** +Check if your code is running as an [npm](https://docs.npmjs.com/misc/scripts) script. + +@example +``` +import {isNpm} from 'is-npm'; + +if (isNpm) { + console.log('Running as an npm script!'); +} +``` +*/ +export const isNpm: boolean; + +/** +Check if your code is running as a [yarn](https://yarnpkg.com/lang/en/docs/cli/run/) script. + +@example +``` +import {isYarn} from 'is-npm'; + +if (isYarn) { + console.log('Running as a yarn script!'); +} +``` +*/ +export const isYarn: boolean; diff --git a/node_modules/is-npm/index.js b/node_modules/is-npm/index.js new file mode 100644 index 0000000..000a893 --- /dev/null +++ b/node_modules/is-npm/index.js @@ -0,0 +1,11 @@ +'use strict'; + +const packageJson = process.env.npm_package_json; +const userAgent = process.env.npm_config_user_agent; +const isYarn = Boolean(userAgent && userAgent.startsWith('yarn')); +const isNpm = Boolean(userAgent && userAgent.startsWith('npm')); +const isNpm7 = Boolean(packageJson && packageJson.endsWith('package.json')); + +module.exports.isNpmOrYarn = isNpm || isNpm7 || isYarn; +module.exports.isNpm = isNpm || isNpm7; +module.exports.isYarn = isYarn; diff --git a/node_modules/is-npm/license b/node_modules/is-npm/license new file mode 100644 index 0000000..fa7ceba --- /dev/null +++ b/node_modules/is-npm/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (https://sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/is-npm/package.json b/node_modules/is-npm/package.json new file mode 100644 index 0000000..fad5d25 --- /dev/null +++ b/node_modules/is-npm/package.json @@ -0,0 +1,39 @@ +{ + "name": "is-npm", + "version": "5.0.0", + "description": "Check if your code is running as an npm script", + "license": "MIT", + "repository": "sindresorhus/is-npm", + "funding": "https://github.com/sponsors/sindresorhus", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "https://sindresorhus.com" + }, + "engines": { + "node": ">=10" + }, + "scripts": { + "test": "xo && ava && tsd" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "npm", + "yarn", + "is", + "check", + "detect", + "env", + "environment", + "run", + "script" + ], + "devDependencies": { + "ava": "^2.4.0", + "tsd": "^0.11.0", + "xo": "^0.30.0" + } +} diff --git a/node_modules/is-npm/readme.md b/node_modules/is-npm/readme.md new file mode 100644 index 0000000..b18ba10 --- /dev/null +++ b/node_modules/is-npm/readme.md @@ -0,0 +1,60 @@ +# is-npm [![Build Status](https://travis-ci.com/sindresorhus/is-npm.svg?branch=master)](https://travis-ci.com/sindresorhus/is-npm) + +> Check if your code is running as an [npm](https://docs.npmjs.com/misc/scripts) or [yarn](https://yarnpkg.com/lang/en/docs/cli/run/) script + +## Install + +``` +$ npm install is-npm +``` + +## Usage + +```js +const {isNpmOrYarn, isNpm, isYarn} = require('is-npm'); + +console.table({isNpmOrYarn, isNpm, isYarn}); +``` + +```sh +$ node foo.js +# ┌─────────────┬────────┐ +# │ (index) │ Values │ +# ├─────────────┼────────┤ +# │ isNpmOrYarn │ false │ +# │ isNpm │ false │ +# │ isYarn │ false │ +# └─────────────┴────────┘ +$ npm run foo +# ┌─────────────┬────────┐ +# │ (index) │ Values │ +# ├─────────────┼────────┤ +# │ isNpmOrYarn │ true │ +# │ isNpm │ true │ +# │ isYarn │ false │ +# └─────────────┴────────┘ +$ yarn run foo +# ┌─────────────┬────────┐ +# │ (index) │ Values │ +# ├─────────────┼────────┤ +# │ isNpmOrYarn │ true │ +# │ isNpm │ false │ +# │ isYarn │ true │ +# └─────────────┴────────┘ +``` + +## Related + +- [is-npm-cli](https://github.com/sindresorhus/is-npm-cli) - CLI for this module + +--- + +
+ + Get professional support for this package with a Tidelift subscription + +
+ + Tidelift helps make open source sustainable for maintainers while giving companies
assurances about security, maintenance, and licensing for their dependencies. +
+
diff --git a/node_modules/is-obj/index.d.ts b/node_modules/is-obj/index.d.ts new file mode 100644 index 0000000..e8a985a --- /dev/null +++ b/node_modules/is-obj/index.d.ts @@ -0,0 +1,22 @@ +/** +Check if a value is an object. + +Keep in mind that array, function, regexp, etc, are objects in JavaScript. + +@example +``` +import isObject = require('is-obj'); + +isObject({foo: 'bar'}); +//=> true + +isObject([1, 2, 3]); +//=> true + +isObject('foo'); +//=> false +``` +*/ +declare function isObject(value: unknown): value is object; + +export = isObject; diff --git a/node_modules/is-obj/index.js b/node_modules/is-obj/index.js new file mode 100644 index 0000000..c175590 --- /dev/null +++ b/node_modules/is-obj/index.js @@ -0,0 +1,6 @@ +'use strict'; + +module.exports = value => { + const type = typeof value; + return value !== null && (type === 'object' || type === 'function'); +}; diff --git a/node_modules/is-obj/license b/node_modules/is-obj/license new file mode 100644 index 0000000..e7af2f7 --- /dev/null +++ b/node_modules/is-obj/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/is-obj/package.json b/node_modules/is-obj/package.json new file mode 100644 index 0000000..470cd61 --- /dev/null +++ b/node_modules/is-obj/package.json @@ -0,0 +1,34 @@ +{ + "name": "is-obj", + "version": "2.0.0", + "description": "Check if a value is an object", + "license": "MIT", + "repository": "sindresorhus/is-obj", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "object", + "is", + "check", + "test", + "type" + ], + "devDependencies": { + "ava": "^1.4.1", + "tsd": "^0.7.2", + "xo": "^0.24.0" + } +} diff --git a/node_modules/is-obj/readme.md b/node_modules/is-obj/readme.md new file mode 100644 index 0000000..127ee26 --- /dev/null +++ b/node_modules/is-obj/readme.md @@ -0,0 +1,39 @@ +# is-obj [![Build Status](https://travis-ci.org/sindresorhus/is-obj.svg?branch=master)](https://travis-ci.org/sindresorhus/is-obj) + +> Check if a value is an object + +Keep in mind that array, function, regexp, etc, are objects in JavaScript.
+See [`is-plain-obj`](https://github.com/sindresorhus/is-plain-obj) if you want to check for plain objects. + + +## Install + +``` +$ npm install is-obj +``` + + +## Usage + +```js +const isObject = require('is-obj'); + +isObject({foo: 'bar'}); +//=> true + +isObject([1, 2, 3]); +//=> true + +isObject('foo'); +//=> false +``` + + +## Related + +- [is](https://github.com/sindresorhus/is) - Type check values + + +## License + +MIT © [Sindre Sorhus](https://sindresorhus.com) diff --git a/node_modules/is-path-inside/index.d.ts b/node_modules/is-path-inside/index.d.ts new file mode 100644 index 0000000..5cc3d80 --- /dev/null +++ b/node_modules/is-path-inside/index.d.ts @@ -0,0 +1,27 @@ +/** +Check if a path is inside another path. + +Note that relative paths are resolved against `process.cwd()` to make them absolute. + +_Important:_ This package is meant for use with path manipulation. It does not check if the paths exist nor does it resolve symlinks. You should not use this as a security mechanism to guard against access to certain places on the file system. + +@example +``` +import isPathInside = require('is-path-inside'); + +isPathInside('a/b/c', 'a/b'); +//=> true + +isPathInside('a/b/c', 'x/y'); +//=> false + +isPathInside('a/b/c', 'a/b/c'); +//=> false + +isPathInside('/Users/sindresorhus/dev/unicorn', '/Users/sindresorhus'); +//=> true +``` +*/ +declare function isPathInside(childPath: string, parentPath: string): boolean; + +export = isPathInside; diff --git a/node_modules/is-path-inside/index.js b/node_modules/is-path-inside/index.js new file mode 100644 index 0000000..28ed79c --- /dev/null +++ b/node_modules/is-path-inside/index.js @@ -0,0 +1,12 @@ +'use strict'; +const path = require('path'); + +module.exports = (childPath, parentPath) => { + const relation = path.relative(parentPath, childPath); + return Boolean( + relation && + relation !== '..' && + !relation.startsWith(`..${path.sep}`) && + relation !== path.resolve(childPath) + ); +}; diff --git a/node_modules/is-path-inside/license b/node_modules/is-path-inside/license new file mode 100644 index 0000000..e7af2f7 --- /dev/null +++ b/node_modules/is-path-inside/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/is-path-inside/package.json b/node_modules/is-path-inside/package.json new file mode 100644 index 0000000..88c154a --- /dev/null +++ b/node_modules/is-path-inside/package.json @@ -0,0 +1,36 @@ +{ + "name": "is-path-inside", + "version": "3.0.3", + "description": "Check if a path is inside another path", + "license": "MIT", + "repository": "sindresorhus/is-path-inside", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "path", + "inside", + "folder", + "directory", + "dir", + "file", + "resolve" + ], + "devDependencies": { + "ava": "^2.1.0", + "tsd": "^0.7.2", + "xo": "^0.24.0" + } +} diff --git a/node_modules/is-path-inside/readme.md b/node_modules/is-path-inside/readme.md new file mode 100644 index 0000000..e8c4f92 --- /dev/null +++ b/node_modules/is-path-inside/readme.md @@ -0,0 +1,63 @@ +# is-path-inside + +> Check if a path is inside another path + + +## Install + +``` +$ npm install is-path-inside +``` + + +## Usage + +```js +const isPathInside = require('is-path-inside'); + +isPathInside('a/b/c', 'a/b'); +//=> true + +isPathInside('a/b/c', 'x/y'); +//=> false + +isPathInside('a/b/c', 'a/b/c'); +//=> false + +isPathInside('/Users/sindresorhus/dev/unicorn', '/Users/sindresorhus'); +//=> true +``` + + +## API + +### isPathInside(childPath, parentPath) + +Note that relative paths are resolved against `process.cwd()` to make them absolute. + +**Important:** This package is meant for use with path manipulation. It does not check if the paths exist nor does it resolve symlinks. You should not use this as a security mechanism to guard against access to certain places on the file system. + +#### childPath + +Type: `string` + +The path that should be inside `parentPath`. + +#### parentPath + +Type: `string` + +The path that should contain `childPath`. + + +--- + +
+ + Get professional support for this package with a Tidelift subscription + +
+ + Tidelift helps make open source sustainable for maintainers while giving companies
assurances about security, maintenance, and licensing for their dependencies. +
+
diff --git a/node_modules/is-typedarray/LICENSE.md b/node_modules/is-typedarray/LICENSE.md new file mode 100644 index 0000000..ee27ba4 --- /dev/null +++ b/node_modules/is-typedarray/LICENSE.md @@ -0,0 +1,18 @@ +This software is released under the MIT license: + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/is-typedarray/README.md b/node_modules/is-typedarray/README.md new file mode 100644 index 0000000..2752863 --- /dev/null +++ b/node_modules/is-typedarray/README.md @@ -0,0 +1,16 @@ +# is-typedarray [![locked](http://badges.github.io/stability-badges/dist/locked.svg)](http://github.com/badges/stability-badges) + +Detect whether or not an object is a +[Typed Array](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Typed_arrays). + +## Usage + +[![NPM](https://nodei.co/npm/is-typedarray.png)](https://nodei.co/npm/is-typedarray/) + +### isTypedArray(array) + +Returns `true` when array is a Typed Array, and `false` when it is not. + +## License + +MIT. See [LICENSE.md](http://github.com/hughsk/is-typedarray/blob/master/LICENSE.md) for details. diff --git a/node_modules/is-typedarray/index.js b/node_modules/is-typedarray/index.js new file mode 100644 index 0000000..5859603 --- /dev/null +++ b/node_modules/is-typedarray/index.js @@ -0,0 +1,41 @@ +module.exports = isTypedArray +isTypedArray.strict = isStrictTypedArray +isTypedArray.loose = isLooseTypedArray + +var toString = Object.prototype.toString +var names = { + '[object Int8Array]': true + , '[object Int16Array]': true + , '[object Int32Array]': true + , '[object Uint8Array]': true + , '[object Uint8ClampedArray]': true + , '[object Uint16Array]': true + , '[object Uint32Array]': true + , '[object Float32Array]': true + , '[object Float64Array]': true +} + +function isTypedArray(arr) { + return ( + isStrictTypedArray(arr) + || isLooseTypedArray(arr) + ) +} + +function isStrictTypedArray(arr) { + return ( + arr instanceof Int8Array + || arr instanceof Int16Array + || arr instanceof Int32Array + || arr instanceof Uint8Array + || arr instanceof Uint8ClampedArray + || arr instanceof Uint16Array + || arr instanceof Uint32Array + || arr instanceof Float32Array + || arr instanceof Float64Array + ) +} + +function isLooseTypedArray(arr) { + return names[toString.call(arr)] +} diff --git a/node_modules/is-typedarray/package.json b/node_modules/is-typedarray/package.json new file mode 100644 index 0000000..37f7ae3 --- /dev/null +++ b/node_modules/is-typedarray/package.json @@ -0,0 +1,30 @@ +{ + "name": "is-typedarray", + "version": "1.0.0", + "description": "Detect whether or not an object is a Typed Array", + "main": "index.js", + "scripts": { + "test": "node test" + }, + "author": "Hugh Kennedy (http://hughsk.io/)", + "license": "MIT", + "dependencies": {}, + "devDependencies": { + "tape": "^2.13.1" + }, + "repository": { + "type": "git", + "url": "git://github.com/hughsk/is-typedarray.git" + }, + "keywords": [ + "typed", + "array", + "detect", + "is", + "util" + ], + "bugs": { + "url": "https://github.com/hughsk/is-typedarray/issues" + }, + "homepage": "https://github.com/hughsk/is-typedarray" +} diff --git a/node_modules/is-typedarray/test.js b/node_modules/is-typedarray/test.js new file mode 100644 index 0000000..b0c176f --- /dev/null +++ b/node_modules/is-typedarray/test.js @@ -0,0 +1,34 @@ +var test = require('tape') +var ista = require('./') + +test('strict', function(t) { + t.ok(ista.strict(new Int8Array), 'Int8Array') + t.ok(ista.strict(new Int16Array), 'Int16Array') + t.ok(ista.strict(new Int32Array), 'Int32Array') + t.ok(ista.strict(new Uint8Array), 'Uint8Array') + t.ok(ista.strict(new Uint16Array), 'Uint16Array') + t.ok(ista.strict(new Uint32Array), 'Uint32Array') + t.ok(ista.strict(new Float32Array), 'Float32Array') + t.ok(ista.strict(new Float64Array), 'Float64Array') + + t.ok(!ista.strict(new Array), 'Array') + t.ok(!ista.strict([]), '[]') + + t.end() +}) + +test('loose', function(t) { + t.ok(ista.loose(new Int8Array), 'Int8Array') + t.ok(ista.loose(new Int16Array), 'Int16Array') + t.ok(ista.loose(new Int32Array), 'Int32Array') + t.ok(ista.loose(new Uint8Array), 'Uint8Array') + t.ok(ista.loose(new Uint16Array), 'Uint16Array') + t.ok(ista.loose(new Uint32Array), 'Uint32Array') + t.ok(ista.loose(new Float32Array), 'Float32Array') + t.ok(ista.loose(new Float64Array), 'Float64Array') + + t.ok(!ista.loose(new Array), 'Array') + t.ok(!ista.loose([]), '[]') + + t.end() +}) diff --git a/node_modules/is-wsl/index.d.ts b/node_modules/is-wsl/index.d.ts new file mode 100644 index 0000000..d54e4ba --- /dev/null +++ b/node_modules/is-wsl/index.d.ts @@ -0,0 +1,15 @@ +/** +Check if the process is running inside [Windows Subsystem for Linux](https://msdn.microsoft.com/commandline/wsl/about) (Bash on Windows). + +@example +``` +import isWsl = require('is-wsl'); + +// When running inside Windows Subsystem for Linux +console.log(isWsl); +//=> true +``` +*/ +declare const isWsl: boolean; + +export = isWsl; diff --git a/node_modules/is-wsl/index.js b/node_modules/is-wsl/index.js new file mode 100644 index 0000000..eb6313f --- /dev/null +++ b/node_modules/is-wsl/index.js @@ -0,0 +1,31 @@ +'use strict'; +const os = require('os'); +const fs = require('fs'); +const isDocker = require('is-docker'); + +const isWsl = () => { + if (process.platform !== 'linux') { + return false; + } + + if (os.release().toLowerCase().includes('microsoft')) { + if (isDocker()) { + return false; + } + + return true; + } + + try { + return fs.readFileSync('/proc/version', 'utf8').toLowerCase().includes('microsoft') ? + !isDocker() : false; + } catch (_) { + return false; + } +}; + +if (process.env.__IS_WSL_TEST__) { + module.exports = isWsl; +} else { + module.exports = isWsl(); +} diff --git a/node_modules/is-wsl/license b/node_modules/is-wsl/license new file mode 100644 index 0000000..e7af2f7 --- /dev/null +++ b/node_modules/is-wsl/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/is-wsl/package.json b/node_modules/is-wsl/package.json new file mode 100644 index 0000000..2fa7f75 --- /dev/null +++ b/node_modules/is-wsl/package.json @@ -0,0 +1,45 @@ +{ + "name": "is-wsl", + "version": "2.2.0", + "description": "Check if the process is running inside Windows Subsystem for Linux (Bash on Windows)", + "license": "MIT", + "repository": "sindresorhus/is-wsl", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "check", + "wsl", + "windows", + "subsystem", + "linux", + "detect", + "bash", + "process", + "console", + "terminal", + "is" + ], + "dependencies": { + "is-docker": "^2.0.0" + }, + "devDependencies": { + "ava": "^1.4.1", + "clear-module": "^3.2.0", + "proxyquire": "^2.1.0", + "tsd": "^0.7.2", + "xo": "^0.24.0" + } +} diff --git a/node_modules/is-wsl/readme.md b/node_modules/is-wsl/readme.md new file mode 100644 index 0000000..5fe44fe --- /dev/null +++ b/node_modules/is-wsl/readme.md @@ -0,0 +1,36 @@ +# is-wsl [![Build Status](https://travis-ci.org/sindresorhus/is-wsl.svg?branch=master)](https://travis-ci.org/sindresorhus/is-wsl) + +> Check if the process is running inside [Windows Subsystem for Linux](https://msdn.microsoft.com/commandline/wsl/about) (Bash on Windows) + +Can be useful if you need to work around unimplemented or buggy features in WSL. Supports both WSL 1 and WSL 2. + + +## Install + +``` +$ npm install is-wsl +``` + + +## Usage + +```js +const isWsl = require('is-wsl'); + +// When running inside Windows Subsystem for Linux +console.log(isWsl); +//=> true +``` + + +--- + +
+ + Get professional support for this package with a Tidelift subscription + +
+ + Tidelift helps make open source sustainable for maintainers while giving companies
assurances about security, maintenance, and licensing for their dependencies. +
+
diff --git a/node_modules/is-yarn-global/.travis.yml b/node_modules/is-yarn-global/.travis.yml new file mode 100644 index 0000000..c576a02 --- /dev/null +++ b/node_modules/is-yarn-global/.travis.yml @@ -0,0 +1,4 @@ +language: node_js +node_js: + - "8" + - "6" diff --git a/node_modules/is-yarn-global/LICENSE b/node_modules/is-yarn-global/LICENSE new file mode 100644 index 0000000..04d3e31 --- /dev/null +++ b/node_modules/is-yarn-global/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2018 LitoMore + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/node_modules/is-yarn-global/README.md b/node_modules/is-yarn-global/README.md new file mode 100644 index 0000000..d070e2a --- /dev/null +++ b/node_modules/is-yarn-global/README.md @@ -0,0 +1,28 @@ +# is-yarn-global + +[![](https://img.shields.io/travis/LitoMore/is-yarn-global/master.svg)](https://travis-ci.org/LitoMore/is-yarn-global) +[![](https://img.shields.io/npm/v/is-yarn-global.svg)](https://www.npmjs.com/package/is-yarn-global) +[![](https://img.shields.io/npm/l/is-yarn-global.svg)](https://github.com/LitoMore/is-yarn-global/blob/master/LICENSE) +[![](https://img.shields.io/badge/code_style-XO-5ed9c7.svg)](https://github.com/sindresorhus/xo) + +Check if installed by yarn globally without any `fs` calls + +## Install + +```bash +$ npm install is-yarn-global +``` + +## Usage + +Just require it in your package. + +```javascript +const isYarnGlobal = require('is-yarn-global'); + +console.log(isYarnGlobal()); +``` + +## License + +MIT © [LitoMore](https://github.com/LitoMore) diff --git a/node_modules/is-yarn-global/index.js b/node_modules/is-yarn-global/index.js new file mode 100644 index 0000000..4d0c642 --- /dev/null +++ b/node_modules/is-yarn-global/index.js @@ -0,0 +1,12 @@ +'use strict'; + +const path = require('path'); + +module.exports = function () { + const isWindows = process.platform === 'win32'; + const yarnPath = isWindows ? path.join('Yarn', 'config', 'global') : path.join('.config', 'yarn', 'global'); + if (__dirname.includes(yarnPath)) { + return true; + } + return false; +}; diff --git a/node_modules/is-yarn-global/package.json b/node_modules/is-yarn-global/package.json new file mode 100644 index 0000000..759ae00 --- /dev/null +++ b/node_modules/is-yarn-global/package.json @@ -0,0 +1,15 @@ +{ + "name": "is-yarn-global", + "version": "0.3.0", + "description": "Check if installed by yarn globally without any `fs` calls", + "repository": "git@github.com:LitoMore/is-yarn-global.git", + "author": "LitoMore (litomore@gmail.com)", + "license": "MIT", + "scripts": { + "test": "xo" + }, + "devDependencies": { + "ava": "^0.24.0", + "xo": "^0.18.2" + } +} diff --git a/node_modules/isarray/.npmignore b/node_modules/isarray/.npmignore new file mode 100644 index 0000000..3c3629e --- /dev/null +++ b/node_modules/isarray/.npmignore @@ -0,0 +1 @@ +node_modules diff --git a/node_modules/isarray/.travis.yml b/node_modules/isarray/.travis.yml new file mode 100644 index 0000000..cc4dba2 --- /dev/null +++ b/node_modules/isarray/.travis.yml @@ -0,0 +1,4 @@ +language: node_js +node_js: + - "0.8" + - "0.10" diff --git a/node_modules/isarray/Makefile b/node_modules/isarray/Makefile new file mode 100644 index 0000000..787d56e --- /dev/null +++ b/node_modules/isarray/Makefile @@ -0,0 +1,6 @@ + +test: + @node_modules/.bin/tape test.js + +.PHONY: test + diff --git a/node_modules/isarray/README.md b/node_modules/isarray/README.md new file mode 100644 index 0000000..16d2c59 --- /dev/null +++ b/node_modules/isarray/README.md @@ -0,0 +1,60 @@ + +# isarray + +`Array#isArray` for older browsers. + +[![build status](https://secure.travis-ci.org/juliangruber/isarray.svg)](http://travis-ci.org/juliangruber/isarray) +[![downloads](https://img.shields.io/npm/dm/isarray.svg)](https://www.npmjs.org/package/isarray) + +[![browser support](https://ci.testling.com/juliangruber/isarray.png) +](https://ci.testling.com/juliangruber/isarray) + +## Usage + +```js +var isArray = require('isarray'); + +console.log(isArray([])); // => true +console.log(isArray({})); // => false +``` + +## Installation + +With [npm](http://npmjs.org) do + +```bash +$ npm install isarray +``` + +Then bundle for the browser with +[browserify](https://github.com/substack/browserify). + +With [component](http://component.io) do + +```bash +$ component install juliangruber/isarray +``` + +## License + +(MIT) + +Copyright (c) 2013 Julian Gruber <julian@juliangruber.com> + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/node_modules/isarray/component.json b/node_modules/isarray/component.json new file mode 100644 index 0000000..9e31b68 --- /dev/null +++ b/node_modules/isarray/component.json @@ -0,0 +1,19 @@ +{ + "name" : "isarray", + "description" : "Array#isArray for older browsers", + "version" : "0.0.1", + "repository" : "juliangruber/isarray", + "homepage": "https://github.com/juliangruber/isarray", + "main" : "index.js", + "scripts" : [ + "index.js" + ], + "dependencies" : {}, + "keywords": ["browser","isarray","array"], + "author": { + "name": "Julian Gruber", + "email": "mail@juliangruber.com", + "url": "http://juliangruber.com" + }, + "license": "MIT" +} diff --git a/node_modules/isarray/index.js b/node_modules/isarray/index.js new file mode 100644 index 0000000..a57f634 --- /dev/null +++ b/node_modules/isarray/index.js @@ -0,0 +1,5 @@ +var toString = {}.toString; + +module.exports = Array.isArray || function (arr) { + return toString.call(arr) == '[object Array]'; +}; diff --git a/node_modules/isarray/package.json b/node_modules/isarray/package.json new file mode 100644 index 0000000..1a4317a --- /dev/null +++ b/node_modules/isarray/package.json @@ -0,0 +1,45 @@ +{ + "name": "isarray", + "description": "Array#isArray for older browsers", + "version": "1.0.0", + "repository": { + "type": "git", + "url": "git://github.com/juliangruber/isarray.git" + }, + "homepage": "https://github.com/juliangruber/isarray", + "main": "index.js", + "dependencies": {}, + "devDependencies": { + "tape": "~2.13.4" + }, + "keywords": [ + "browser", + "isarray", + "array" + ], + "author": { + "name": "Julian Gruber", + "email": "mail@juliangruber.com", + "url": "http://juliangruber.com" + }, + "license": "MIT", + "testling": { + "files": "test.js", + "browsers": [ + "ie/8..latest", + "firefox/17..latest", + "firefox/nightly", + "chrome/22..latest", + "chrome/canary", + "opera/12..latest", + "opera/next", + "safari/5.1..latest", + "ipad/6.0..latest", + "iphone/6.0..latest", + "android-browser/4.2..latest" + ] + }, + "scripts": { + "test": "tape test.js" + } +} diff --git a/node_modules/isarray/test.js b/node_modules/isarray/test.js new file mode 100644 index 0000000..e0c3444 --- /dev/null +++ b/node_modules/isarray/test.js @@ -0,0 +1,20 @@ +var isArray = require('./'); +var test = require('tape'); + +test('is array', function(t){ + t.ok(isArray([])); + t.notOk(isArray({})); + t.notOk(isArray(null)); + t.notOk(isArray(false)); + + var obj = {}; + obj[0] = true; + t.notOk(isArray(obj)); + + var arr = []; + arr.foo = 'bar'; + t.ok(isArray(arr)); + + t.end(); +}); + diff --git a/node_modules/isstream/.jshintrc b/node_modules/isstream/.jshintrc new file mode 100644 index 0000000..c8ef3ca --- /dev/null +++ b/node_modules/isstream/.jshintrc @@ -0,0 +1,59 @@ +{ + "predef": [ ] + , "bitwise": false + , "camelcase": false + , "curly": false + , "eqeqeq": false + , "forin": false + , "immed": false + , "latedef": false + , "noarg": true + , "noempty": true + , "nonew": true + , "plusplus": false + , "quotmark": true + , "regexp": false + , "undef": true + , "unused": true + , "strict": false + , "trailing": true + , "maxlen": 120 + , "asi": true + , "boss": true + , "debug": true + , "eqnull": true + , "esnext": true + , "evil": true + , "expr": true + , "funcscope": false + , "globalstrict": false + , "iterator": false + , "lastsemic": true + , "laxbreak": true + , "laxcomma": true + , "loopfunc": true + , "multistr": false + , "onecase": false + , "proto": false + , "regexdash": false + , "scripturl": true + , "smarttabs": false + , "shadow": false + , "sub": true + , "supernew": false + , "validthis": true + , "browser": true + , "couch": false + , "devel": false + , "dojo": false + , "mootools": false + , "node": true + , "nonstandard": true + , "prototypejs": false + , "rhino": false + , "worker": true + , "wsh": false + , "nomen": false + , "onevar": false + , "passfail": false +} \ No newline at end of file diff --git a/node_modules/isstream/.npmignore b/node_modules/isstream/.npmignore new file mode 100644 index 0000000..aa1ec1e --- /dev/null +++ b/node_modules/isstream/.npmignore @@ -0,0 +1 @@ +*.tgz diff --git a/node_modules/isstream/.travis.yml b/node_modules/isstream/.travis.yml new file mode 100644 index 0000000..1fec2ab --- /dev/null +++ b/node_modules/isstream/.travis.yml @@ -0,0 +1,12 @@ +language: node_js +node_js: + - "0.8" + - "0.10" + - "0.11" +branches: + only: + - master +notifications: + email: + - rod@vagg.org +script: npm test diff --git a/node_modules/isstream/LICENSE.md b/node_modules/isstream/LICENSE.md new file mode 100644 index 0000000..43f7153 --- /dev/null +++ b/node_modules/isstream/LICENSE.md @@ -0,0 +1,11 @@ +The MIT License (MIT) +===================== + +Copyright (c) 2015 Rod Vagg +--------------------------- + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/isstream/README.md b/node_modules/isstream/README.md new file mode 100644 index 0000000..06770e8 --- /dev/null +++ b/node_modules/isstream/README.md @@ -0,0 +1,66 @@ +# isStream + +[![Build Status](https://secure.travis-ci.org/rvagg/isstream.png)](http://travis-ci.org/rvagg/isstream) + +**Test if an object is a `Stream`** + +[![NPM](https://nodei.co/npm/isstream.svg)](https://nodei.co/npm/isstream/) + +The missing `Stream.isStream(obj)`: determine if an object is standard Node.js `Stream`. Works for Node-core `Stream` objects (for 0.8, 0.10, 0.11, and in theory, older and newer versions) and all versions of **[readable-stream](https://github.com/isaacs/readable-stream)**. + +## Usage: + +```js +var isStream = require('isstream') +var Stream = require('stream') + +isStream(new Stream()) // true + +isStream({}) // false + +isStream(new Stream.Readable()) // true +isStream(new Stream.Writable()) // true +isStream(new Stream.Duplex()) // true +isStream(new Stream.Transform()) // true +isStream(new Stream.PassThrough()) // true +``` + +## But wait! There's more! + +You can also test for `isReadable(obj)`, `isWritable(obj)` and `isDuplex(obj)` to test for implementations of Streams2 (and Streams3) base classes. + +```js +var isReadable = require('isstream').isReadable +var isWritable = require('isstream').isWritable +var isDuplex = require('isstream').isDuplex +var Stream = require('stream') + +isReadable(new Stream()) // false +isWritable(new Stream()) // false +isDuplex(new Stream()) // false + +isReadable(new Stream.Readable()) // true +isReadable(new Stream.Writable()) // false +isReadable(new Stream.Duplex()) // true +isReadable(new Stream.Transform()) // true +isReadable(new Stream.PassThrough()) // true + +isWritable(new Stream.Readable()) // false +isWritable(new Stream.Writable()) // true +isWritable(new Stream.Duplex()) // true +isWritable(new Stream.Transform()) // true +isWritable(new Stream.PassThrough()) // true + +isDuplex(new Stream.Readable()) // false +isDuplex(new Stream.Writable()) // false +isDuplex(new Stream.Duplex()) // true +isDuplex(new Stream.Transform()) // true +isDuplex(new Stream.PassThrough()) // true +``` + +*Reminder: when implementing your own streams, please [use **readable-stream** rather than core streams](http://r.va.gg/2014/06/why-i-dont-use-nodes-core-stream-module.html).* + + +## License + +**isStream** is Copyright (c) 2015 Rod Vagg [@rvagg](https://twitter.com/rvagg) and licenced under the MIT licence. All rights not explicitly granted in the MIT license are reserved. See the included LICENSE.md file for more details. diff --git a/node_modules/isstream/isstream.js b/node_modules/isstream/isstream.js new file mode 100644 index 0000000..a1d104a --- /dev/null +++ b/node_modules/isstream/isstream.js @@ -0,0 +1,27 @@ +var stream = require('stream') + + +function isStream (obj) { + return obj instanceof stream.Stream +} + + +function isReadable (obj) { + return isStream(obj) && typeof obj._read == 'function' && typeof obj._readableState == 'object' +} + + +function isWritable (obj) { + return isStream(obj) && typeof obj._write == 'function' && typeof obj._writableState == 'object' +} + + +function isDuplex (obj) { + return isReadable(obj) && isWritable(obj) +} + + +module.exports = isStream +module.exports.isReadable = isReadable +module.exports.isWritable = isWritable +module.exports.isDuplex = isDuplex diff --git a/node_modules/isstream/package.json b/node_modules/isstream/package.json new file mode 100644 index 0000000..9ee8bf8 --- /dev/null +++ b/node_modules/isstream/package.json @@ -0,0 +1,33 @@ +{ + "name": "isstream", + "version": "0.1.2", + "description": "Determine if an object is a Stream", + "main": "isstream.js", + "scripts": { + "test": "tar --xform 's/^package/readable-stream-1.0/' -zxf readable-stream-1.0.*.tgz && tar --xform 's/^package/readable-stream-1.1/' -zxf readable-stream-1.1.*.tgz && node test.js; rm -rf readable-stream-1.?/" + }, + "repository": { + "type": "git", + "url": "https://github.com/rvagg/isstream.git" + }, + "keywords": [ + "stream", + "type", + "streams", + "readable-stream", + "hippo" + ], + "devDependencies": { + "tape": "~2.12.3", + "core-util-is": "~1.0.0", + "isarray": "0.0.1", + "string_decoder": "~0.10.x", + "inherits": "~2.0.1" + }, + "author": "Rod Vagg ", + "license": "MIT", + "bugs": { + "url": "https://github.com/rvagg/isstream/issues" + }, + "homepage": "https://github.com/rvagg/isstream" +} diff --git a/node_modules/isstream/test.js b/node_modules/isstream/test.js new file mode 100644 index 0000000..8c950c5 --- /dev/null +++ b/node_modules/isstream/test.js @@ -0,0 +1,168 @@ +var tape = require('tape') + , EE = require('events').EventEmitter + , util = require('util') + + + , isStream = require('./') + , isReadable = require('./').isReadable + , isWritable = require('./').isWritable + , isDuplex = require('./').isDuplex + + , CoreStreams = require('stream') + , ReadableStream10 = require('./readable-stream-1.0/') + , ReadableStream11 = require('./readable-stream-1.1/') + + +function test (pass, type, stream) { + tape('isStream(' + type + ')', function (t) { + t.plan(1) + t.ok(pass === isStream(stream), type) + }) +} + + +function testReadable (pass, type, stream) { + tape('isReadable(' + type + ')', function (t) { + t.plan(1) + t.ok(pass === isReadable(stream), type) + }) +} + + +function testWritable (pass, type, stream) { + tape('isWritable(' + type + ')', function (t) { + t.plan(1) + t.ok(pass === isWritable(stream), type) + }) +} + + +function testDuplex (pass, type, stream) { + tape('isDuplex(' + type + ')', function (t) { + t.plan(1) + t.ok(pass === isDuplex(stream), type) + }) +} + + +[ undefined, null, '', true, false, 0, 1, 1.0, 'string', {}, function foo () {} ].forEach(function (o) { + test(false, 'non-stream / primitive: ' + (JSON.stringify(o) || (o && o.toString()) || o), o) +}) + + +test(false, 'fake stream obj', { pipe: function () {} }) + + +;(function () { + + // looks like a stream! + + function Stream () { + EE.call(this) + } + util.inherits(Stream, EE) + Stream.prototype.pipe = function () {} + Stream.Stream = Stream + + test(false, 'fake stream "new Stream()"', new Stream()) + +}()) + + +test(true, 'CoreStreams.Stream', new (CoreStreams.Stream)()) +test(true, 'CoreStreams.Readable', new (CoreStreams.Readable)()) +test(true, 'CoreStreams.Writable', new (CoreStreams.Writable)()) +test(true, 'CoreStreams.Duplex', new (CoreStreams.Duplex)()) +test(true, 'CoreStreams.Transform', new (CoreStreams.Transform)()) +test(true, 'CoreStreams.PassThrough', new (CoreStreams.PassThrough)()) + +test(true, 'ReadableStream10.Readable', new (ReadableStream10.Readable)()) +test(true, 'ReadableStream10.Writable', new (ReadableStream10.Writable)()) +test(true, 'ReadableStream10.Duplex', new (ReadableStream10.Duplex)()) +test(true, 'ReadableStream10.Transform', new (ReadableStream10.Transform)()) +test(true, 'ReadableStream10.PassThrough', new (ReadableStream10.PassThrough)()) + +test(true, 'ReadableStream11.Readable', new (ReadableStream11.Readable)()) +test(true, 'ReadableStream11.Writable', new (ReadableStream11.Writable)()) +test(true, 'ReadableStream11.Duplex', new (ReadableStream11.Duplex)()) +test(true, 'ReadableStream11.Transform', new (ReadableStream11.Transform)()) +test(true, 'ReadableStream11.PassThrough', new (ReadableStream11.PassThrough)()) + + +testReadable(false, 'CoreStreams.Stream', new (CoreStreams.Stream)()) +testReadable(true, 'CoreStreams.Readable', new (CoreStreams.Readable)()) +testReadable(false, 'CoreStreams.Writable', new (CoreStreams.Writable)()) +testReadable(true, 'CoreStreams.Duplex', new (CoreStreams.Duplex)()) +testReadable(true, 'CoreStreams.Transform', new (CoreStreams.Transform)()) +testReadable(true, 'CoreStreams.PassThrough', new (CoreStreams.PassThrough)()) + +testReadable(true, 'ReadableStream10.Readable', new (ReadableStream10.Readable)()) +testReadable(false, 'ReadableStream10.Writable', new (ReadableStream10.Writable)()) +testReadable(true, 'ReadableStream10.Duplex', new (ReadableStream10.Duplex)()) +testReadable(true, 'ReadableStream10.Transform', new (ReadableStream10.Transform)()) +testReadable(true, 'ReadableStream10.PassThrough', new (ReadableStream10.PassThrough)()) + +testReadable(true, 'ReadableStream11.Readable', new (ReadableStream11.Readable)()) +testReadable(false, 'ReadableStream11.Writable', new (ReadableStream11.Writable)()) +testReadable(true, 'ReadableStream11.Duplex', new (ReadableStream11.Duplex)()) +testReadable(true, 'ReadableStream11.Transform', new (ReadableStream11.Transform)()) +testReadable(true, 'ReadableStream11.PassThrough', new (ReadableStream11.PassThrough)()) + + +testWritable(false, 'CoreStreams.Stream', new (CoreStreams.Stream)()) +testWritable(false, 'CoreStreams.Readable', new (CoreStreams.Readable)()) +testWritable(true, 'CoreStreams.Writable', new (CoreStreams.Writable)()) +testWritable(true, 'CoreStreams.Duplex', new (CoreStreams.Duplex)()) +testWritable(true, 'CoreStreams.Transform', new (CoreStreams.Transform)()) +testWritable(true, 'CoreStreams.PassThrough', new (CoreStreams.PassThrough)()) + +testWritable(false, 'ReadableStream10.Readable', new (ReadableStream10.Readable)()) +testWritable(true, 'ReadableStream10.Writable', new (ReadableStream10.Writable)()) +testWritable(true, 'ReadableStream10.Duplex', new (ReadableStream10.Duplex)()) +testWritable(true, 'ReadableStream10.Transform', new (ReadableStream10.Transform)()) +testWritable(true, 'ReadableStream10.PassThrough', new (ReadableStream10.PassThrough)()) + +testWritable(false, 'ReadableStream11.Readable', new (ReadableStream11.Readable)()) +testWritable(true, 'ReadableStream11.Writable', new (ReadableStream11.Writable)()) +testWritable(true, 'ReadableStream11.Duplex', new (ReadableStream11.Duplex)()) +testWritable(true, 'ReadableStream11.Transform', new (ReadableStream11.Transform)()) +testWritable(true, 'ReadableStream11.PassThrough', new (ReadableStream11.PassThrough)()) + + +testDuplex(false, 'CoreStreams.Stream', new (CoreStreams.Stream)()) +testDuplex(false, 'CoreStreams.Readable', new (CoreStreams.Readable)()) +testDuplex(false, 'CoreStreams.Writable', new (CoreStreams.Writable)()) +testDuplex(true, 'CoreStreams.Duplex', new (CoreStreams.Duplex)()) +testDuplex(true, 'CoreStreams.Transform', new (CoreStreams.Transform)()) +testDuplex(true, 'CoreStreams.PassThrough', new (CoreStreams.PassThrough)()) + +testDuplex(false, 'ReadableStream10.Readable', new (ReadableStream10.Readable)()) +testDuplex(false, 'ReadableStream10.Writable', new (ReadableStream10.Writable)()) +testDuplex(true, 'ReadableStream10.Duplex', new (ReadableStream10.Duplex)()) +testDuplex(true, 'ReadableStream10.Transform', new (ReadableStream10.Transform)()) +testDuplex(true, 'ReadableStream10.PassThrough', new (ReadableStream10.PassThrough)()) + +testDuplex(false, 'ReadableStream11.Readable', new (ReadableStream11.Readable)()) +testDuplex(false, 'ReadableStream11.Writable', new (ReadableStream11.Writable)()) +testDuplex(true, 'ReadableStream11.Duplex', new (ReadableStream11.Duplex)()) +testDuplex(true, 'ReadableStream11.Transform', new (ReadableStream11.Transform)()) +testDuplex(true, 'ReadableStream11.PassThrough', new (ReadableStream11.PassThrough)()) + + +;[ CoreStreams, ReadableStream10, ReadableStream11 ].forEach(function (p) { + [ 'Stream', 'Readable', 'Writable', 'Duplex', 'Transform', 'PassThrough' ].forEach(function (k) { + if (!p[k]) + return + + function SubStream () { + p[k].call(this) + } + util.inherits(SubStream, p[k]) + + test(true, 'Stream subclass: ' + p.name + '.' + k, new SubStream()) + + }) +}) + + + diff --git a/node_modules/jsbn/.npmignore b/node_modules/jsbn/.npmignore new file mode 100644 index 0000000..28f1ba7 --- /dev/null +++ b/node_modules/jsbn/.npmignore @@ -0,0 +1,2 @@ +node_modules +.DS_Store \ No newline at end of file diff --git a/node_modules/jsbn/LICENSE b/node_modules/jsbn/LICENSE new file mode 100644 index 0000000..2a6457e --- /dev/null +++ b/node_modules/jsbn/LICENSE @@ -0,0 +1,40 @@ +Licensing +--------- + +This software is covered under the following copyright: + +/* + * Copyright (c) 2003-2005 Tom Wu + * All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining + * a copy of this software and associated documentation files (the + * "Software"), to deal in the Software without restriction, including + * without limitation the rights to use, copy, modify, merge, publish, + * distribute, sublicense, and/or sell copies of the Software, and to + * permit persons to whom the Software is furnished to do so, subject to + * the following conditions: + * + * The above copyright notice and this permission notice shall be + * included in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, + * EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY + * WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. + * + * IN NO EVENT SHALL TOM WU BE LIABLE FOR ANY SPECIAL, INCIDENTAL, + * INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER + * RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF + * THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT + * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + * + * In addition, the following condition applies: + * + * All redistributions must retain an intact copy of this copyright notice + * and disclaimer. + */ + +Address all questions regarding this license to: + + Tom Wu + tjw@cs.Stanford.EDU \ No newline at end of file diff --git a/node_modules/jsbn/README.md b/node_modules/jsbn/README.md new file mode 100644 index 0000000..7aac67f --- /dev/null +++ b/node_modules/jsbn/README.md @@ -0,0 +1,175 @@ +# jsbn: javascript big number + +[Tom Wu's Original Website](http://www-cs-students.stanford.edu/~tjw/jsbn/) + +I felt compelled to put this on github and publish to npm. I haven't tested every other big integer library out there, but the few that I have tested in comparison to this one have not even come close in performance. I am aware of the `bi` module on npm, however it has been modified and I wanted to publish the original without modifications. This is jsbn and jsbn2 from Tom Wu's original website above, with the modular pattern applied to prevent global leaks and to allow for use with node.js on the server side. + +## usage + + var BigInteger = require('jsbn'); + + var a = new BigInteger('91823918239182398123'); + alert(a.bitLength()); // 67 + + +## API + +### bi.toString() + +returns the base-10 number as a string + +### bi.negate() + +returns a new BigInteger equal to the negation of `bi` + +### bi.abs + +returns new BI of absolute value + +### bi.compareTo + + + +### bi.bitLength + + + +### bi.mod + + + +### bi.modPowInt + + + +### bi.clone + + + +### bi.intValue + + + +### bi.byteValue + + + +### bi.shortValue + + + +### bi.signum + + + +### bi.toByteArray + + + +### bi.equals + + + +### bi.min + + + +### bi.max + + + +### bi.and + + + +### bi.or + + + +### bi.xor + + + +### bi.andNot + + + +### bi.not + + + +### bi.shiftLeft + + + +### bi.shiftRight + + + +### bi.getLowestSetBit + + + +### bi.bitCount + + + +### bi.testBit + + + +### bi.setBit + + + +### bi.clearBit + + + +### bi.flipBit + + + +### bi.add + + + +### bi.subtract + + + +### bi.multiply + + + +### bi.divide + + + +### bi.remainder + + + +### bi.divideAndRemainder + + + +### bi.modPow + + + +### bi.modInverse + + + +### bi.pow + + + +### bi.gcd + + + +### bi.isProbablePrime + + diff --git a/node_modules/jsbn/example.html b/node_modules/jsbn/example.html new file mode 100644 index 0000000..7c26a56 --- /dev/null +++ b/node_modules/jsbn/example.html @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/node_modules/jsbn/example.js b/node_modules/jsbn/example.js new file mode 100644 index 0000000..664c1b4 --- /dev/null +++ b/node_modules/jsbn/example.js @@ -0,0 +1,3 @@ +var BigInteger = require('./'); +var a = new BigInteger('91823918239182398123'); +console.log(a.bitLength()); \ No newline at end of file diff --git a/node_modules/jsbn/index.js b/node_modules/jsbn/index.js new file mode 100644 index 0000000..973226d --- /dev/null +++ b/node_modules/jsbn/index.js @@ -0,0 +1,1357 @@ +(function(){ + + // Copyright (c) 2005 Tom Wu + // All Rights Reserved. + // See "LICENSE" for details. + + // Basic JavaScript BN library - subset useful for RSA encryption. + + // Bits per digit + var dbits; + + // JavaScript engine analysis + var canary = 0xdeadbeefcafe; + var j_lm = ((canary&0xffffff)==0xefcafe); + + // (public) Constructor + function BigInteger(a,b,c) { + if(a != null) + if("number" == typeof a) this.fromNumber(a,b,c); + else if(b == null && "string" != typeof a) this.fromString(a,256); + else this.fromString(a,b); + } + + // return new, unset BigInteger + function nbi() { return new BigInteger(null); } + + // am: Compute w_j += (x*this_i), propagate carries, + // c is initial carry, returns final carry. + // c < 3*dvalue, x < 2*dvalue, this_i < dvalue + // We need to select the fastest one that works in this environment. + + // am1: use a single mult and divide to get the high bits, + // max digit bits should be 26 because + // max internal value = 2*dvalue^2-2*dvalue (< 2^53) + function am1(i,x,w,j,c,n) { + while(--n >= 0) { + var v = x*this[i++]+w[j]+c; + c = Math.floor(v/0x4000000); + w[j++] = v&0x3ffffff; + } + return c; + } + // am2 avoids a big mult-and-extract completely. + // Max digit bits should be <= 30 because we do bitwise ops + // on values up to 2*hdvalue^2-hdvalue-1 (< 2^31) + function am2(i,x,w,j,c,n) { + var xl = x&0x7fff, xh = x>>15; + while(--n >= 0) { + var l = this[i]&0x7fff; + var h = this[i++]>>15; + var m = xh*l+h*xl; + l = xl*l+((m&0x7fff)<<15)+w[j]+(c&0x3fffffff); + c = (l>>>30)+(m>>>15)+xh*h+(c>>>30); + w[j++] = l&0x3fffffff; + } + return c; + } + // Alternately, set max digit bits to 28 since some + // browsers slow down when dealing with 32-bit numbers. + function am3(i,x,w,j,c,n) { + var xl = x&0x3fff, xh = x>>14; + while(--n >= 0) { + var l = this[i]&0x3fff; + var h = this[i++]>>14; + var m = xh*l+h*xl; + l = xl*l+((m&0x3fff)<<14)+w[j]+c; + c = (l>>28)+(m>>14)+xh*h; + w[j++] = l&0xfffffff; + } + return c; + } + var inBrowser = typeof navigator !== "undefined"; + if(inBrowser && j_lm && (navigator.appName == "Microsoft Internet Explorer")) { + BigInteger.prototype.am = am2; + dbits = 30; + } + else if(inBrowser && j_lm && (navigator.appName != "Netscape")) { + BigInteger.prototype.am = am1; + dbits = 26; + } + else { // Mozilla/Netscape seems to prefer am3 + BigInteger.prototype.am = am3; + dbits = 28; + } + + BigInteger.prototype.DB = dbits; + BigInteger.prototype.DM = ((1<= 0; --i) r[i] = this[i]; + r.t = this.t; + r.s = this.s; + } + + // (protected) set from integer value x, -DV <= x < DV + function bnpFromInt(x) { + this.t = 1; + this.s = (x<0)?-1:0; + if(x > 0) this[0] = x; + else if(x < -1) this[0] = x+this.DV; + else this.t = 0; + } + + // return bigint initialized to value + function nbv(i) { var r = nbi(); r.fromInt(i); return r; } + + // (protected) set from string and radix + function bnpFromString(s,b) { + var k; + if(b == 16) k = 4; + else if(b == 8) k = 3; + else if(b == 256) k = 8; // byte array + else if(b == 2) k = 1; + else if(b == 32) k = 5; + else if(b == 4) k = 2; + else { this.fromRadix(s,b); return; } + this.t = 0; + this.s = 0; + var i = s.length, mi = false, sh = 0; + while(--i >= 0) { + var x = (k==8)?s[i]&0xff:intAt(s,i); + if(x < 0) { + if(s.charAt(i) == "-") mi = true; + continue; + } + mi = false; + if(sh == 0) + this[this.t++] = x; + else if(sh+k > this.DB) { + this[this.t-1] |= (x&((1<<(this.DB-sh))-1))<>(this.DB-sh)); + } + else + this[this.t-1] |= x<= this.DB) sh -= this.DB; + } + if(k == 8 && (s[0]&0x80) != 0) { + this.s = -1; + if(sh > 0) this[this.t-1] |= ((1<<(this.DB-sh))-1)< 0 && this[this.t-1] == c) --this.t; + } + + // (public) return string representation in given radix + function bnToString(b) { + if(this.s < 0) return "-"+this.negate().toString(b); + var k; + if(b == 16) k = 4; + else if(b == 8) k = 3; + else if(b == 2) k = 1; + else if(b == 32) k = 5; + else if(b == 4) k = 2; + else return this.toRadix(b); + var km = (1< 0) { + if(p < this.DB && (d = this[i]>>p) > 0) { m = true; r = int2char(d); } + while(i >= 0) { + if(p < k) { + d = (this[i]&((1<>(p+=this.DB-k); + } + else { + d = (this[i]>>(p-=k))&km; + if(p <= 0) { p += this.DB; --i; } + } + if(d > 0) m = true; + if(m) r += int2char(d); + } + } + return m?r:"0"; + } + + // (public) -this + function bnNegate() { var r = nbi(); BigInteger.ZERO.subTo(this,r); return r; } + + // (public) |this| + function bnAbs() { return (this.s<0)?this.negate():this; } + + // (public) return + if this > a, - if this < a, 0 if equal + function bnCompareTo(a) { + var r = this.s-a.s; + if(r != 0) return r; + var i = this.t; + r = i-a.t; + if(r != 0) return (this.s<0)?-r:r; + while(--i >= 0) if((r=this[i]-a[i]) != 0) return r; + return 0; + } + + // returns bit length of the integer x + function nbits(x) { + var r = 1, t; + if((t=x>>>16) != 0) { x = t; r += 16; } + if((t=x>>8) != 0) { x = t; r += 8; } + if((t=x>>4) != 0) { x = t; r += 4; } + if((t=x>>2) != 0) { x = t; r += 2; } + if((t=x>>1) != 0) { x = t; r += 1; } + return r; + } + + // (public) return the number of bits in "this" + function bnBitLength() { + if(this.t <= 0) return 0; + return this.DB*(this.t-1)+nbits(this[this.t-1]^(this.s&this.DM)); + } + + // (protected) r = this << n*DB + function bnpDLShiftTo(n,r) { + var i; + for(i = this.t-1; i >= 0; --i) r[i+n] = this[i]; + for(i = n-1; i >= 0; --i) r[i] = 0; + r.t = this.t+n; + r.s = this.s; + } + + // (protected) r = this >> n*DB + function bnpDRShiftTo(n,r) { + for(var i = n; i < this.t; ++i) r[i-n] = this[i]; + r.t = Math.max(this.t-n,0); + r.s = this.s; + } + + // (protected) r = this << n + function bnpLShiftTo(n,r) { + var bs = n%this.DB; + var cbs = this.DB-bs; + var bm = (1<= 0; --i) { + r[i+ds+1] = (this[i]>>cbs)|c; + c = (this[i]&bm)<= 0; --i) r[i] = 0; + r[ds] = c; + r.t = this.t+ds+1; + r.s = this.s; + r.clamp(); + } + + // (protected) r = this >> n + function bnpRShiftTo(n,r) { + r.s = this.s; + var ds = Math.floor(n/this.DB); + if(ds >= this.t) { r.t = 0; return; } + var bs = n%this.DB; + var cbs = this.DB-bs; + var bm = (1<>bs; + for(var i = ds+1; i < this.t; ++i) { + r[i-ds-1] |= (this[i]&bm)<>bs; + } + if(bs > 0) r[this.t-ds-1] |= (this.s&bm)<>= this.DB; + } + if(a.t < this.t) { + c -= a.s; + while(i < this.t) { + c += this[i]; + r[i++] = c&this.DM; + c >>= this.DB; + } + c += this.s; + } + else { + c += this.s; + while(i < a.t) { + c -= a[i]; + r[i++] = c&this.DM; + c >>= this.DB; + } + c -= a.s; + } + r.s = (c<0)?-1:0; + if(c < -1) r[i++] = this.DV+c; + else if(c > 0) r[i++] = c; + r.t = i; + r.clamp(); + } + + // (protected) r = this * a, r != this,a (HAC 14.12) + // "this" should be the larger one if appropriate. + function bnpMultiplyTo(a,r) { + var x = this.abs(), y = a.abs(); + var i = x.t; + r.t = i+y.t; + while(--i >= 0) r[i] = 0; + for(i = 0; i < y.t; ++i) r[i+x.t] = x.am(0,y[i],r,i,0,x.t); + r.s = 0; + r.clamp(); + if(this.s != a.s) BigInteger.ZERO.subTo(r,r); + } + + // (protected) r = this^2, r != this (HAC 14.16) + function bnpSquareTo(r) { + var x = this.abs(); + var i = r.t = 2*x.t; + while(--i >= 0) r[i] = 0; + for(i = 0; i < x.t-1; ++i) { + var c = x.am(i,x[i],r,2*i,0,1); + if((r[i+x.t]+=x.am(i+1,2*x[i],r,2*i+1,c,x.t-i-1)) >= x.DV) { + r[i+x.t] -= x.DV; + r[i+x.t+1] = 1; + } + } + if(r.t > 0) r[r.t-1] += x.am(i,x[i],r,2*i,0,1); + r.s = 0; + r.clamp(); + } + + // (protected) divide this by m, quotient and remainder to q, r (HAC 14.20) + // r != q, this != m. q or r may be null. + function bnpDivRemTo(m,q,r) { + var pm = m.abs(); + if(pm.t <= 0) return; + var pt = this.abs(); + if(pt.t < pm.t) { + if(q != null) q.fromInt(0); + if(r != null) this.copyTo(r); + return; + } + if(r == null) r = nbi(); + var y = nbi(), ts = this.s, ms = m.s; + var nsh = this.DB-nbits(pm[pm.t-1]); // normalize modulus + if(nsh > 0) { pm.lShiftTo(nsh,y); pt.lShiftTo(nsh,r); } + else { pm.copyTo(y); pt.copyTo(r); } + var ys = y.t; + var y0 = y[ys-1]; + if(y0 == 0) return; + var yt = y0*(1<1)?y[ys-2]>>this.F2:0); + var d1 = this.FV/yt, d2 = (1<= 0) { + r[r.t++] = 1; + r.subTo(t,r); + } + BigInteger.ONE.dlShiftTo(ys,t); + t.subTo(y,y); // "negative" y so we can replace sub with am later + while(y.t < ys) y[y.t++] = 0; + while(--j >= 0) { + // Estimate quotient digit + var qd = (r[--i]==y0)?this.DM:Math.floor(r[i]*d1+(r[i-1]+e)*d2); + if((r[i]+=y.am(0,qd,r,j,0,ys)) < qd) { // Try it out + y.dlShiftTo(j,t); + r.subTo(t,r); + while(r[i] < --qd) r.subTo(t,r); + } + } + if(q != null) { + r.drShiftTo(ys,q); + if(ts != ms) BigInteger.ZERO.subTo(q,q); + } + r.t = ys; + r.clamp(); + if(nsh > 0) r.rShiftTo(nsh,r); // Denormalize remainder + if(ts < 0) BigInteger.ZERO.subTo(r,r); + } + + // (public) this mod a + function bnMod(a) { + var r = nbi(); + this.abs().divRemTo(a,null,r); + if(this.s < 0 && r.compareTo(BigInteger.ZERO) > 0) a.subTo(r,r); + return r; + } + + // Modular reduction using "classic" algorithm + function Classic(m) { this.m = m; } + function cConvert(x) { + if(x.s < 0 || x.compareTo(this.m) >= 0) return x.mod(this.m); + else return x; + } + function cRevert(x) { return x; } + function cReduce(x) { x.divRemTo(this.m,null,x); } + function cMulTo(x,y,r) { x.multiplyTo(y,r); this.reduce(r); } + function cSqrTo(x,r) { x.squareTo(r); this.reduce(r); } + + Classic.prototype.convert = cConvert; + Classic.prototype.revert = cRevert; + Classic.prototype.reduce = cReduce; + Classic.prototype.mulTo = cMulTo; + Classic.prototype.sqrTo = cSqrTo; + + // (protected) return "-1/this % 2^DB"; useful for Mont. reduction + // justification: + // xy == 1 (mod m) + // xy = 1+km + // xy(2-xy) = (1+km)(1-km) + // x[y(2-xy)] = 1-k^2m^2 + // x[y(2-xy)] == 1 (mod m^2) + // if y is 1/x mod m, then y(2-xy) is 1/x mod m^2 + // should reduce x and y(2-xy) by m^2 at each step to keep size bounded. + // JS multiply "overflows" differently from C/C++, so care is needed here. + function bnpInvDigit() { + if(this.t < 1) return 0; + var x = this[0]; + if((x&1) == 0) return 0; + var y = x&3; // y == 1/x mod 2^2 + y = (y*(2-(x&0xf)*y))&0xf; // y == 1/x mod 2^4 + y = (y*(2-(x&0xff)*y))&0xff; // y == 1/x mod 2^8 + y = (y*(2-(((x&0xffff)*y)&0xffff)))&0xffff; // y == 1/x mod 2^16 + // last step - calculate inverse mod DV directly; + // assumes 16 < DB <= 32 and assumes ability to handle 48-bit ints + y = (y*(2-x*y%this.DV))%this.DV; // y == 1/x mod 2^dbits + // we really want the negative inverse, and -DV < y < DV + return (y>0)?this.DV-y:-y; + } + + // Montgomery reduction + function Montgomery(m) { + this.m = m; + this.mp = m.invDigit(); + this.mpl = this.mp&0x7fff; + this.mph = this.mp>>15; + this.um = (1<<(m.DB-15))-1; + this.mt2 = 2*m.t; + } + + // xR mod m + function montConvert(x) { + var r = nbi(); + x.abs().dlShiftTo(this.m.t,r); + r.divRemTo(this.m,null,r); + if(x.s < 0 && r.compareTo(BigInteger.ZERO) > 0) this.m.subTo(r,r); + return r; + } + + // x/R mod m + function montRevert(x) { + var r = nbi(); + x.copyTo(r); + this.reduce(r); + return r; + } + + // x = x/R mod m (HAC 14.32) + function montReduce(x) { + while(x.t <= this.mt2) // pad x so am has enough room later + x[x.t++] = 0; + for(var i = 0; i < this.m.t; ++i) { + // faster way of calculating u0 = x[i]*mp mod DV + var j = x[i]&0x7fff; + var u0 = (j*this.mpl+(((j*this.mph+(x[i]>>15)*this.mpl)&this.um)<<15))&x.DM; + // use am to combine the multiply-shift-add into one call + j = i+this.m.t; + x[j] += this.m.am(0,u0,x,i,0,this.m.t); + // propagate carry + while(x[j] >= x.DV) { x[j] -= x.DV; x[++j]++; } + } + x.clamp(); + x.drShiftTo(this.m.t,x); + if(x.compareTo(this.m) >= 0) x.subTo(this.m,x); + } + + // r = "x^2/R mod m"; x != r + function montSqrTo(x,r) { x.squareTo(r); this.reduce(r); } + + // r = "xy/R mod m"; x,y != r + function montMulTo(x,y,r) { x.multiplyTo(y,r); this.reduce(r); } + + Montgomery.prototype.convert = montConvert; + Montgomery.prototype.revert = montRevert; + Montgomery.prototype.reduce = montReduce; + Montgomery.prototype.mulTo = montMulTo; + Montgomery.prototype.sqrTo = montSqrTo; + + // (protected) true iff this is even + function bnpIsEven() { return ((this.t>0)?(this[0]&1):this.s) == 0; } + + // (protected) this^e, e < 2^32, doing sqr and mul with "r" (HAC 14.79) + function bnpExp(e,z) { + if(e > 0xffffffff || e < 1) return BigInteger.ONE; + var r = nbi(), r2 = nbi(), g = z.convert(this), i = nbits(e)-1; + g.copyTo(r); + while(--i >= 0) { + z.sqrTo(r,r2); + if((e&(1< 0) z.mulTo(r2,g,r); + else { var t = r; r = r2; r2 = t; } + } + return z.revert(r); + } + + // (public) this^e % m, 0 <= e < 2^32 + function bnModPowInt(e,m) { + var z; + if(e < 256 || m.isEven()) z = new Classic(m); else z = new Montgomery(m); + return this.exp(e,z); + } + + // protected + BigInteger.prototype.copyTo = bnpCopyTo; + BigInteger.prototype.fromInt = bnpFromInt; + BigInteger.prototype.fromString = bnpFromString; + BigInteger.prototype.clamp = bnpClamp; + BigInteger.prototype.dlShiftTo = bnpDLShiftTo; + BigInteger.prototype.drShiftTo = bnpDRShiftTo; + BigInteger.prototype.lShiftTo = bnpLShiftTo; + BigInteger.prototype.rShiftTo = bnpRShiftTo; + BigInteger.prototype.subTo = bnpSubTo; + BigInteger.prototype.multiplyTo = bnpMultiplyTo; + BigInteger.prototype.squareTo = bnpSquareTo; + BigInteger.prototype.divRemTo = bnpDivRemTo; + BigInteger.prototype.invDigit = bnpInvDigit; + BigInteger.prototype.isEven = bnpIsEven; + BigInteger.prototype.exp = bnpExp; + + // public + BigInteger.prototype.toString = bnToString; + BigInteger.prototype.negate = bnNegate; + BigInteger.prototype.abs = bnAbs; + BigInteger.prototype.compareTo = bnCompareTo; + BigInteger.prototype.bitLength = bnBitLength; + BigInteger.prototype.mod = bnMod; + BigInteger.prototype.modPowInt = bnModPowInt; + + // "constants" + BigInteger.ZERO = nbv(0); + BigInteger.ONE = nbv(1); + + // Copyright (c) 2005-2009 Tom Wu + // All Rights Reserved. + // See "LICENSE" for details. + + // Extended JavaScript BN functions, required for RSA private ops. + + // Version 1.1: new BigInteger("0", 10) returns "proper" zero + // Version 1.2: square() API, isProbablePrime fix + + // (public) + function bnClone() { var r = nbi(); this.copyTo(r); return r; } + + // (public) return value as integer + function bnIntValue() { + if(this.s < 0) { + if(this.t == 1) return this[0]-this.DV; + else if(this.t == 0) return -1; + } + else if(this.t == 1) return this[0]; + else if(this.t == 0) return 0; + // assumes 16 < DB < 32 + return ((this[1]&((1<<(32-this.DB))-1))<>24; } + + // (public) return value as short (assumes DB>=16) + function bnShortValue() { return (this.t==0)?this.s:(this[0]<<16)>>16; } + + // (protected) return x s.t. r^x < DV + function bnpChunkSize(r) { return Math.floor(Math.LN2*this.DB/Math.log(r)); } + + // (public) 0 if this == 0, 1 if this > 0 + function bnSigNum() { + if(this.s < 0) return -1; + else if(this.t <= 0 || (this.t == 1 && this[0] <= 0)) return 0; + else return 1; + } + + // (protected) convert to radix string + function bnpToRadix(b) { + if(b == null) b = 10; + if(this.signum() == 0 || b < 2 || b > 36) return "0"; + var cs = this.chunkSize(b); + var a = Math.pow(b,cs); + var d = nbv(a), y = nbi(), z = nbi(), r = ""; + this.divRemTo(d,y,z); + while(y.signum() > 0) { + r = (a+z.intValue()).toString(b).substr(1) + r; + y.divRemTo(d,y,z); + } + return z.intValue().toString(b) + r; + } + + // (protected) convert from radix string + function bnpFromRadix(s,b) { + this.fromInt(0); + if(b == null) b = 10; + var cs = this.chunkSize(b); + var d = Math.pow(b,cs), mi = false, j = 0, w = 0; + for(var i = 0; i < s.length; ++i) { + var x = intAt(s,i); + if(x < 0) { + if(s.charAt(i) == "-" && this.signum() == 0) mi = true; + continue; + } + w = b*w+x; + if(++j >= cs) { + this.dMultiply(d); + this.dAddOffset(w,0); + j = 0; + w = 0; + } + } + if(j > 0) { + this.dMultiply(Math.pow(b,j)); + this.dAddOffset(w,0); + } + if(mi) BigInteger.ZERO.subTo(this,this); + } + + // (protected) alternate constructor + function bnpFromNumber(a,b,c) { + if("number" == typeof b) { + // new BigInteger(int,int,RNG) + if(a < 2) this.fromInt(1); + else { + this.fromNumber(a,c); + if(!this.testBit(a-1)) // force MSB set + this.bitwiseTo(BigInteger.ONE.shiftLeft(a-1),op_or,this); + if(this.isEven()) this.dAddOffset(1,0); // force odd + while(!this.isProbablePrime(b)) { + this.dAddOffset(2,0); + if(this.bitLength() > a) this.subTo(BigInteger.ONE.shiftLeft(a-1),this); + } + } + } + else { + // new BigInteger(int,RNG) + var x = new Array(), t = a&7; + x.length = (a>>3)+1; + b.nextBytes(x); + if(t > 0) x[0] &= ((1< 0) { + if(p < this.DB && (d = this[i]>>p) != (this.s&this.DM)>>p) + r[k++] = d|(this.s<<(this.DB-p)); + while(i >= 0) { + if(p < 8) { + d = (this[i]&((1<>(p+=this.DB-8); + } + else { + d = (this[i]>>(p-=8))&0xff; + if(p <= 0) { p += this.DB; --i; } + } + if((d&0x80) != 0) d |= -256; + if(k == 0 && (this.s&0x80) != (d&0x80)) ++k; + if(k > 0 || d != this.s) r[k++] = d; + } + } + return r; + } + + function bnEquals(a) { return(this.compareTo(a)==0); } + function bnMin(a) { return(this.compareTo(a)<0)?this:a; } + function bnMax(a) { return(this.compareTo(a)>0)?this:a; } + + // (protected) r = this op a (bitwise) + function bnpBitwiseTo(a,op,r) { + var i, f, m = Math.min(a.t,this.t); + for(i = 0; i < m; ++i) r[i] = op(this[i],a[i]); + if(a.t < this.t) { + f = a.s&this.DM; + for(i = m; i < this.t; ++i) r[i] = op(this[i],f); + r.t = this.t; + } + else { + f = this.s&this.DM; + for(i = m; i < a.t; ++i) r[i] = op(f,a[i]); + r.t = a.t; + } + r.s = op(this.s,a.s); + r.clamp(); + } + + // (public) this & a + function op_and(x,y) { return x&y; } + function bnAnd(a) { var r = nbi(); this.bitwiseTo(a,op_and,r); return r; } + + // (public) this | a + function op_or(x,y) { return x|y; } + function bnOr(a) { var r = nbi(); this.bitwiseTo(a,op_or,r); return r; } + + // (public) this ^ a + function op_xor(x,y) { return x^y; } + function bnXor(a) { var r = nbi(); this.bitwiseTo(a,op_xor,r); return r; } + + // (public) this & ~a + function op_andnot(x,y) { return x&~y; } + function bnAndNot(a) { var r = nbi(); this.bitwiseTo(a,op_andnot,r); return r; } + + // (public) ~this + function bnNot() { + var r = nbi(); + for(var i = 0; i < this.t; ++i) r[i] = this.DM&~this[i]; + r.t = this.t; + r.s = ~this.s; + return r; + } + + // (public) this << n + function bnShiftLeft(n) { + var r = nbi(); + if(n < 0) this.rShiftTo(-n,r); else this.lShiftTo(n,r); + return r; + } + + // (public) this >> n + function bnShiftRight(n) { + var r = nbi(); + if(n < 0) this.lShiftTo(-n,r); else this.rShiftTo(n,r); + return r; + } + + // return index of lowest 1-bit in x, x < 2^31 + function lbit(x) { + if(x == 0) return -1; + var r = 0; + if((x&0xffff) == 0) { x >>= 16; r += 16; } + if((x&0xff) == 0) { x >>= 8; r += 8; } + if((x&0xf) == 0) { x >>= 4; r += 4; } + if((x&3) == 0) { x >>= 2; r += 2; } + if((x&1) == 0) ++r; + return r; + } + + // (public) returns index of lowest 1-bit (or -1 if none) + function bnGetLowestSetBit() { + for(var i = 0; i < this.t; ++i) + if(this[i] != 0) return i*this.DB+lbit(this[i]); + if(this.s < 0) return this.t*this.DB; + return -1; + } + + // return number of 1 bits in x + function cbit(x) { + var r = 0; + while(x != 0) { x &= x-1; ++r; } + return r; + } + + // (public) return number of set bits + function bnBitCount() { + var r = 0, x = this.s&this.DM; + for(var i = 0; i < this.t; ++i) r += cbit(this[i]^x); + return r; + } + + // (public) true iff nth bit is set + function bnTestBit(n) { + var j = Math.floor(n/this.DB); + if(j >= this.t) return(this.s!=0); + return((this[j]&(1<<(n%this.DB)))!=0); + } + + // (protected) this op (1<>= this.DB; + } + if(a.t < this.t) { + c += a.s; + while(i < this.t) { + c += this[i]; + r[i++] = c&this.DM; + c >>= this.DB; + } + c += this.s; + } + else { + c += this.s; + while(i < a.t) { + c += a[i]; + r[i++] = c&this.DM; + c >>= this.DB; + } + c += a.s; + } + r.s = (c<0)?-1:0; + if(c > 0) r[i++] = c; + else if(c < -1) r[i++] = this.DV+c; + r.t = i; + r.clamp(); + } + + // (public) this + a + function bnAdd(a) { var r = nbi(); this.addTo(a,r); return r; } + + // (public) this - a + function bnSubtract(a) { var r = nbi(); this.subTo(a,r); return r; } + + // (public) this * a + function bnMultiply(a) { var r = nbi(); this.multiplyTo(a,r); return r; } + + // (public) this^2 + function bnSquare() { var r = nbi(); this.squareTo(r); return r; } + + // (public) this / a + function bnDivide(a) { var r = nbi(); this.divRemTo(a,r,null); return r; } + + // (public) this % a + function bnRemainder(a) { var r = nbi(); this.divRemTo(a,null,r); return r; } + + // (public) [this/a,this%a] + function bnDivideAndRemainder(a) { + var q = nbi(), r = nbi(); + this.divRemTo(a,q,r); + return new Array(q,r); + } + + // (protected) this *= n, this >= 0, 1 < n < DV + function bnpDMultiply(n) { + this[this.t] = this.am(0,n-1,this,0,0,this.t); + ++this.t; + this.clamp(); + } + + // (protected) this += n << w words, this >= 0 + function bnpDAddOffset(n,w) { + if(n == 0) return; + while(this.t <= w) this[this.t++] = 0; + this[w] += n; + while(this[w] >= this.DV) { + this[w] -= this.DV; + if(++w >= this.t) this[this.t++] = 0; + ++this[w]; + } + } + + // A "null" reducer + function NullExp() {} + function nNop(x) { return x; } + function nMulTo(x,y,r) { x.multiplyTo(y,r); } + function nSqrTo(x,r) { x.squareTo(r); } + + NullExp.prototype.convert = nNop; + NullExp.prototype.revert = nNop; + NullExp.prototype.mulTo = nMulTo; + NullExp.prototype.sqrTo = nSqrTo; + + // (public) this^e + function bnPow(e) { return this.exp(e,new NullExp()); } + + // (protected) r = lower n words of "this * a", a.t <= n + // "this" should be the larger one if appropriate. + function bnpMultiplyLowerTo(a,n,r) { + var i = Math.min(this.t+a.t,n); + r.s = 0; // assumes a,this >= 0 + r.t = i; + while(i > 0) r[--i] = 0; + var j; + for(j = r.t-this.t; i < j; ++i) r[i+this.t] = this.am(0,a[i],r,i,0,this.t); + for(j = Math.min(a.t,n); i < j; ++i) this.am(0,a[i],r,i,0,n-i); + r.clamp(); + } + + // (protected) r = "this * a" without lower n words, n > 0 + // "this" should be the larger one if appropriate. + function bnpMultiplyUpperTo(a,n,r) { + --n; + var i = r.t = this.t+a.t-n; + r.s = 0; // assumes a,this >= 0 + while(--i >= 0) r[i] = 0; + for(i = Math.max(n-this.t,0); i < a.t; ++i) + r[this.t+i-n] = this.am(n-i,a[i],r,0,0,this.t+i-n); + r.clamp(); + r.drShiftTo(1,r); + } + + // Barrett modular reduction + function Barrett(m) { + // setup Barrett + this.r2 = nbi(); + this.q3 = nbi(); + BigInteger.ONE.dlShiftTo(2*m.t,this.r2); + this.mu = this.r2.divide(m); + this.m = m; + } + + function barrettConvert(x) { + if(x.s < 0 || x.t > 2*this.m.t) return x.mod(this.m); + else if(x.compareTo(this.m) < 0) return x; + else { var r = nbi(); x.copyTo(r); this.reduce(r); return r; } + } + + function barrettRevert(x) { return x; } + + // x = x mod m (HAC 14.42) + function barrettReduce(x) { + x.drShiftTo(this.m.t-1,this.r2); + if(x.t > this.m.t+1) { x.t = this.m.t+1; x.clamp(); } + this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3); + this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2); + while(x.compareTo(this.r2) < 0) x.dAddOffset(1,this.m.t+1); + x.subTo(this.r2,x); + while(x.compareTo(this.m) >= 0) x.subTo(this.m,x); + } + + // r = x^2 mod m; x != r + function barrettSqrTo(x,r) { x.squareTo(r); this.reduce(r); } + + // r = x*y mod m; x,y != r + function barrettMulTo(x,y,r) { x.multiplyTo(y,r); this.reduce(r); } + + Barrett.prototype.convert = barrettConvert; + Barrett.prototype.revert = barrettRevert; + Barrett.prototype.reduce = barrettReduce; + Barrett.prototype.mulTo = barrettMulTo; + Barrett.prototype.sqrTo = barrettSqrTo; + + // (public) this^e % m (HAC 14.85) + function bnModPow(e,m) { + var i = e.bitLength(), k, r = nbv(1), z; + if(i <= 0) return r; + else if(i < 18) k = 1; + else if(i < 48) k = 3; + else if(i < 144) k = 4; + else if(i < 768) k = 5; + else k = 6; + if(i < 8) + z = new Classic(m); + else if(m.isEven()) + z = new Barrett(m); + else + z = new Montgomery(m); + + // precomputation + var g = new Array(), n = 3, k1 = k-1, km = (1< 1) { + var g2 = nbi(); + z.sqrTo(g[1],g2); + while(n <= km) { + g[n] = nbi(); + z.mulTo(g2,g[n-2],g[n]); + n += 2; + } + } + + var j = e.t-1, w, is1 = true, r2 = nbi(), t; + i = nbits(e[j])-1; + while(j >= 0) { + if(i >= k1) w = (e[j]>>(i-k1))&km; + else { + w = (e[j]&((1<<(i+1))-1))<<(k1-i); + if(j > 0) w |= e[j-1]>>(this.DB+i-k1); + } + + n = k; + while((w&1) == 0) { w >>= 1; --n; } + if((i -= n) < 0) { i += this.DB; --j; } + if(is1) { // ret == 1, don't bother squaring or multiplying it + g[w].copyTo(r); + is1 = false; + } + else { + while(n > 1) { z.sqrTo(r,r2); z.sqrTo(r2,r); n -= 2; } + if(n > 0) z.sqrTo(r,r2); else { t = r; r = r2; r2 = t; } + z.mulTo(r2,g[w],r); + } + + while(j >= 0 && (e[j]&(1< 0) { + x.rShiftTo(g,x); + y.rShiftTo(g,y); + } + while(x.signum() > 0) { + if((i = x.getLowestSetBit()) > 0) x.rShiftTo(i,x); + if((i = y.getLowestSetBit()) > 0) y.rShiftTo(i,y); + if(x.compareTo(y) >= 0) { + x.subTo(y,x); + x.rShiftTo(1,x); + } + else { + y.subTo(x,y); + y.rShiftTo(1,y); + } + } + if(g > 0) y.lShiftTo(g,y); + return y; + } + + // (protected) this % n, n < 2^26 + function bnpModInt(n) { + if(n <= 0) return 0; + var d = this.DV%n, r = (this.s<0)?n-1:0; + if(this.t > 0) + if(d == 0) r = this[0]%n; + else for(var i = this.t-1; i >= 0; --i) r = (d*r+this[i])%n; + return r; + } + + // (public) 1/this % m (HAC 14.61) + function bnModInverse(m) { + var ac = m.isEven(); + if((this.isEven() && ac) || m.signum() == 0) return BigInteger.ZERO; + var u = m.clone(), v = this.clone(); + var a = nbv(1), b = nbv(0), c = nbv(0), d = nbv(1); + while(u.signum() != 0) { + while(u.isEven()) { + u.rShiftTo(1,u); + if(ac) { + if(!a.isEven() || !b.isEven()) { a.addTo(this,a); b.subTo(m,b); } + a.rShiftTo(1,a); + } + else if(!b.isEven()) b.subTo(m,b); + b.rShiftTo(1,b); + } + while(v.isEven()) { + v.rShiftTo(1,v); + if(ac) { + if(!c.isEven() || !d.isEven()) { c.addTo(this,c); d.subTo(m,d); } + c.rShiftTo(1,c); + } + else if(!d.isEven()) d.subTo(m,d); + d.rShiftTo(1,d); + } + if(u.compareTo(v) >= 0) { + u.subTo(v,u); + if(ac) a.subTo(c,a); + b.subTo(d,b); + } + else { + v.subTo(u,v); + if(ac) c.subTo(a,c); + d.subTo(b,d); + } + } + if(v.compareTo(BigInteger.ONE) != 0) return BigInteger.ZERO; + if(d.compareTo(m) >= 0) return d.subtract(m); + if(d.signum() < 0) d.addTo(m,d); else return d; + if(d.signum() < 0) return d.add(m); else return d; + } + + var lowprimes = [2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997]; + var lplim = (1<<26)/lowprimes[lowprimes.length-1]; + + // (public) test primality with certainty >= 1-.5^t + function bnIsProbablePrime(t) { + var i, x = this.abs(); + if(x.t == 1 && x[0] <= lowprimes[lowprimes.length-1]) { + for(i = 0; i < lowprimes.length; ++i) + if(x[0] == lowprimes[i]) return true; + return false; + } + if(x.isEven()) return false; + i = 1; + while(i < lowprimes.length) { + var m = lowprimes[i], j = i+1; + while(j < lowprimes.length && m < lplim) m *= lowprimes[j++]; + m = x.modInt(m); + while(i < j) if(m%lowprimes[i++] == 0) return false; + } + return x.millerRabin(t); + } + + // (protected) true if probably prime (HAC 4.24, Miller-Rabin) + function bnpMillerRabin(t) { + var n1 = this.subtract(BigInteger.ONE); + var k = n1.getLowestSetBit(); + if(k <= 0) return false; + var r = n1.shiftRight(k); + t = (t+1)>>1; + if(t > lowprimes.length) t = lowprimes.length; + var a = nbi(); + for(var i = 0; i < t; ++i) { + //Pick bases at random, instead of starting at 2 + a.fromInt(lowprimes[Math.floor(Math.random()*lowprimes.length)]); + var y = a.modPow(r,this); + if(y.compareTo(BigInteger.ONE) != 0 && y.compareTo(n1) != 0) { + var j = 1; + while(j++ < k && y.compareTo(n1) != 0) { + y = y.modPowInt(2,this); + if(y.compareTo(BigInteger.ONE) == 0) return false; + } + if(y.compareTo(n1) != 0) return false; + } + } + return true; + } + + // protected + BigInteger.prototype.chunkSize = bnpChunkSize; + BigInteger.prototype.toRadix = bnpToRadix; + BigInteger.prototype.fromRadix = bnpFromRadix; + BigInteger.prototype.fromNumber = bnpFromNumber; + BigInteger.prototype.bitwiseTo = bnpBitwiseTo; + BigInteger.prototype.changeBit = bnpChangeBit; + BigInteger.prototype.addTo = bnpAddTo; + BigInteger.prototype.dMultiply = bnpDMultiply; + BigInteger.prototype.dAddOffset = bnpDAddOffset; + BigInteger.prototype.multiplyLowerTo = bnpMultiplyLowerTo; + BigInteger.prototype.multiplyUpperTo = bnpMultiplyUpperTo; + BigInteger.prototype.modInt = bnpModInt; + BigInteger.prototype.millerRabin = bnpMillerRabin; + + // public + BigInteger.prototype.clone = bnClone; + BigInteger.prototype.intValue = bnIntValue; + BigInteger.prototype.byteValue = bnByteValue; + BigInteger.prototype.shortValue = bnShortValue; + BigInteger.prototype.signum = bnSigNum; + BigInteger.prototype.toByteArray = bnToByteArray; + BigInteger.prototype.equals = bnEquals; + BigInteger.prototype.min = bnMin; + BigInteger.prototype.max = bnMax; + BigInteger.prototype.and = bnAnd; + BigInteger.prototype.or = bnOr; + BigInteger.prototype.xor = bnXor; + BigInteger.prototype.andNot = bnAndNot; + BigInteger.prototype.not = bnNot; + BigInteger.prototype.shiftLeft = bnShiftLeft; + BigInteger.prototype.shiftRight = bnShiftRight; + BigInteger.prototype.getLowestSetBit = bnGetLowestSetBit; + BigInteger.prototype.bitCount = bnBitCount; + BigInteger.prototype.testBit = bnTestBit; + BigInteger.prototype.setBit = bnSetBit; + BigInteger.prototype.clearBit = bnClearBit; + BigInteger.prototype.flipBit = bnFlipBit; + BigInteger.prototype.add = bnAdd; + BigInteger.prototype.subtract = bnSubtract; + BigInteger.prototype.multiply = bnMultiply; + BigInteger.prototype.divide = bnDivide; + BigInteger.prototype.remainder = bnRemainder; + BigInteger.prototype.divideAndRemainder = bnDivideAndRemainder; + BigInteger.prototype.modPow = bnModPow; + BigInteger.prototype.modInverse = bnModInverse; + BigInteger.prototype.pow = bnPow; + BigInteger.prototype.gcd = bnGCD; + BigInteger.prototype.isProbablePrime = bnIsProbablePrime; + + // JSBN-specific extension + BigInteger.prototype.square = bnSquare; + + // Expose the Barrett function + BigInteger.prototype.Barrett = Barrett + + // BigInteger interfaces not implemented in jsbn: + + // BigInteger(int signum, byte[] magnitude) + // double doubleValue() + // float floatValue() + // int hashCode() + // long longValue() + // static BigInteger valueOf(long val) + + // Random number generator - requires a PRNG backend, e.g. prng4.js + + // For best results, put code like + // + // in your main HTML document. + + var rng_state; + var rng_pool; + var rng_pptr; + + // Mix in a 32-bit integer into the pool + function rng_seed_int(x) { + rng_pool[rng_pptr++] ^= x & 255; + rng_pool[rng_pptr++] ^= (x >> 8) & 255; + rng_pool[rng_pptr++] ^= (x >> 16) & 255; + rng_pool[rng_pptr++] ^= (x >> 24) & 255; + if(rng_pptr >= rng_psize) rng_pptr -= rng_psize; + } + + // Mix in the current time (w/milliseconds) into the pool + function rng_seed_time() { + rng_seed_int(new Date().getTime()); + } + + // Initialize the pool with junk if needed. + if(rng_pool == null) { + rng_pool = new Array(); + rng_pptr = 0; + var t; + if(typeof window !== "undefined" && window.crypto) { + if (window.crypto.getRandomValues) { + // Use webcrypto if available + var ua = new Uint8Array(32); + window.crypto.getRandomValues(ua); + for(t = 0; t < 32; ++t) + rng_pool[rng_pptr++] = ua[t]; + } + else if(navigator.appName == "Netscape" && navigator.appVersion < "5") { + // Extract entropy (256 bits) from NS4 RNG if available + var z = window.crypto.random(32); + for(t = 0; t < z.length; ++t) + rng_pool[rng_pptr++] = z.charCodeAt(t) & 255; + } + } + while(rng_pptr < rng_psize) { // extract some randomness from Math.random() + t = Math.floor(65536 * Math.random()); + rng_pool[rng_pptr++] = t >>> 8; + rng_pool[rng_pptr++] = t & 255; + } + rng_pptr = 0; + rng_seed_time(); + //rng_seed_int(window.screenX); + //rng_seed_int(window.screenY); + } + + function rng_get_byte() { + if(rng_state == null) { + rng_seed_time(); + rng_state = prng_newstate(); + rng_state.init(rng_pool); + for(rng_pptr = 0; rng_pptr < rng_pool.length; ++rng_pptr) + rng_pool[rng_pptr] = 0; + rng_pptr = 0; + //rng_pool = null; + } + // TODO: allow reseeding after first request + return rng_state.next(); + } + + function rng_get_bytes(ba) { + var i; + for(i = 0; i < ba.length; ++i) ba[i] = rng_get_byte(); + } + + function SecureRandom() {} + + SecureRandom.prototype.nextBytes = rng_get_bytes; + + // prng4.js - uses Arcfour as a PRNG + + function Arcfour() { + this.i = 0; + this.j = 0; + this.S = new Array(); + } + + // Initialize arcfour context from key, an array of ints, each from [0..255] + function ARC4init(key) { + var i, j, t; + for(i = 0; i < 256; ++i) + this.S[i] = i; + j = 0; + for(i = 0; i < 256; ++i) { + j = (j + this.S[i] + key[i % key.length]) & 255; + t = this.S[i]; + this.S[i] = this.S[j]; + this.S[j] = t; + } + this.i = 0; + this.j = 0; + } + + function ARC4next() { + var t; + this.i = (this.i + 1) & 255; + this.j = (this.j + this.S[this.i]) & 255; + t = this.S[this.i]; + this.S[this.i] = this.S[this.j]; + this.S[this.j] = t; + return this.S[(t + this.S[this.i]) & 255]; + } + + Arcfour.prototype.init = ARC4init; + Arcfour.prototype.next = ARC4next; + + // Plug in your RNG constructor here + function prng_newstate() { + return new Arcfour(); + } + + // Pool size must be a multiple of 4 and greater than 32. + // An array of bytes the size of the pool will be passed to init() + var rng_psize = 256; + + BigInteger.SecureRandom = SecureRandom; + BigInteger.BigInteger = BigInteger; + if (typeof exports !== 'undefined') { + exports = module.exports = BigInteger; + } else { + this.BigInteger = BigInteger; + this.SecureRandom = SecureRandom; + } + +}).call(this); diff --git a/node_modules/jsbn/package.json b/node_modules/jsbn/package.json new file mode 100644 index 0000000..7220c19 --- /dev/null +++ b/node_modules/jsbn/package.json @@ -0,0 +1,21 @@ +{ + "name": "jsbn", + "version": "0.1.1", + "description": "The jsbn library is a fast, portable implementation of large-number math in pure JavaScript, enabling public-key crypto and other applications on desktop and mobile browsers.", + "main": "index.js", + "scripts": { + "test": "mocha test.js" + }, + "repository": { + "type": "git", + "url": "https://github.com/andyperlitch/jsbn.git" + }, + "keywords": [ + "biginteger", + "bignumber", + "big", + "integer" + ], + "author": "Tom Wu", + "license": "MIT" +} diff --git a/node_modules/json-buffer/.npmignore b/node_modules/json-buffer/.npmignore new file mode 100644 index 0000000..13abef4 --- /dev/null +++ b/node_modules/json-buffer/.npmignore @@ -0,0 +1,3 @@ +node_modules +node_modules/* +npm_debug.log diff --git a/node_modules/json-buffer/.travis.yml b/node_modules/json-buffer/.travis.yml new file mode 100644 index 0000000..244b7e8 --- /dev/null +++ b/node_modules/json-buffer/.travis.yml @@ -0,0 +1,3 @@ +language: node_js +node_js: + - '0.10' diff --git a/node_modules/json-buffer/LICENSE b/node_modules/json-buffer/LICENSE new file mode 100644 index 0000000..b799ec0 --- /dev/null +++ b/node_modules/json-buffer/LICENSE @@ -0,0 +1,22 @@ +Copyright (c) 2013 Dominic Tarr + +Permission is hereby granted, free of charge, +to any person obtaining a copy of this software and +associated documentation files (the "Software"), to +deal in the Software without restriction, including +without limitation the rights to use, copy, modify, +merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom +the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR +ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/json-buffer/README.md b/node_modules/json-buffer/README.md new file mode 100644 index 0000000..43857bb --- /dev/null +++ b/node_modules/json-buffer/README.md @@ -0,0 +1,24 @@ +# json-buffer + +JSON functions that can convert buffers! + +[![build status](https://secure.travis-ci.org/dominictarr/json-buffer.png)](http://travis-ci.org/dominictarr/json-buffer) + +[![testling badge](https://ci.testling.com/dominictarr/json-buffer.png)](https://ci.testling.com/dominictarr/json-buffer) + +JSON mangles buffers by converting to an array... +which isn't helpful. json-buffers converts to base64 instead, +and deconverts base64 to a buffer. + +``` js +var JSONB = require('json-buffer') +var Buffer = require('buffer').Buffer + +var str = JSONB.stringify(new Buffer('hello there!')) + +console.log(JSONB.parse(str)) //GET a BUFFER back +``` + +## License + +MIT diff --git a/node_modules/json-buffer/index.js b/node_modules/json-buffer/index.js new file mode 100644 index 0000000..9cafed8 --- /dev/null +++ b/node_modules/json-buffer/index.js @@ -0,0 +1,58 @@ +//TODO: handle reviver/dehydrate function like normal +//and handle indentation, like normal. +//if anyone needs this... please send pull request. + +exports.stringify = function stringify (o) { + if('undefined' == typeof o) return o + + if(o && Buffer.isBuffer(o)) + return JSON.stringify(':base64:' + o.toString('base64')) + + if(o && o.toJSON) + o = o.toJSON() + + if(o && 'object' === typeof o) { + var s = '' + var array = Array.isArray(o) + s = array ? '[' : '{' + var first = true + + for(var k in o) { + var ignore = 'function' == typeof o[k] || (!array && 'undefined' === typeof o[k]) + if(Object.hasOwnProperty.call(o, k) && !ignore) { + if(!first) + s += ',' + first = false + if (array) { + if(o[k] == undefined) + s += 'null' + else + s += stringify(o[k]) + } else if (o[k] !== void(0)) { + s += stringify(k) + ':' + stringify(o[k]) + } + } + } + + s += array ? ']' : '}' + + return s + } else if ('string' === typeof o) { + return JSON.stringify(/^:/.test(o) ? ':' + o : o) + } else if ('undefined' === typeof o) { + return 'null'; + } else + return JSON.stringify(o) +} + +exports.parse = function (s) { + return JSON.parse(s, function (key, value) { + if('string' === typeof value) { + if(/^:base64:/.test(value)) + return new Buffer(value.substring(8), 'base64') + else + return /^:/.test(value) ? value.substring(1) : value + } + return value + }) +} diff --git a/node_modules/json-buffer/package.json b/node_modules/json-buffer/package.json new file mode 100644 index 0000000..035df50 --- /dev/null +++ b/node_modules/json-buffer/package.json @@ -0,0 +1,34 @@ +{ + "name": "json-buffer", + "description": "JSON parse & stringify that supports binary via bops & base64", + "version": "3.0.0", + "homepage": "https://github.com/dominictarr/json-buffer", + "repository": { + "type": "git", + "url": "git://github.com/dominictarr/json-buffer.git" + }, + "devDependencies": { + "tape": "^4.6.3" + }, + "scripts": { + "test": "set -e; for t in test/*.js; do node $t; done" + }, + "author": "Dominic Tarr (http://dominictarr.com)", + "license": "MIT", + "testling": { + "files": "test/*.js", + "browsers": [ + "ie/8..latest", + "firefox/17..latest", + "firefox/nightly", + "chrome/22..latest", + "chrome/canary", + "opera/12..latest", + "opera/next", + "safari/5.1..latest", + "ipad/6.0..latest", + "iphone/6.0..latest", + "android-browser/4.2..latest" + ] + } +} diff --git a/node_modules/json-buffer/test/index.js b/node_modules/json-buffer/test/index.js new file mode 100644 index 0000000..8351804 --- /dev/null +++ b/node_modules/json-buffer/test/index.js @@ -0,0 +1,63 @@ + +var test = require('tape') +var _JSON = require('../') + +function clone (o) { + return JSON.parse(JSON.stringify(o)) +} + +var examples = { + simple: { foo: [], bar: {}, baz: new Buffer('some binary data') }, + just_buffer: new Buffer('JUST A BUFFER'), + all_types: { + string:'hello', + number: 3145, + null: null, + object: {}, + array: [], + boolean: true, + boolean2: false + }, + foo: new Buffer('foo'), + foo2: new Buffer('foo2'), + escape: { + buffer: new Buffer('x'), + string: _JSON.stringify(new Buffer('x')) + }, + escape2: { + buffer: new Buffer('x'), + string: ':base64:'+ new Buffer('x').toString('base64') + }, + undefined: { + empty: undefined, test: true + }, + undefined2: { + first: 1, empty: undefined, test: true + }, + undefinedArray: { + array: [undefined, 1, 'two'] + }, + fn: { + fn: function () {} + }, + undefined: undefined +} + +for(k in examples) +(function (value, k) { + test(k, function (t) { + var s = _JSON.stringify(value) + console.log('parse', s) + if(JSON.stringify(value) !== undefined) { + console.log(s) + var _value = _JSON.parse(s) + t.deepEqual(clone(_value), clone(value)) + } + else + t.equal(s, undefined) + t.end() + }) +})(examples[k], k) + + + diff --git a/node_modules/json-schema-traverse/.eslintrc.yml b/node_modules/json-schema-traverse/.eslintrc.yml new file mode 100644 index 0000000..ab1762d --- /dev/null +++ b/node_modules/json-schema-traverse/.eslintrc.yml @@ -0,0 +1,27 @@ +extends: eslint:recommended +env: + node: true + browser: true +rules: + block-scoped-var: 2 + complexity: [2, 13] + curly: [2, multi-or-nest, consistent] + dot-location: [2, property] + dot-notation: 2 + indent: [2, 2, SwitchCase: 1] + linebreak-style: [2, unix] + new-cap: 2 + no-console: [2, allow: [warn, error]] + no-else-return: 2 + no-eq-null: 2 + no-fallthrough: 2 + no-invalid-this: 2 + no-return-assign: 2 + no-shadow: 1 + no-trailing-spaces: 2 + no-use-before-define: [2, nofunc] + quotes: [2, single, avoid-escape] + semi: [2, always] + strict: [2, global] + valid-jsdoc: [2, requireReturn: false] + no-control-regex: 0 diff --git a/node_modules/json-schema-traverse/.travis.yml b/node_modules/json-schema-traverse/.travis.yml new file mode 100644 index 0000000..7ddce74 --- /dev/null +++ b/node_modules/json-schema-traverse/.travis.yml @@ -0,0 +1,8 @@ +language: node_js +node_js: + - "4" + - "6" + - "7" + - "8" +after_script: + - coveralls < coverage/lcov.info diff --git a/node_modules/json-schema-traverse/LICENSE b/node_modules/json-schema-traverse/LICENSE new file mode 100644 index 0000000..7f15435 --- /dev/null +++ b/node_modules/json-schema-traverse/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2017 Evgeny Poberezkin + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/node_modules/json-schema-traverse/README.md b/node_modules/json-schema-traverse/README.md new file mode 100644 index 0000000..d5ccaf4 --- /dev/null +++ b/node_modules/json-schema-traverse/README.md @@ -0,0 +1,83 @@ +# json-schema-traverse +Traverse JSON Schema passing each schema object to callback + +[![Build Status](https://travis-ci.org/epoberezkin/json-schema-traverse.svg?branch=master)](https://travis-ci.org/epoberezkin/json-schema-traverse) +[![npm version](https://badge.fury.io/js/json-schema-traverse.svg)](https://www.npmjs.com/package/json-schema-traverse) +[![Coverage Status](https://coveralls.io/repos/github/epoberezkin/json-schema-traverse/badge.svg?branch=master)](https://coveralls.io/github/epoberezkin/json-schema-traverse?branch=master) + + +## Install + +``` +npm install json-schema-traverse +``` + + +## Usage + +```javascript +const traverse = require('json-schema-traverse'); +const schema = { + properties: { + foo: {type: 'string'}, + bar: {type: 'integer'} + } +}; + +traverse(schema, {cb}); +// cb is called 3 times with: +// 1. root schema +// 2. {type: 'string'} +// 3. {type: 'integer'} + +// Or: + +traverse(schema, {cb: {pre, post}}); +// pre is called 3 times with: +// 1. root schema +// 2. {type: 'string'} +// 3. {type: 'integer'} +// +// post is called 3 times with: +// 1. {type: 'string'} +// 2. {type: 'integer'} +// 3. root schema + +``` + +Callback function `cb` is called for each schema object (not including draft-06 boolean schemas), including the root schema, in pre-order traversal. Schema references ($ref) are not resolved, they are passed as is. Alternatively, you can pass a `{pre, post}` object as `cb`, and then `pre` will be called before traversing child elements, and `post` will be called after all child elements have been traversed. + +Callback is passed these parameters: + +- _schema_: the current schema object +- _JSON pointer_: from the root schema to the current schema object +- _root schema_: the schema passed to `traverse` object +- _parent JSON pointer_: from the root schema to the parent schema object (see below) +- _parent keyword_: the keyword inside which this schema appears (e.g. `properties`, `anyOf`, etc.) +- _parent schema_: not necessarily parent object/array; in the example above the parent schema for `{type: 'string'}` is the root schema +- _index/property_: index or property name in the array/object containing multiple schemas; in the example above for `{type: 'string'}` the property name is `'foo'` + + +## Traverse objects in all unknown keywords + +```javascript +const traverse = require('json-schema-traverse'); +const schema = { + mySchema: { + minimum: 1, + maximum: 2 + } +}; + +traverse(schema, {allKeys: true, cb}); +// cb is called 2 times with: +// 1. root schema +// 2. mySchema +``` + +Without option `allKeys: true` callback will be called only with root schema. + + +## License + +[MIT](https://github.com/epoberezkin/json-schema-traverse/blob/master/LICENSE) diff --git a/node_modules/json-schema-traverse/index.js b/node_modules/json-schema-traverse/index.js new file mode 100644 index 0000000..d4a18df --- /dev/null +++ b/node_modules/json-schema-traverse/index.js @@ -0,0 +1,89 @@ +'use strict'; + +var traverse = module.exports = function (schema, opts, cb) { + // Legacy support for v0.3.1 and earlier. + if (typeof opts == 'function') { + cb = opts; + opts = {}; + } + + cb = opts.cb || cb; + var pre = (typeof cb == 'function') ? cb : cb.pre || function() {}; + var post = cb.post || function() {}; + + _traverse(opts, pre, post, schema, '', schema); +}; + + +traverse.keywords = { + additionalItems: true, + items: true, + contains: true, + additionalProperties: true, + propertyNames: true, + not: true +}; + +traverse.arrayKeywords = { + items: true, + allOf: true, + anyOf: true, + oneOf: true +}; + +traverse.propsKeywords = { + definitions: true, + properties: true, + patternProperties: true, + dependencies: true +}; + +traverse.skipKeywords = { + default: true, + enum: true, + const: true, + required: true, + maximum: true, + minimum: true, + exclusiveMaximum: true, + exclusiveMinimum: true, + multipleOf: true, + maxLength: true, + minLength: true, + pattern: true, + format: true, + maxItems: true, + minItems: true, + uniqueItems: true, + maxProperties: true, + minProperties: true +}; + + +function _traverse(opts, pre, post, schema, jsonPtr, rootSchema, parentJsonPtr, parentKeyword, parentSchema, keyIndex) { + if (schema && typeof schema == 'object' && !Array.isArray(schema)) { + pre(schema, jsonPtr, rootSchema, parentJsonPtr, parentKeyword, parentSchema, keyIndex); + for (var key in schema) { + var sch = schema[key]; + if (Array.isArray(sch)) { + if (key in traverse.arrayKeywords) { + for (var i=0; i + // "Brother/33" + var links = schema.__linkTemplates; + if(!links){ + links = {}; + var schemaLinks = schema.links; + if(schemaLinks && schemaLinks instanceof Array){ + schemaLinks.forEach(function(link){ + /* // TODO: allow for multiple same-name relations + if(links[link.rel]){ + if(!(links[link.rel] instanceof Array)){ + links[link.rel] = [links[link.rel]]; + } + }*/ + links[link.rel] = link.href; + }); + } + if(exports.cacheLinks){ + schema.__linkTemplates = links; + } + } + var linkTemplate = links[relation]; + return linkTemplate && exports.substitute(linkTemplate, instance); +}; + +exports.substitute = function(linkTemplate, instance){ + return linkTemplate.replace(/\{([^\}]*)\}/g, function(t, property){ + var value = instance[decodeURIComponent(property)]; + if(value instanceof Array){ + // the value is an array, it should produce a URI like /Table/(4,5,8) and store.get() should handle that as an array of values + return '(' + value.join(',') + ')'; + } + return value; + }); +}; +return exports; +})); \ No newline at end of file diff --git a/node_modules/json-schema/lib/validate.js b/node_modules/json-schema/lib/validate.js new file mode 100644 index 0000000..cace89e --- /dev/null +++ b/node_modules/json-schema/lib/validate.js @@ -0,0 +1,271 @@ +/** + * JSONSchema Validator - Validates JavaScript objects using JSON Schemas + * (http://www.json.com/json-schema-proposal/) + * Licensed under AFL-2.1 OR BSD-3-Clause +To use the validator call the validate function with an instance object and an optional schema object. +If a schema is provided, it will be used to validate. If the instance object refers to a schema (self-validating), +that schema will be used to validate and the schema parameter is not necessary (if both exist, +both validations will occur). +The validate method will return an array of validation errors. If there are no errors, then an +empty list will be returned. A validation error will have two properties: +"property" which indicates which property had the error +"message" which indicates what the error was + */ +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module. + define([], function () { + return factory(); + }); + } else if (typeof module === 'object' && module.exports) { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(); + } else { + // Browser globals + root.jsonSchema = factory(); + } +}(this, function () {// setup primitive classes to be JSON Schema types +var exports = validate +exports.Integer = {type:"integer"}; +var primitiveConstructors = { + String: String, + Boolean: Boolean, + Number: Number, + Object: Object, + Array: Array, + Date: Date +} +exports.validate = validate; +function validate(/*Any*/instance,/*Object*/schema) { + // Summary: + // To use the validator call JSONSchema.validate with an instance object and an optional schema object. + // If a schema is provided, it will be used to validate. If the instance object refers to a schema (self-validating), + // that schema will be used to validate and the schema parameter is not necessary (if both exist, + // both validations will occur). + // The validate method will return an object with two properties: + // valid: A boolean indicating if the instance is valid by the schema + // errors: An array of validation errors. If there are no errors, then an + // empty list will be returned. A validation error will have two properties: + // property: which indicates which property had the error + // message: which indicates what the error was + // + return validate(instance, schema, {changing: false});//, coerce: false, existingOnly: false}); + }; +exports.checkPropertyChange = function(/*Any*/value,/*Object*/schema, /*String*/property) { + // Summary: + // The checkPropertyChange method will check to see if an value can legally be in property with the given schema + // This is slightly different than the validate method in that it will fail if the schema is readonly and it will + // not check for self-validation, it is assumed that the passed in value is already internally valid. + // The checkPropertyChange method will return the same object type as validate, see JSONSchema.validate for + // information. + // + return validate(value, schema, {changing: property || "property"}); + }; +var validate = exports._validate = function(/*Any*/instance,/*Object*/schema,/*Object*/options) { + + if (!options) options = {}; + var _changing = options.changing; + + function getType(schema){ + return schema.type || (primitiveConstructors[schema.name] == schema && schema.name.toLowerCase()); + } + var errors = []; + // validate a value against a property definition + function checkProp(value, schema, path,i){ + + var l; + path += path ? typeof i == 'number' ? '[' + i + ']' : typeof i == 'undefined' ? '' : '.' + i : i; + function addError(message){ + errors.push({property:path,message:message}); + } + + if((typeof schema != 'object' || schema instanceof Array) && (path || typeof schema != 'function') && !(schema && getType(schema))){ + if(typeof schema == 'function'){ + if(!(value instanceof schema)){ + addError("is not an instance of the class/constructor " + schema.name); + } + }else if(schema){ + addError("Invalid schema/property definition " + schema); + } + return null; + } + if(_changing && schema.readonly){ + addError("is a readonly field, it can not be changed"); + } + if(schema['extends']){ // if it extends another schema, it must pass that schema as well + checkProp(value,schema['extends'],path,i); + } + // validate a value against a type definition + function checkType(type,value){ + if(type){ + if(typeof type == 'string' && type != 'any' && + (type == 'null' ? value !== null : typeof value != type) && + !(value instanceof Array && type == 'array') && + !(value instanceof Date && type == 'date') && + !(type == 'integer' && value%1===0)){ + return [{property:path,message:value + " - " + (typeof value) + " value found, but a " + type + " is required"}]; + } + if(type instanceof Array){ + var unionErrors=[]; + for(var j = 0; j < type.length; j++){ // a union type + if(!(unionErrors=checkType(type[j],value)).length){ + break; + } + } + if(unionErrors.length){ + return unionErrors; + } + }else if(typeof type == 'object'){ + var priorErrors = errors; + errors = []; + checkProp(value,type,path); + var theseErrors = errors; + errors = priorErrors; + return theseErrors; + } + } + return []; + } + if(value === undefined){ + if(schema.required){ + addError("is missing and it is required"); + } + }else{ + errors = errors.concat(checkType(getType(schema),value)); + if(schema.disallow && !checkType(schema.disallow,value).length){ + addError(" disallowed value was matched"); + } + if(value !== null){ + if(value instanceof Array){ + if(schema.items){ + var itemsIsArray = schema.items instanceof Array; + var propDef = schema.items; + for (i = 0, l = value.length; i < l; i += 1) { + if (itemsIsArray) + propDef = schema.items[i]; + if (options.coerce) + value[i] = options.coerce(value[i], propDef); + errors.concat(checkProp(value[i],propDef,path,i)); + } + } + if(schema.minItems && value.length < schema.minItems){ + addError("There must be a minimum of " + schema.minItems + " in the array"); + } + if(schema.maxItems && value.length > schema.maxItems){ + addError("There must be a maximum of " + schema.maxItems + " in the array"); + } + }else if(schema.properties || schema.additionalProperties){ + errors.concat(checkObj(value, schema.properties, path, schema.additionalProperties)); + } + if(schema.pattern && typeof value == 'string' && !value.match(schema.pattern)){ + addError("does not match the regex pattern " + schema.pattern); + } + if(schema.maxLength && typeof value == 'string' && value.length > schema.maxLength){ + addError("may only be " + schema.maxLength + " characters long"); + } + if(schema.minLength && typeof value == 'string' && value.length < schema.minLength){ + addError("must be at least " + schema.minLength + " characters long"); + } + if(typeof schema.minimum !== 'undefined' && typeof value == typeof schema.minimum && + schema.minimum > value){ + addError("must have a minimum value of " + schema.minimum); + } + if(typeof schema.maximum !== 'undefined' && typeof value == typeof schema.maximum && + schema.maximum < value){ + addError("must have a maximum value of " + schema.maximum); + } + if(schema['enum']){ + var enumer = schema['enum']; + l = enumer.length; + var found; + for(var j = 0; j < l; j++){ + if(enumer[j]===value){ + found=1; + break; + } + } + if(!found){ + addError("does not have a value in the enumeration " + enumer.join(", ")); + } + } + if(typeof schema.maxDecimal == 'number' && + (value.toString().match(new RegExp("\\.[0-9]{" + (schema.maxDecimal + 1) + ",}")))){ + addError("may only have " + schema.maxDecimal + " digits of decimal places"); + } + } + } + return null; + } + // validate an object against a schema + function checkObj(instance,objTypeDef,path,additionalProp){ + + if(typeof objTypeDef =='object'){ + if(typeof instance != 'object' || instance instanceof Array){ + errors.push({property:path,message:"an object is required"}); + } + + for(var i in objTypeDef){ + if(objTypeDef.hasOwnProperty(i) && i != '__proto__' && i != 'constructor'){ + var value = instance.hasOwnProperty(i) ? instance[i] : undefined; + // skip _not_ specified properties + if (value === undefined && options.existingOnly) continue; + var propDef = objTypeDef[i]; + // set default + if(value === undefined && propDef["default"]){ + value = instance[i] = propDef["default"]; + } + if(options.coerce && i in instance){ + value = instance[i] = options.coerce(value, propDef); + } + checkProp(value,propDef,path,i); + } + } + } + for(i in instance){ + if(instance.hasOwnProperty(i) && !(i.charAt(0) == '_' && i.charAt(1) == '_') && objTypeDef && !objTypeDef[i] && additionalProp===false){ + if (options.filter) { + delete instance[i]; + continue; + } else { + errors.push({property:path,message:"The property " + i + + " is not defined in the schema and the schema does not allow additional properties"}); + } + } + var requires = objTypeDef && objTypeDef[i] && objTypeDef[i].requires; + if(requires && !(requires in instance)){ + errors.push({property:path,message:"the presence of the property " + i + " requires that " + requires + " also be present"}); + } + value = instance[i]; + if(additionalProp && (!(objTypeDef && typeof objTypeDef == 'object') || !(i in objTypeDef))){ + if(options.coerce){ + value = instance[i] = options.coerce(value, additionalProp); + } + checkProp(value,additionalProp,path,i); + } + if(!_changing && value && value.$schema){ + errors = errors.concat(checkProp(value,value.$schema,path,i)); + } + } + return errors; + } + if(schema){ + checkProp(instance,schema,'',_changing || ''); + } + if(!_changing && instance && instance.$schema){ + checkProp(instance,instance.$schema,'',''); + } + return {valid:!errors.length,errors:errors}; +}; +exports.mustBeValid = function(result){ + // summary: + // This checks to ensure that the result is valid and will throw an appropriate error message if it is not + // result: the result returned from checkPropertyChange or validate + if(!result.valid){ + throw new TypeError(result.errors.map(function(error){return "for property " + error.property + ': ' + error.message;}).join(", \n")); + } +} + +return exports; +})); diff --git a/node_modules/json-schema/package.json b/node_modules/json-schema/package.json new file mode 100644 index 0000000..d3a7dfb --- /dev/null +++ b/node_modules/json-schema/package.json @@ -0,0 +1,24 @@ +{ + "name": "json-schema", + "version": "0.4.0", + "author": "Kris Zyp", + "description": "JSON Schema validation and specifications", + "maintainers":[ + {"name": "Kris Zyp", "email": "kriszyp@gmail.com"}], + "keywords": [ + "json", + "schema" + ], + "files": [ + "lib" + ], + "license": "(AFL-2.1 OR BSD-3-Clause)", + "repository": { + "type":"git", + "url":"http://github.com/kriszyp/json-schema" + }, + "directories": { "lib": "./lib" }, + "main": "./lib/validate.js", + "devDependencies": { "vows": "*" }, + "scripts": { "test": "vows --spec test/*.js" } +} diff --git a/node_modules/json-stringify-safe/.npmignore b/node_modules/json-stringify-safe/.npmignore new file mode 100644 index 0000000..17d6b36 --- /dev/null +++ b/node_modules/json-stringify-safe/.npmignore @@ -0,0 +1 @@ +/*.tgz diff --git a/node_modules/json-stringify-safe/CHANGELOG.md b/node_modules/json-stringify-safe/CHANGELOG.md new file mode 100644 index 0000000..42bcb60 --- /dev/null +++ b/node_modules/json-stringify-safe/CHANGELOG.md @@ -0,0 +1,14 @@ +## Unreleased +- Fixes stringify to only take ancestors into account when checking + circularity. + It previously assumed every visited object was circular which led to [false + positives][issue9]. + Uses the tiny serializer I wrote for [Must.js][must] a year and a half ago. +- Fixes calling the `replacer` function in the proper context (`thisArg`). +- Fixes calling the `cycleReplacer` function in the proper context (`thisArg`). +- Speeds serializing by a factor of + Big-O(h-my-god-it-linearly-searched-every-object) it had ever seen. Searching + only the ancestors for a circular references speeds up things considerably. + +[must]: https://github.com/moll/js-must +[issue9]: https://github.com/isaacs/json-stringify-safe/issues/9 diff --git a/node_modules/json-stringify-safe/LICENSE b/node_modules/json-stringify-safe/LICENSE new file mode 100644 index 0000000..19129e3 --- /dev/null +++ b/node_modules/json-stringify-safe/LICENSE @@ -0,0 +1,15 @@ +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. diff --git a/node_modules/json-stringify-safe/Makefile b/node_modules/json-stringify-safe/Makefile new file mode 100644 index 0000000..36088c7 --- /dev/null +++ b/node_modules/json-stringify-safe/Makefile @@ -0,0 +1,35 @@ +NODE_OPTS = +TEST_OPTS = + +love: + @echo "Feel like makin' love." + +test: + @node $(NODE_OPTS) ./node_modules/.bin/_mocha -R dot $(TEST_OPTS) + +spec: + @node $(NODE_OPTS) ./node_modules/.bin/_mocha -R spec $(TEST_OPTS) + +autotest: + @node $(NODE_OPTS) ./node_modules/.bin/_mocha -R dot --watch $(TEST_OPTS) + +autospec: + @node $(NODE_OPTS) ./node_modules/.bin/_mocha -R spec --watch $(TEST_OPTS) + +pack: + @file=$$(npm pack); echo "$$file"; tar tf "$$file" + +publish: + npm publish + +tag: + git tag "v$$(node -e 'console.log(require("./package").version)')" + +clean: + rm -f *.tgz + npm prune --production + +.PHONY: love +.PHONY: test spec autotest autospec +.PHONY: pack publish tag +.PHONY: clean diff --git a/node_modules/json-stringify-safe/README.md b/node_modules/json-stringify-safe/README.md new file mode 100644 index 0000000..a11f302 --- /dev/null +++ b/node_modules/json-stringify-safe/README.md @@ -0,0 +1,52 @@ +# json-stringify-safe + +Like JSON.stringify, but doesn't throw on circular references. + +## Usage + +Takes the same arguments as `JSON.stringify`. + +```javascript +var stringify = require('json-stringify-safe'); +var circularObj = {}; +circularObj.circularRef = circularObj; +circularObj.list = [ circularObj, circularObj ]; +console.log(stringify(circularObj, null, 2)); +``` + +Output: + +```json +{ + "circularRef": "[Circular]", + "list": [ + "[Circular]", + "[Circular]" + ] +} +``` + +## Details + +``` +stringify(obj, serializer, indent, decycler) +``` + +The first three arguments are the same as to JSON.stringify. The last +is an argument that's only used when the object has been seen already. + +The default `decycler` function returns the string `'[Circular]'`. +If, for example, you pass in `function(k,v){}` (return nothing) then it +will prune cycles. If you pass in `function(k,v){ return {foo: 'bar'}}`, +then cyclical objects will always be represented as `{"foo":"bar"}` in +the result. + +``` +stringify.getSerialize(serializer, decycler) +``` + +Returns a serializer that can be used elsewhere. This is the actual +function that's passed to JSON.stringify. + +**Note** that the function returned from `getSerialize` is stateful for now, so +do **not** use it more than once. diff --git a/node_modules/json-stringify-safe/package.json b/node_modules/json-stringify-safe/package.json new file mode 100644 index 0000000..8e17b12 --- /dev/null +++ b/node_modules/json-stringify-safe/package.json @@ -0,0 +1,31 @@ +{ + "name": "json-stringify-safe", + "version": "5.0.1", + "description": "Like JSON.stringify, but doesn't blow up on circular refs.", + "keywords": [ + "json", + "stringify", + "circular", + "safe" + ], + "homepage": "https://github.com/isaacs/json-stringify-safe", + "bugs": "https://github.com/isaacs/json-stringify-safe/issues", + "author": "Isaac Z. Schlueter (http://blog.izs.me)", + "contributors": [ + "Andri Möll (http://themoll.com)" + ], + "license": "ISC", + "repository": { + "type": "git", + "url": "git://github.com/isaacs/json-stringify-safe" + }, + "main": "stringify.js", + "scripts": { + "test": "node test.js" + }, + "devDependencies": { + "mocha": ">= 2.1.0 < 3", + "must": ">= 0.12 < 0.13", + "sinon": ">= 1.12.2 < 2" + } +} diff --git a/node_modules/json-stringify-safe/stringify.js b/node_modules/json-stringify-safe/stringify.js new file mode 100644 index 0000000..124a452 --- /dev/null +++ b/node_modules/json-stringify-safe/stringify.js @@ -0,0 +1,27 @@ +exports = module.exports = stringify +exports.getSerialize = serializer + +function stringify(obj, replacer, spaces, cycleReplacer) { + return JSON.stringify(obj, serializer(replacer, cycleReplacer), spaces) +} + +function serializer(replacer, cycleReplacer) { + var stack = [], keys = [] + + if (cycleReplacer == null) cycleReplacer = function(key, value) { + if (stack[0] === value) return "[Circular ~]" + return "[Circular ~." + keys.slice(0, stack.indexOf(value)).join(".") + "]" + } + + return function(key, value) { + if (stack.length > 0) { + var thisPos = stack.indexOf(this) + ~thisPos ? stack.splice(thisPos + 1) : stack.push(this) + ~thisPos ? keys.splice(thisPos, Infinity, key) : keys.push(key) + if (~stack.indexOf(value)) value = cycleReplacer.call(this, key, value) + } + else stack.push(value) + + return replacer == null ? value : replacer.call(this, key, value) + } +} diff --git a/node_modules/json-stringify-safe/test/mocha.opts b/node_modules/json-stringify-safe/test/mocha.opts new file mode 100644 index 0000000..2544e58 --- /dev/null +++ b/node_modules/json-stringify-safe/test/mocha.opts @@ -0,0 +1,2 @@ +--recursive +--require must diff --git a/node_modules/json-stringify-safe/test/stringify_test.js b/node_modules/json-stringify-safe/test/stringify_test.js new file mode 100644 index 0000000..5b32583 --- /dev/null +++ b/node_modules/json-stringify-safe/test/stringify_test.js @@ -0,0 +1,246 @@ +var Sinon = require("sinon") +var stringify = require("..") +function jsonify(obj) { return JSON.stringify(obj, null, 2) } + +describe("Stringify", function() { + it("must stringify circular objects", function() { + var obj = {name: "Alice"} + obj.self = obj + var json = stringify(obj, null, 2) + json.must.eql(jsonify({name: "Alice", self: "[Circular ~]"})) + }) + + it("must stringify circular objects with intermediaries", function() { + var obj = {name: "Alice"} + obj.identity = {self: obj} + var json = stringify(obj, null, 2) + json.must.eql(jsonify({name: "Alice", identity: {self: "[Circular ~]"}})) + }) + + it("must stringify circular objects deeper", function() { + var obj = {name: "Alice", child: {name: "Bob"}} + obj.child.self = obj.child + + stringify(obj, null, 2).must.eql(jsonify({ + name: "Alice", + child: {name: "Bob", self: "[Circular ~.child]"} + })) + }) + + it("must stringify circular objects deeper with intermediaries", function() { + var obj = {name: "Alice", child: {name: "Bob"}} + obj.child.identity = {self: obj.child} + + stringify(obj, null, 2).must.eql(jsonify({ + name: "Alice", + child: {name: "Bob", identity: {self: "[Circular ~.child]"}} + })) + }) + + it("must stringify circular objects in an array", function() { + var obj = {name: "Alice"} + obj.self = [obj, obj] + + stringify(obj, null, 2).must.eql(jsonify({ + name: "Alice", self: ["[Circular ~]", "[Circular ~]"] + })) + }) + + it("must stringify circular objects deeper in an array", function() { + var obj = {name: "Alice", children: [{name: "Bob"}, {name: "Eve"}]} + obj.children[0].self = obj.children[0] + obj.children[1].self = obj.children[1] + + stringify(obj, null, 2).must.eql(jsonify({ + name: "Alice", + children: [ + {name: "Bob", self: "[Circular ~.children.0]"}, + {name: "Eve", self: "[Circular ~.children.1]"} + ] + })) + }) + + it("must stringify circular arrays", function() { + var obj = [] + obj.push(obj) + obj.push(obj) + var json = stringify(obj, null, 2) + json.must.eql(jsonify(["[Circular ~]", "[Circular ~]"])) + }) + + it("must stringify circular arrays with intermediaries", function() { + var obj = [] + obj.push({name: "Alice", self: obj}) + obj.push({name: "Bob", self: obj}) + + stringify(obj, null, 2).must.eql(jsonify([ + {name: "Alice", self: "[Circular ~]"}, + {name: "Bob", self: "[Circular ~]"} + ])) + }) + + it("must stringify repeated objects in objects", function() { + var obj = {} + var alice = {name: "Alice"} + obj.alice1 = alice + obj.alice2 = alice + + stringify(obj, null, 2).must.eql(jsonify({ + alice1: {name: "Alice"}, + alice2: {name: "Alice"} + })) + }) + + it("must stringify repeated objects in arrays", function() { + var alice = {name: "Alice"} + var obj = [alice, alice] + var json = stringify(obj, null, 2) + json.must.eql(jsonify([{name: "Alice"}, {name: "Alice"}])) + }) + + it("must call given decycler and use its output", function() { + var obj = {} + obj.a = obj + obj.b = obj + + var decycle = Sinon.spy(function() { return decycle.callCount }) + var json = stringify(obj, null, 2, decycle) + json.must.eql(jsonify({a: 1, b: 2}, null, 2)) + + decycle.callCount.must.equal(2) + decycle.thisValues[0].must.equal(obj) + decycle.args[0][0].must.equal("a") + decycle.args[0][1].must.equal(obj) + decycle.thisValues[1].must.equal(obj) + decycle.args[1][0].must.equal("b") + decycle.args[1][1].must.equal(obj) + }) + + it("must call replacer and use its output", function() { + var obj = {name: "Alice", child: {name: "Bob"}} + + var replacer = Sinon.spy(bangString) + var json = stringify(obj, replacer, 2) + json.must.eql(jsonify({name: "Alice!", child: {name: "Bob!"}})) + + replacer.callCount.must.equal(4) + replacer.args[0][0].must.equal("") + replacer.args[0][1].must.equal(obj) + replacer.thisValues[1].must.equal(obj) + replacer.args[1][0].must.equal("name") + replacer.args[1][1].must.equal("Alice") + replacer.thisValues[2].must.equal(obj) + replacer.args[2][0].must.equal("child") + replacer.args[2][1].must.equal(obj.child) + replacer.thisValues[3].must.equal(obj.child) + replacer.args[3][0].must.equal("name") + replacer.args[3][1].must.equal("Bob") + }) + + it("must call replacer after describing circular references", function() { + var obj = {name: "Alice"} + obj.self = obj + + var replacer = Sinon.spy(bangString) + var json = stringify(obj, replacer, 2) + json.must.eql(jsonify({name: "Alice!", self: "[Circular ~]!"})) + + replacer.callCount.must.equal(3) + replacer.args[0][0].must.equal("") + replacer.args[0][1].must.equal(obj) + replacer.thisValues[1].must.equal(obj) + replacer.args[1][0].must.equal("name") + replacer.args[1][1].must.equal("Alice") + replacer.thisValues[2].must.equal(obj) + replacer.args[2][0].must.equal("self") + replacer.args[2][1].must.equal("[Circular ~]") + }) + + it("must call given decycler and use its output for nested objects", + function() { + var obj = {} + obj.a = obj + obj.b = {self: obj} + + var decycle = Sinon.spy(function() { return decycle.callCount }) + var json = stringify(obj, null, 2, decycle) + json.must.eql(jsonify({a: 1, b: {self: 2}})) + + decycle.callCount.must.equal(2) + decycle.args[0][0].must.equal("a") + decycle.args[0][1].must.equal(obj) + decycle.args[1][0].must.equal("self") + decycle.args[1][1].must.equal(obj) + }) + + it("must use decycler's output when it returned null", function() { + var obj = {a: "b"} + obj.self = obj + obj.selves = [obj, obj] + + function decycle() { return null } + stringify(obj, null, 2, decycle).must.eql(jsonify({ + a: "b", + self: null, + selves: [null, null] + })) + }) + + it("must use decycler's output when it returned undefined", function() { + var obj = {a: "b"} + obj.self = obj + obj.selves = [obj, obj] + + function decycle() {} + stringify(obj, null, 2, decycle).must.eql(jsonify({ + a: "b", + selves: [null, null] + })) + }) + + it("must throw given a decycler that returns a cycle", function() { + var obj = {} + obj.self = obj + var err + function identity(key, value) { return value } + try { stringify(obj, null, 2, identity) } catch (ex) { err = ex } + err.must.be.an.instanceof(TypeError) + }) + + describe(".getSerialize", function() { + it("must stringify circular objects", function() { + var obj = {a: "b"} + obj.circularRef = obj + obj.list = [obj, obj] + + var json = JSON.stringify(obj, stringify.getSerialize(), 2) + json.must.eql(jsonify({ + "a": "b", + "circularRef": "[Circular ~]", + "list": ["[Circular ~]", "[Circular ~]"] + })) + }) + + // This is the behavior as of Mar 3, 2015. + // The serializer function keeps state inside the returned function and + // so far I'm not sure how to not do that. JSON.stringify's replacer is not + // called _after_ serialization. + xit("must return a function that could be called twice", function() { + var obj = {name: "Alice"} + obj.self = obj + + var json + var serializer = stringify.getSerialize() + + json = JSON.stringify(obj, serializer, 2) + json.must.eql(jsonify({name: "Alice", self: "[Circular ~]"})) + + json = JSON.stringify(obj, serializer, 2) + json.must.eql(jsonify({name: "Alice", self: "[Circular ~]"})) + }) + }) +}) + +function bangString(key, value) { + return typeof value == "string" ? value + "!" : value +} diff --git a/node_modules/jsonfile/CHANGELOG.md b/node_modules/jsonfile/CHANGELOG.md new file mode 100644 index 0000000..d772e43 --- /dev/null +++ b/node_modules/jsonfile/CHANGELOG.md @@ -0,0 +1,171 @@ +6.1.0 / 2020-10-31 +------------------ + +- Add `finalEOL` option to disable writing final EOL ([#115](https://github.com/jprichardson/node-jsonfile/issues/115), [#137](https://github.com/jprichardson/node-jsonfile/pull/137)) +- Update dependency ([#138](https://github.com/jprichardson/node-jsonfile/pull/138)) + +6.0.1 / 2020-03-07 +------------------ + +- Update dependency ([#130](https://github.com/jprichardson/node-jsonfile/pull/130)) +- Fix code style ([#129](https://github.com/jprichardson/node-jsonfile/pull/129)) + +6.0.0 / 2020-02-24 +------------------ + +- **BREAKING:** Drop support for Node 6 & 8 ([#128](https://github.com/jprichardson/node-jsonfile/pull/128)) +- **BREAKING:** Do not allow passing `null` as options to `readFile()` or `writeFile()` ([#128](https://github.com/jprichardson/node-jsonfile/pull/128)) +- Refactor internals ([#128](https://github.com/jprichardson/node-jsonfile/pull/128)) + +5.0.0 / 2018-09-08 +------------------ + +- **BREAKING:** Drop Node 4 support +- **BREAKING:** If no callback is passed to an asynchronous method, a promise is now returned ([#109](https://github.com/jprichardson/node-jsonfile/pull/109)) +- Cleanup docs + +4.0.0 / 2017-07-12 +------------------ + +- **BREAKING:** Remove global `spaces` option. +- **BREAKING:** Drop support for Node 0.10, 0.12, and io.js. +- Remove undocumented `passParsingErrors` option. +- Added `EOL` override option to `writeFile` when using `spaces`. [#89] + +3.0.1 / 2017-07-05 +------------------ + +- Fixed bug in `writeFile` when there was a serialization error & no callback was passed. In previous versions, an empty file would be written; now no file is written. + +3.0.0 / 2017-04-25 +------------------ + +- Changed behavior of `throws` option for `readFileSync`; now does not throw filesystem errors when `throws` is `false` + +2.4.0 / 2016-09-15 +------------------ +### Changed +- added optional support for `graceful-fs` [#62] + +2.3.1 / 2016-05-13 +------------------ +- fix to support BOM. [#45][#45] + +2.3.0 / 2016-04-16 +------------------ +- add `throws` to `readFile()`. See [#39][#39] +- add support for any arbitrary `fs` module. Useful with [mock-fs](https://www.npmjs.com/package/mock-fs) + +2.2.3 / 2015-10-14 +------------------ +- include file name in parse error. See: https://github.com/jprichardson/node-jsonfile/pull/34 + +2.2.2 / 2015-09-16 +------------------ +- split out tests into separate files +- fixed `throws` when set to `true` in `readFileSync()`. See: https://github.com/jprichardson/node-jsonfile/pull/33 + +2.2.1 / 2015-06-25 +------------------ +- fixed regression when passing in string as encoding for options in `writeFile()` and `writeFileSync()`. See: https://github.com/jprichardson/node-jsonfile/issues/28 + +2.2.0 / 2015-06-25 +------------------ +- added `options.spaces` to `writeFile()` and `writeFileSync()` + +2.1.2 / 2015-06-22 +------------------ +- fixed if passed `readFileSync(file, 'utf8')`. See: https://github.com/jprichardson/node-jsonfile/issues/25 + +2.1.1 / 2015-06-19 +------------------ +- fixed regressions if `null` is passed for options. See: https://github.com/jprichardson/node-jsonfile/issues/24 + +2.1.0 / 2015-06-19 +------------------ +- cleanup: JavaScript Standard Style, rename files, dropped terst for assert +- methods now support JSON revivers/replacers + +2.0.1 / 2015-05-24 +------------------ +- update license attribute https://github.com/jprichardson/node-jsonfile/pull/21 + +2.0.0 / 2014-07-28 +------------------ +* added `\n` to end of file on write. [#14](https://github.com/jprichardson/node-jsonfile/pull/14) +* added `options.throws` to `readFileSync()` +* dropped support for Node v0.8 + +1.2.0 / 2014-06-29 +------------------ +* removed semicolons +* bugfix: passed `options` to `fs.readFile` and `fs.readFileSync`. This technically changes behavior, but +changes it according to docs. [#12][#12] + +1.1.1 / 2013-11-11 +------------------ +* fixed catching of callback bug (ffissore / #5) + +1.1.0 / 2013-10-11 +------------------ +* added `options` param to methods, (seanodell / #4) + +1.0.1 / 2013-09-05 +------------------ +* removed `homepage` field from package.json to remove NPM warning + +1.0.0 / 2013-06-28 +------------------ +* added `.npmignore`, #1 +* changed spacing default from `4` to `2` to follow Node conventions + +0.0.1 / 2012-09-10 +------------------ +* Initial release. + +[#89]: https://github.com/jprichardson/node-jsonfile/pull/89 +[#45]: https://github.com/jprichardson/node-jsonfile/issues/45 "Reading of UTF8-encoded (w/ BOM) files fails" +[#44]: https://github.com/jprichardson/node-jsonfile/issues/44 "Extra characters in written file" +[#43]: https://github.com/jprichardson/node-jsonfile/issues/43 "Prettyfy json when written to file" +[#42]: https://github.com/jprichardson/node-jsonfile/pull/42 "Moved fs.readFileSync within the try/catch" +[#41]: https://github.com/jprichardson/node-jsonfile/issues/41 "Linux: Hidden file not working" +[#40]: https://github.com/jprichardson/node-jsonfile/issues/40 "autocreate folder doesn't work from Path-value" +[#39]: https://github.com/jprichardson/node-jsonfile/pull/39 "Add `throws` option for readFile (async)" +[#38]: https://github.com/jprichardson/node-jsonfile/pull/38 "Update README.md writeFile[Sync] signature" +[#37]: https://github.com/jprichardson/node-jsonfile/pull/37 "support append file" +[#36]: https://github.com/jprichardson/node-jsonfile/pull/36 "Add typescript definition file." +[#35]: https://github.com/jprichardson/node-jsonfile/pull/35 "Add typescript definition file." +[#34]: https://github.com/jprichardson/node-jsonfile/pull/34 "readFile JSON parse error includes filename" +[#33]: https://github.com/jprichardson/node-jsonfile/pull/33 "fix throw->throws typo in readFileSync()" +[#32]: https://github.com/jprichardson/node-jsonfile/issues/32 "readFile & readFileSync can possible have strip-comments as an option?" +[#31]: https://github.com/jprichardson/node-jsonfile/pull/31 "[Modify] Support string include is unicode escape string" +[#30]: https://github.com/jprichardson/node-jsonfile/issues/30 "How to use Jsonfile package in Meteor.js App?" +[#29]: https://github.com/jprichardson/node-jsonfile/issues/29 "writefile callback if no error?" +[#28]: https://github.com/jprichardson/node-jsonfile/issues/28 "writeFile options argument broken " +[#27]: https://github.com/jprichardson/node-jsonfile/pull/27 "Use svg instead of png to get better image quality" +[#26]: https://github.com/jprichardson/node-jsonfile/issues/26 "Breaking change to fs-extra" +[#25]: https://github.com/jprichardson/node-jsonfile/issues/25 "support string encoding param for read methods" +[#24]: https://github.com/jprichardson/node-jsonfile/issues/24 "readFile: Passing in null options with a callback throws an error" +[#23]: https://github.com/jprichardson/node-jsonfile/pull/23 "Add appendFile and appendFileSync" +[#22]: https://github.com/jprichardson/node-jsonfile/issues/22 "Default value for spaces in readme.md is outdated" +[#21]: https://github.com/jprichardson/node-jsonfile/pull/21 "Update license attribute" +[#20]: https://github.com/jprichardson/node-jsonfile/issues/20 "Add simple caching functionallity" +[#19]: https://github.com/jprichardson/node-jsonfile/pull/19 "Add appendFileSync method" +[#18]: https://github.com/jprichardson/node-jsonfile/issues/18 "Add updateFile and updateFileSync methods" +[#17]: https://github.com/jprichardson/node-jsonfile/issues/17 "seem read & write sync has sequentially problem" +[#16]: https://github.com/jprichardson/node-jsonfile/pull/16 "export spaces defaulted to null" +[#15]: https://github.com/jprichardson/node-jsonfile/issues/15 "`jsonfile.spaces` should default to `null`" +[#14]: https://github.com/jprichardson/node-jsonfile/pull/14 "Add EOL at EOF" +[#13]: https://github.com/jprichardson/node-jsonfile/issues/13 "Add a final newline" +[#12]: https://github.com/jprichardson/node-jsonfile/issues/12 "readFile doesn't accept options" +[#11]: https://github.com/jprichardson/node-jsonfile/pull/11 "Added try,catch to readFileSync" +[#10]: https://github.com/jprichardson/node-jsonfile/issues/10 "No output or error from writeFile" +[#9]: https://github.com/jprichardson/node-jsonfile/pull/9 "Change 'js' to 'jf' in example." +[#8]: https://github.com/jprichardson/node-jsonfile/pull/8 "Updated forgotten module.exports to me." +[#7]: https://github.com/jprichardson/node-jsonfile/pull/7 "Add file name in error message" +[#6]: https://github.com/jprichardson/node-jsonfile/pull/6 "Use graceful-fs when possible" +[#5]: https://github.com/jprichardson/node-jsonfile/pull/5 "Jsonfile doesn't behave nicely when used inside a test suite." +[#4]: https://github.com/jprichardson/node-jsonfile/pull/4 "Added options parameter to writeFile and writeFileSync" +[#3]: https://github.com/jprichardson/node-jsonfile/issues/3 "test2" +[#2]: https://github.com/jprichardson/node-jsonfile/issues/2 "homepage field must be a string url. Deleted." +[#1]: https://github.com/jprichardson/node-jsonfile/pull/1 "adding an `.npmignore` file" diff --git a/node_modules/jsonfile/LICENSE b/node_modules/jsonfile/LICENSE new file mode 100644 index 0000000..cb7e807 --- /dev/null +++ b/node_modules/jsonfile/LICENSE @@ -0,0 +1,15 @@ +(The MIT License) + +Copyright (c) 2012-2015, JP Richardson + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files +(the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, + merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE +WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS +OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, + ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/jsonfile/README.md b/node_modules/jsonfile/README.md new file mode 100644 index 0000000..910cde0 --- /dev/null +++ b/node_modules/jsonfile/README.md @@ -0,0 +1,230 @@ +Node.js - jsonfile +================ + +Easily read/write JSON files in Node.js. _Note: this module cannot be used in the browser._ + +[![npm Package](https://img.shields.io/npm/v/jsonfile.svg?style=flat-square)](https://www.npmjs.org/package/jsonfile) +[![build status](https://secure.travis-ci.org/jprichardson/node-jsonfile.svg)](http://travis-ci.org/jprichardson/node-jsonfile) +[![windows Build status](https://img.shields.io/appveyor/ci/jprichardson/node-jsonfile/master.svg?label=windows%20build)](https://ci.appveyor.com/project/jprichardson/node-jsonfile/branch/master) + +Standard JavaScript + +Why? +---- + +Writing `JSON.stringify()` and then `fs.writeFile()` and `JSON.parse()` with `fs.readFile()` enclosed in `try/catch` blocks became annoying. + + + +Installation +------------ + + npm install --save jsonfile + + + +API +--- + +* [`readFile(filename, [options], callback)`](#readfilefilename-options-callback) +* [`readFileSync(filename, [options])`](#readfilesyncfilename-options) +* [`writeFile(filename, obj, [options], callback)`](#writefilefilename-obj-options-callback) +* [`writeFileSync(filename, obj, [options])`](#writefilesyncfilename-obj-options) + +---- + +### readFile(filename, [options], callback) + +`options` (`object`, default `undefined`): Pass in any [`fs.readFile`](https://nodejs.org/api/fs.html#fs_fs_readfile_path_options_callback) options or set `reviver` for a [JSON reviver](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse). + - `throws` (`boolean`, default: `true`). If `JSON.parse` throws an error, pass this error to the callback. + If `false`, returns `null` for the object. + + +```js +const jsonfile = require('jsonfile') +const file = '/tmp/data.json' +jsonfile.readFile(file, function (err, obj) { + if (err) console.error(err) + console.dir(obj) +}) +``` + +You can also use this method with promises. The `readFile` method will return a promise if you do not pass a callback function. + +```js +const jsonfile = require('jsonfile') +const file = '/tmp/data.json' +jsonfile.readFile(file) + .then(obj => console.dir(obj)) + .catch(error => console.error(error)) +``` + +---- + +### readFileSync(filename, [options]) + +`options` (`object`, default `undefined`): Pass in any [`fs.readFileSync`](https://nodejs.org/api/fs.html#fs_fs_readfilesync_path_options) options or set `reviver` for a [JSON reviver](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse). +- `throws` (`boolean`, default: `true`). If an error is encountered reading or parsing the file, throw the error. If `false`, returns `null` for the object. + +```js +const jsonfile = require('jsonfile') +const file = '/tmp/data.json' + +console.dir(jsonfile.readFileSync(file)) +``` + +---- + +### writeFile(filename, obj, [options], callback) + +`options`: Pass in any [`fs.writeFile`](https://nodejs.org/api/fs.html#fs_fs_writefile_file_data_options_callback) options or set `replacer` for a [JSON replacer](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify). Can also pass in `spaces`, or override `EOL` string or set `finalEOL` flag as `false` to not save the file with `EOL` at the end. + + +```js +const jsonfile = require('jsonfile') + +const file = '/tmp/data.json' +const obj = { name: 'JP' } + +jsonfile.writeFile(file, obj, function (err) { + if (err) console.error(err) +}) +``` +Or use with promises as follows: + +```js +const jsonfile = require('jsonfile') + +const file = '/tmp/data.json' +const obj = { name: 'JP' } + +jsonfile.writeFile(file, obj) + .then(res => { + console.log('Write complete') + }) + .catch(error => console.error(error)) +``` + + +**formatting with spaces:** + +```js +const jsonfile = require('jsonfile') + +const file = '/tmp/data.json' +const obj = { name: 'JP' } + +jsonfile.writeFile(file, obj, { spaces: 2 }, function (err) { + if (err) console.error(err) +}) +``` + +**overriding EOL:** + +```js +const jsonfile = require('jsonfile') + +const file = '/tmp/data.json' +const obj = { name: 'JP' } + +jsonfile.writeFile(file, obj, { spaces: 2, EOL: '\r\n' }, function (err) { + if (err) console.error(err) +}) +``` + + +**disabling the EOL at the end of file:** + +```js +const jsonfile = require('jsonfile') + +const file = '/tmp/data.json' +const obj = { name: 'JP' } + +jsonfile.writeFile(file, obj, { spaces: 2, finalEOL: false }, function (err) { + if (err) console.log(err) +}) +``` + +**appending to an existing JSON file:** + +You can use `fs.writeFile` option `{ flag: 'a' }` to achieve this. + +```js +const jsonfile = require('jsonfile') + +const file = '/tmp/mayAlreadyExistedData.json' +const obj = { name: 'JP' } + +jsonfile.writeFile(file, obj, { flag: 'a' }, function (err) { + if (err) console.error(err) +}) +``` + +---- + +### writeFileSync(filename, obj, [options]) + +`options`: Pass in any [`fs.writeFileSync`](https://nodejs.org/api/fs.html#fs_fs_writefilesync_file_data_options) options or set `replacer` for a [JSON replacer](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify). Can also pass in `spaces`, or override `EOL` string or set `finalEOL` flag as `false` to not save the file with `EOL` at the end. + +```js +const jsonfile = require('jsonfile') + +const file = '/tmp/data.json' +const obj = { name: 'JP' } + +jsonfile.writeFileSync(file, obj) +``` + +**formatting with spaces:** + +```js +const jsonfile = require('jsonfile') + +const file = '/tmp/data.json' +const obj = { name: 'JP' } + +jsonfile.writeFileSync(file, obj, { spaces: 2 }) +``` + +**overriding EOL:** + +```js +const jsonfile = require('jsonfile') + +const file = '/tmp/data.json' +const obj = { name: 'JP' } + +jsonfile.writeFileSync(file, obj, { spaces: 2, EOL: '\r\n' }) +``` + +**disabling the EOL at the end of file:** + +```js +const jsonfile = require('jsonfile') + +const file = '/tmp/data.json' +const obj = { name: 'JP' } + +jsonfile.writeFileSync(file, obj, { spaces: 2, finalEOL: false }) +``` + +**appending to an existing JSON file:** + +You can use `fs.writeFileSync` option `{ flag: 'a' }` to achieve this. + +```js +const jsonfile = require('jsonfile') + +const file = '/tmp/mayAlreadyExistedData.json' +const obj = { name: 'JP' } + +jsonfile.writeFileSync(file, obj, { flag: 'a' }) +``` + +License +------- + +(MIT License) + +Copyright 2012-2016, JP Richardson diff --git a/node_modules/jsonfile/index.js b/node_modules/jsonfile/index.js new file mode 100644 index 0000000..0582868 --- /dev/null +++ b/node_modules/jsonfile/index.js @@ -0,0 +1,88 @@ +let _fs +try { + _fs = require('graceful-fs') +} catch (_) { + _fs = require('fs') +} +const universalify = require('universalify') +const { stringify, stripBom } = require('./utils') + +async function _readFile (file, options = {}) { + if (typeof options === 'string') { + options = { encoding: options } + } + + const fs = options.fs || _fs + + const shouldThrow = 'throws' in options ? options.throws : true + + let data = await universalify.fromCallback(fs.readFile)(file, options) + + data = stripBom(data) + + let obj + try { + obj = JSON.parse(data, options ? options.reviver : null) + } catch (err) { + if (shouldThrow) { + err.message = `${file}: ${err.message}` + throw err + } else { + return null + } + } + + return obj +} + +const readFile = universalify.fromPromise(_readFile) + +function readFileSync (file, options = {}) { + if (typeof options === 'string') { + options = { encoding: options } + } + + const fs = options.fs || _fs + + const shouldThrow = 'throws' in options ? options.throws : true + + try { + let content = fs.readFileSync(file, options) + content = stripBom(content) + return JSON.parse(content, options.reviver) + } catch (err) { + if (shouldThrow) { + err.message = `${file}: ${err.message}` + throw err + } else { + return null + } + } +} + +async function _writeFile (file, obj, options = {}) { + const fs = options.fs || _fs + + const str = stringify(obj, options) + + await universalify.fromCallback(fs.writeFile)(file, str, options) +} + +const writeFile = universalify.fromPromise(_writeFile) + +function writeFileSync (file, obj, options = {}) { + const fs = options.fs || _fs + + const str = stringify(obj, options) + // not sure if fs.writeFileSync returns anything, but just in case + return fs.writeFileSync(file, str, options) +} + +const jsonfile = { + readFile, + readFileSync, + writeFile, + writeFileSync +} + +module.exports = jsonfile diff --git a/node_modules/jsonfile/package.json b/node_modules/jsonfile/package.json new file mode 100644 index 0000000..4d01eb1 --- /dev/null +++ b/node_modules/jsonfile/package.json @@ -0,0 +1,40 @@ +{ + "name": "jsonfile", + "version": "6.1.0", + "description": "Easily read/write JSON files.", + "repository": { + "type": "git", + "url": "git@github.com:jprichardson/node-jsonfile.git" + }, + "keywords": [ + "read", + "write", + "file", + "json", + "fs", + "fs-extra" + ], + "author": "JP Richardson ", + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + }, + "devDependencies": { + "mocha": "^8.2.0", + "rimraf": "^2.4.0", + "standard": "^16.0.1" + }, + "main": "index.js", + "files": [ + "index.js", + "utils.js" + ], + "scripts": { + "lint": "standard", + "test": "npm run lint && npm run unit", + "unit": "mocha" + } +} diff --git a/node_modules/jsonfile/utils.js b/node_modules/jsonfile/utils.js new file mode 100644 index 0000000..b5ff48e --- /dev/null +++ b/node_modules/jsonfile/utils.js @@ -0,0 +1,14 @@ +function stringify (obj, { EOL = '\n', finalEOL = true, replacer = null, spaces } = {}) { + const EOF = finalEOL ? EOL : '' + const str = JSON.stringify(obj, replacer, spaces) + + return str.replace(/\n/g, EOL) + EOF +} + +function stripBom (content) { + // we do this because JSON.parse would convert it to a utf8 string if encoding wasn't specified + if (Buffer.isBuffer(content)) content = content.toString('utf8') + return content.replace(/^\uFEFF/, '') +} + +module.exports = { stringify, stripBom } diff --git a/node_modules/jsonparse/.npmignore b/node_modules/jsonparse/.npmignore new file mode 100644 index 0000000..b512c09 --- /dev/null +++ b/node_modules/jsonparse/.npmignore @@ -0,0 +1 @@ +node_modules \ No newline at end of file diff --git a/node_modules/jsonparse/LICENSE b/node_modules/jsonparse/LICENSE new file mode 100644 index 0000000..6dc24be --- /dev/null +++ b/node_modules/jsonparse/LICENSE @@ -0,0 +1,24 @@ +The MIT License + +Copyright (c) 2012 Tim Caswell + +Permission is hereby granted, free of charge, +to any person obtaining a copy of this software and +associated documentation files (the "Software"), to +deal in the Software without restriction, including +without limitation the rights to use, copy, modify, +merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom +the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR +ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/jsonparse/README.markdown b/node_modules/jsonparse/README.markdown new file mode 100644 index 0000000..0f405d3 --- /dev/null +++ b/node_modules/jsonparse/README.markdown @@ -0,0 +1,11 @@ +This is a streaming JSON parser. For a simpler, sax-based version see this gist: https://gist.github.com/1821394 + +The MIT License (MIT) +Copyright (c) 2011-2012 Tim Caswell + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + diff --git a/node_modules/jsonparse/bench.js b/node_modules/jsonparse/bench.js new file mode 100644 index 0000000..b36d92f --- /dev/null +++ b/node_modules/jsonparse/bench.js @@ -0,0 +1,26 @@ +var fs = require('fs'), + Parser = require('./jsonparse'); + + +var json = fs.readFileSync("samplejson/basic.json"); + + +while (true) { + var start = Date.now(); + for (var i = 0; i < 1000; i++) { + JSON.parse(json); + } + var first = Date.now() - start; + + start = Date.now(); + var p = new Parser(); + for (var i = 0; i < 1000; i++) { + p.write(json); + } + var second = Date.now() - start; + + + console.log("JSON.parse took %s", first); + console.log("streaming parser took %s", second); + console.log("streaming is %s times slower", second / first); +} diff --git a/node_modules/jsonparse/examples/twitterfeed.js b/node_modules/jsonparse/examples/twitterfeed.js new file mode 100644 index 0000000..10210d4 --- /dev/null +++ b/node_modules/jsonparse/examples/twitterfeed.js @@ -0,0 +1,30 @@ +var Parser = require('../jsonparse'); +var Http = require('http'); +require('./colors'); +var p = new Parser(); +var cred = require('./credentials'); +var client = Http.createClient(80, "stream.twitter.com"); +var request = client.request("GET", "/1/statuses/sample.json", { + "Host": "stream.twitter.com", + "Authorization": (new Buffer(cred.username + ":" + cred.password)).toString("base64") +}); +request.on('response', function (response) { + console.log(response.statusCode); + console.dir(response.headers); + response.on('data', function (chunk) { + p.write(chunk); + }); + response.on('end', function () { + console.log("END"); + }); +}); +request.end(); +var text = "", name = ""; +p.onValue = function (value) { + if (this.stack.length === 1 && this.key === 'text') { text = value; } + if (this.stack.length === 2 && this.key === 'name' && this.stack[1].key === 'user') { name = value; } + if (this.stack.length === 0) { + console.log(text.blue + " - " + name.yellow); + text = name = ""; + } +}; diff --git a/node_modules/jsonparse/jsonparse.js b/node_modules/jsonparse/jsonparse.js new file mode 100644 index 0000000..3991060 --- /dev/null +++ b/node_modules/jsonparse/jsonparse.js @@ -0,0 +1,413 @@ +/*global Buffer*/ +// Named constants with unique integer values +var C = {}; +// Tokens +var LEFT_BRACE = C.LEFT_BRACE = 0x1; +var RIGHT_BRACE = C.RIGHT_BRACE = 0x2; +var LEFT_BRACKET = C.LEFT_BRACKET = 0x3; +var RIGHT_BRACKET = C.RIGHT_BRACKET = 0x4; +var COLON = C.COLON = 0x5; +var COMMA = C.COMMA = 0x6; +var TRUE = C.TRUE = 0x7; +var FALSE = C.FALSE = 0x8; +var NULL = C.NULL = 0x9; +var STRING = C.STRING = 0xa; +var NUMBER = C.NUMBER = 0xb; +// Tokenizer States +var START = C.START = 0x11; +var STOP = C.STOP = 0x12; +var TRUE1 = C.TRUE1 = 0x21; +var TRUE2 = C.TRUE2 = 0x22; +var TRUE3 = C.TRUE3 = 0x23; +var FALSE1 = C.FALSE1 = 0x31; +var FALSE2 = C.FALSE2 = 0x32; +var FALSE3 = C.FALSE3 = 0x33; +var FALSE4 = C.FALSE4 = 0x34; +var NULL1 = C.NULL1 = 0x41; +var NULL2 = C.NULL2 = 0x42; +var NULL3 = C.NULL3 = 0x43; +var NUMBER1 = C.NUMBER1 = 0x51; +var NUMBER3 = C.NUMBER3 = 0x53; +var STRING1 = C.STRING1 = 0x61; +var STRING2 = C.STRING2 = 0x62; +var STRING3 = C.STRING3 = 0x63; +var STRING4 = C.STRING4 = 0x64; +var STRING5 = C.STRING5 = 0x65; +var STRING6 = C.STRING6 = 0x66; +// Parser States +var VALUE = C.VALUE = 0x71; +var KEY = C.KEY = 0x72; +// Parser Modes +var OBJECT = C.OBJECT = 0x81; +var ARRAY = C.ARRAY = 0x82; +// Character constants +var BACK_SLASH = "\\".charCodeAt(0); +var FORWARD_SLASH = "\/".charCodeAt(0); +var BACKSPACE = "\b".charCodeAt(0); +var FORM_FEED = "\f".charCodeAt(0); +var NEWLINE = "\n".charCodeAt(0); +var CARRIAGE_RETURN = "\r".charCodeAt(0); +var TAB = "\t".charCodeAt(0); + +var STRING_BUFFER_SIZE = 64 * 1024; + +function Parser() { + this.tState = START; + this.value = undefined; + + this.string = undefined; // string data + this.stringBuffer = Buffer.alloc ? Buffer.alloc(STRING_BUFFER_SIZE) : new Buffer(STRING_BUFFER_SIZE); + this.stringBufferOffset = 0; + this.unicode = undefined; // unicode escapes + this.highSurrogate = undefined; + + this.key = undefined; + this.mode = undefined; + this.stack = []; + this.state = VALUE; + this.bytes_remaining = 0; // number of bytes remaining in multi byte utf8 char to read after split boundary + this.bytes_in_sequence = 0; // bytes in multi byte utf8 char to read + this.temp_buffs = { "2": new Buffer(2), "3": new Buffer(3), "4": new Buffer(4) }; // for rebuilding chars split before boundary is reached + + // Stream offset + this.offset = -1; +} + +// Slow code to string converter (only used when throwing syntax errors) +Parser.toknam = function (code) { + var keys = Object.keys(C); + for (var i = 0, l = keys.length; i < l; i++) { + var key = keys[i]; + if (C[key] === code) { return key; } + } + return code && ("0x" + code.toString(16)); +}; + +var proto = Parser.prototype; +proto.onError = function (err) { throw err; }; +proto.charError = function (buffer, i) { + this.tState = STOP; + this.onError(new Error("Unexpected " + JSON.stringify(String.fromCharCode(buffer[i])) + " at position " + i + " in state " + Parser.toknam(this.tState))); +}; +proto.appendStringChar = function (char) { + if (this.stringBufferOffset >= STRING_BUFFER_SIZE) { + this.string += this.stringBuffer.toString('utf8'); + this.stringBufferOffset = 0; + } + + this.stringBuffer[this.stringBufferOffset++] = char; +}; +proto.appendStringBuf = function (buf, start, end) { + var size = buf.length; + if (typeof start === 'number') { + if (typeof end === 'number') { + if (end < 0) { + // adding a negative end decreeses the size + size = buf.length - start + end; + } else { + size = end - start; + } + } else { + size = buf.length - start; + } + } + + if (size < 0) { + size = 0; + } + + if (this.stringBufferOffset + size > STRING_BUFFER_SIZE) { + this.string += this.stringBuffer.toString('utf8', 0, this.stringBufferOffset); + this.stringBufferOffset = 0; + } + + buf.copy(this.stringBuffer, this.stringBufferOffset, start, end); + this.stringBufferOffset += size; +}; +proto.write = function (buffer) { + if (typeof buffer === "string") buffer = new Buffer(buffer); + var n; + for (var i = 0, l = buffer.length; i < l; i++) { + if (this.tState === START){ + n = buffer[i]; + this.offset++; + if(n === 0x7b){ this.onToken(LEFT_BRACE, "{"); // { + }else if(n === 0x7d){ this.onToken(RIGHT_BRACE, "}"); // } + }else if(n === 0x5b){ this.onToken(LEFT_BRACKET, "["); // [ + }else if(n === 0x5d){ this.onToken(RIGHT_BRACKET, "]"); // ] + }else if(n === 0x3a){ this.onToken(COLON, ":"); // : + }else if(n === 0x2c){ this.onToken(COMMA, ","); // , + }else if(n === 0x74){ this.tState = TRUE1; // t + }else if(n === 0x66){ this.tState = FALSE1; // f + }else if(n === 0x6e){ this.tState = NULL1; // n + }else if(n === 0x22){ // " + this.string = ""; + this.stringBufferOffset = 0; + this.tState = STRING1; + }else if(n === 0x2d){ this.string = "-"; this.tState = NUMBER1; // - + }else{ + if (n >= 0x30 && n < 0x40) { // 1-9 + this.string = String.fromCharCode(n); this.tState = NUMBER3; + } else if (n === 0x20 || n === 0x09 || n === 0x0a || n === 0x0d) { + // whitespace + } else { + return this.charError(buffer, i); + } + } + }else if (this.tState === STRING1){ // After open quote + n = buffer[i]; // get current byte from buffer + // check for carry over of a multi byte char split between data chunks + // & fill temp buffer it with start of this data chunk up to the boundary limit set in the last iteration + if (this.bytes_remaining > 0) { + for (var j = 0; j < this.bytes_remaining; j++) { + this.temp_buffs[this.bytes_in_sequence][this.bytes_in_sequence - this.bytes_remaining + j] = buffer[j]; + } + + this.appendStringBuf(this.temp_buffs[this.bytes_in_sequence]); + this.bytes_in_sequence = this.bytes_remaining = 0; + i = i + j - 1; + } else if (this.bytes_remaining === 0 && n >= 128) { // else if no remainder bytes carried over, parse multi byte (>=128) chars one at a time + if (n <= 193 || n > 244) { + return this.onError(new Error("Invalid UTF-8 character at position " + i + " in state " + Parser.toknam(this.tState))); + } + if ((n >= 194) && (n <= 223)) this.bytes_in_sequence = 2; + if ((n >= 224) && (n <= 239)) this.bytes_in_sequence = 3; + if ((n >= 240) && (n <= 244)) this.bytes_in_sequence = 4; + if ((this.bytes_in_sequence + i) > buffer.length) { // if bytes needed to complete char fall outside buffer length, we have a boundary split + for (var k = 0; k <= (buffer.length - 1 - i); k++) { + this.temp_buffs[this.bytes_in_sequence][k] = buffer[i + k]; // fill temp buffer of correct size with bytes available in this chunk + } + this.bytes_remaining = (i + this.bytes_in_sequence) - buffer.length; + i = buffer.length - 1; + } else { + this.appendStringBuf(buffer, i, i + this.bytes_in_sequence); + i = i + this.bytes_in_sequence - 1; + } + } else if (n === 0x22) { + this.tState = START; + this.string += this.stringBuffer.toString('utf8', 0, this.stringBufferOffset); + this.stringBufferOffset = 0; + this.onToken(STRING, this.string); + this.offset += Buffer.byteLength(this.string, 'utf8') + 1; + this.string = undefined; + } + else if (n === 0x5c) { + this.tState = STRING2; + } + else if (n >= 0x20) { this.appendStringChar(n); } + else { + return this.charError(buffer, i); + } + }else if (this.tState === STRING2){ // After backslash + n = buffer[i]; + if(n === 0x22){ this.appendStringChar(n); this.tState = STRING1; + }else if(n === 0x5c){ this.appendStringChar(BACK_SLASH); this.tState = STRING1; + }else if(n === 0x2f){ this.appendStringChar(FORWARD_SLASH); this.tState = STRING1; + }else if(n === 0x62){ this.appendStringChar(BACKSPACE); this.tState = STRING1; + }else if(n === 0x66){ this.appendStringChar(FORM_FEED); this.tState = STRING1; + }else if(n === 0x6e){ this.appendStringChar(NEWLINE); this.tState = STRING1; + }else if(n === 0x72){ this.appendStringChar(CARRIAGE_RETURN); this.tState = STRING1; + }else if(n === 0x74){ this.appendStringChar(TAB); this.tState = STRING1; + }else if(n === 0x75){ this.unicode = ""; this.tState = STRING3; + }else{ + return this.charError(buffer, i); + } + }else if (this.tState === STRING3 || this.tState === STRING4 || this.tState === STRING5 || this.tState === STRING6){ // unicode hex codes + n = buffer[i]; + // 0-9 A-F a-f + if ((n >= 0x30 && n < 0x40) || (n > 0x40 && n <= 0x46) || (n > 0x60 && n <= 0x66)) { + this.unicode += String.fromCharCode(n); + if (this.tState++ === STRING6) { + var intVal = parseInt(this.unicode, 16); + this.unicode = undefined; + if (this.highSurrogate !== undefined && intVal >= 0xDC00 && intVal < (0xDFFF + 1)) { //<56320,57343> - lowSurrogate + this.appendStringBuf(new Buffer(String.fromCharCode(this.highSurrogate, intVal))); + this.highSurrogate = undefined; + } else if (this.highSurrogate === undefined && intVal >= 0xD800 && intVal < (0xDBFF + 1)) { //<55296,56319> - highSurrogate + this.highSurrogate = intVal; + } else { + if (this.highSurrogate !== undefined) { + this.appendStringBuf(new Buffer(String.fromCharCode(this.highSurrogate))); + this.highSurrogate = undefined; + } + this.appendStringBuf(new Buffer(String.fromCharCode(intVal))); + } + this.tState = STRING1; + } + } else { + return this.charError(buffer, i); + } + } else if (this.tState === NUMBER1 || this.tState === NUMBER3) { + n = buffer[i]; + + switch (n) { + case 0x30: // 0 + case 0x31: // 1 + case 0x32: // 2 + case 0x33: // 3 + case 0x34: // 4 + case 0x35: // 5 + case 0x36: // 6 + case 0x37: // 7 + case 0x38: // 8 + case 0x39: // 9 + case 0x2e: // . + case 0x65: // e + case 0x45: // E + case 0x2b: // + + case 0x2d: // - + this.string += String.fromCharCode(n); + this.tState = NUMBER3; + break; + default: + this.tState = START; + var result = Number(this.string); + + if (isNaN(result)){ + return this.charError(buffer, i); + } + + if ((this.string.match(/[0-9]+/) == this.string) && (result.toString() != this.string)) { + // Long string of digits which is an ID string and not valid and/or safe JavaScript integer Number + this.onToken(STRING, this.string); + } else { + this.onToken(NUMBER, result); + } + + this.offset += this.string.length - 1; + this.string = undefined; + i--; + break; + } + }else if (this.tState === TRUE1){ // r + if (buffer[i] === 0x72) { this.tState = TRUE2; } + else { return this.charError(buffer, i); } + }else if (this.tState === TRUE2){ // u + if (buffer[i] === 0x75) { this.tState = TRUE3; } + else { return this.charError(buffer, i); } + }else if (this.tState === TRUE3){ // e + if (buffer[i] === 0x65) { this.tState = START; this.onToken(TRUE, true); this.offset+= 3; } + else { return this.charError(buffer, i); } + }else if (this.tState === FALSE1){ // a + if (buffer[i] === 0x61) { this.tState = FALSE2; } + else { return this.charError(buffer, i); } + }else if (this.tState === FALSE2){ // l + if (buffer[i] === 0x6c) { this.tState = FALSE3; } + else { return this.charError(buffer, i); } + }else if (this.tState === FALSE3){ // s + if (buffer[i] === 0x73) { this.tState = FALSE4; } + else { return this.charError(buffer, i); } + }else if (this.tState === FALSE4){ // e + if (buffer[i] === 0x65) { this.tState = START; this.onToken(FALSE, false); this.offset+= 4; } + else { return this.charError(buffer, i); } + }else if (this.tState === NULL1){ // u + if (buffer[i] === 0x75) { this.tState = NULL2; } + else { return this.charError(buffer, i); } + }else if (this.tState === NULL2){ // l + if (buffer[i] === 0x6c) { this.tState = NULL3; } + else { return this.charError(buffer, i); } + }else if (this.tState === NULL3){ // l + if (buffer[i] === 0x6c) { this.tState = START; this.onToken(NULL, null); this.offset += 3; } + else { return this.charError(buffer, i); } + } + } +}; +proto.onToken = function (token, value) { + // Override this to get events +}; + +proto.parseError = function (token, value) { + this.tState = STOP; + this.onError(new Error("Unexpected " + Parser.toknam(token) + (value ? ("(" + JSON.stringify(value) + ")") : "") + " in state " + Parser.toknam(this.state))); +}; +proto.push = function () { + this.stack.push({value: this.value, key: this.key, mode: this.mode}); +}; +proto.pop = function () { + var value = this.value; + var parent = this.stack.pop(); + this.value = parent.value; + this.key = parent.key; + this.mode = parent.mode; + this.emit(value); + if (!this.mode) { this.state = VALUE; } +}; +proto.emit = function (value) { + if (this.mode) { this.state = COMMA; } + this.onValue(value); +}; +proto.onValue = function (value) { + // Override me +}; +proto.onToken = function (token, value) { + if(this.state === VALUE){ + if(token === STRING || token === NUMBER || token === TRUE || token === FALSE || token === NULL){ + if (this.value) { + this.value[this.key] = value; + } + this.emit(value); + }else if(token === LEFT_BRACE){ + this.push(); + if (this.value) { + this.value = this.value[this.key] = {}; + } else { + this.value = {}; + } + this.key = undefined; + this.state = KEY; + this.mode = OBJECT; + }else if(token === LEFT_BRACKET){ + this.push(); + if (this.value) { + this.value = this.value[this.key] = []; + } else { + this.value = []; + } + this.key = 0; + this.mode = ARRAY; + this.state = VALUE; + }else if(token === RIGHT_BRACE){ + if (this.mode === OBJECT) { + this.pop(); + } else { + return this.parseError(token, value); + } + }else if(token === RIGHT_BRACKET){ + if (this.mode === ARRAY) { + this.pop(); + } else { + return this.parseError(token, value); + } + }else{ + return this.parseError(token, value); + } + }else if(this.state === KEY){ + if (token === STRING) { + this.key = value; + this.state = COLON; + } else if (token === RIGHT_BRACE) { + this.pop(); + } else { + return this.parseError(token, value); + } + }else if(this.state === COLON){ + if (token === COLON) { this.state = VALUE; } + else { return this.parseError(token, value); } + }else if(this.state === COMMA){ + if (token === COMMA) { + if (this.mode === ARRAY) { this.key++; this.state = VALUE; } + else if (this.mode === OBJECT) { this.state = KEY; } + + } else if (token === RIGHT_BRACKET && this.mode === ARRAY || token === RIGHT_BRACE && this.mode === OBJECT) { + this.pop(); + } else { + return this.parseError(token, value); + } + }else{ + return this.parseError(token, value); + } +}; + +Parser.C = C; + +module.exports = Parser; diff --git a/node_modules/jsonparse/package.json b/node_modules/jsonparse/package.json new file mode 100644 index 0000000..a2312ee --- /dev/null +++ b/node_modules/jsonparse/package.json @@ -0,0 +1,22 @@ +{ + "name": "jsonparse", + "description": "This is a pure-js JSON streaming parser for node.js", + "tags": ["json", "stream"], + "version": "1.3.1", + "author": "Tim Caswell ", + "repository": { + "type": "git", + "url": "http://github.com/creationix/jsonparse.git" + }, + "devDependencies": { + "tape": "~0.1.1", + "tap": "~0.3.3" + }, + "scripts": { + "test": "tap test/*.js" + }, + "bugs": "http://github.com/creationix/jsonparse/issues", + "engines": ["node >= 0.2.0"], + "license": "MIT", + "main": "jsonparse.js" +} diff --git a/node_modules/jsonparse/samplejson/basic.json b/node_modules/jsonparse/samplejson/basic.json new file mode 100644 index 0000000..950dff9 --- /dev/null +++ b/node_modules/jsonparse/samplejson/basic.json @@ -0,0 +1,167 @@ +[ + { + }, + { + "image": [ + {"shape": "rect", "fill": "#333", "stroke": "#999", "x": 0.5e+1, "y": 0.5, "z": 0.8e-0, "w": 0.5e5, "u": 2E10, "foo": 2E+1, "bar": 2E-0, "width": 47, "height": 47} + ], + "jumpable": 3, + "solid": { + "1": [2,4], + "2": [], + "3": [2,6], + "4": [], + "5": [2,8,1,3,7,9,4,6], + "6": [], + "7": [4,8], + "8": [], + "9": [6,8] + }, + "corners": {"1": true,"3": true,"7": true,"9": true} + }, + { + "image": [ + {"shape": "polygon", "fill": "#248", "stroke": "#48f", "points": [[0.5,47.5],[47.5,47.5],[47.5,0.5]]} + ], + "solid": { + "1": [2,4], + "2": [1], + "3": [2], + "4": [], + "5": [2,8,1,3,7,9,4,6], + "6": [], + "7": [4,8], + "8": [], + "9": [6,8] + }, + "corners": {"1": true,"3": true,"7": false,"9": true} + }, + { + "image": [ + {"shape": "polygon", "fill": "#248", "stroke": "#48f", "points": [[0.5,0.5],[47.5,47.5],[0.5,47.5]]} + ], + "solid": { + "1": [2], + "2": [3], + "3": [2,6], + "4": [], + "5": [2,8,1,3,7,9,4,6], + "6": [], + "7": [4,8], + "8": [], + "9": [6,8] + }, + "corners": {"1": true,"3": true,"7": true,"9": false} + }, + { + "image": [ + {"shape": "polygon", "fill": "#333", "stroke": "#999", "points": [[0.5,0.5],[47.5,47.5],[47.5,0.5]]} + ], + "jumpable": 3, + "solid": { + "1": [2,4], + "2": [], + "3": [2,6], + "4": [], + "5": [2,8,1,3,7,9,4,6], + "6": [3], + "7": [4,8], + "8": [7], + "9": [6,8] + }, + "corners": {"1": false,"3": true,"7": true,"9": true} + }, + { + "image": [ + {"shape": "polygon", "fill": "#333", "stroke": "#999", "points": [[0.5,0.5],[0.5,47.5],[47.5,0.5]]} + ], + "jumpable": 3, + "solid": { + "1": [2,4], + "2": [], + "3": [2,6], + "4": [1], + "5": [2,8,1,3,7,9,4,6], + "6": [], + "7": [4,8], + "8": [9], + "9": [6,8] + }, + "corners": {"1": true,"3": false,"7": true,"9": true} + }, + { + "image": [ + {"shape": "polygon", "fill": "#482", "stroke": "#8f4", "points": [[0.5,47.5],[0.5,23.5],[24.5,23.5],[24.5,0.5],[47.5,0.5],[47.5,47.5]]} + ], + "jumpable": 3, + "solid": { + "1": [2,4], + "2": [], + "3": [6,2], + "4": [], + "5": [2,8,1,3,7,9,4,6], + "6": [9], + "7": [4,8], + "8": [], + "9": [6,8] + }, + "corners": {"1": true,"3": true,"7": false,"9": true} + }, + { + "image": [ + {"shape": "polygon", "fill": "#482", "stroke": "#8f4", "points": [[0.5,0.5],[23.5,0.5],[23.5,24.5],[47.5,24.5],[47.5,47.5],[0.5,47.5]]} + ], + "jumpable": 3, + "solid": { + "1": [4,2], + "2": [], + "3": [2,6], + "4": [7], + "5": [2,8,1,3,7,9,4,6], + "6": [], + "7": [4,8], + "8": [], + "9": [6,8] + }, + "corners": {"1": true,"3": true,"7": true,"9": false} + }, + { + "image": [ + {"shape": "circle", "fill": "#ff0", "stroke": "#ff8", "cx": 24, "cy": 24, "r": 18} + ], + "item": true + }, + { + "image": [ + {"shape": "polygon", "fill": "#842", "stroke": "#f84", "points": [[4.5,0.5],[14.5,0.5],[14.5,17.5],[34,17.5],[33.5,0.5],[43.5,0.5],[43.5,47.5],[33.5,47.5],[33.5,30.5],[14.5,30.5],[14.5,47.5],[4.5,47.5]]} + ], + "jumpable": 3 + }, + { + "image": [ + {"shape": "polygon", "fill": "#333", "stroke": "#999", "points": [[0.5,0.5],[47.5,0.5],[24,47.5]]} + ], + "jumpable": 3, + "solid": { + "1": [2,4], + "2": [], + "3": [2,6], + "4": [1], + "5": [2,8,1,3,7,9,4,6], + "6": [3], + "7": [4,8], + "8": [], + "9": [6,8] + }, + "corners": {"1": false,"3": false,"7": true,"9": true} + }, + { + "image": [ + {"shape": "rect", "fill": "#114acb", "x": 0.5, "y": 0.5, "width": 47, "height": 47}, + {"shape": "polygon", "fill": "rgba(255,255,255,0.30)", "points": [[0.5,0.5],[47.5,0.5],[40,8],[8,8],[8,40],[0.5,47.5]]}, + {"shape": "polygon", "fill": "rgba(0,0,0,0.30)", "points": [[47.5,0.5],[48,48],[0.5,47.5],[8,40],[40,40],[40,8]]}, + {"shape": "polygon", "fill": "rgb(255,255,0)", "stroke": "rgba(255,255,0,0.5)", "points": [[24,9],[35,20],[26,29],[26,33],[22,33],[22,27],[29,20],[24,15],[16,23],[13,20]]}, + {"shape": "rect", "fill": "rgb(255,255,0)", "stroke": "rgba(255,255,0,0.5)", "x": 22, "y":35, "width": 4, "height": 4} + ] + } +] diff --git a/node_modules/jsonparse/samplejson/basic2.json b/node_modules/jsonparse/samplejson/basic2.json new file mode 100644 index 0000000..3a6919b --- /dev/null +++ b/node_modules/jsonparse/samplejson/basic2.json @@ -0,0 +1,180 @@ +[ + { + }, + { + "image": [ + {"shape": "rect", "fill": "#333", "stroke": "#999", "x": 0.5, "y": 0.5, "width": 47, "height": 47} + ], + "jumpable": 3, + "solid": { + "1": [2,4], + "2": [], + "3": [2,6], + "4": [], + "5": [2,8,1,3,7,9,4,6], + "6": [], + "7": [4,8], + "8": [], + "9": [6,8] + }, + "corners": {"1": true,"3": true,"7": true,"9": true} + }, + { + "image": [ + {"shape": "polygon", "fill": "#248", "stroke": "#48f", "points": [[0.5,47.5],[47.5,47.5],[47.5,0.5]]} + ], + "solid": { + "1": [2,4], + "2": [1], + "3": [2], + "4": [], + "5": [2,8,1,3,7,9,4,6], + "6": [], + "7": [4,8], + "8": [], + "9": [6,8] + }, + "corners": {"1": true,"3": true,"7": false,"9": true} + }, + { + "image": [ + {"shape": "polygon", "fill": "#248", "stroke": "#48f", "points": [[0.5,0.5],[47.5,47.5],[0.5,47.5]]} + ], + "solid": { + "1": [2], + "2": [3], + "3": [2,6], + "4": [], + "5": [2,8,1,3,7,9,4,6], + "6": [], + "7": [4,8], + "8": [], + "9": [6,8] + }, + "corners": {"1": true,"3": true,"7": true,"9": false} + }, + { + "image": [ + {"shape": "polygon", "fill": "#333", "stroke": "#999", "points": [[0.5,0.5],[47.5,47.5],[47.5,0.5]]} + ], + "jumpable": 3, + "solid": { + "1": [2,4], + "2": [], + "3": [2,6], + "4": [], + "5": [2,8,1,3,7,9,4,6], + "6": [3], + "7": [4,8], + "8": [7], + "9": [6,8] + }, + "corners": {"1": false,"3": true,"7": true,"9": true} + }, + { + "image": [ + {"shape": "polygon", "fill": "#333", "stroke": "#999", "points": [[0.5,0.5],[0.5,47.5],[47.5,0.5]]} + ], + "jumpable": 3, + "solid": { + "1": [2,4], + "2": [], + "3": [2,6], + "4": [1], + "5": [2,8,1,3,7,9,4,6], + "6": [], + "7": [4,8], + "8": [9], + "9": [6,8] + }, + "corners": {"1": true,"3": false,"7": true,"9": true} + }, + { + "image": [ + {"shape": "polygon", "fill": "#482", "stroke": "#8f4", "points": [[0.5,47.5],[0.5,23.5],[24.5,23.5],[24.5,0.5],[47.5,0.5],[47.5,47.5]]} + ], + "jumpable": 3, + "solid": { + "1": [2,4], + "2": [], + "3": [6,2], + "4": [], + "5": [2,8,1,3,7,9,4,6], + "6": [9], + "7": [4,8], + "8": [], + "9": [6,8] + }, + "corners": {"1": true,"3": true,"7": false,"9": true} + }, + { + "image": [ + {"shape": "polygon", "fill": "#482", "stroke": "#8f4", "points": [[0.5,0.5],[23.5,0.5],[23.5,24.5],[47.5,24.5],[47.5,47.5],[0.5,47.5]]} + ], + "jumpable": 3, + "solid": { + "1": [4,2], + "2": [], + "3": [2,6], + "4": [7], + "5": [2,8,1,3,7,9,4,6], + "6": [], + "7": [4,8], + "8": [], + "9": [6,8] + }, + "corners": {"1": true,"3": true,"7": true,"9": false} + }, + { + "image": [ + {"shape": "circle", "fill": "#ff0", "stroke": "#ff8", "cx": 24, "cy": 24, "r": 18} + ], + "item": true + }, + { + "image": [ + {"shape": "polygon", "fill": "#842", "stroke": "#f84", "points": [[4.5,0.5],[14.5,0.5],[14.5,17.5],[34,17.5],[33.5,0.5],[43.5,0.5],[43.5,47.5],[33.5,47.5],[33.5,30.5],[14.5,30.5],[14.5,47.5],[4.5,47.5]]} + ], + "jumpable": 3 + }, + { + "image": [ + {"shape": "polygon", "fill": "#333", "stroke": "#999", "points": [[0.5,0.5],[47.5,0.5],[24,47.5]]} + ], + "jumpable": 3, + "solid": { + "1": [2,4], + "2": [], + "3": [2,6], + "4": [1], + "5": [2,8,1,3,7,9,4,6], + "6": [3], + "7": [4,8], + "8": [], + "9": [6,8] + }, + "corners": {"1": false,"3": false,"7": true,"9": true} + }, + { + "image": [ + {"shape": "rect", "fill": "#114acb", "x": 0.5, "y": 0.5, "width": 47, "height": 47}, + {"shape": "polygon", "fill": "rgba(255,255,255,0.30)", "points": [[0.5,0.5],[47.5,0.5],[40,8],[8,8],[8,40],[0.5,47.5]]}, + {"shape": "polygon", "fill": "rgba(0,0,0,0.30)", "points": [[47.5,0.5],[48,48],[0.5,47.5],[8,40],[40,40],[40,8]]}, + {"shape": "polygon", "fill": "rgb(255,255,0)", "stroke": "rgba(255,255,0,0.5)", "points": [[24,9],[35,20],[26,29],[26,33],[22,33],[22,27],[29,20],[24,15],[16,23],[13,20]]}, + {"shape": "rect", "fill": "rgb(255,255,0)", "stroke": "rgba(255,255,0,0.5)", "x": 22, "y":35, "width": 4, "height": 4} + ], + "item": true + }, + { + "image": [ + {"shape": "circle", "fill": "#80f", "stroke": "#88f", "cx": 24, "cy": 24, "r": 18} + ], + "item": true + }, + { + "image": [ + {"shape": "circle", "fill": "#4f4", "stroke": "#8f8", "cx": 24, "cy": 24, "r": 18} + ], + "item": true + } +] diff --git a/node_modules/jsonparse/test/big-token.js b/node_modules/jsonparse/test/big-token.js new file mode 100644 index 0000000..3604631 --- /dev/null +++ b/node_modules/jsonparse/test/big-token.js @@ -0,0 +1,24 @@ +var stream = require('stream'); +var JsonParse = require('../jsonparse'); +var test = require('tape'); + +test('can handle large tokens without running out of memory', function (t) { + var parser = new JsonParse(); + var chunkSize = 1024; + var chunks = 1024 * 200; // 200mb + var quote = Buffer.from ? Buffer.from('"') : new Buffer('"'); + t.plan(1); + + parser.onToken = function (type, value) { + t.equal(value.length, chunkSize * chunks, 'token should be size of input json'); + t.end(); + }; + + parser.write(quote); + for (var i = 0; i < chunks; ++i) { + var buf = Buffer.alloc ? Buffer.alloc(chunkSize) : new Buffer(chunkSize); + buf.fill('a'); + parser.write(buf); + } + parser.write(quote); +}); diff --git a/node_modules/jsonparse/test/boundary.js b/node_modules/jsonparse/test/boundary.js new file mode 100644 index 0000000..6671f5f --- /dev/null +++ b/node_modules/jsonparse/test/boundary.js @@ -0,0 +1,110 @@ +var test = require('tape'); +var Parser = require('../'); + +test('2 byte utf8 \'De\' character: д', function (t) { + t.plan(1); + + var p = new Parser(); + p.onValue = function (value) { + t.equal(value, 'д'); + }; + + var de_buffer = new Buffer([0xd0, 0xb4]); + + p.write('"'); + p.write(de_buffer); + p.write('"'); + +}); + +test('3 byte utf8 \'Han\' character: 我', function (t) { + t.plan(1); + + var p = new Parser(); + p.onValue = function (value) { + t.equal(value, '我'); + }; + + var han_buffer = new Buffer([0xe6, 0x88, 0x91]); + p.write('"'); + p.write(han_buffer); + p.write('"'); +}); + +test('4 byte utf8 character (unicode scalar U+2070E): 𠜎', function (t) { + t.plan(1); + + var p = new Parser(); + p.onValue = function (value) { + t.equal(value, '𠜎'); + }; + + var Ux2070E_buffer = new Buffer([0xf0, 0xa0, 0x9c, 0x8e]); + p.write('"'); + p.write(Ux2070E_buffer); + p.write('"'); +}); + +test('3 byte utf8 \'Han\' character chunked inbetween 2nd and 3rd byte: 我', function (t) { + t.plan(1); + + var p = new Parser(); + p.onValue = function (value) { + t.equal(value, '我'); + }; + + var han_buffer_first = new Buffer([0xe6, 0x88]); + var han_buffer_second = new Buffer([0x91]); + p.write('"'); + p.write(han_buffer_first); + p.write(han_buffer_second); + p.write('"'); +}); + +test('4 byte utf8 character (unicode scalar U+2070E) chunked inbetween 2nd and 3rd byte: 𠜎', function (t) { + t.plan(1); + + var p = new Parser(); + p.onValue = function (value) { + t.equal(value, '𠜎'); + }; + + var Ux2070E_buffer_first = new Buffer([0xf0, 0xa0]); + var Ux2070E_buffer_second = new Buffer([0x9c, 0x8e]); + p.write('"'); + p.write(Ux2070E_buffer_first); + p.write(Ux2070E_buffer_second); + p.write('"'); +}); + +test('1-4 byte utf8 character string chunked inbetween random bytes: Aж文𠜱B', function (t) { + t.plan(1); + +var p = new Parser(); + p.onValue = function (value) { + t.equal(value, 'Aж文𠜱B'); + }; + + var eclectic_buffer = new Buffer([0x41, // A + 0xd0, 0xb6, // ж + 0xe6, 0x96, 0x87, // 文 + 0xf0, 0xa0, 0x9c, 0xb1, // 𠜱 + 0x42]); // B + + var rand_chunk = Math.floor(Math.random() * (eclectic_buffer.length)); + var first_buffer = eclectic_buffer.slice(0, rand_chunk); + var second_buffer = eclectic_buffer.slice(rand_chunk); + + //console.log('eclectic_buffer: ' + eclectic_buffer) + //console.log('sliced from 0 to ' + rand_chunk); + //console.log(first_buffer); + //console.log('then sliced from ' + rand_chunk + ' to the end'); + //console.log(second_buffer); + + console.log('chunked after offset ' + rand_chunk); + p.write('"'); + p.write(first_buffer); + p.write(second_buffer); + p.write('"'); + +}); \ No newline at end of file diff --git a/node_modules/jsonparse/test/offset.js b/node_modules/jsonparse/test/offset.js new file mode 100644 index 0000000..9a552ab --- /dev/null +++ b/node_modules/jsonparse/test/offset.js @@ -0,0 +1,67 @@ +var test = require('tape'); +var Parser = require('../'); + +var input = '{\n "string": "value",\n "number": 3,\n "object"'; +var input2 = ': {\n "key": "vд"\n },\n "array": [\n -1,\n 12\n ]\n '; +var input3 = '"null": null, "true": true, "false": false, "frac": 3.14 }'; + +var offsets = [ + [ 0, Parser.C.LEFT_BRACE ], + [ 4, Parser.C.STRING ], + [ 12, Parser.C.COLON ], + [ 14, Parser.C.STRING ], + [ 21, Parser.C.COMMA ], + [ 25, Parser.C.STRING ], + [ 33, Parser.C.COLON ], + [ 35, Parser.C.NUMBER ], + [ 36, Parser.C.COMMA ], + [ 40, Parser.C.STRING ], + [ 48, Parser.C.COLON ], + [ 50, Parser.C.LEFT_BRACE ], + [ 54, Parser.C.STRING ], + [ 59, Parser.C.COLON ], + [ 61, Parser.C.STRING ], + [ 69, Parser.C.RIGHT_BRACE ], + [ 70, Parser.C.COMMA ], + [ 74, Parser.C.STRING ], + [ 81, Parser.C.COLON ], + [ 83, Parser.C.LEFT_BRACKET ], + [ 87, Parser.C.NUMBER ], + [ 89, Parser.C.COMMA ], + [ 93, Parser.C.NUMBER ], + [ 98, Parser.C.RIGHT_BRACKET ], + [ 102, Parser.C.STRING ], + [ 108, Parser.C.COLON ], + [ 110, Parser.C.NULL ], + [ 114, Parser.C.COMMA ], + [ 116, Parser.C.STRING ], + [ 122, Parser.C.COLON ], + [ 124, Parser.C.TRUE ], + [ 128, Parser.C.COMMA ], + [ 130, Parser.C.STRING ], + [ 137, Parser.C.COLON ], + [ 139, Parser.C.FALSE ], + [ 144, Parser.C.COMMA ], + [ 146, Parser.C.STRING ], + [ 152, Parser.C.COLON ], + [ 154, Parser.C.NUMBER ], + [ 159, Parser.C.RIGHT_BRACE ] +]; + +test('offset', function(t) { + t.plan(offsets.length * 2 + 1); + + var p = new Parser(); + var i = 0; + p.onToken = function (token) { + t.equal(p.offset, offsets[i][0]); + t.equal(token, offsets[i][1]); + i++; + }; + + p.write(input); + p.write(input2); + p.write(input3); + + t.equal(i, offsets.length); +}); diff --git a/node_modules/jsonparse/test/primitives.js b/node_modules/jsonparse/test/primitives.js new file mode 100644 index 0000000..33cae16 --- /dev/null +++ b/node_modules/jsonparse/test/primitives.js @@ -0,0 +1,57 @@ +var test = require('tape'); +var Parser = require('../'); + +var expected = [ + [ [], '' ], + [ [], 'Hello' ], + [ [], 'This"is' ], + [ [], '\r\n\f\t\\/"' ], + [ [], 'Λάμβδα' ], + [ [], '\\' ], + [ [], '/' ], + [ [], '"' ], + [ [ 0 ], 0 ], + [ [ 1 ], 1 ], + [ [ 2 ], -1 ], + [ [], [ 0, 1, -1 ] ], + [ [ 0 ], 1 ], + [ [ 1 ], 1.1 ], + [ [ 2 ], -1.1 ], + [ [ 3 ], -1 ], + [ [], [ 1, 1.1, -1.1, -1 ] ], + [ [ 0 ], -1 ], + [ [], [ -1 ] ], + [ [ 0 ], -0.1 ], + [ [], [ -0.1 ] ], + [ [ 0 ], 6.02e+23 ], + [ [], [ 6.02e+23 ] ], + [ [ 0 ], '7161093205057351174' ], + [ [], [ '7161093205057351174'] ] +]; + +test('primitives', function (t) { + t.plan(25); + + var p = new Parser(); + p.onValue = function (value) { + var keys = this.stack + .slice(1) + .map(function (item) { return item.key }) + .concat(this.key !== undefined ? this.key : []) + ; + t.deepEqual( + [ keys, value ], + expected.shift() + ); + }; + + p.write('"""Hello""This\\"is""\\r\\n\\f\\t\\\\\\/\\""'); + p.write('"\\u039b\\u03ac\\u03bc\\u03b2\\u03b4\\u03b1"'); + p.write('"\\\\"'); + p.write('"\\/"'); + p.write('"\\""'); + p.write('[0,1,-1]'); + p.write('[1.0,1.1,-1.1,-1.0][-1][-0.1]'); + p.write('[6.02e23]'); + p.write('[7161093205057351174]'); +}); diff --git a/node_modules/jsonparse/test/surrogate.js b/node_modules/jsonparse/test/surrogate.js new file mode 100644 index 0000000..c048f37 --- /dev/null +++ b/node_modules/jsonparse/test/surrogate.js @@ -0,0 +1,26 @@ +var test = require('tape'); +var Parser = require('../'); + +test('parse surrogate pair', function (t) { + t.plan(1); + + var p = new Parser(); + p.onValue = function (value) { + t.equal(value, '😋'); + }; + + p.write('"\\uD83D\\uDE0B"'); +}); + +test('parse chunked surrogate pair', function (t) { + t.plan(1); + + var p = new Parser(); + p.onValue = function (value) { + t.equal(value, '😋'); + }; + + p.write('"\\uD83D'); + p.write('\\uDE0B"'); +}); + diff --git a/node_modules/jsonparse/test/unvalid.js b/node_modules/jsonparse/test/unvalid.js new file mode 100644 index 0000000..7715cc0 --- /dev/null +++ b/node_modules/jsonparse/test/unvalid.js @@ -0,0 +1,15 @@ +var test = require('tape'); +var Parser = require('../'); + +test('unvalid', function (t) { + var count = 0; + + var p = new Parser(); + p.onError = function (value) { + count++; + t.equal(1, count); + t.end(); + }; + + p.write('{"test": eer['); +}); diff --git a/node_modules/jsonparse/test/utf8.js b/node_modules/jsonparse/test/utf8.js new file mode 100644 index 0000000..6cb842f --- /dev/null +++ b/node_modules/jsonparse/test/utf8.js @@ -0,0 +1,38 @@ +var test = require('tape'); +var Parser = require('../'); + +test('3 bytes of utf8', function (t) { + t.plan(1); + + var p = new Parser(); + p.onValue = function (value) { + t.equal(value, '├──'); + }; + + p.write('"├──"'); +}); + +test('utf8 snowman', function (t) { + t.plan(1); + + var p = new Parser(); + p.onValue = function (value) { + t.equal(value, '☃'); + }; + + p.write('"☃"'); +}); + +test('utf8 with regular ascii', function (t) { + t.plan(4); + + var p = new Parser(); + var expected = [ "snow: ☃!", "xyz", "¡que!" ]; + expected.push(expected.slice()); + + p.onValue = function (value) { + t.deepEqual(value, expected.shift()); + }; + + p.write('["snow: ☃!","xyz","¡que!"]'); +}); diff --git a/node_modules/jsprim/CHANGES.md b/node_modules/jsprim/CHANGES.md new file mode 100644 index 0000000..0e51ff2 --- /dev/null +++ b/node_modules/jsprim/CHANGES.md @@ -0,0 +1,53 @@ +# Changelog + +## not yet released + +None yet. + +## v1.4.2 (2021-11-29) + +* #35 Backport json-schema 0.4.0 to version 1.4.x + +## v1.4.1 (2017-08-02) + +* #21 Update verror dep +* #22 Update extsprintf dependency +* #23 update contribution guidelines + +## v1.4.0 (2017-03-13) + +* #7 Add parseInteger() function for safer number parsing + +## v1.3.1 (2016-09-12) + +* #13 Incompatible with webpack + +## v1.3.0 (2016-06-22) + +* #14 add safer version of hasOwnProperty() +* #15 forEachKey() should ignore inherited properties + +## v1.2.2 (2015-10-15) + +* #11 NPM package shouldn't include any code that does `require('JSV')` +* #12 jsl.node.conf missing definition for "module" + +## v1.2.1 (2015-10-14) + +* #8 odd date parsing behaviour + +## v1.2.0 (2015-10-13) + +* #9 want function for returning RFC1123 dates + +## v1.1.0 (2015-09-02) + +* #6 a new suite of hrtime manipulation routines: `hrtimeAdd()`, + `hrtimeAccum()`, `hrtimeNanosec()`, `hrtimeMicrosec()` and + `hrtimeMillisec()`. + +## v1.0.0 (2015-09-01) + +First tracked release. Includes everything in previous releases, plus: + +* #4 want function for merging objects diff --git a/node_modules/jsprim/CONTRIBUTING.md b/node_modules/jsprim/CONTRIBUTING.md new file mode 100644 index 0000000..750cef8 --- /dev/null +++ b/node_modules/jsprim/CONTRIBUTING.md @@ -0,0 +1,19 @@ +# Contributing + +This repository uses [cr.joyent.us](https://cr.joyent.us) (Gerrit) for new +changes. Anyone can submit changes. To get started, see the [cr.joyent.us user +guide](https://github.com/joyent/joyent-gerrit/blob/master/docs/user/README.md). +This repo does not use GitHub pull requests. + +See the [Joyent Engineering +Guidelines](https://github.com/joyent/eng/blob/master/docs/index.md) for general +best practices expected in this repository. + +Contributions should be "make prepush" clean. The "prepush" target runs the +"check" target, which requires these separate tools: + +* https://github.com/davepacheco/jsstyle +* https://github.com/davepacheco/javascriptlint + +If you're changing something non-trivial or user-facing, you may want to submit +an issue first. diff --git a/node_modules/jsprim/LICENSE b/node_modules/jsprim/LICENSE new file mode 100644 index 0000000..cbc0bb3 --- /dev/null +++ b/node_modules/jsprim/LICENSE @@ -0,0 +1,19 @@ +Copyright (c) 2012, Joyent, Inc. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE diff --git a/node_modules/jsprim/README.md b/node_modules/jsprim/README.md new file mode 100644 index 0000000..b3f28a4 --- /dev/null +++ b/node_modules/jsprim/README.md @@ -0,0 +1,287 @@ +# jsprim: utilities for primitive JavaScript types + +This module provides miscellaneous facilities for working with strings, +numbers, dates, and objects and arrays of these basic types. + + +### deepCopy(obj) + +Creates a deep copy of a primitive type, object, or array of primitive types. + + +### deepEqual(obj1, obj2) + +Returns whether two objects are equal. + + +### isEmpty(obj) + +Returns true if the given object has no properties and false otherwise. This +is O(1) (unlike `Object.keys(obj).length === 0`, which is O(N)). + +### hasKey(obj, key) + +Returns true if the given object has an enumerable, non-inherited property +called `key`. [For information on enumerability and ownership of properties, see +the MDN +documentation.](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Enumerability_and_ownership_of_properties) + +### forEachKey(obj, callback) + +Like Array.forEach, but iterates enumerable, owned properties of an object +rather than elements of an array. Equivalent to: + + for (var key in obj) { + if (Object.prototype.hasOwnProperty.call(obj, key)) { + callback(key, obj[key]); + } + } + + +### flattenObject(obj, depth) + +Flattens an object up to a given level of nesting, returning an array of arrays +of length "depth + 1", where the first "depth" elements correspond to flattened +columns and the last element contains the remaining object . For example: + + flattenObject({ + 'I': { + 'A': { + 'i': { + 'datum1': [ 1, 2 ], + 'datum2': [ 3, 4 ] + }, + 'ii': { + 'datum1': [ 3, 4 ] + } + }, + 'B': { + 'i': { + 'datum1': [ 5, 6 ] + }, + 'ii': { + 'datum1': [ 7, 8 ], + 'datum2': [ 3, 4 ], + }, + 'iii': { + } + } + }, + 'II': { + 'A': { + 'i': { + 'datum1': [ 1, 2 ], + 'datum2': [ 3, 4 ] + } + } + } + }, 3) + +becomes: + + [ + [ 'I', 'A', 'i', { 'datum1': [ 1, 2 ], 'datum2': [ 3, 4 ] } ], + [ 'I', 'A', 'ii', { 'datum1': [ 3, 4 ] } ], + [ 'I', 'B', 'i', { 'datum1': [ 5, 6 ] } ], + [ 'I', 'B', 'ii', { 'datum1': [ 7, 8 ], 'datum2': [ 3, 4 ] } ], + [ 'I', 'B', 'iii', {} ], + [ 'II', 'A', 'i', { 'datum1': [ 1, 2 ], 'datum2': [ 3, 4 ] } ] + ] + +This function is strict: "depth" must be a non-negative integer and "obj" must +be a non-null object with at least "depth" levels of nesting under all keys. + + +### flattenIter(obj, depth, func) + +This is similar to `flattenObject` except that instead of returning an array, +this function invokes `func(entry)` for each `entry` in the array that +`flattenObject` would return. `flattenIter(obj, depth, func)` is logically +equivalent to `flattenObject(obj, depth).forEach(func)`. Importantly, this +version never constructs the full array. Its memory usage is O(depth) rather +than O(n) (where `n` is the number of flattened elements). + +There's another difference between `flattenObject` and `flattenIter` that's +related to the special case where `depth === 0`. In this case, `flattenObject` +omits the array wrapping `obj` (which is regrettable). + + +### pluck(obj, key) + +Fetch nested property "key" from object "obj", traversing objects as needed. +For example, `pluck(obj, "foo.bar.baz")` is roughly equivalent to +`obj.foo.bar.baz`, except that: + +1. If traversal fails, the resulting value is undefined, and no error is + thrown. For example, `pluck({}, "foo.bar")` is just undefined. +2. If "obj" has property "key" directly (without traversing), the + corresponding property is returned. For example, + `pluck({ 'foo.bar': 1 }, 'foo.bar')` is 1, not undefined. This is also + true recursively, so `pluck({ 'a': { 'foo.bar': 1 } }, 'a.foo.bar')` is + also 1, not undefined. + + +### randElt(array) + +Returns an element from "array" selected uniformly at random. If "array" is +empty, throws an Error. + + +### startsWith(str, prefix) + +Returns true if the given string starts with the given prefix and false +otherwise. + + +### endsWith(str, suffix) + +Returns true if the given string ends with the given suffix and false +otherwise. + + +### parseInteger(str, options) + +Parses the contents of `str` (a string) as an integer. On success, the integer +value is returned (as a number). On failure, an error is **returned** describing +why parsing failed. + +By default, leading and trailing whitespace characters are not allowed, nor are +trailing characters that are not part of the numeric representation. This +behaviour can be toggled by using the options below. The empty string (`''`) is +not considered valid input. If the return value cannot be precisely represented +as a number (i.e., is smaller than `Number.MIN_SAFE_INTEGER` or larger than +`Number.MAX_SAFE_INTEGER`), an error is returned. Additionally, the string +`'-0'` will be parsed as the integer `0`, instead of as the IEEE floating point +value `-0`. + +This function accepts both upper and lowercase characters for digits, similar to +`parseInt()`, `Number()`, and [strtol(3C)](https://illumos.org/man/3C/strtol). + +The following may be specified in `options`: + +Option | Type | Default | Meaning +------------------ | ------- | ------- | --------------------------- +base | number | 10 | numeric base (radix) to use, in the range 2 to 36 +allowSign | boolean | true | whether to interpret any leading `+` (positive) and `-` (negative) characters +allowImprecise | boolean | false | whether to accept values that may have lost precision (past `MAX_SAFE_INTEGER` or below `MIN_SAFE_INTEGER`) +allowPrefix | boolean | false | whether to interpret the prefixes `0b` (base 2), `0o` (base 8), `0t` (base 10), or `0x` (base 16) +allowTrailing | boolean | false | whether to ignore trailing characters +trimWhitespace | boolean | false | whether to trim any leading or trailing whitespace/line terminators +leadingZeroIsOctal | boolean | false | whether a leading zero indicates octal + +Note that if `base` is unspecified, and `allowPrefix` or `leadingZeroIsOctal` +are, then the leading characters can change the default base from 10. If `base` +is explicitly specified and `allowPrefix` is true, then the prefix will only be +accepted if it matches the specified base. `base` and `leadingZeroIsOctal` +cannot be used together. + +**Context:** It's tricky to parse integers with JavaScript's built-in facilities +for several reasons: + +- `parseInt()` and `Number()` by default allow the base to be specified in the + input string by a prefix (e.g., `0x` for hex). +- `parseInt()` allows trailing nonnumeric characters. +- `Number(str)` returns 0 when `str` is the empty string (`''`). +- Both functions return incorrect values when the input string represents a + valid integer outside the range of integers that can be represented precisely. + Specifically, `parseInt('9007199254740993')` returns 9007199254740992. +- Both functions always accept `-` and `+` signs before the digit. +- Some older JavaScript engines always interpret a leading 0 as indicating + octal, which can be surprising when parsing input from users who expect a + leading zero to be insignificant. + +While each of these may be desirable in some contexts, there are also times when +none of them are wanted. `parseInteger()` grants greater control over what +input's permissible. + +### iso8601(date) + +Converts a Date object to an ISO8601 date string of the form +"YYYY-MM-DDTHH:MM:SS.sssZ". This format is not customizable. + + +### parseDateTime(str) + +Parses a date expressed as a string, as either a number of milliseconds since +the epoch or any string format that Date accepts, giving preference to the +former where these two sets overlap (e.g., strings containing small numbers). + + +### hrtimeDiff(timeA, timeB) + +Given two hrtime readings (as from Node's `process.hrtime()`), where timeA is +later than timeB, compute the difference and return that as an hrtime. It is +illegal to invoke this for a pair of times where timeB is newer than timeA. + +### hrtimeAdd(timeA, timeB) + +Add two hrtime intervals (as from Node's `process.hrtime()`), returning a new +hrtime interval array. This function does not modify either input argument. + + +### hrtimeAccum(timeA, timeB) + +Add two hrtime intervals (as from Node's `process.hrtime()`), storing the +result in `timeA`. This function overwrites (and returns) the first argument +passed in. + + +### hrtimeNanosec(timeA), hrtimeMicrosec(timeA), hrtimeMillisec(timeA) + +This suite of functions converts a hrtime interval (as from Node's +`process.hrtime()`) into a scalar number of nanoseconds, microseconds or +milliseconds. Results are truncated, as with `Math.floor()`. + + +### validateJsonObject(schema, object) + +Uses JSON validation (via JSV) to validate the given object against the given +schema. On success, returns null. On failure, *returns* (does not throw) a +useful Error object. + + +### extraProperties(object, allowed) + +Check an object for unexpected properties. Accepts the object to check, and an +array of allowed property name strings. If extra properties are detected, an +array of extra property names is returned. If no properties other than those +in the allowed list are present on the object, the returned array will be of +zero length. + +### mergeObjects(provided, overrides, defaults) + +Merge properties from objects "provided", "overrides", and "defaults". The +intended use case is for functions that accept named arguments in an "args" +object, but want to provide some default values and override other values. In +that case, "provided" is what the caller specified, "overrides" are what the +function wants to override, and "defaults" contains default values. + +The function starts with the values in "defaults", overrides them with the +values in "provided", and then overrides those with the values in "overrides". +For convenience, any of these objects may be falsey, in which case they will be +ignored. The input objects are never modified, but properties in the returned +object are not deep-copied. + +For example: + + mergeObjects(undefined, { 'objectMode': true }, { 'highWaterMark': 0 }) + +returns: + + { 'objectMode': true, 'highWaterMark': 0 } + +For another example: + + mergeObjects( + { 'highWaterMark': 16, 'objectMode': 7 }, /* from caller */ + { 'objectMode': true }, /* overrides */ + { 'highWaterMark': 0 }); /* default */ + +returns: + + { 'objectMode': true, 'highWaterMark': 16 } + + +# Contributing + +See separate [contribution guidelines](CONTRIBUTING.md). diff --git a/node_modules/jsprim/lib/jsprim.js b/node_modules/jsprim/lib/jsprim.js new file mode 100644 index 0000000..f7d0d81 --- /dev/null +++ b/node_modules/jsprim/lib/jsprim.js @@ -0,0 +1,735 @@ +/* + * lib/jsprim.js: utilities for primitive JavaScript types + */ + +var mod_assert = require('assert-plus'); +var mod_util = require('util'); + +var mod_extsprintf = require('extsprintf'); +var mod_verror = require('verror'); +var mod_jsonschema = require('json-schema'); + +/* + * Public interface + */ +exports.deepCopy = deepCopy; +exports.deepEqual = deepEqual; +exports.isEmpty = isEmpty; +exports.hasKey = hasKey; +exports.forEachKey = forEachKey; +exports.pluck = pluck; +exports.flattenObject = flattenObject; +exports.flattenIter = flattenIter; +exports.validateJsonObject = validateJsonObjectJS; +exports.validateJsonObjectJS = validateJsonObjectJS; +exports.randElt = randElt; +exports.extraProperties = extraProperties; +exports.mergeObjects = mergeObjects; + +exports.startsWith = startsWith; +exports.endsWith = endsWith; + +exports.parseInteger = parseInteger; + +exports.iso8601 = iso8601; +exports.rfc1123 = rfc1123; +exports.parseDateTime = parseDateTime; + +exports.hrtimediff = hrtimeDiff; +exports.hrtimeDiff = hrtimeDiff; +exports.hrtimeAccum = hrtimeAccum; +exports.hrtimeAdd = hrtimeAdd; +exports.hrtimeNanosec = hrtimeNanosec; +exports.hrtimeMicrosec = hrtimeMicrosec; +exports.hrtimeMillisec = hrtimeMillisec; + + +/* + * Deep copy an acyclic *basic* Javascript object. This only handles basic + * scalars (strings, numbers, booleans) and arbitrarily deep arrays and objects + * containing these. This does *not* handle instances of other classes. + */ +function deepCopy(obj) +{ + var ret, key; + var marker = '__deepCopy'; + + if (obj && obj[marker]) + throw (new Error('attempted deep copy of cyclic object')); + + if (obj && obj.constructor == Object) { + ret = {}; + obj[marker] = true; + + for (key in obj) { + if (key == marker) + continue; + + ret[key] = deepCopy(obj[key]); + } + + delete (obj[marker]); + return (ret); + } + + if (obj && obj.constructor == Array) { + ret = []; + obj[marker] = true; + + for (key = 0; key < obj.length; key++) + ret.push(deepCopy(obj[key])); + + delete (obj[marker]); + return (ret); + } + + /* + * It must be a primitive type -- just return it. + */ + return (obj); +} + +function deepEqual(obj1, obj2) +{ + if (typeof (obj1) != typeof (obj2)) + return (false); + + if (obj1 === null || obj2 === null || typeof (obj1) != 'object') + return (obj1 === obj2); + + if (obj1.constructor != obj2.constructor) + return (false); + + var k; + for (k in obj1) { + if (!obj2.hasOwnProperty(k)) + return (false); + + if (!deepEqual(obj1[k], obj2[k])) + return (false); + } + + for (k in obj2) { + if (!obj1.hasOwnProperty(k)) + return (false); + } + + return (true); +} + +function isEmpty(obj) +{ + var key; + for (key in obj) + return (false); + return (true); +} + +function hasKey(obj, key) +{ + mod_assert.equal(typeof (key), 'string'); + return (Object.prototype.hasOwnProperty.call(obj, key)); +} + +function forEachKey(obj, callback) +{ + for (var key in obj) { + if (hasKey(obj, key)) { + callback(key, obj[key]); + } + } +} + +function pluck(obj, key) +{ + mod_assert.equal(typeof (key), 'string'); + return (pluckv(obj, key)); +} + +function pluckv(obj, key) +{ + if (obj === null || typeof (obj) !== 'object') + return (undefined); + + if (obj.hasOwnProperty(key)) + return (obj[key]); + + var i = key.indexOf('.'); + if (i == -1) + return (undefined); + + var key1 = key.substr(0, i); + if (!obj.hasOwnProperty(key1)) + return (undefined); + + return (pluckv(obj[key1], key.substr(i + 1))); +} + +/* + * Invoke callback(row) for each entry in the array that would be returned by + * flattenObject(data, depth). This is just like flattenObject(data, + * depth).forEach(callback), except that the intermediate array is never + * created. + */ +function flattenIter(data, depth, callback) +{ + doFlattenIter(data, depth, [], callback); +} + +function doFlattenIter(data, depth, accum, callback) +{ + var each; + var key; + + if (depth === 0) { + each = accum.slice(0); + each.push(data); + callback(each); + return; + } + + mod_assert.ok(data !== null); + mod_assert.equal(typeof (data), 'object'); + mod_assert.equal(typeof (depth), 'number'); + mod_assert.ok(depth >= 0); + + for (key in data) { + each = accum.slice(0); + each.push(key); + doFlattenIter(data[key], depth - 1, each, callback); + } +} + +function flattenObject(data, depth) +{ + if (depth === 0) + return ([ data ]); + + mod_assert.ok(data !== null); + mod_assert.equal(typeof (data), 'object'); + mod_assert.equal(typeof (depth), 'number'); + mod_assert.ok(depth >= 0); + + var rv = []; + var key; + + for (key in data) { + flattenObject(data[key], depth - 1).forEach(function (p) { + rv.push([ key ].concat(p)); + }); + } + + return (rv); +} + +function startsWith(str, prefix) +{ + return (str.substr(0, prefix.length) == prefix); +} + +function endsWith(str, suffix) +{ + return (str.substr( + str.length - suffix.length, suffix.length) == suffix); +} + +function iso8601(d) +{ + if (typeof (d) == 'number') + d = new Date(d); + mod_assert.ok(d.constructor === Date); + return (mod_extsprintf.sprintf('%4d-%02d-%02dT%02d:%02d:%02d.%03dZ', + d.getUTCFullYear(), d.getUTCMonth() + 1, d.getUTCDate(), + d.getUTCHours(), d.getUTCMinutes(), d.getUTCSeconds(), + d.getUTCMilliseconds())); +} + +var RFC1123_MONTHS = [ + 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', + 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']; +var RFC1123_DAYS = [ + 'Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']; + +function rfc1123(date) { + return (mod_extsprintf.sprintf('%s, %02d %s %04d %02d:%02d:%02d GMT', + RFC1123_DAYS[date.getUTCDay()], date.getUTCDate(), + RFC1123_MONTHS[date.getUTCMonth()], date.getUTCFullYear(), + date.getUTCHours(), date.getUTCMinutes(), + date.getUTCSeconds())); +} + +/* + * Parses a date expressed as a string, as either a number of milliseconds since + * the epoch or any string format that Date accepts, giving preference to the + * former where these two sets overlap (e.g., small numbers). + */ +function parseDateTime(str) +{ + /* + * This is irritatingly implicit, but significantly more concise than + * alternatives. The "+str" will convert a string containing only a + * number directly to a Number, or NaN for other strings. Thus, if the + * conversion succeeds, we use it (this is the milliseconds-since-epoch + * case). Otherwise, we pass the string directly to the Date + * constructor to parse. + */ + var numeric = +str; + if (!isNaN(numeric)) { + return (new Date(numeric)); + } else { + return (new Date(str)); + } +} + + +/* + * Number.*_SAFE_INTEGER isn't present before node v0.12, so we hardcode + * the ES6 definitions here, while allowing for them to someday be higher. + */ +var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || 9007199254740991; +var MIN_SAFE_INTEGER = Number.MIN_SAFE_INTEGER || -9007199254740991; + + +/* + * Default options for parseInteger(). + */ +var PI_DEFAULTS = { + base: 10, + allowSign: true, + allowPrefix: false, + allowTrailing: false, + allowImprecise: false, + trimWhitespace: false, + leadingZeroIsOctal: false +}; + +var CP_0 = 0x30; +var CP_9 = 0x39; + +var CP_A = 0x41; +var CP_B = 0x42; +var CP_O = 0x4f; +var CP_T = 0x54; +var CP_X = 0x58; +var CP_Z = 0x5a; + +var CP_a = 0x61; +var CP_b = 0x62; +var CP_o = 0x6f; +var CP_t = 0x74; +var CP_x = 0x78; +var CP_z = 0x7a; + +var PI_CONV_DEC = 0x30; +var PI_CONV_UC = 0x37; +var PI_CONV_LC = 0x57; + + +/* + * A stricter version of parseInt() that provides options for changing what + * is an acceptable string (for example, disallowing trailing characters). + */ +function parseInteger(str, uopts) +{ + mod_assert.string(str, 'str'); + mod_assert.optionalObject(uopts, 'options'); + + var baseOverride = false; + var options = PI_DEFAULTS; + + if (uopts) { + baseOverride = hasKey(uopts, 'base'); + options = mergeObjects(options, uopts); + mod_assert.number(options.base, 'options.base'); + mod_assert.ok(options.base >= 2, 'options.base >= 2'); + mod_assert.ok(options.base <= 36, 'options.base <= 36'); + mod_assert.bool(options.allowSign, 'options.allowSign'); + mod_assert.bool(options.allowPrefix, 'options.allowPrefix'); + mod_assert.bool(options.allowTrailing, + 'options.allowTrailing'); + mod_assert.bool(options.allowImprecise, + 'options.allowImprecise'); + mod_assert.bool(options.trimWhitespace, + 'options.trimWhitespace'); + mod_assert.bool(options.leadingZeroIsOctal, + 'options.leadingZeroIsOctal'); + + if (options.leadingZeroIsOctal) { + mod_assert.ok(!baseOverride, + '"base" and "leadingZeroIsOctal" are ' + + 'mutually exclusive'); + } + } + + var c; + var pbase = -1; + var base = options.base; + var start; + var mult = 1; + var value = 0; + var idx = 0; + var len = str.length; + + /* Trim any whitespace on the left side. */ + if (options.trimWhitespace) { + while (idx < len && isSpace(str.charCodeAt(idx))) { + ++idx; + } + } + + /* Check the number for a leading sign. */ + if (options.allowSign) { + if (str[idx] === '-') { + idx += 1; + mult = -1; + } else if (str[idx] === '+') { + idx += 1; + } + } + + /* Parse the base-indicating prefix if there is one. */ + if (str[idx] === '0') { + if (options.allowPrefix) { + pbase = prefixToBase(str.charCodeAt(idx + 1)); + if (pbase !== -1 && (!baseOverride || pbase === base)) { + base = pbase; + idx += 2; + } + } + + if (pbase === -1 && options.leadingZeroIsOctal) { + base = 8; + } + } + + /* Parse the actual digits. */ + for (start = idx; idx < len; ++idx) { + c = translateDigit(str.charCodeAt(idx)); + if (c !== -1 && c < base) { + value *= base; + value += c; + } else { + break; + } + } + + /* If we didn't parse any digits, we have an invalid number. */ + if (start === idx) { + return (new Error('invalid number: ' + JSON.stringify(str))); + } + + /* Trim any whitespace on the right side. */ + if (options.trimWhitespace) { + while (idx < len && isSpace(str.charCodeAt(idx))) { + ++idx; + } + } + + /* Check for trailing characters. */ + if (idx < len && !options.allowTrailing) { + return (new Error('trailing characters after number: ' + + JSON.stringify(str.slice(idx)))); + } + + /* If our value is 0, we return now, to avoid returning -0. */ + if (value === 0) { + return (0); + } + + /* Calculate our final value. */ + var result = value * mult; + + /* + * If the string represents a value that cannot be precisely represented + * by JavaScript, then we want to check that: + * + * - We never increased the value past MAX_SAFE_INTEGER + * - We don't make the result negative and below MIN_SAFE_INTEGER + * + * Because we only ever increment the value during parsing, there's no + * chance of moving past MAX_SAFE_INTEGER and then dropping below it + * again, losing precision in the process. This means that we only need + * to do our checks here, at the end. + */ + if (!options.allowImprecise && + (value > MAX_SAFE_INTEGER || result < MIN_SAFE_INTEGER)) { + return (new Error('number is outside of the supported range: ' + + JSON.stringify(str.slice(start, idx)))); + } + + return (result); +} + + +/* + * Interpret a character code as a base-36 digit. + */ +function translateDigit(d) +{ + if (d >= CP_0 && d <= CP_9) { + /* '0' to '9' -> 0 to 9 */ + return (d - PI_CONV_DEC); + } else if (d >= CP_A && d <= CP_Z) { + /* 'A' - 'Z' -> 10 to 35 */ + return (d - PI_CONV_UC); + } else if (d >= CP_a && d <= CP_z) { + /* 'a' - 'z' -> 10 to 35 */ + return (d - PI_CONV_LC); + } else { + /* Invalid character code */ + return (-1); + } +} + + +/* + * Test if a value matches the ECMAScript definition of trimmable whitespace. + */ +function isSpace(c) +{ + return (c === 0x20) || + (c >= 0x0009 && c <= 0x000d) || + (c === 0x00a0) || + (c === 0x1680) || + (c === 0x180e) || + (c >= 0x2000 && c <= 0x200a) || + (c === 0x2028) || + (c === 0x2029) || + (c === 0x202f) || + (c === 0x205f) || + (c === 0x3000) || + (c === 0xfeff); +} + + +/* + * Determine which base a character indicates (e.g., 'x' indicates hex). + */ +function prefixToBase(c) +{ + if (c === CP_b || c === CP_B) { + /* 0b/0B (binary) */ + return (2); + } else if (c === CP_o || c === CP_O) { + /* 0o/0O (octal) */ + return (8); + } else if (c === CP_t || c === CP_T) { + /* 0t/0T (decimal) */ + return (10); + } else if (c === CP_x || c === CP_X) { + /* 0x/0X (hexadecimal) */ + return (16); + } else { + /* Not a meaningful character */ + return (-1); + } +} + + +function validateJsonObjectJS(schema, input) +{ + var report = mod_jsonschema.validate(input, schema); + + if (report.errors.length === 0) + return (null); + + /* Currently, we only do anything useful with the first error. */ + var error = report.errors[0]; + + /* The failed property is given by a URI with an irrelevant prefix. */ + var propname = error['property']; + var reason = error['message'].toLowerCase(); + var i, j; + + /* + * There's at least one case where the property error message is + * confusing at best. We work around this here. + */ + if ((i = reason.indexOf('the property ')) != -1 && + (j = reason.indexOf(' is not defined in the schema and the ' + + 'schema does not allow additional properties')) != -1) { + i += 'the property '.length; + if (propname === '') + propname = reason.substr(i, j - i); + else + propname = propname + '.' + reason.substr(i, j - i); + + reason = 'unsupported property'; + } + + var rv = new mod_verror.VError('property "%s": %s', propname, reason); + rv.jsv_details = error; + return (rv); +} + +function randElt(arr) +{ + mod_assert.ok(Array.isArray(arr) && arr.length > 0, + 'randElt argument must be a non-empty array'); + + return (arr[Math.floor(Math.random() * arr.length)]); +} + +function assertHrtime(a) +{ + mod_assert.ok(a[0] >= 0 && a[1] >= 0, + 'negative numbers not allowed in hrtimes'); + mod_assert.ok(a[1] < 1e9, 'nanoseconds column overflow'); +} + +/* + * Compute the time elapsed between hrtime readings A and B, where A is later + * than B. hrtime readings come from Node's process.hrtime(). There is no + * defined way to represent negative deltas, so it's illegal to diff B from A + * where the time denoted by B is later than the time denoted by A. If this + * becomes valuable, we can define a representation and extend the + * implementation to support it. + */ +function hrtimeDiff(a, b) +{ + assertHrtime(a); + assertHrtime(b); + mod_assert.ok(a[0] > b[0] || (a[0] == b[0] && a[1] >= b[1]), + 'negative differences not allowed'); + + var rv = [ a[0] - b[0], 0 ]; + + if (a[1] >= b[1]) { + rv[1] = a[1] - b[1]; + } else { + rv[0]--; + rv[1] = 1e9 - (b[1] - a[1]); + } + + return (rv); +} + +/* + * Convert a hrtime reading from the array format returned by Node's + * process.hrtime() into a scalar number of nanoseconds. + */ +function hrtimeNanosec(a) +{ + assertHrtime(a); + + return (Math.floor(a[0] * 1e9 + a[1])); +} + +/* + * Convert a hrtime reading from the array format returned by Node's + * process.hrtime() into a scalar number of microseconds. + */ +function hrtimeMicrosec(a) +{ + assertHrtime(a); + + return (Math.floor(a[0] * 1e6 + a[1] / 1e3)); +} + +/* + * Convert a hrtime reading from the array format returned by Node's + * process.hrtime() into a scalar number of milliseconds. + */ +function hrtimeMillisec(a) +{ + assertHrtime(a); + + return (Math.floor(a[0] * 1e3 + a[1] / 1e6)); +} + +/* + * Add two hrtime readings A and B, overwriting A with the result of the + * addition. This function is useful for accumulating several hrtime intervals + * into a counter. Returns A. + */ +function hrtimeAccum(a, b) +{ + assertHrtime(a); + assertHrtime(b); + + /* + * Accumulate the nanosecond component. + */ + a[1] += b[1]; + if (a[1] >= 1e9) { + /* + * The nanosecond component overflowed, so carry to the seconds + * field. + */ + a[0]++; + a[1] -= 1e9; + } + + /* + * Accumulate the seconds component. + */ + a[0] += b[0]; + + return (a); +} + +/* + * Add two hrtime readings A and B, returning the result as a new hrtime array. + * Does not modify either input argument. + */ +function hrtimeAdd(a, b) +{ + assertHrtime(a); + + var rv = [ a[0], a[1] ]; + + return (hrtimeAccum(rv, b)); +} + + +/* + * Check an object for unexpected properties. Accepts the object to check, and + * an array of allowed property names (strings). Returns an array of key names + * that were found on the object, but did not appear in the list of allowed + * properties. If no properties were found, the returned array will be of + * zero length. + */ +function extraProperties(obj, allowed) +{ + mod_assert.ok(typeof (obj) === 'object' && obj !== null, + 'obj argument must be a non-null object'); + mod_assert.ok(Array.isArray(allowed), + 'allowed argument must be an array of strings'); + for (var i = 0; i < allowed.length; i++) { + mod_assert.ok(typeof (allowed[i]) === 'string', + 'allowed argument must be an array of strings'); + } + + return (Object.keys(obj).filter(function (key) { + return (allowed.indexOf(key) === -1); + })); +} + +/* + * Given three sets of properties "provided" (may be undefined), "overrides" + * (required), and "defaults" (may be undefined), construct an object containing + * the union of these sets with "overrides" overriding "provided", and + * "provided" overriding "defaults". None of the input objects are modified. + */ +function mergeObjects(provided, overrides, defaults) +{ + var rv, k; + + rv = {}; + if (defaults) { + for (k in defaults) + rv[k] = defaults[k]; + } + + if (provided) { + for (k in provided) + rv[k] = provided[k]; + } + + if (overrides) { + for (k in overrides) + rv[k] = overrides[k]; + } + + return (rv); +} diff --git a/node_modules/jsprim/package.json b/node_modules/jsprim/package.json new file mode 100644 index 0000000..daad74b --- /dev/null +++ b/node_modules/jsprim/package.json @@ -0,0 +1,20 @@ +{ + "name": "jsprim", + "version": "1.4.2", + "description": "utilities for primitive JavaScript types", + "main": "./lib/jsprim.js", + "repository": { + "type": "git", + "url": "git://github.com/joyent/node-jsprim.git" + }, + "dependencies": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.4.0", + "verror": "1.10.0" + }, + "engines": { + "node": ">=0.6.0" + }, + "license": "MIT" +} diff --git a/node_modules/keyv/LICENSE b/node_modules/keyv/LICENSE new file mode 100644 index 0000000..f27ee9b --- /dev/null +++ b/node_modules/keyv/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2017 Luke Childs + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/node_modules/keyv/README.md b/node_modules/keyv/README.md new file mode 100644 index 0000000..2a9287c --- /dev/null +++ b/node_modules/keyv/README.md @@ -0,0 +1,276 @@ +

+ keyv +
+
+

+ +> Simple key-value storage with support for multiple backends + +[![Build Status](https://travis-ci.org/lukechilds/keyv.svg?branch=master)](https://travis-ci.org/lukechilds/keyv) +[![Coverage Status](https://coveralls.io/repos/github/lukechilds/keyv/badge.svg?branch=master)](https://coveralls.io/github/lukechilds/keyv?branch=master) +[![npm](https://img.shields.io/npm/dm/keyv.svg)](https://www.npmjs.com/package/keyv) +[![npm](https://img.shields.io/npm/v/keyv.svg)](https://www.npmjs.com/package/keyv) + +Keyv provides a consistent interface for key-value storage across multiple backends via storage adapters. It supports TTL based expiry, making it suitable as a cache or a persistent key-value store. + +## Features + +There are a few existing modules similar to Keyv, however Keyv is different because it: + +- Isn't bloated +- Has a simple Promise based API +- Suitable as a TTL based cache or persistent key-value store +- [Easily embeddable](#add-cache-support-to-your-module) inside another module +- Works with any storage that implements the [`Map`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) API +- Handles all JSON types plus `Buffer` +- Supports namespaces +- Wide range of [**efficient, well tested**](#official-storage-adapters) storage adapters +- Connection errors are passed through (db failures won't kill your app) +- Supports the current active LTS version of Node.js or higher + +## Usage + +Install Keyv. + +``` +npm install --save keyv +``` + +By default everything is stored in memory, you can optionally also install a storage adapter. + +``` +npm install --save @keyv/redis +npm install --save @keyv/mongo +npm install --save @keyv/sqlite +npm install --save @keyv/postgres +npm install --save @keyv/mysql +``` + +Create a new Keyv instance, passing your connection string if applicable. Keyv will automatically load the correct storage adapter. + +```js +const Keyv = require('keyv'); + +// One of the following +const keyv = new Keyv(); +const keyv = new Keyv('redis://user:pass@localhost:6379'); +const keyv = new Keyv('mongodb://user:pass@localhost:27017/dbname'); +const keyv = new Keyv('sqlite://path/to/database.sqlite'); +const keyv = new Keyv('postgresql://user:pass@localhost:5432/dbname'); +const keyv = new Keyv('mysql://user:pass@localhost:3306/dbname'); + +// Handle DB connection errors +keyv.on('error', err => console.log('Connection Error', err)); + +await keyv.set('foo', 'expires in 1 second', 1000); // true +await keyv.set('foo', 'never expires'); // true +await keyv.get('foo'); // 'never expires' +await keyv.delete('foo'); // true +await keyv.clear(); // undefined +``` + +### Namespaces + +You can namespace your Keyv instance to avoid key collisions and allow you to clear only a certain namespace while using the same database. + +```js +const users = new Keyv('redis://user:pass@localhost:6379', { namespace: 'users' }); +const cache = new Keyv('redis://user:pass@localhost:6379', { namespace: 'cache' }); + +await users.set('foo', 'users'); // true +await cache.set('foo', 'cache'); // true +await users.get('foo'); // 'users' +await cache.get('foo'); // 'cache' +await users.clear(); // undefined +await users.get('foo'); // undefined +await cache.get('foo'); // 'cache' +``` + +### Custom Serializers + +Keyv uses [`json-buffer`](https://github.com/dominictarr/json-buffer) for data serialization to ensure consistency across different backends. + +You can optionally provide your own serialization functions to support extra data types or to serialize to something other than JSON. + +```js +const keyv = new Keyv({ serialize: JSON.stringify, deserialize: JSON.parse }); +``` + +**Warning:** Using custom serializers means you lose any guarantee of data consistency. You should do extensive testing with your serialisation functions and chosen storage engine. + +## Official Storage Adapters + +The official storage adapters are covered by [over 150 integration tests](https://travis-ci.org/lukechilds/keyv/jobs/260418145) to guarantee consistent behaviour. They are lightweight, efficient wrappers over the DB clients making use of indexes and native TTLs where available. + +Database | Adapter | Native TTL | Status +---|---|---|--- +Redis | [@keyv/redis](https://github.com/lukechilds/keyv-redis) | Yes | [![Build Status](https://travis-ci.org/lukechilds/keyv-redis.svg?branch=master)](https://travis-ci.org/lukechilds/keyv-redis) [![Coverage Status](https://coveralls.io/repos/github/lukechilds/keyv-redis/badge.svg?branch=master)](https://coveralls.io/github/lukechilds/keyv-redis?branch=master) +MongoDB | [@keyv/mongo](https://github.com/lukechilds/keyv-mongo) | Yes | [![Build Status](https://travis-ci.org/lukechilds/keyv-mongo.svg?branch=master)](https://travis-ci.org/lukechilds/keyv-mongo) [![Coverage Status](https://coveralls.io/repos/github/lukechilds/keyv-mongo/badge.svg?branch=master)](https://coveralls.io/github/lukechilds/keyv-mongo?branch=master) +SQLite | [@keyv/sqlite](https://github.com/lukechilds/keyv-sqlite) | No | [![Build Status](https://travis-ci.org/lukechilds/keyv-sqlite.svg?branch=master)](https://travis-ci.org/lukechilds/keyv-sqlite) [![Coverage Status](https://coveralls.io/repos/github/lukechilds/keyv-sqlite/badge.svg?branch=master)](https://coveralls.io/github/lukechilds/keyv-sqlite?branch=master) +PostgreSQL | [@keyv/postgres](https://github.com/lukechilds/keyv-postgres) | No | [![Build Status](https://travis-ci.org/lukechilds/keyv-postgres.svg?branch=master)](https://travis-ci.org/lukechildskeyv-postgreskeyv) [![Coverage Status](https://coveralls.io/repos/github/lukechilds/keyv-postgres/badge.svg?branch=master)](https://coveralls.io/github/lukechilds/keyv-postgres?branch=master) +MySQL | [@keyv/mysql](https://github.com/lukechilds/keyv-mysql) | No | [![Build Status](https://travis-ci.org/lukechilds/keyv-mysql.svg?branch=master)](https://travis-ci.org/lukechilds/keyv-mysql) [![Coverage Status](https://coveralls.io/repos/github/lukechilds/keyv-mysql/badge.svg?branch=master)](https://coveralls.io/github/lukechilds/keyv-mysql?branch=master) + +## Third-party Storage Adapters + +You can also use third-party storage adapters or build your own. Keyv will wrap these storage adapters in TTL functionality and handle complex types internally. + +```js +const Keyv = require('keyv'); +const myAdapter = require('./my-storage-adapter'); + +const keyv = new Keyv({ store: myAdapter }); +``` + +Any store that follows the [`Map`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) api will work. + +```js +new Keyv({ store: new Map() }); +``` + +For example, [`quick-lru`](https://github.com/sindresorhus/quick-lru) is a completely unrelated module that implements the Map API. + +```js +const Keyv = require('keyv'); +const QuickLRU = require('quick-lru'); + +const lru = new QuickLRU({ maxSize: 1000 }); +const keyv = new Keyv({ store: lru }); +``` + +The following are third-party storage adapters compatible with Keyv: + +- [quick-lru](https://github.com/sindresorhus/quick-lru) - Simple "Least Recently Used" (LRU) cache +- [keyv-file](https://github.com/zaaack/keyv-file) - File system storage adapter for Keyv +- [keyv-dynamodb](https://www.npmjs.com/package/keyv-dynamodb) - DynamoDB storage adapter for Keyv + +## Add Cache Support to your Module + +Keyv is designed to be easily embedded into other modules to add cache support. The recommended pattern is to expose a `cache` option in your modules options which is passed through to Keyv. Caching will work in memory by default and users have the option to also install a Keyv storage adapter and pass in a connection string, or any other storage that implements the `Map` API. + +You should also set a namespace for your module so you can safely call `.clear()` without clearing unrelated app data. + +Inside your module: + +```js +class AwesomeModule { + constructor(opts) { + this.cache = new Keyv({ + uri: typeof opts.cache === 'string' && opts.cache, + store: typeof opts.cache !== 'string' && opts.cache, + namespace: 'awesome-module' + }); + } +} +``` + +Now it can be consumed like this: + +```js +const AwesomeModule = require('awesome-module'); + +// Caches stuff in memory by default +const awesomeModule = new AwesomeModule(); + +// After npm install --save keyv-redis +const awesomeModule = new AwesomeModule({ cache: 'redis://localhost' }); + +// Some third-party module that implements the Map API +const awesomeModule = new AwesomeModule({ cache: some3rdPartyStore }); +``` + +## API + +### new Keyv([uri], [options]) + +Returns a new Keyv instance. + +The Keyv instance is also an `EventEmitter` that will emit an `'error'` event if the storage adapter connection fails. + +### uri + +Type: `String`
+Default: `undefined` + +The connection string URI. + +Merged into the options object as options.uri. + +### options + +Type: `Object` + +The options object is also passed through to the storage adapter. Check your storage adapter docs for any extra options. + +#### options.namespace + +Type: `String`
+Default: `'keyv'` + +Namespace for the current instance. + +#### options.ttl + +Type: `Number`
+Default: `undefined` + +Default TTL. Can be overridden by specififying a TTL on `.set()`. + +#### options.serialize + +Type: `Function`
+Default: `JSONB.stringify` + +A custom serialization function. + +#### options.deserialize + +Type: `Function`
+Default: `JSONB.parse` + +A custom deserialization function. + +#### options.store + +Type: `Storage adapter instance`
+Default: `new Map()` + +The storage adapter instance to be used by Keyv. + +#### options.adapter + +Type: `String`
+Default: `undefined` + +Specify an adapter to use. e.g `'redis'` or `'mongodb'`. + +### Instance + +Keys must always be strings. Values can be of any type. + +#### .set(key, value, [ttl]) + +Set a value. + +By default keys are persistent. You can set an expiry TTL in milliseconds. + +Returns `true`. + +#### .get(key) + +Returns the value. + +#### .delete(key) + +Deletes an entry. + +Returns `true` if the key existed, `false` if not. + +#### .clear() + +Delete all entries in the current namespace. + +Returns `undefined`. + +## License + +MIT © Luke Childs diff --git a/node_modules/keyv/package.json b/node_modules/keyv/package.json new file mode 100644 index 0000000..00a5531 --- /dev/null +++ b/node_modules/keyv/package.json @@ -0,0 +1,49 @@ +{ + "name": "keyv", + "version": "3.1.0", + "description": "Simple key-value storage with support for multiple backends", + "main": "src/index.js", + "scripts": { + "test": "xo && nyc ava test/keyv.js", + "test:full": "xo && nyc ava --serial", + "coverage": "nyc report --reporter=text-lcov | coveralls" + }, + "xo": { + "extends": "xo-lukechilds" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/lukechilds/keyv.git" + }, + "keywords": [ + "key", + "value", + "store", + "cache", + "ttl" + ], + "author": "Luke Childs (http://lukechilds.co.uk)", + "license": "MIT", + "bugs": { + "url": "https://github.com/lukechilds/keyv/issues" + }, + "homepage": "https://github.com/lukechilds/keyv", + "dependencies": { + "json-buffer": "3.0.0" + }, + "devDependencies": { + "ava": "^0.25.0", + "coveralls": "^3.0.0", + "eslint-config-xo-lukechilds": "^1.0.0", + "@keyv/mongo": "*", + "@keyv/mysql": "*", + "@keyv/postgres": "*", + "@keyv/redis": "*", + "@keyv/sqlite": "*", + "@keyv/test-suite": "*", + "nyc": "^11.0.3", + "this": "^1.0.2", + "timekeeper": "^2.0.0", + "xo": "^0.20.1" + } +} diff --git a/node_modules/keyv/src/index.js b/node_modules/keyv/src/index.js new file mode 100644 index 0000000..02af495 --- /dev/null +++ b/node_modules/keyv/src/index.js @@ -0,0 +1,103 @@ +'use strict'; + +const EventEmitter = require('events'); +const JSONB = require('json-buffer'); + +const loadStore = opts => { + const adapters = { + redis: '@keyv/redis', + mongodb: '@keyv/mongo', + mongo: '@keyv/mongo', + sqlite: '@keyv/sqlite', + postgresql: '@keyv/postgres', + postgres: '@keyv/postgres', + mysql: '@keyv/mysql' + }; + if (opts.adapter || opts.uri) { + const adapter = opts.adapter || /^[^:]*/.exec(opts.uri)[0]; + return new (require(adapters[adapter]))(opts); + } + return new Map(); +}; + +class Keyv extends EventEmitter { + constructor(uri, opts) { + super(); + this.opts = Object.assign( + { + namespace: 'keyv', + serialize: JSONB.stringify, + deserialize: JSONB.parse + }, + (typeof uri === 'string') ? { uri } : uri, + opts + ); + + if (!this.opts.store) { + const adapterOpts = Object.assign({}, this.opts); + this.opts.store = loadStore(adapterOpts); + } + + if (typeof this.opts.store.on === 'function') { + this.opts.store.on('error', err => this.emit('error', err)); + } + + this.opts.store.namespace = this.opts.namespace; + } + + _getKeyPrefix(key) { + return `${this.opts.namespace}:${key}`; + } + + get(key) { + key = this._getKeyPrefix(key); + const store = this.opts.store; + return Promise.resolve() + .then(() => store.get(key)) + .then(data => { + data = (typeof data === 'string') ? this.opts.deserialize(data) : data; + if (data === undefined) { + return undefined; + } + if (typeof data.expires === 'number' && Date.now() > data.expires) { + this.delete(key); + return undefined; + } + return data.value; + }); + } + + set(key, value, ttl) { + key = this._getKeyPrefix(key); + if (typeof ttl === 'undefined') { + ttl = this.opts.ttl; + } + if (ttl === 0) { + ttl = undefined; + } + const store = this.opts.store; + + return Promise.resolve() + .then(() => { + const expires = (typeof ttl === 'number') ? (Date.now() + ttl) : null; + value = { value, expires }; + return store.set(key, this.opts.serialize(value), ttl); + }) + .then(() => true); + } + + delete(key) { + key = this._getKeyPrefix(key); + const store = this.opts.store; + return Promise.resolve() + .then(() => store.delete(key)); + } + + clear() { + const store = this.opts.store; + return Promise.resolve() + .then(() => store.clear()); + } +} + +module.exports = Keyv; diff --git a/node_modules/latest-version/index.d.ts b/node_modules/latest-version/index.d.ts new file mode 100644 index 0000000..8b3a89a --- /dev/null +++ b/node_modules/latest-version/index.d.ts @@ -0,0 +1,42 @@ +declare namespace latestVersion { + interface Options { + /** + A semver range or [dist-tag](https://docs.npmjs.com/cli/dist-tag). + */ + readonly version?: string; + } +} + +declare const latestVersion: { + /** + Get the latest version of an npm package. + + @example + ``` + import latestVersion = require('latest-version'); + + (async () => { + console.log(await latestVersion('ava')); + //=> '0.18.0' + + console.log(await latestVersion('@sindresorhus/df')); + //=> '1.0.1' + + // Also works with semver ranges and dist-tags + console.log(await latestVersion('npm', {version: 'latest-5'})); + //=> '5.5.1' + })(); + ``` + */ + (packageName: string, options?: latestVersion.Options): Promise; + + // TODO: Remove this for the next major release, refactor the whole definition to: + // declare function latestVersion( + // packageName: string, + // options?: latestVersion.Options + // ): Promise; + // export = latestVersion; + default: typeof latestVersion; +}; + +export = latestVersion; diff --git a/node_modules/latest-version/index.js b/node_modules/latest-version/index.js new file mode 100644 index 0000000..b22e3ab --- /dev/null +++ b/node_modules/latest-version/index.js @@ -0,0 +1,11 @@ +'use strict'; +const packageJson = require('package-json'); + +const lastestVersion = async (packageName, options) => { + const {version} = await packageJson(packageName.toLowerCase(), options); + return version; +}; + +module.exports = lastestVersion; +// TODO: Remove this for the next major release +module.exports.default = lastestVersion; diff --git a/node_modules/latest-version/license b/node_modules/latest-version/license new file mode 100644 index 0000000..e7af2f7 --- /dev/null +++ b/node_modules/latest-version/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/latest-version/package.json b/node_modules/latest-version/package.json new file mode 100644 index 0000000..28c4ef2 --- /dev/null +++ b/node_modules/latest-version/package.json @@ -0,0 +1,42 @@ +{ + "name": "latest-version", + "version": "5.1.0", + "description": "Get the latest version of an npm package", + "license": "MIT", + "repository": "sindresorhus/latest-version", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "latest", + "version", + "npm", + "pkg", + "package", + "package.json", + "current", + "module" + ], + "dependencies": { + "package-json": "^6.3.0" + }, + "devDependencies": { + "ava": "^1.4.1", + "semver": "^6.0.0", + "semver-regex": "^2.0.0", + "tsd": "^0.7.2", + "xo": "^0.24.0" + } +} diff --git a/node_modules/latest-version/readme.md b/node_modules/latest-version/readme.md new file mode 100644 index 0000000..ee57266 --- /dev/null +++ b/node_modules/latest-version/readme.md @@ -0,0 +1,42 @@ +# latest-version [![Build Status](https://travis-ci.org/sindresorhus/latest-version.svg?branch=master)](https://travis-ci.org/sindresorhus/latest-version) + +> Get the latest version of an npm package + +Fetches the version directly from the registry instead of depending on the massive [npm](https://github.com/npm/npm/blob/8b5e7b6ae5b4cd2d7d62eaf93b1428638b387072/package.json#L37-L85) module like the [latest](https://github.com/bahamas10/node-latest) module does. + + +## Install + +``` +$ npm install latest-version +``` + + +## Usage + +```js +const latestVersion = require('latest-version'); + +(async () => { + console.log(await latestVersion('ava')); + //=> '0.18.0' + + console.log(await latestVersion('@sindresorhus/df')); + //=> '1.0.1' + + // Also works with semver ranges and dist-tags + console.log(await latestVersion('npm', {version: 'latest-5'})); + //=> '5.5.1' +})(); +``` + + +## Related + +- [latest-version-cli](https://github.com/sindresorhus/latest-version-cli) - CLI for this module +- [package-json](https://github.com/sindresorhus/package-json) - Get the package.json of a package from the npm registry + + +## License + +MIT © [Sindre Sorhus](https://sindresorhus.com) diff --git a/node_modules/libnpmsearch/LICENSE b/node_modules/libnpmsearch/LICENSE new file mode 100644 index 0000000..209e447 --- /dev/null +++ b/node_modules/libnpmsearch/LICENSE @@ -0,0 +1,13 @@ +Copyright npm, Inc + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. diff --git a/node_modules/libnpmsearch/README.md b/node_modules/libnpmsearch/README.md new file mode 100644 index 0000000..86d75b1 --- /dev/null +++ b/node_modules/libnpmsearch/README.md @@ -0,0 +1,173 @@ +# libnpmsearch + +[![npm version](https://img.shields.io/npm/v/libnpmsearch.svg)](https://npm.im/libnpmsearch) +[![license](https://img.shields.io/npm/l/libnpmsearch.svg)](https://npm.im/libnpmsearch) +[![CI - libnpmsearch](https://github.com/npm/cli/actions/workflows/ci-libnpmsearch.yml/badge.svg)](https://github.com/npm/cli/actions/workflows/ci-libnpmsearch.yml) + +[`libnpmsearch`](https://github.com/npm/libnpmsearch) is a Node.js library for +programmatically accessing the npm search endpoint. It does **not** support +legacy search through `/-/all`. + +## Table of Contents + +* [Example](#example) +* [Install](#install) +* [Contributing](#contributing) +* [API](#api) + * [search opts](#opts) + * [`search()`](#search) + * [`search.stream()`](#search-stream) + +## Example + +```js +const search = require('libnpmsearch') + +console.log(await search('libnpm')) +=> +[ + { + name: 'libnpm', + description: 'programmatic npm API', + ...etc + }, + { + name: 'libnpmsearch', + description: 'Programmatic API for searching in npm and compatible registries', + ...etc + }, + ...more +] +``` + +## Install + +`$ npm install libnpmsearch` + +### API + +#### `opts` for `libnpmsearch` commands + +The following opts are used directly by `libnpmsearch` itself: + +* `opts.limit` - Number of results to limit the query to. Default: 20 +* `opts.from` - Offset number for results. Used with `opts.limit` for pagination. Default: 0 +* `opts.detailed` - If true, returns an object with `package`, `score`, and `searchScore` fields, with `package` being what would usually be returned, and the other two containing details about how that package scored. Useful for UIs. Default: false +* `opts.sortBy` - Used as a shorthand to set `opts.quality`, `opts.maintenance`, and `opts.popularity` with values that prioritize each one. Should be one of `'optimal'`, `'quality'`, `'maintenance'`, or `'popularity'`. Default: `'optimal'` +* `opts.maintenance` - Decimal number between `0` and `1` that defines the weight of `maintenance` metrics when scoring and sorting packages. Default: `0.65` (same as `opts.sortBy: 'optimal'`) +* `opts.popularity` - Decimal number between `0` and `1` that defines the weight of `popularity` metrics when scoring and sorting packages. Default: `0.98` (same as `opts.sortBy: 'optimal'`) +* `opts.quality` - Decimal number between `0` and `1` that defines the weight of `quality` metrics when scoring and sorting packages. Default: `0.5` (same as `opts.sortBy: 'optimal'`) + +`libnpmsearch` uses [`npm-registry-fetch`](https://npm.im/npm-registry-fetch). +Most options are passed through directly to that library, so please refer to +[its own `opts` +documentation](https://www.npmjs.com/package/npm-registry-fetch#fetch-options) +for options that can be passed in. + +A couple of options of note for those in a hurry: + +* `opts.token` - can be passed in and will be used as the authentication token for the registry. For other ways to pass in auth details, see the n-r-f docs. + +#### `> search(query, [opts]) -> Promise` + +`query` must be either a String or an Array of search terms. + +If `opts.limit` is provided, it will be sent to the API to constrain the number +of returned results. You may receive more, or fewer results, at the endpoint's +discretion. + +The returned Promise resolved to an Array of search results with the following +format: + +```js +{ + name: String, + version: SemverString, + description: String || null, + maintainers: [ + { + username: String, + email: String + }, + ...etc + ] || null, + keywords: [String] || null, + date: Date || null +} +``` + +If `opts.limit` is provided, it will be sent to the API to constrain the number +of returned results. You may receive more, or fewer results, at the endpoint's +discretion. + +For streamed results, see [`search.stream`](#search-stream). + +##### Example + +```javascript +await search('libnpm') +=> +[ + { + name: 'libnpm', + description: 'programmatic npm API', + ...etc + }, + { + name: 'libnpmsearch', + description: 'Programmatic API for searching in npm and compatible registries', + ...etc + }, + ...more +] +``` + +#### `> search.stream(query, [opts]) -> Stream` + +`query` must be either a String or an Array of search terms. + +If `opts.limit` is provided, it will be sent to the API to constrain the number +of returned results. You may receive more, or fewer results, at the endpoint's +discretion. + +The returned Stream emits one entry per search result, with each entry having +the following format: + +```js +{ + name: String, + version: SemverString, + description: String || null, + maintainers: [ + { + username: String, + email: String + }, + ...etc + ] || null, + keywords: [String] || null, + date: Date || null +} +``` + +For getting results in one chunk, see [`search`](#search-stream). + +##### Example + +```javascript +search.stream('libnpm').on('data', console.log) +=> +// entry 1 +{ + name: 'libnpm', + description: 'programmatic npm API', + ...etc +} +// entry 2 +{ + name: 'libnpmsearch', + description: 'Programmatic API for searching in npm and compatible registries', + ...etc +} +// etc +``` diff --git a/node_modules/libnpmsearch/lib/index.js b/node_modules/libnpmsearch/lib/index.js new file mode 100644 index 0000000..9590591 --- /dev/null +++ b/node_modules/libnpmsearch/lib/index.js @@ -0,0 +1,71 @@ +'use strict' + +const npmFetch = require('npm-registry-fetch') + +module.exports = search +function search (query, opts) { + return search.stream(query, opts).collect() +} +search.stream = searchStream +function searchStream (query, opts = {}) { + opts = { + detailed: false, + limit: 20, + from: 0, + quality: 0.65, + popularity: 0.98, + maintenance: 0.5, + ...opts.opts, // this is to support the cli's --searchopts parameter + ...opts, + } + + switch (opts.sortBy) { + case 'optimal': { + opts.quality = 0.65 + opts.popularity = 0.98 + opts.maintenance = 0.5 + break + } + case 'quality': { + opts.quality = 1 + opts.popularity = 0 + opts.maintenance = 0 + break + } + case 'popularity': { + opts.quality = 0 + opts.popularity = 1 + opts.maintenance = 0 + break + } + case 'maintenance': { + opts.quality = 0 + opts.popularity = 0 + opts.maintenance = 1 + break + } + } + return npmFetch.json.stream('/-/v1/search', 'objects.*', + { + ...opts, + query: { + text: Array.isArray(query) ? query.join(' ') : query, + size: opts.limit, + from: opts.from, + quality: opts.quality, + popularity: opts.popularity, + maintenance: opts.maintenance, + }, + mapJSON: (obj) => { + if (obj.package.date) { + obj.package.date = new Date(obj.package.date) + } + if (opts.detailed) { + return obj + } else { + return obj.package + } + }, + } + ) +} diff --git a/node_modules/libnpmsearch/package.json b/node_modules/libnpmsearch/package.json new file mode 100644 index 0000000..d0e5d89 --- /dev/null +++ b/node_modules/libnpmsearch/package.json @@ -0,0 +1,56 @@ +{ + "name": "libnpmsearch", + "version": "5.0.3", + "description": "Programmatic API for searching in npm and compatible registries.", + "author": "GitHub Inc.", + "main": "lib/index.js", + "files": [ + "bin/", + "lib/" + ], + "keywords": [ + "npm", + "search", + "api", + "libnpm" + ], + "license": "ISC", + "scripts": { + "preversion": "npm test", + "postversion": "npm publish", + "prepublishOnly": "git push origin --follow-tags", + "posttest": "npm run lint", + "test": "tap", + "lint": "eslint \"**/*.js\"", + "postlint": "template-oss-check", + "lintfix": "npm run lint -- --fix", + "snap": "tap", + "template-oss-apply": "template-oss-apply --force" + }, + "tap": { + "check-coverage": true + }, + "devDependencies": { + "@npmcli/eslint-config": "^3.0.1", + "@npmcli/template-oss": "3.3.2", + "nock": "^13.2.4", + "tap": "^16.0.1" + }, + "repository": { + "type": "git", + "url": "https://github.com/npm/cli.git", + "directory": "workspaces/libnpmsearch" + }, + "bugs": "https://github.com/npm/libnpmsearch/issues", + "homepage": "https://npmjs.com/package/libnpmsearch", + "dependencies": { + "npm-registry-fetch": "^13.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + }, + "templateOSS": { + "//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.", + "version": "3.3.2" + } +} diff --git a/node_modules/lodash/LICENSE b/node_modules/lodash/LICENSE new file mode 100644 index 0000000..77c42f1 --- /dev/null +++ b/node_modules/lodash/LICENSE @@ -0,0 +1,47 @@ +Copyright OpenJS Foundation and other contributors + +Based on Underscore.js, copyright Jeremy Ashkenas, +DocumentCloud and Investigative Reporters & Editors + +This software consists of voluntary contributions made by many +individuals. For exact contribution history, see the revision history +available at https://github.com/lodash/lodash + +The following license applies to all parts of this software except as +documented below: + +==== + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +==== + +Copyright and related rights for sample code are waived via CC0. Sample +code is defined as all source code displayed within the prose of the +documentation. + +CC0: http://creativecommons.org/publicdomain/zero/1.0/ + +==== + +Files located in the node_modules and vendor directories are externally +maintained libraries used by this software which have their own +licenses; we recommend you read them, as their terms may differ from the +terms above. diff --git a/node_modules/lodash/README.md b/node_modules/lodash/README.md new file mode 100644 index 0000000..3ab1a05 --- /dev/null +++ b/node_modules/lodash/README.md @@ -0,0 +1,39 @@ +# lodash v4.17.21 + +The [Lodash](https://lodash.com/) library exported as [Node.js](https://nodejs.org/) modules. + +## Installation + +Using npm: +```shell +$ npm i -g npm +$ npm i --save lodash +``` + +In Node.js: +```js +// Load the full build. +var _ = require('lodash'); +// Load the core build. +var _ = require('lodash/core'); +// Load the FP build for immutable auto-curried iteratee-first data-last methods. +var fp = require('lodash/fp'); + +// Load method categories. +var array = require('lodash/array'); +var object = require('lodash/fp/object'); + +// Cherry-pick methods for smaller browserify/rollup/webpack bundles. +var at = require('lodash/at'); +var curryN = require('lodash/fp/curryN'); +``` + +See the [package source](https://github.com/lodash/lodash/tree/4.17.21-npm) for more details. + +**Note:**
+Install [n_](https://www.npmjs.com/package/n_) for Lodash use in the Node.js < 6 REPL. + +## Support + +Tested in Chrome 74-75, Firefox 66-67, IE 11, Edge 18, Safari 11-12, & Node.js 8-12.
+Automated [browser](https://saucelabs.com/u/lodash) & [CI](https://travis-ci.org/lodash/lodash/) test runs are available. diff --git a/node_modules/lodash/_DataView.js b/node_modules/lodash/_DataView.js new file mode 100644 index 0000000..ac2d57c --- /dev/null +++ b/node_modules/lodash/_DataView.js @@ -0,0 +1,7 @@ +var getNative = require('./_getNative'), + root = require('./_root'); + +/* Built-in method references that are verified to be native. */ +var DataView = getNative(root, 'DataView'); + +module.exports = DataView; diff --git a/node_modules/lodash/_Hash.js b/node_modules/lodash/_Hash.js new file mode 100644 index 0000000..b504fe3 --- /dev/null +++ b/node_modules/lodash/_Hash.js @@ -0,0 +1,32 @@ +var hashClear = require('./_hashClear'), + hashDelete = require('./_hashDelete'), + hashGet = require('./_hashGet'), + hashHas = require('./_hashHas'), + hashSet = require('./_hashSet'); + +/** + * Creates a hash object. + * + * @private + * @constructor + * @param {Array} [entries] The key-value pairs to cache. + */ +function Hash(entries) { + var index = -1, + length = entries == null ? 0 : entries.length; + + this.clear(); + while (++index < length) { + var entry = entries[index]; + this.set(entry[0], entry[1]); + } +} + +// Add methods to `Hash`. +Hash.prototype.clear = hashClear; +Hash.prototype['delete'] = hashDelete; +Hash.prototype.get = hashGet; +Hash.prototype.has = hashHas; +Hash.prototype.set = hashSet; + +module.exports = Hash; diff --git a/node_modules/lodash/_LazyWrapper.js b/node_modules/lodash/_LazyWrapper.js new file mode 100644 index 0000000..81786c7 --- /dev/null +++ b/node_modules/lodash/_LazyWrapper.js @@ -0,0 +1,28 @@ +var baseCreate = require('./_baseCreate'), + baseLodash = require('./_baseLodash'); + +/** Used as references for the maximum length and index of an array. */ +var MAX_ARRAY_LENGTH = 4294967295; + +/** + * Creates a lazy wrapper object which wraps `value` to enable lazy evaluation. + * + * @private + * @constructor + * @param {*} value The value to wrap. + */ +function LazyWrapper(value) { + this.__wrapped__ = value; + this.__actions__ = []; + this.__dir__ = 1; + this.__filtered__ = false; + this.__iteratees__ = []; + this.__takeCount__ = MAX_ARRAY_LENGTH; + this.__views__ = []; +} + +// Ensure `LazyWrapper` is an instance of `baseLodash`. +LazyWrapper.prototype = baseCreate(baseLodash.prototype); +LazyWrapper.prototype.constructor = LazyWrapper; + +module.exports = LazyWrapper; diff --git a/node_modules/lodash/_ListCache.js b/node_modules/lodash/_ListCache.js new file mode 100644 index 0000000..26895c3 --- /dev/null +++ b/node_modules/lodash/_ListCache.js @@ -0,0 +1,32 @@ +var listCacheClear = require('./_listCacheClear'), + listCacheDelete = require('./_listCacheDelete'), + listCacheGet = require('./_listCacheGet'), + listCacheHas = require('./_listCacheHas'), + listCacheSet = require('./_listCacheSet'); + +/** + * Creates an list cache object. + * + * @private + * @constructor + * @param {Array} [entries] The key-value pairs to cache. + */ +function ListCache(entries) { + var index = -1, + length = entries == null ? 0 : entries.length; + + this.clear(); + while (++index < length) { + var entry = entries[index]; + this.set(entry[0], entry[1]); + } +} + +// Add methods to `ListCache`. +ListCache.prototype.clear = listCacheClear; +ListCache.prototype['delete'] = listCacheDelete; +ListCache.prototype.get = listCacheGet; +ListCache.prototype.has = listCacheHas; +ListCache.prototype.set = listCacheSet; + +module.exports = ListCache; diff --git a/node_modules/lodash/_LodashWrapper.js b/node_modules/lodash/_LodashWrapper.js new file mode 100644 index 0000000..c1e4d9d --- /dev/null +++ b/node_modules/lodash/_LodashWrapper.js @@ -0,0 +1,22 @@ +var baseCreate = require('./_baseCreate'), + baseLodash = require('./_baseLodash'); + +/** + * The base constructor for creating `lodash` wrapper objects. + * + * @private + * @param {*} value The value to wrap. + * @param {boolean} [chainAll] Enable explicit method chain sequences. + */ +function LodashWrapper(value, chainAll) { + this.__wrapped__ = value; + this.__actions__ = []; + this.__chain__ = !!chainAll; + this.__index__ = 0; + this.__values__ = undefined; +} + +LodashWrapper.prototype = baseCreate(baseLodash.prototype); +LodashWrapper.prototype.constructor = LodashWrapper; + +module.exports = LodashWrapper; diff --git a/node_modules/lodash/_Map.js b/node_modules/lodash/_Map.js new file mode 100644 index 0000000..b73f29a --- /dev/null +++ b/node_modules/lodash/_Map.js @@ -0,0 +1,7 @@ +var getNative = require('./_getNative'), + root = require('./_root'); + +/* Built-in method references that are verified to be native. */ +var Map = getNative(root, 'Map'); + +module.exports = Map; diff --git a/node_modules/lodash/_MapCache.js b/node_modules/lodash/_MapCache.js new file mode 100644 index 0000000..4a4eea7 --- /dev/null +++ b/node_modules/lodash/_MapCache.js @@ -0,0 +1,32 @@ +var mapCacheClear = require('./_mapCacheClear'), + mapCacheDelete = require('./_mapCacheDelete'), + mapCacheGet = require('./_mapCacheGet'), + mapCacheHas = require('./_mapCacheHas'), + mapCacheSet = require('./_mapCacheSet'); + +/** + * Creates a map cache object to store key-value pairs. + * + * @private + * @constructor + * @param {Array} [entries] The key-value pairs to cache. + */ +function MapCache(entries) { + var index = -1, + length = entries == null ? 0 : entries.length; + + this.clear(); + while (++index < length) { + var entry = entries[index]; + this.set(entry[0], entry[1]); + } +} + +// Add methods to `MapCache`. +MapCache.prototype.clear = mapCacheClear; +MapCache.prototype['delete'] = mapCacheDelete; +MapCache.prototype.get = mapCacheGet; +MapCache.prototype.has = mapCacheHas; +MapCache.prototype.set = mapCacheSet; + +module.exports = MapCache; diff --git a/node_modules/lodash/_Promise.js b/node_modules/lodash/_Promise.js new file mode 100644 index 0000000..247b9e1 --- /dev/null +++ b/node_modules/lodash/_Promise.js @@ -0,0 +1,7 @@ +var getNative = require('./_getNative'), + root = require('./_root'); + +/* Built-in method references that are verified to be native. */ +var Promise = getNative(root, 'Promise'); + +module.exports = Promise; diff --git a/node_modules/lodash/_Set.js b/node_modules/lodash/_Set.js new file mode 100644 index 0000000..b3c8dcb --- /dev/null +++ b/node_modules/lodash/_Set.js @@ -0,0 +1,7 @@ +var getNative = require('./_getNative'), + root = require('./_root'); + +/* Built-in method references that are verified to be native. */ +var Set = getNative(root, 'Set'); + +module.exports = Set; diff --git a/node_modules/lodash/_SetCache.js b/node_modules/lodash/_SetCache.js new file mode 100644 index 0000000..6468b06 --- /dev/null +++ b/node_modules/lodash/_SetCache.js @@ -0,0 +1,27 @@ +var MapCache = require('./_MapCache'), + setCacheAdd = require('./_setCacheAdd'), + setCacheHas = require('./_setCacheHas'); + +/** + * + * Creates an array cache object to store unique values. + * + * @private + * @constructor + * @param {Array} [values] The values to cache. + */ +function SetCache(values) { + var index = -1, + length = values == null ? 0 : values.length; + + this.__data__ = new MapCache; + while (++index < length) { + this.add(values[index]); + } +} + +// Add methods to `SetCache`. +SetCache.prototype.add = SetCache.prototype.push = setCacheAdd; +SetCache.prototype.has = setCacheHas; + +module.exports = SetCache; diff --git a/node_modules/lodash/_Stack.js b/node_modules/lodash/_Stack.js new file mode 100644 index 0000000..80b2cf1 --- /dev/null +++ b/node_modules/lodash/_Stack.js @@ -0,0 +1,27 @@ +var ListCache = require('./_ListCache'), + stackClear = require('./_stackClear'), + stackDelete = require('./_stackDelete'), + stackGet = require('./_stackGet'), + stackHas = require('./_stackHas'), + stackSet = require('./_stackSet'); + +/** + * Creates a stack cache object to store key-value pairs. + * + * @private + * @constructor + * @param {Array} [entries] The key-value pairs to cache. + */ +function Stack(entries) { + var data = this.__data__ = new ListCache(entries); + this.size = data.size; +} + +// Add methods to `Stack`. +Stack.prototype.clear = stackClear; +Stack.prototype['delete'] = stackDelete; +Stack.prototype.get = stackGet; +Stack.prototype.has = stackHas; +Stack.prototype.set = stackSet; + +module.exports = Stack; diff --git a/node_modules/lodash/_Symbol.js b/node_modules/lodash/_Symbol.js new file mode 100644 index 0000000..a013f7c --- /dev/null +++ b/node_modules/lodash/_Symbol.js @@ -0,0 +1,6 @@ +var root = require('./_root'); + +/** Built-in value references. */ +var Symbol = root.Symbol; + +module.exports = Symbol; diff --git a/node_modules/lodash/_Uint8Array.js b/node_modules/lodash/_Uint8Array.js new file mode 100644 index 0000000..2fb30e1 --- /dev/null +++ b/node_modules/lodash/_Uint8Array.js @@ -0,0 +1,6 @@ +var root = require('./_root'); + +/** Built-in value references. */ +var Uint8Array = root.Uint8Array; + +module.exports = Uint8Array; diff --git a/node_modules/lodash/_WeakMap.js b/node_modules/lodash/_WeakMap.js new file mode 100644 index 0000000..567f86c --- /dev/null +++ b/node_modules/lodash/_WeakMap.js @@ -0,0 +1,7 @@ +var getNative = require('./_getNative'), + root = require('./_root'); + +/* Built-in method references that are verified to be native. */ +var WeakMap = getNative(root, 'WeakMap'); + +module.exports = WeakMap; diff --git a/node_modules/lodash/_apply.js b/node_modules/lodash/_apply.js new file mode 100644 index 0000000..36436dd --- /dev/null +++ b/node_modules/lodash/_apply.js @@ -0,0 +1,21 @@ +/** + * A faster alternative to `Function#apply`, this function invokes `func` + * with the `this` binding of `thisArg` and the arguments of `args`. + * + * @private + * @param {Function} func The function to invoke. + * @param {*} thisArg The `this` binding of `func`. + * @param {Array} args The arguments to invoke `func` with. + * @returns {*} Returns the result of `func`. + */ +function apply(func, thisArg, args) { + switch (args.length) { + case 0: return func.call(thisArg); + case 1: return func.call(thisArg, args[0]); + case 2: return func.call(thisArg, args[0], args[1]); + case 3: return func.call(thisArg, args[0], args[1], args[2]); + } + return func.apply(thisArg, args); +} + +module.exports = apply; diff --git a/node_modules/lodash/_arrayAggregator.js b/node_modules/lodash/_arrayAggregator.js new file mode 100644 index 0000000..d96c3ca --- /dev/null +++ b/node_modules/lodash/_arrayAggregator.js @@ -0,0 +1,22 @@ +/** + * A specialized version of `baseAggregator` for arrays. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} setter The function to set `accumulator` values. + * @param {Function} iteratee The iteratee to transform keys. + * @param {Object} accumulator The initial aggregated object. + * @returns {Function} Returns `accumulator`. + */ +function arrayAggregator(array, setter, iteratee, accumulator) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + var value = array[index]; + setter(accumulator, value, iteratee(value), array); + } + return accumulator; +} + +module.exports = arrayAggregator; diff --git a/node_modules/lodash/_arrayEach.js b/node_modules/lodash/_arrayEach.js new file mode 100644 index 0000000..2c5f579 --- /dev/null +++ b/node_modules/lodash/_arrayEach.js @@ -0,0 +1,22 @@ +/** + * A specialized version of `_.forEach` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns `array`. + */ +function arrayEach(array, iteratee) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + if (iteratee(array[index], index, array) === false) { + break; + } + } + return array; +} + +module.exports = arrayEach; diff --git a/node_modules/lodash/_arrayEachRight.js b/node_modules/lodash/_arrayEachRight.js new file mode 100644 index 0000000..976ca5c --- /dev/null +++ b/node_modules/lodash/_arrayEachRight.js @@ -0,0 +1,21 @@ +/** + * A specialized version of `_.forEachRight` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns `array`. + */ +function arrayEachRight(array, iteratee) { + var length = array == null ? 0 : array.length; + + while (length--) { + if (iteratee(array[length], length, array) === false) { + break; + } + } + return array; +} + +module.exports = arrayEachRight; diff --git a/node_modules/lodash/_arrayEvery.js b/node_modules/lodash/_arrayEvery.js new file mode 100644 index 0000000..e26a918 --- /dev/null +++ b/node_modules/lodash/_arrayEvery.js @@ -0,0 +1,23 @@ +/** + * A specialized version of `_.every` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {boolean} Returns `true` if all elements pass the predicate check, + * else `false`. + */ +function arrayEvery(array, predicate) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + if (!predicate(array[index], index, array)) { + return false; + } + } + return true; +} + +module.exports = arrayEvery; diff --git a/node_modules/lodash/_arrayFilter.js b/node_modules/lodash/_arrayFilter.js new file mode 100644 index 0000000..75ea254 --- /dev/null +++ b/node_modules/lodash/_arrayFilter.js @@ -0,0 +1,25 @@ +/** + * A specialized version of `_.filter` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {Array} Returns the new filtered array. + */ +function arrayFilter(array, predicate) { + var index = -1, + length = array == null ? 0 : array.length, + resIndex = 0, + result = []; + + while (++index < length) { + var value = array[index]; + if (predicate(value, index, array)) { + result[resIndex++] = value; + } + } + return result; +} + +module.exports = arrayFilter; diff --git a/node_modules/lodash/_arrayIncludes.js b/node_modules/lodash/_arrayIncludes.js new file mode 100644 index 0000000..3737a6d --- /dev/null +++ b/node_modules/lodash/_arrayIncludes.js @@ -0,0 +1,17 @@ +var baseIndexOf = require('./_baseIndexOf'); + +/** + * A specialized version of `_.includes` for arrays without support for + * specifying an index to search from. + * + * @private + * @param {Array} [array] The array to inspect. + * @param {*} target The value to search for. + * @returns {boolean} Returns `true` if `target` is found, else `false`. + */ +function arrayIncludes(array, value) { + var length = array == null ? 0 : array.length; + return !!length && baseIndexOf(array, value, 0) > -1; +} + +module.exports = arrayIncludes; diff --git a/node_modules/lodash/_arrayIncludesWith.js b/node_modules/lodash/_arrayIncludesWith.js new file mode 100644 index 0000000..235fd97 --- /dev/null +++ b/node_modules/lodash/_arrayIncludesWith.js @@ -0,0 +1,22 @@ +/** + * This function is like `arrayIncludes` except that it accepts a comparator. + * + * @private + * @param {Array} [array] The array to inspect. + * @param {*} target The value to search for. + * @param {Function} comparator The comparator invoked per element. + * @returns {boolean} Returns `true` if `target` is found, else `false`. + */ +function arrayIncludesWith(array, value, comparator) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + if (comparator(value, array[index])) { + return true; + } + } + return false; +} + +module.exports = arrayIncludesWith; diff --git a/node_modules/lodash/_arrayLikeKeys.js b/node_modules/lodash/_arrayLikeKeys.js new file mode 100644 index 0000000..b2ec9ce --- /dev/null +++ b/node_modules/lodash/_arrayLikeKeys.js @@ -0,0 +1,49 @@ +var baseTimes = require('./_baseTimes'), + isArguments = require('./isArguments'), + isArray = require('./isArray'), + isBuffer = require('./isBuffer'), + isIndex = require('./_isIndex'), + isTypedArray = require('./isTypedArray'); + +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var hasOwnProperty = objectProto.hasOwnProperty; + +/** + * Creates an array of the enumerable property names of the array-like `value`. + * + * @private + * @param {*} value The value to query. + * @param {boolean} inherited Specify returning inherited property names. + * @returns {Array} Returns the array of property names. + */ +function arrayLikeKeys(value, inherited) { + var isArr = isArray(value), + isArg = !isArr && isArguments(value), + isBuff = !isArr && !isArg && isBuffer(value), + isType = !isArr && !isArg && !isBuff && isTypedArray(value), + skipIndexes = isArr || isArg || isBuff || isType, + result = skipIndexes ? baseTimes(value.length, String) : [], + length = result.length; + + for (var key in value) { + if ((inherited || hasOwnProperty.call(value, key)) && + !(skipIndexes && ( + // Safari 9 has enumerable `arguments.length` in strict mode. + key == 'length' || + // Node.js 0.10 has enumerable non-index properties on buffers. + (isBuff && (key == 'offset' || key == 'parent')) || + // PhantomJS 2 has enumerable non-index properties on typed arrays. + (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) || + // Skip index properties. + isIndex(key, length) + ))) { + result.push(key); + } + } + return result; +} + +module.exports = arrayLikeKeys; diff --git a/node_modules/lodash/_arrayMap.js b/node_modules/lodash/_arrayMap.js new file mode 100644 index 0000000..22b2246 --- /dev/null +++ b/node_modules/lodash/_arrayMap.js @@ -0,0 +1,21 @@ +/** + * A specialized version of `_.map` for arrays without support for iteratee + * shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns the new mapped array. + */ +function arrayMap(array, iteratee) { + var index = -1, + length = array == null ? 0 : array.length, + result = Array(length); + + while (++index < length) { + result[index] = iteratee(array[index], index, array); + } + return result; +} + +module.exports = arrayMap; diff --git a/node_modules/lodash/_arrayPush.js b/node_modules/lodash/_arrayPush.js new file mode 100644 index 0000000..7d742b3 --- /dev/null +++ b/node_modules/lodash/_arrayPush.js @@ -0,0 +1,20 @@ +/** + * Appends the elements of `values` to `array`. + * + * @private + * @param {Array} array The array to modify. + * @param {Array} values The values to append. + * @returns {Array} Returns `array`. + */ +function arrayPush(array, values) { + var index = -1, + length = values.length, + offset = array.length; + + while (++index < length) { + array[offset + index] = values[index]; + } + return array; +} + +module.exports = arrayPush; diff --git a/node_modules/lodash/_arrayReduce.js b/node_modules/lodash/_arrayReduce.js new file mode 100644 index 0000000..de8b79b --- /dev/null +++ b/node_modules/lodash/_arrayReduce.js @@ -0,0 +1,26 @@ +/** + * A specialized version of `_.reduce` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @param {*} [accumulator] The initial value. + * @param {boolean} [initAccum] Specify using the first element of `array` as + * the initial value. + * @returns {*} Returns the accumulated value. + */ +function arrayReduce(array, iteratee, accumulator, initAccum) { + var index = -1, + length = array == null ? 0 : array.length; + + if (initAccum && length) { + accumulator = array[++index]; + } + while (++index < length) { + accumulator = iteratee(accumulator, array[index], index, array); + } + return accumulator; +} + +module.exports = arrayReduce; diff --git a/node_modules/lodash/_arrayReduceRight.js b/node_modules/lodash/_arrayReduceRight.js new file mode 100644 index 0000000..22d8976 --- /dev/null +++ b/node_modules/lodash/_arrayReduceRight.js @@ -0,0 +1,24 @@ +/** + * A specialized version of `_.reduceRight` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @param {*} [accumulator] The initial value. + * @param {boolean} [initAccum] Specify using the last element of `array` as + * the initial value. + * @returns {*} Returns the accumulated value. + */ +function arrayReduceRight(array, iteratee, accumulator, initAccum) { + var length = array == null ? 0 : array.length; + if (initAccum && length) { + accumulator = array[--length]; + } + while (length--) { + accumulator = iteratee(accumulator, array[length], length, array); + } + return accumulator; +} + +module.exports = arrayReduceRight; diff --git a/node_modules/lodash/_arraySample.js b/node_modules/lodash/_arraySample.js new file mode 100644 index 0000000..fcab010 --- /dev/null +++ b/node_modules/lodash/_arraySample.js @@ -0,0 +1,15 @@ +var baseRandom = require('./_baseRandom'); + +/** + * A specialized version of `_.sample` for arrays. + * + * @private + * @param {Array} array The array to sample. + * @returns {*} Returns the random element. + */ +function arraySample(array) { + var length = array.length; + return length ? array[baseRandom(0, length - 1)] : undefined; +} + +module.exports = arraySample; diff --git a/node_modules/lodash/_arraySampleSize.js b/node_modules/lodash/_arraySampleSize.js new file mode 100644 index 0000000..8c7e364 --- /dev/null +++ b/node_modules/lodash/_arraySampleSize.js @@ -0,0 +1,17 @@ +var baseClamp = require('./_baseClamp'), + copyArray = require('./_copyArray'), + shuffleSelf = require('./_shuffleSelf'); + +/** + * A specialized version of `_.sampleSize` for arrays. + * + * @private + * @param {Array} array The array to sample. + * @param {number} n The number of elements to sample. + * @returns {Array} Returns the random elements. + */ +function arraySampleSize(array, n) { + return shuffleSelf(copyArray(array), baseClamp(n, 0, array.length)); +} + +module.exports = arraySampleSize; diff --git a/node_modules/lodash/_arrayShuffle.js b/node_modules/lodash/_arrayShuffle.js new file mode 100644 index 0000000..46313a3 --- /dev/null +++ b/node_modules/lodash/_arrayShuffle.js @@ -0,0 +1,15 @@ +var copyArray = require('./_copyArray'), + shuffleSelf = require('./_shuffleSelf'); + +/** + * A specialized version of `_.shuffle` for arrays. + * + * @private + * @param {Array} array The array to shuffle. + * @returns {Array} Returns the new shuffled array. + */ +function arrayShuffle(array) { + return shuffleSelf(copyArray(array)); +} + +module.exports = arrayShuffle; diff --git a/node_modules/lodash/_arraySome.js b/node_modules/lodash/_arraySome.js new file mode 100644 index 0000000..6fd02fd --- /dev/null +++ b/node_modules/lodash/_arraySome.js @@ -0,0 +1,23 @@ +/** + * A specialized version of `_.some` for arrays without support for iteratee + * shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {boolean} Returns `true` if any element passes the predicate check, + * else `false`. + */ +function arraySome(array, predicate) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + if (predicate(array[index], index, array)) { + return true; + } + } + return false; +} + +module.exports = arraySome; diff --git a/node_modules/lodash/_asciiSize.js b/node_modules/lodash/_asciiSize.js new file mode 100644 index 0000000..11d29c3 --- /dev/null +++ b/node_modules/lodash/_asciiSize.js @@ -0,0 +1,12 @@ +var baseProperty = require('./_baseProperty'); + +/** + * Gets the size of an ASCII `string`. + * + * @private + * @param {string} string The string inspect. + * @returns {number} Returns the string size. + */ +var asciiSize = baseProperty('length'); + +module.exports = asciiSize; diff --git a/node_modules/lodash/_asciiToArray.js b/node_modules/lodash/_asciiToArray.js new file mode 100644 index 0000000..8e3dd5b --- /dev/null +++ b/node_modules/lodash/_asciiToArray.js @@ -0,0 +1,12 @@ +/** + * Converts an ASCII `string` to an array. + * + * @private + * @param {string} string The string to convert. + * @returns {Array} Returns the converted array. + */ +function asciiToArray(string) { + return string.split(''); +} + +module.exports = asciiToArray; diff --git a/node_modules/lodash/_asciiWords.js b/node_modules/lodash/_asciiWords.js new file mode 100644 index 0000000..d765f0f --- /dev/null +++ b/node_modules/lodash/_asciiWords.js @@ -0,0 +1,15 @@ +/** Used to match words composed of alphanumeric characters. */ +var reAsciiWord = /[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g; + +/** + * Splits an ASCII `string` into an array of its words. + * + * @private + * @param {string} The string to inspect. + * @returns {Array} Returns the words of `string`. + */ +function asciiWords(string) { + return string.match(reAsciiWord) || []; +} + +module.exports = asciiWords; diff --git a/node_modules/lodash/_assignMergeValue.js b/node_modules/lodash/_assignMergeValue.js new file mode 100644 index 0000000..cb1185e --- /dev/null +++ b/node_modules/lodash/_assignMergeValue.js @@ -0,0 +1,20 @@ +var baseAssignValue = require('./_baseAssignValue'), + eq = require('./eq'); + +/** + * This function is like `assignValue` except that it doesn't assign + * `undefined` values. + * + * @private + * @param {Object} object The object to modify. + * @param {string} key The key of the property to assign. + * @param {*} value The value to assign. + */ +function assignMergeValue(object, key, value) { + if ((value !== undefined && !eq(object[key], value)) || + (value === undefined && !(key in object))) { + baseAssignValue(object, key, value); + } +} + +module.exports = assignMergeValue; diff --git a/node_modules/lodash/_assignValue.js b/node_modules/lodash/_assignValue.js new file mode 100644 index 0000000..4083957 --- /dev/null +++ b/node_modules/lodash/_assignValue.js @@ -0,0 +1,28 @@ +var baseAssignValue = require('./_baseAssignValue'), + eq = require('./eq'); + +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var hasOwnProperty = objectProto.hasOwnProperty; + +/** + * Assigns `value` to `key` of `object` if the existing value is not equivalent + * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. + * + * @private + * @param {Object} object The object to modify. + * @param {string} key The key of the property to assign. + * @param {*} value The value to assign. + */ +function assignValue(object, key, value) { + var objValue = object[key]; + if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) || + (value === undefined && !(key in object))) { + baseAssignValue(object, key, value); + } +} + +module.exports = assignValue; diff --git a/node_modules/lodash/_assocIndexOf.js b/node_modules/lodash/_assocIndexOf.js new file mode 100644 index 0000000..5b77a2b --- /dev/null +++ b/node_modules/lodash/_assocIndexOf.js @@ -0,0 +1,21 @@ +var eq = require('./eq'); + +/** + * Gets the index at which the `key` is found in `array` of key-value pairs. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} key The key to search for. + * @returns {number} Returns the index of the matched value, else `-1`. + */ +function assocIndexOf(array, key) { + var length = array.length; + while (length--) { + if (eq(array[length][0], key)) { + return length; + } + } + return -1; +} + +module.exports = assocIndexOf; diff --git a/node_modules/lodash/_baseAggregator.js b/node_modules/lodash/_baseAggregator.js new file mode 100644 index 0000000..4bc9e91 --- /dev/null +++ b/node_modules/lodash/_baseAggregator.js @@ -0,0 +1,21 @@ +var baseEach = require('./_baseEach'); + +/** + * Aggregates elements of `collection` on `accumulator` with keys transformed + * by `iteratee` and values set by `setter`. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} setter The function to set `accumulator` values. + * @param {Function} iteratee The iteratee to transform keys. + * @param {Object} accumulator The initial aggregated object. + * @returns {Function} Returns `accumulator`. + */ +function baseAggregator(collection, setter, iteratee, accumulator) { + baseEach(collection, function(value, key, collection) { + setter(accumulator, value, iteratee(value), collection); + }); + return accumulator; +} + +module.exports = baseAggregator; diff --git a/node_modules/lodash/_baseAssign.js b/node_modules/lodash/_baseAssign.js new file mode 100644 index 0000000..e5c4a1a --- /dev/null +++ b/node_modules/lodash/_baseAssign.js @@ -0,0 +1,17 @@ +var copyObject = require('./_copyObject'), + keys = require('./keys'); + +/** + * The base implementation of `_.assign` without support for multiple sources + * or `customizer` functions. + * + * @private + * @param {Object} object The destination object. + * @param {Object} source The source object. + * @returns {Object} Returns `object`. + */ +function baseAssign(object, source) { + return object && copyObject(source, keys(source), object); +} + +module.exports = baseAssign; diff --git a/node_modules/lodash/_baseAssignIn.js b/node_modules/lodash/_baseAssignIn.js new file mode 100644 index 0000000..6624f90 --- /dev/null +++ b/node_modules/lodash/_baseAssignIn.js @@ -0,0 +1,17 @@ +var copyObject = require('./_copyObject'), + keysIn = require('./keysIn'); + +/** + * The base implementation of `_.assignIn` without support for multiple sources + * or `customizer` functions. + * + * @private + * @param {Object} object The destination object. + * @param {Object} source The source object. + * @returns {Object} Returns `object`. + */ +function baseAssignIn(object, source) { + return object && copyObject(source, keysIn(source), object); +} + +module.exports = baseAssignIn; diff --git a/node_modules/lodash/_baseAssignValue.js b/node_modules/lodash/_baseAssignValue.js new file mode 100644 index 0000000..d6f66ef --- /dev/null +++ b/node_modules/lodash/_baseAssignValue.js @@ -0,0 +1,25 @@ +var defineProperty = require('./_defineProperty'); + +/** + * The base implementation of `assignValue` and `assignMergeValue` without + * value checks. + * + * @private + * @param {Object} object The object to modify. + * @param {string} key The key of the property to assign. + * @param {*} value The value to assign. + */ +function baseAssignValue(object, key, value) { + if (key == '__proto__' && defineProperty) { + defineProperty(object, key, { + 'configurable': true, + 'enumerable': true, + 'value': value, + 'writable': true + }); + } else { + object[key] = value; + } +} + +module.exports = baseAssignValue; diff --git a/node_modules/lodash/_baseAt.js b/node_modules/lodash/_baseAt.js new file mode 100644 index 0000000..90e4237 --- /dev/null +++ b/node_modules/lodash/_baseAt.js @@ -0,0 +1,23 @@ +var get = require('./get'); + +/** + * The base implementation of `_.at` without support for individual paths. + * + * @private + * @param {Object} object The object to iterate over. + * @param {string[]} paths The property paths to pick. + * @returns {Array} Returns the picked elements. + */ +function baseAt(object, paths) { + var index = -1, + length = paths.length, + result = Array(length), + skip = object == null; + + while (++index < length) { + result[index] = skip ? undefined : get(object, paths[index]); + } + return result; +} + +module.exports = baseAt; diff --git a/node_modules/lodash/_baseClamp.js b/node_modules/lodash/_baseClamp.js new file mode 100644 index 0000000..a1c5692 --- /dev/null +++ b/node_modules/lodash/_baseClamp.js @@ -0,0 +1,22 @@ +/** + * The base implementation of `_.clamp` which doesn't coerce arguments. + * + * @private + * @param {number} number The number to clamp. + * @param {number} [lower] The lower bound. + * @param {number} upper The upper bound. + * @returns {number} Returns the clamped number. + */ +function baseClamp(number, lower, upper) { + if (number === number) { + if (upper !== undefined) { + number = number <= upper ? number : upper; + } + if (lower !== undefined) { + number = number >= lower ? number : lower; + } + } + return number; +} + +module.exports = baseClamp; diff --git a/node_modules/lodash/_baseClone.js b/node_modules/lodash/_baseClone.js new file mode 100644 index 0000000..69f8705 --- /dev/null +++ b/node_modules/lodash/_baseClone.js @@ -0,0 +1,166 @@ +var Stack = require('./_Stack'), + arrayEach = require('./_arrayEach'), + assignValue = require('./_assignValue'), + baseAssign = require('./_baseAssign'), + baseAssignIn = require('./_baseAssignIn'), + cloneBuffer = require('./_cloneBuffer'), + copyArray = require('./_copyArray'), + copySymbols = require('./_copySymbols'), + copySymbolsIn = require('./_copySymbolsIn'), + getAllKeys = require('./_getAllKeys'), + getAllKeysIn = require('./_getAllKeysIn'), + getTag = require('./_getTag'), + initCloneArray = require('./_initCloneArray'), + initCloneByTag = require('./_initCloneByTag'), + initCloneObject = require('./_initCloneObject'), + isArray = require('./isArray'), + isBuffer = require('./isBuffer'), + isMap = require('./isMap'), + isObject = require('./isObject'), + isSet = require('./isSet'), + keys = require('./keys'), + keysIn = require('./keysIn'); + +/** Used to compose bitmasks for cloning. */ +var CLONE_DEEP_FLAG = 1, + CLONE_FLAT_FLAG = 2, + CLONE_SYMBOLS_FLAG = 4; + +/** `Object#toString` result references. */ +var argsTag = '[object Arguments]', + arrayTag = '[object Array]', + boolTag = '[object Boolean]', + dateTag = '[object Date]', + errorTag = '[object Error]', + funcTag = '[object Function]', + genTag = '[object GeneratorFunction]', + mapTag = '[object Map]', + numberTag = '[object Number]', + objectTag = '[object Object]', + regexpTag = '[object RegExp]', + setTag = '[object Set]', + stringTag = '[object String]', + symbolTag = '[object Symbol]', + weakMapTag = '[object WeakMap]'; + +var arrayBufferTag = '[object ArrayBuffer]', + dataViewTag = '[object DataView]', + float32Tag = '[object Float32Array]', + float64Tag = '[object Float64Array]', + int8Tag = '[object Int8Array]', + int16Tag = '[object Int16Array]', + int32Tag = '[object Int32Array]', + uint8Tag = '[object Uint8Array]', + uint8ClampedTag = '[object Uint8ClampedArray]', + uint16Tag = '[object Uint16Array]', + uint32Tag = '[object Uint32Array]'; + +/** Used to identify `toStringTag` values supported by `_.clone`. */ +var cloneableTags = {}; +cloneableTags[argsTag] = cloneableTags[arrayTag] = +cloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] = +cloneableTags[boolTag] = cloneableTags[dateTag] = +cloneableTags[float32Tag] = cloneableTags[float64Tag] = +cloneableTags[int8Tag] = cloneableTags[int16Tag] = +cloneableTags[int32Tag] = cloneableTags[mapTag] = +cloneableTags[numberTag] = cloneableTags[objectTag] = +cloneableTags[regexpTag] = cloneableTags[setTag] = +cloneableTags[stringTag] = cloneableTags[symbolTag] = +cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] = +cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true; +cloneableTags[errorTag] = cloneableTags[funcTag] = +cloneableTags[weakMapTag] = false; + +/** + * The base implementation of `_.clone` and `_.cloneDeep` which tracks + * traversed objects. + * + * @private + * @param {*} value The value to clone. + * @param {boolean} bitmask The bitmask flags. + * 1 - Deep clone + * 2 - Flatten inherited properties + * 4 - Clone symbols + * @param {Function} [customizer] The function to customize cloning. + * @param {string} [key] The key of `value`. + * @param {Object} [object] The parent object of `value`. + * @param {Object} [stack] Tracks traversed objects and their clone counterparts. + * @returns {*} Returns the cloned value. + */ +function baseClone(value, bitmask, customizer, key, object, stack) { + var result, + isDeep = bitmask & CLONE_DEEP_FLAG, + isFlat = bitmask & CLONE_FLAT_FLAG, + isFull = bitmask & CLONE_SYMBOLS_FLAG; + + if (customizer) { + result = object ? customizer(value, key, object, stack) : customizer(value); + } + if (result !== undefined) { + return result; + } + if (!isObject(value)) { + return value; + } + var isArr = isArray(value); + if (isArr) { + result = initCloneArray(value); + if (!isDeep) { + return copyArray(value, result); + } + } else { + var tag = getTag(value), + isFunc = tag == funcTag || tag == genTag; + + if (isBuffer(value)) { + return cloneBuffer(value, isDeep); + } + if (tag == objectTag || tag == argsTag || (isFunc && !object)) { + result = (isFlat || isFunc) ? {} : initCloneObject(value); + if (!isDeep) { + return isFlat + ? copySymbolsIn(value, baseAssignIn(result, value)) + : copySymbols(value, baseAssign(result, value)); + } + } else { + if (!cloneableTags[tag]) { + return object ? value : {}; + } + result = initCloneByTag(value, tag, isDeep); + } + } + // Check for circular references and return its corresponding clone. + stack || (stack = new Stack); + var stacked = stack.get(value); + if (stacked) { + return stacked; + } + stack.set(value, result); + + if (isSet(value)) { + value.forEach(function(subValue) { + result.add(baseClone(subValue, bitmask, customizer, subValue, value, stack)); + }); + } else if (isMap(value)) { + value.forEach(function(subValue, key) { + result.set(key, baseClone(subValue, bitmask, customizer, key, value, stack)); + }); + } + + var keysFunc = isFull + ? (isFlat ? getAllKeysIn : getAllKeys) + : (isFlat ? keysIn : keys); + + var props = isArr ? undefined : keysFunc(value); + arrayEach(props || value, function(subValue, key) { + if (props) { + key = subValue; + subValue = value[key]; + } + // Recursively populate clone (susceptible to call stack limits). + assignValue(result, key, baseClone(subValue, bitmask, customizer, key, value, stack)); + }); + return result; +} + +module.exports = baseClone; diff --git a/node_modules/lodash/_baseConforms.js b/node_modules/lodash/_baseConforms.js new file mode 100644 index 0000000..947e20d --- /dev/null +++ b/node_modules/lodash/_baseConforms.js @@ -0,0 +1,18 @@ +var baseConformsTo = require('./_baseConformsTo'), + keys = require('./keys'); + +/** + * The base implementation of `_.conforms` which doesn't clone `source`. + * + * @private + * @param {Object} source The object of property predicates to conform to. + * @returns {Function} Returns the new spec function. + */ +function baseConforms(source) { + var props = keys(source); + return function(object) { + return baseConformsTo(object, source, props); + }; +} + +module.exports = baseConforms; diff --git a/node_modules/lodash/_baseConformsTo.js b/node_modules/lodash/_baseConformsTo.js new file mode 100644 index 0000000..e449cb8 --- /dev/null +++ b/node_modules/lodash/_baseConformsTo.js @@ -0,0 +1,27 @@ +/** + * The base implementation of `_.conformsTo` which accepts `props` to check. + * + * @private + * @param {Object} object The object to inspect. + * @param {Object} source The object of property predicates to conform to. + * @returns {boolean} Returns `true` if `object` conforms, else `false`. + */ +function baseConformsTo(object, source, props) { + var length = props.length; + if (object == null) { + return !length; + } + object = Object(object); + while (length--) { + var key = props[length], + predicate = source[key], + value = object[key]; + + if ((value === undefined && !(key in object)) || !predicate(value)) { + return false; + } + } + return true; +} + +module.exports = baseConformsTo; diff --git a/node_modules/lodash/_baseCreate.js b/node_modules/lodash/_baseCreate.js new file mode 100644 index 0000000..ffa6a52 --- /dev/null +++ b/node_modules/lodash/_baseCreate.js @@ -0,0 +1,30 @@ +var isObject = require('./isObject'); + +/** Built-in value references. */ +var objectCreate = Object.create; + +/** + * The base implementation of `_.create` without support for assigning + * properties to the created object. + * + * @private + * @param {Object} proto The object to inherit from. + * @returns {Object} Returns the new object. + */ +var baseCreate = (function() { + function object() {} + return function(proto) { + if (!isObject(proto)) { + return {}; + } + if (objectCreate) { + return objectCreate(proto); + } + object.prototype = proto; + var result = new object; + object.prototype = undefined; + return result; + }; +}()); + +module.exports = baseCreate; diff --git a/node_modules/lodash/_baseDelay.js b/node_modules/lodash/_baseDelay.js new file mode 100644 index 0000000..1486d69 --- /dev/null +++ b/node_modules/lodash/_baseDelay.js @@ -0,0 +1,21 @@ +/** Error message constants. */ +var FUNC_ERROR_TEXT = 'Expected a function'; + +/** + * The base implementation of `_.delay` and `_.defer` which accepts `args` + * to provide to `func`. + * + * @private + * @param {Function} func The function to delay. + * @param {number} wait The number of milliseconds to delay invocation. + * @param {Array} args The arguments to provide to `func`. + * @returns {number|Object} Returns the timer id or timeout object. + */ +function baseDelay(func, wait, args) { + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + return setTimeout(function() { func.apply(undefined, args); }, wait); +} + +module.exports = baseDelay; diff --git a/node_modules/lodash/_baseDifference.js b/node_modules/lodash/_baseDifference.js new file mode 100644 index 0000000..343ac19 --- /dev/null +++ b/node_modules/lodash/_baseDifference.js @@ -0,0 +1,67 @@ +var SetCache = require('./_SetCache'), + arrayIncludes = require('./_arrayIncludes'), + arrayIncludesWith = require('./_arrayIncludesWith'), + arrayMap = require('./_arrayMap'), + baseUnary = require('./_baseUnary'), + cacheHas = require('./_cacheHas'); + +/** Used as the size to enable large array optimizations. */ +var LARGE_ARRAY_SIZE = 200; + +/** + * The base implementation of methods like `_.difference` without support + * for excluding multiple arrays or iteratee shorthands. + * + * @private + * @param {Array} array The array to inspect. + * @param {Array} values The values to exclude. + * @param {Function} [iteratee] The iteratee invoked per element. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new array of filtered values. + */ +function baseDifference(array, values, iteratee, comparator) { + var index = -1, + includes = arrayIncludes, + isCommon = true, + length = array.length, + result = [], + valuesLength = values.length; + + if (!length) { + return result; + } + if (iteratee) { + values = arrayMap(values, baseUnary(iteratee)); + } + if (comparator) { + includes = arrayIncludesWith; + isCommon = false; + } + else if (values.length >= LARGE_ARRAY_SIZE) { + includes = cacheHas; + isCommon = false; + values = new SetCache(values); + } + outer: + while (++index < length) { + var value = array[index], + computed = iteratee == null ? value : iteratee(value); + + value = (comparator || value !== 0) ? value : 0; + if (isCommon && computed === computed) { + var valuesIndex = valuesLength; + while (valuesIndex--) { + if (values[valuesIndex] === computed) { + continue outer; + } + } + result.push(value); + } + else if (!includes(values, computed, comparator)) { + result.push(value); + } + } + return result; +} + +module.exports = baseDifference; diff --git a/node_modules/lodash/_baseEach.js b/node_modules/lodash/_baseEach.js new file mode 100644 index 0000000..512c067 --- /dev/null +++ b/node_modules/lodash/_baseEach.js @@ -0,0 +1,14 @@ +var baseForOwn = require('./_baseForOwn'), + createBaseEach = require('./_createBaseEach'); + +/** + * The base implementation of `_.forEach` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array|Object} Returns `collection`. + */ +var baseEach = createBaseEach(baseForOwn); + +module.exports = baseEach; diff --git a/node_modules/lodash/_baseEachRight.js b/node_modules/lodash/_baseEachRight.js new file mode 100644 index 0000000..0a8feec --- /dev/null +++ b/node_modules/lodash/_baseEachRight.js @@ -0,0 +1,14 @@ +var baseForOwnRight = require('./_baseForOwnRight'), + createBaseEach = require('./_createBaseEach'); + +/** + * The base implementation of `_.forEachRight` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array|Object} Returns `collection`. + */ +var baseEachRight = createBaseEach(baseForOwnRight, true); + +module.exports = baseEachRight; diff --git a/node_modules/lodash/_baseEvery.js b/node_modules/lodash/_baseEvery.js new file mode 100644 index 0000000..fa52f7b --- /dev/null +++ b/node_modules/lodash/_baseEvery.js @@ -0,0 +1,21 @@ +var baseEach = require('./_baseEach'); + +/** + * The base implementation of `_.every` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {boolean} Returns `true` if all elements pass the predicate check, + * else `false` + */ +function baseEvery(collection, predicate) { + var result = true; + baseEach(collection, function(value, index, collection) { + result = !!predicate(value, index, collection); + return result; + }); + return result; +} + +module.exports = baseEvery; diff --git a/node_modules/lodash/_baseExtremum.js b/node_modules/lodash/_baseExtremum.js new file mode 100644 index 0000000..9d6aa77 --- /dev/null +++ b/node_modules/lodash/_baseExtremum.js @@ -0,0 +1,32 @@ +var isSymbol = require('./isSymbol'); + +/** + * The base implementation of methods like `_.max` and `_.min` which accepts a + * `comparator` to determine the extremum value. + * + * @private + * @param {Array} array The array to iterate over. + * @param {Function} iteratee The iteratee invoked per iteration. + * @param {Function} comparator The comparator used to compare values. + * @returns {*} Returns the extremum value. + */ +function baseExtremum(array, iteratee, comparator) { + var index = -1, + length = array.length; + + while (++index < length) { + var value = array[index], + current = iteratee(value); + + if (current != null && (computed === undefined + ? (current === current && !isSymbol(current)) + : comparator(current, computed) + )) { + var computed = current, + result = value; + } + } + return result; +} + +module.exports = baseExtremum; diff --git a/node_modules/lodash/_baseFill.js b/node_modules/lodash/_baseFill.js new file mode 100644 index 0000000..46ef9c7 --- /dev/null +++ b/node_modules/lodash/_baseFill.js @@ -0,0 +1,32 @@ +var toInteger = require('./toInteger'), + toLength = require('./toLength'); + +/** + * The base implementation of `_.fill` without an iteratee call guard. + * + * @private + * @param {Array} array The array to fill. + * @param {*} value The value to fill `array` with. + * @param {number} [start=0] The start position. + * @param {number} [end=array.length] The end position. + * @returns {Array} Returns `array`. + */ +function baseFill(array, value, start, end) { + var length = array.length; + + start = toInteger(start); + if (start < 0) { + start = -start > length ? 0 : (length + start); + } + end = (end === undefined || end > length) ? length : toInteger(end); + if (end < 0) { + end += length; + } + end = start > end ? 0 : toLength(end); + while (start < end) { + array[start++] = value; + } + return array; +} + +module.exports = baseFill; diff --git a/node_modules/lodash/_baseFilter.js b/node_modules/lodash/_baseFilter.js new file mode 100644 index 0000000..4678477 --- /dev/null +++ b/node_modules/lodash/_baseFilter.js @@ -0,0 +1,21 @@ +var baseEach = require('./_baseEach'); + +/** + * The base implementation of `_.filter` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {Array} Returns the new filtered array. + */ +function baseFilter(collection, predicate) { + var result = []; + baseEach(collection, function(value, index, collection) { + if (predicate(value, index, collection)) { + result.push(value); + } + }); + return result; +} + +module.exports = baseFilter; diff --git a/node_modules/lodash/_baseFindIndex.js b/node_modules/lodash/_baseFindIndex.js new file mode 100644 index 0000000..e3f5d8a --- /dev/null +++ b/node_modules/lodash/_baseFindIndex.js @@ -0,0 +1,24 @@ +/** + * The base implementation of `_.findIndex` and `_.findLastIndex` without + * support for iteratee shorthands. + * + * @private + * @param {Array} array The array to inspect. + * @param {Function} predicate The function invoked per iteration. + * @param {number} fromIndex The index to search from. + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {number} Returns the index of the matched value, else `-1`. + */ +function baseFindIndex(array, predicate, fromIndex, fromRight) { + var length = array.length, + index = fromIndex + (fromRight ? 1 : -1); + + while ((fromRight ? index-- : ++index < length)) { + if (predicate(array[index], index, array)) { + return index; + } + } + return -1; +} + +module.exports = baseFindIndex; diff --git a/node_modules/lodash/_baseFindKey.js b/node_modules/lodash/_baseFindKey.js new file mode 100644 index 0000000..2e430f3 --- /dev/null +++ b/node_modules/lodash/_baseFindKey.js @@ -0,0 +1,23 @@ +/** + * The base implementation of methods like `_.findKey` and `_.findLastKey`, + * without support for iteratee shorthands, which iterates over `collection` + * using `eachFunc`. + * + * @private + * @param {Array|Object} collection The collection to inspect. + * @param {Function} predicate The function invoked per iteration. + * @param {Function} eachFunc The function to iterate over `collection`. + * @returns {*} Returns the found element or its key, else `undefined`. + */ +function baseFindKey(collection, predicate, eachFunc) { + var result; + eachFunc(collection, function(value, key, collection) { + if (predicate(value, key, collection)) { + result = key; + return false; + } + }); + return result; +} + +module.exports = baseFindKey; diff --git a/node_modules/lodash/_baseFlatten.js b/node_modules/lodash/_baseFlatten.js new file mode 100644 index 0000000..4b1e009 --- /dev/null +++ b/node_modules/lodash/_baseFlatten.js @@ -0,0 +1,38 @@ +var arrayPush = require('./_arrayPush'), + isFlattenable = require('./_isFlattenable'); + +/** + * The base implementation of `_.flatten` with support for restricting flattening. + * + * @private + * @param {Array} array The array to flatten. + * @param {number} depth The maximum recursion depth. + * @param {boolean} [predicate=isFlattenable] The function invoked per iteration. + * @param {boolean} [isStrict] Restrict to values that pass `predicate` checks. + * @param {Array} [result=[]] The initial result value. + * @returns {Array} Returns the new flattened array. + */ +function baseFlatten(array, depth, predicate, isStrict, result) { + var index = -1, + length = array.length; + + predicate || (predicate = isFlattenable); + result || (result = []); + + while (++index < length) { + var value = array[index]; + if (depth > 0 && predicate(value)) { + if (depth > 1) { + // Recursively flatten arrays (susceptible to call stack limits). + baseFlatten(value, depth - 1, predicate, isStrict, result); + } else { + arrayPush(result, value); + } + } else if (!isStrict) { + result[result.length] = value; + } + } + return result; +} + +module.exports = baseFlatten; diff --git a/node_modules/lodash/_baseFor.js b/node_modules/lodash/_baseFor.js new file mode 100644 index 0000000..d946590 --- /dev/null +++ b/node_modules/lodash/_baseFor.js @@ -0,0 +1,16 @@ +var createBaseFor = require('./_createBaseFor'); + +/** + * The base implementation of `baseForOwn` which iterates over `object` + * properties returned by `keysFunc` and invokes `iteratee` for each property. + * Iteratee functions may exit iteration early by explicitly returning `false`. + * + * @private + * @param {Object} object The object to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @param {Function} keysFunc The function to get the keys of `object`. + * @returns {Object} Returns `object`. + */ +var baseFor = createBaseFor(); + +module.exports = baseFor; diff --git a/node_modules/lodash/_baseForOwn.js b/node_modules/lodash/_baseForOwn.js new file mode 100644 index 0000000..503d523 --- /dev/null +++ b/node_modules/lodash/_baseForOwn.js @@ -0,0 +1,16 @@ +var baseFor = require('./_baseFor'), + keys = require('./keys'); + +/** + * The base implementation of `_.forOwn` without support for iteratee shorthands. + * + * @private + * @param {Object} object The object to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Object} Returns `object`. + */ +function baseForOwn(object, iteratee) { + return object && baseFor(object, iteratee, keys); +} + +module.exports = baseForOwn; diff --git a/node_modules/lodash/_baseForOwnRight.js b/node_modules/lodash/_baseForOwnRight.js new file mode 100644 index 0000000..a4b10e6 --- /dev/null +++ b/node_modules/lodash/_baseForOwnRight.js @@ -0,0 +1,16 @@ +var baseForRight = require('./_baseForRight'), + keys = require('./keys'); + +/** + * The base implementation of `_.forOwnRight` without support for iteratee shorthands. + * + * @private + * @param {Object} object The object to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Object} Returns `object`. + */ +function baseForOwnRight(object, iteratee) { + return object && baseForRight(object, iteratee, keys); +} + +module.exports = baseForOwnRight; diff --git a/node_modules/lodash/_baseForRight.js b/node_modules/lodash/_baseForRight.js new file mode 100644 index 0000000..32842cd --- /dev/null +++ b/node_modules/lodash/_baseForRight.js @@ -0,0 +1,15 @@ +var createBaseFor = require('./_createBaseFor'); + +/** + * This function is like `baseFor` except that it iterates over properties + * in the opposite order. + * + * @private + * @param {Object} object The object to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @param {Function} keysFunc The function to get the keys of `object`. + * @returns {Object} Returns `object`. + */ +var baseForRight = createBaseFor(true); + +module.exports = baseForRight; diff --git a/node_modules/lodash/_baseFunctions.js b/node_modules/lodash/_baseFunctions.js new file mode 100644 index 0000000..d23bc9b --- /dev/null +++ b/node_modules/lodash/_baseFunctions.js @@ -0,0 +1,19 @@ +var arrayFilter = require('./_arrayFilter'), + isFunction = require('./isFunction'); + +/** + * The base implementation of `_.functions` which creates an array of + * `object` function property names filtered from `props`. + * + * @private + * @param {Object} object The object to inspect. + * @param {Array} props The property names to filter. + * @returns {Array} Returns the function names. + */ +function baseFunctions(object, props) { + return arrayFilter(props, function(key) { + return isFunction(object[key]); + }); +} + +module.exports = baseFunctions; diff --git a/node_modules/lodash/_baseGet.js b/node_modules/lodash/_baseGet.js new file mode 100644 index 0000000..a194913 --- /dev/null +++ b/node_modules/lodash/_baseGet.js @@ -0,0 +1,24 @@ +var castPath = require('./_castPath'), + toKey = require('./_toKey'); + +/** + * The base implementation of `_.get` without support for default values. + * + * @private + * @param {Object} object The object to query. + * @param {Array|string} path The path of the property to get. + * @returns {*} Returns the resolved value. + */ +function baseGet(object, path) { + path = castPath(path, object); + + var index = 0, + length = path.length; + + while (object != null && index < length) { + object = object[toKey(path[index++])]; + } + return (index && index == length) ? object : undefined; +} + +module.exports = baseGet; diff --git a/node_modules/lodash/_baseGetAllKeys.js b/node_modules/lodash/_baseGetAllKeys.js new file mode 100644 index 0000000..8ad204e --- /dev/null +++ b/node_modules/lodash/_baseGetAllKeys.js @@ -0,0 +1,20 @@ +var arrayPush = require('./_arrayPush'), + isArray = require('./isArray'); + +/** + * The base implementation of `getAllKeys` and `getAllKeysIn` which uses + * `keysFunc` and `symbolsFunc` to get the enumerable property names and + * symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @param {Function} keysFunc The function to get the keys of `object`. + * @param {Function} symbolsFunc The function to get the symbols of `object`. + * @returns {Array} Returns the array of property names and symbols. + */ +function baseGetAllKeys(object, keysFunc, symbolsFunc) { + var result = keysFunc(object); + return isArray(object) ? result : arrayPush(result, symbolsFunc(object)); +} + +module.exports = baseGetAllKeys; diff --git a/node_modules/lodash/_baseGetTag.js b/node_modules/lodash/_baseGetTag.js new file mode 100644 index 0000000..b927ccc --- /dev/null +++ b/node_modules/lodash/_baseGetTag.js @@ -0,0 +1,28 @@ +var Symbol = require('./_Symbol'), + getRawTag = require('./_getRawTag'), + objectToString = require('./_objectToString'); + +/** `Object#toString` result references. */ +var nullTag = '[object Null]', + undefinedTag = '[object Undefined]'; + +/** Built-in value references. */ +var symToStringTag = Symbol ? Symbol.toStringTag : undefined; + +/** + * The base implementation of `getTag` without fallbacks for buggy environments. + * + * @private + * @param {*} value The value to query. + * @returns {string} Returns the `toStringTag`. + */ +function baseGetTag(value) { + if (value == null) { + return value === undefined ? undefinedTag : nullTag; + } + return (symToStringTag && symToStringTag in Object(value)) + ? getRawTag(value) + : objectToString(value); +} + +module.exports = baseGetTag; diff --git a/node_modules/lodash/_baseGt.js b/node_modules/lodash/_baseGt.js new file mode 100644 index 0000000..502d273 --- /dev/null +++ b/node_modules/lodash/_baseGt.js @@ -0,0 +1,14 @@ +/** + * The base implementation of `_.gt` which doesn't coerce arguments. + * + * @private + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if `value` is greater than `other`, + * else `false`. + */ +function baseGt(value, other) { + return value > other; +} + +module.exports = baseGt; diff --git a/node_modules/lodash/_baseHas.js b/node_modules/lodash/_baseHas.js new file mode 100644 index 0000000..1b73032 --- /dev/null +++ b/node_modules/lodash/_baseHas.js @@ -0,0 +1,19 @@ +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var hasOwnProperty = objectProto.hasOwnProperty; + +/** + * The base implementation of `_.has` without support for deep paths. + * + * @private + * @param {Object} [object] The object to query. + * @param {Array|string} key The key to check. + * @returns {boolean} Returns `true` if `key` exists, else `false`. + */ +function baseHas(object, key) { + return object != null && hasOwnProperty.call(object, key); +} + +module.exports = baseHas; diff --git a/node_modules/lodash/_baseHasIn.js b/node_modules/lodash/_baseHasIn.js new file mode 100644 index 0000000..2e0d042 --- /dev/null +++ b/node_modules/lodash/_baseHasIn.js @@ -0,0 +1,13 @@ +/** + * The base implementation of `_.hasIn` without support for deep paths. + * + * @private + * @param {Object} [object] The object to query. + * @param {Array|string} key The key to check. + * @returns {boolean} Returns `true` if `key` exists, else `false`. + */ +function baseHasIn(object, key) { + return object != null && key in Object(object); +} + +module.exports = baseHasIn; diff --git a/node_modules/lodash/_baseInRange.js b/node_modules/lodash/_baseInRange.js new file mode 100644 index 0000000..ec95666 --- /dev/null +++ b/node_modules/lodash/_baseInRange.js @@ -0,0 +1,18 @@ +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeMax = Math.max, + nativeMin = Math.min; + +/** + * The base implementation of `_.inRange` which doesn't coerce arguments. + * + * @private + * @param {number} number The number to check. + * @param {number} start The start of the range. + * @param {number} end The end of the range. + * @returns {boolean} Returns `true` if `number` is in the range, else `false`. + */ +function baseInRange(number, start, end) { + return number >= nativeMin(start, end) && number < nativeMax(start, end); +} + +module.exports = baseInRange; diff --git a/node_modules/lodash/_baseIndexOf.js b/node_modules/lodash/_baseIndexOf.js new file mode 100644 index 0000000..167e706 --- /dev/null +++ b/node_modules/lodash/_baseIndexOf.js @@ -0,0 +1,20 @@ +var baseFindIndex = require('./_baseFindIndex'), + baseIsNaN = require('./_baseIsNaN'), + strictIndexOf = require('./_strictIndexOf'); + +/** + * The base implementation of `_.indexOf` without `fromIndex` bounds checks. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} fromIndex The index to search from. + * @returns {number} Returns the index of the matched value, else `-1`. + */ +function baseIndexOf(array, value, fromIndex) { + return value === value + ? strictIndexOf(array, value, fromIndex) + : baseFindIndex(array, baseIsNaN, fromIndex); +} + +module.exports = baseIndexOf; diff --git a/node_modules/lodash/_baseIndexOfWith.js b/node_modules/lodash/_baseIndexOfWith.js new file mode 100644 index 0000000..f815fe0 --- /dev/null +++ b/node_modules/lodash/_baseIndexOfWith.js @@ -0,0 +1,23 @@ +/** + * This function is like `baseIndexOf` except that it accepts a comparator. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} fromIndex The index to search from. + * @param {Function} comparator The comparator invoked per element. + * @returns {number} Returns the index of the matched value, else `-1`. + */ +function baseIndexOfWith(array, value, fromIndex, comparator) { + var index = fromIndex - 1, + length = array.length; + + while (++index < length) { + if (comparator(array[index], value)) { + return index; + } + } + return -1; +} + +module.exports = baseIndexOfWith; diff --git a/node_modules/lodash/_baseIntersection.js b/node_modules/lodash/_baseIntersection.js new file mode 100644 index 0000000..c1d250c --- /dev/null +++ b/node_modules/lodash/_baseIntersection.js @@ -0,0 +1,74 @@ +var SetCache = require('./_SetCache'), + arrayIncludes = require('./_arrayIncludes'), + arrayIncludesWith = require('./_arrayIncludesWith'), + arrayMap = require('./_arrayMap'), + baseUnary = require('./_baseUnary'), + cacheHas = require('./_cacheHas'); + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeMin = Math.min; + +/** + * The base implementation of methods like `_.intersection`, without support + * for iteratee shorthands, that accepts an array of arrays to inspect. + * + * @private + * @param {Array} arrays The arrays to inspect. + * @param {Function} [iteratee] The iteratee invoked per element. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new array of shared values. + */ +function baseIntersection(arrays, iteratee, comparator) { + var includes = comparator ? arrayIncludesWith : arrayIncludes, + length = arrays[0].length, + othLength = arrays.length, + othIndex = othLength, + caches = Array(othLength), + maxLength = Infinity, + result = []; + + while (othIndex--) { + var array = arrays[othIndex]; + if (othIndex && iteratee) { + array = arrayMap(array, baseUnary(iteratee)); + } + maxLength = nativeMin(array.length, maxLength); + caches[othIndex] = !comparator && (iteratee || (length >= 120 && array.length >= 120)) + ? new SetCache(othIndex && array) + : undefined; + } + array = arrays[0]; + + var index = -1, + seen = caches[0]; + + outer: + while (++index < length && result.length < maxLength) { + var value = array[index], + computed = iteratee ? iteratee(value) : value; + + value = (comparator || value !== 0) ? value : 0; + if (!(seen + ? cacheHas(seen, computed) + : includes(result, computed, comparator) + )) { + othIndex = othLength; + while (--othIndex) { + var cache = caches[othIndex]; + if (!(cache + ? cacheHas(cache, computed) + : includes(arrays[othIndex], computed, comparator)) + ) { + continue outer; + } + } + if (seen) { + seen.push(computed); + } + result.push(value); + } + } + return result; +} + +module.exports = baseIntersection; diff --git a/node_modules/lodash/_baseInverter.js b/node_modules/lodash/_baseInverter.js new file mode 100644 index 0000000..fbc337f --- /dev/null +++ b/node_modules/lodash/_baseInverter.js @@ -0,0 +1,21 @@ +var baseForOwn = require('./_baseForOwn'); + +/** + * The base implementation of `_.invert` and `_.invertBy` which inverts + * `object` with values transformed by `iteratee` and set by `setter`. + * + * @private + * @param {Object} object The object to iterate over. + * @param {Function} setter The function to set `accumulator` values. + * @param {Function} iteratee The iteratee to transform values. + * @param {Object} accumulator The initial inverted object. + * @returns {Function} Returns `accumulator`. + */ +function baseInverter(object, setter, iteratee, accumulator) { + baseForOwn(object, function(value, key, object) { + setter(accumulator, iteratee(value), key, object); + }); + return accumulator; +} + +module.exports = baseInverter; diff --git a/node_modules/lodash/_baseInvoke.js b/node_modules/lodash/_baseInvoke.js new file mode 100644 index 0000000..49bcf3c --- /dev/null +++ b/node_modules/lodash/_baseInvoke.js @@ -0,0 +1,24 @@ +var apply = require('./_apply'), + castPath = require('./_castPath'), + last = require('./last'), + parent = require('./_parent'), + toKey = require('./_toKey'); + +/** + * The base implementation of `_.invoke` without support for individual + * method arguments. + * + * @private + * @param {Object} object The object to query. + * @param {Array|string} path The path of the method to invoke. + * @param {Array} args The arguments to invoke the method with. + * @returns {*} Returns the result of the invoked method. + */ +function baseInvoke(object, path, args) { + path = castPath(path, object); + object = parent(object, path); + var func = object == null ? object : object[toKey(last(path))]; + return func == null ? undefined : apply(func, object, args); +} + +module.exports = baseInvoke; diff --git a/node_modules/lodash/_baseIsArguments.js b/node_modules/lodash/_baseIsArguments.js new file mode 100644 index 0000000..b3562cc --- /dev/null +++ b/node_modules/lodash/_baseIsArguments.js @@ -0,0 +1,18 @@ +var baseGetTag = require('./_baseGetTag'), + isObjectLike = require('./isObjectLike'); + +/** `Object#toString` result references. */ +var argsTag = '[object Arguments]'; + +/** + * The base implementation of `_.isArguments`. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an `arguments` object, + */ +function baseIsArguments(value) { + return isObjectLike(value) && baseGetTag(value) == argsTag; +} + +module.exports = baseIsArguments; diff --git a/node_modules/lodash/_baseIsArrayBuffer.js b/node_modules/lodash/_baseIsArrayBuffer.js new file mode 100644 index 0000000..a2c4f30 --- /dev/null +++ b/node_modules/lodash/_baseIsArrayBuffer.js @@ -0,0 +1,17 @@ +var baseGetTag = require('./_baseGetTag'), + isObjectLike = require('./isObjectLike'); + +var arrayBufferTag = '[object ArrayBuffer]'; + +/** + * The base implementation of `_.isArrayBuffer` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an array buffer, else `false`. + */ +function baseIsArrayBuffer(value) { + return isObjectLike(value) && baseGetTag(value) == arrayBufferTag; +} + +module.exports = baseIsArrayBuffer; diff --git a/node_modules/lodash/_baseIsDate.js b/node_modules/lodash/_baseIsDate.js new file mode 100644 index 0000000..ba67c78 --- /dev/null +++ b/node_modules/lodash/_baseIsDate.js @@ -0,0 +1,18 @@ +var baseGetTag = require('./_baseGetTag'), + isObjectLike = require('./isObjectLike'); + +/** `Object#toString` result references. */ +var dateTag = '[object Date]'; + +/** + * The base implementation of `_.isDate` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a date object, else `false`. + */ +function baseIsDate(value) { + return isObjectLike(value) && baseGetTag(value) == dateTag; +} + +module.exports = baseIsDate; diff --git a/node_modules/lodash/_baseIsEqual.js b/node_modules/lodash/_baseIsEqual.js new file mode 100644 index 0000000..00a68a4 --- /dev/null +++ b/node_modules/lodash/_baseIsEqual.js @@ -0,0 +1,28 @@ +var baseIsEqualDeep = require('./_baseIsEqualDeep'), + isObjectLike = require('./isObjectLike'); + +/** + * The base implementation of `_.isEqual` which supports partial comparisons + * and tracks traversed objects. + * + * @private + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @param {boolean} bitmask The bitmask flags. + * 1 - Unordered comparison + * 2 - Partial comparison + * @param {Function} [customizer] The function to customize comparisons. + * @param {Object} [stack] Tracks traversed `value` and `other` objects. + * @returns {boolean} Returns `true` if the values are equivalent, else `false`. + */ +function baseIsEqual(value, other, bitmask, customizer, stack) { + if (value === other) { + return true; + } + if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) { + return value !== value && other !== other; + } + return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack); +} + +module.exports = baseIsEqual; diff --git a/node_modules/lodash/_baseIsEqualDeep.js b/node_modules/lodash/_baseIsEqualDeep.js new file mode 100644 index 0000000..e3cfd6a --- /dev/null +++ b/node_modules/lodash/_baseIsEqualDeep.js @@ -0,0 +1,83 @@ +var Stack = require('./_Stack'), + equalArrays = require('./_equalArrays'), + equalByTag = require('./_equalByTag'), + equalObjects = require('./_equalObjects'), + getTag = require('./_getTag'), + isArray = require('./isArray'), + isBuffer = require('./isBuffer'), + isTypedArray = require('./isTypedArray'); + +/** Used to compose bitmasks for value comparisons. */ +var COMPARE_PARTIAL_FLAG = 1; + +/** `Object#toString` result references. */ +var argsTag = '[object Arguments]', + arrayTag = '[object Array]', + objectTag = '[object Object]'; + +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var hasOwnProperty = objectProto.hasOwnProperty; + +/** + * A specialized version of `baseIsEqual` for arrays and objects which performs + * deep comparisons and tracks traversed objects enabling objects with circular + * references to be compared. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} [stack] Tracks traversed `object` and `other` objects. + * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. + */ +function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) { + var objIsArr = isArray(object), + othIsArr = isArray(other), + objTag = objIsArr ? arrayTag : getTag(object), + othTag = othIsArr ? arrayTag : getTag(other); + + objTag = objTag == argsTag ? objectTag : objTag; + othTag = othTag == argsTag ? objectTag : othTag; + + var objIsObj = objTag == objectTag, + othIsObj = othTag == objectTag, + isSameTag = objTag == othTag; + + if (isSameTag && isBuffer(object)) { + if (!isBuffer(other)) { + return false; + } + objIsArr = true; + objIsObj = false; + } + if (isSameTag && !objIsObj) { + stack || (stack = new Stack); + return (objIsArr || isTypedArray(object)) + ? equalArrays(object, other, bitmask, customizer, equalFunc, stack) + : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack); + } + if (!(bitmask & COMPARE_PARTIAL_FLAG)) { + var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'), + othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__'); + + if (objIsWrapped || othIsWrapped) { + var objUnwrapped = objIsWrapped ? object.value() : object, + othUnwrapped = othIsWrapped ? other.value() : other; + + stack || (stack = new Stack); + return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack); + } + } + if (!isSameTag) { + return false; + } + stack || (stack = new Stack); + return equalObjects(object, other, bitmask, customizer, equalFunc, stack); +} + +module.exports = baseIsEqualDeep; diff --git a/node_modules/lodash/_baseIsMap.js b/node_modules/lodash/_baseIsMap.js new file mode 100644 index 0000000..02a4021 --- /dev/null +++ b/node_modules/lodash/_baseIsMap.js @@ -0,0 +1,18 @@ +var getTag = require('./_getTag'), + isObjectLike = require('./isObjectLike'); + +/** `Object#toString` result references. */ +var mapTag = '[object Map]'; + +/** + * The base implementation of `_.isMap` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a map, else `false`. + */ +function baseIsMap(value) { + return isObjectLike(value) && getTag(value) == mapTag; +} + +module.exports = baseIsMap; diff --git a/node_modules/lodash/_baseIsMatch.js b/node_modules/lodash/_baseIsMatch.js new file mode 100644 index 0000000..72494be --- /dev/null +++ b/node_modules/lodash/_baseIsMatch.js @@ -0,0 +1,62 @@ +var Stack = require('./_Stack'), + baseIsEqual = require('./_baseIsEqual'); + +/** Used to compose bitmasks for value comparisons. */ +var COMPARE_PARTIAL_FLAG = 1, + COMPARE_UNORDERED_FLAG = 2; + +/** + * The base implementation of `_.isMatch` without support for iteratee shorthands. + * + * @private + * @param {Object} object The object to inspect. + * @param {Object} source The object of property values to match. + * @param {Array} matchData The property names, values, and compare flags to match. + * @param {Function} [customizer] The function to customize comparisons. + * @returns {boolean} Returns `true` if `object` is a match, else `false`. + */ +function baseIsMatch(object, source, matchData, customizer) { + var index = matchData.length, + length = index, + noCustomizer = !customizer; + + if (object == null) { + return !length; + } + object = Object(object); + while (index--) { + var data = matchData[index]; + if ((noCustomizer && data[2]) + ? data[1] !== object[data[0]] + : !(data[0] in object) + ) { + return false; + } + } + while (++index < length) { + data = matchData[index]; + var key = data[0], + objValue = object[key], + srcValue = data[1]; + + if (noCustomizer && data[2]) { + if (objValue === undefined && !(key in object)) { + return false; + } + } else { + var stack = new Stack; + if (customizer) { + var result = customizer(objValue, srcValue, key, object, source, stack); + } + if (!(result === undefined + ? baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG, customizer, stack) + : result + )) { + return false; + } + } + } + return true; +} + +module.exports = baseIsMatch; diff --git a/node_modules/lodash/_baseIsNaN.js b/node_modules/lodash/_baseIsNaN.js new file mode 100644 index 0000000..316f1eb --- /dev/null +++ b/node_modules/lodash/_baseIsNaN.js @@ -0,0 +1,12 @@ +/** + * The base implementation of `_.isNaN` without support for number objects. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`. + */ +function baseIsNaN(value) { + return value !== value; +} + +module.exports = baseIsNaN; diff --git a/node_modules/lodash/_baseIsNative.js b/node_modules/lodash/_baseIsNative.js new file mode 100644 index 0000000..8702330 --- /dev/null +++ b/node_modules/lodash/_baseIsNative.js @@ -0,0 +1,47 @@ +var isFunction = require('./isFunction'), + isMasked = require('./_isMasked'), + isObject = require('./isObject'), + toSource = require('./_toSource'); + +/** + * Used to match `RegExp` + * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns). + */ +var reRegExpChar = /[\\^$.*+?()[\]{}|]/g; + +/** Used to detect host constructors (Safari). */ +var reIsHostCtor = /^\[object .+?Constructor\]$/; + +/** Used for built-in method references. */ +var funcProto = Function.prototype, + objectProto = Object.prototype; + +/** Used to resolve the decompiled source of functions. */ +var funcToString = funcProto.toString; + +/** Used to check objects for own properties. */ +var hasOwnProperty = objectProto.hasOwnProperty; + +/** Used to detect if a method is native. */ +var reIsNative = RegExp('^' + + funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\$&') + .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$' +); + +/** + * The base implementation of `_.isNative` without bad shim checks. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a native function, + * else `false`. + */ +function baseIsNative(value) { + if (!isObject(value) || isMasked(value)) { + return false; + } + var pattern = isFunction(value) ? reIsNative : reIsHostCtor; + return pattern.test(toSource(value)); +} + +module.exports = baseIsNative; diff --git a/node_modules/lodash/_baseIsRegExp.js b/node_modules/lodash/_baseIsRegExp.js new file mode 100644 index 0000000..6cd7c1a --- /dev/null +++ b/node_modules/lodash/_baseIsRegExp.js @@ -0,0 +1,18 @@ +var baseGetTag = require('./_baseGetTag'), + isObjectLike = require('./isObjectLike'); + +/** `Object#toString` result references. */ +var regexpTag = '[object RegExp]'; + +/** + * The base implementation of `_.isRegExp` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a regexp, else `false`. + */ +function baseIsRegExp(value) { + return isObjectLike(value) && baseGetTag(value) == regexpTag; +} + +module.exports = baseIsRegExp; diff --git a/node_modules/lodash/_baseIsSet.js b/node_modules/lodash/_baseIsSet.js new file mode 100644 index 0000000..6dee367 --- /dev/null +++ b/node_modules/lodash/_baseIsSet.js @@ -0,0 +1,18 @@ +var getTag = require('./_getTag'), + isObjectLike = require('./isObjectLike'); + +/** `Object#toString` result references. */ +var setTag = '[object Set]'; + +/** + * The base implementation of `_.isSet` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a set, else `false`. + */ +function baseIsSet(value) { + return isObjectLike(value) && getTag(value) == setTag; +} + +module.exports = baseIsSet; diff --git a/node_modules/lodash/_baseIsTypedArray.js b/node_modules/lodash/_baseIsTypedArray.js new file mode 100644 index 0000000..1edb32f --- /dev/null +++ b/node_modules/lodash/_baseIsTypedArray.js @@ -0,0 +1,60 @@ +var baseGetTag = require('./_baseGetTag'), + isLength = require('./isLength'), + isObjectLike = require('./isObjectLike'); + +/** `Object#toString` result references. */ +var argsTag = '[object Arguments]', + arrayTag = '[object Array]', + boolTag = '[object Boolean]', + dateTag = '[object Date]', + errorTag = '[object Error]', + funcTag = '[object Function]', + mapTag = '[object Map]', + numberTag = '[object Number]', + objectTag = '[object Object]', + regexpTag = '[object RegExp]', + setTag = '[object Set]', + stringTag = '[object String]', + weakMapTag = '[object WeakMap]'; + +var arrayBufferTag = '[object ArrayBuffer]', + dataViewTag = '[object DataView]', + float32Tag = '[object Float32Array]', + float64Tag = '[object Float64Array]', + int8Tag = '[object Int8Array]', + int16Tag = '[object Int16Array]', + int32Tag = '[object Int32Array]', + uint8Tag = '[object Uint8Array]', + uint8ClampedTag = '[object Uint8ClampedArray]', + uint16Tag = '[object Uint16Array]', + uint32Tag = '[object Uint32Array]'; + +/** Used to identify `toStringTag` values of typed arrays. */ +var typedArrayTags = {}; +typedArrayTags[float32Tag] = typedArrayTags[float64Tag] = +typedArrayTags[int8Tag] = typedArrayTags[int16Tag] = +typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] = +typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] = +typedArrayTags[uint32Tag] = true; +typedArrayTags[argsTag] = typedArrayTags[arrayTag] = +typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] = +typedArrayTags[dataViewTag] = typedArrayTags[dateTag] = +typedArrayTags[errorTag] = typedArrayTags[funcTag] = +typedArrayTags[mapTag] = typedArrayTags[numberTag] = +typedArrayTags[objectTag] = typedArrayTags[regexpTag] = +typedArrayTags[setTag] = typedArrayTags[stringTag] = +typedArrayTags[weakMapTag] = false; + +/** + * The base implementation of `_.isTypedArray` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a typed array, else `false`. + */ +function baseIsTypedArray(value) { + return isObjectLike(value) && + isLength(value.length) && !!typedArrayTags[baseGetTag(value)]; +} + +module.exports = baseIsTypedArray; diff --git a/node_modules/lodash/_baseIteratee.js b/node_modules/lodash/_baseIteratee.js new file mode 100644 index 0000000..995c257 --- /dev/null +++ b/node_modules/lodash/_baseIteratee.js @@ -0,0 +1,31 @@ +var baseMatches = require('./_baseMatches'), + baseMatchesProperty = require('./_baseMatchesProperty'), + identity = require('./identity'), + isArray = require('./isArray'), + property = require('./property'); + +/** + * The base implementation of `_.iteratee`. + * + * @private + * @param {*} [value=_.identity] The value to convert to an iteratee. + * @returns {Function} Returns the iteratee. + */ +function baseIteratee(value) { + // Don't store the `typeof` result in a variable to avoid a JIT bug in Safari 9. + // See https://bugs.webkit.org/show_bug.cgi?id=156034 for more details. + if (typeof value == 'function') { + return value; + } + if (value == null) { + return identity; + } + if (typeof value == 'object') { + return isArray(value) + ? baseMatchesProperty(value[0], value[1]) + : baseMatches(value); + } + return property(value); +} + +module.exports = baseIteratee; diff --git a/node_modules/lodash/_baseKeys.js b/node_modules/lodash/_baseKeys.js new file mode 100644 index 0000000..45e9e6f --- /dev/null +++ b/node_modules/lodash/_baseKeys.js @@ -0,0 +1,30 @@ +var isPrototype = require('./_isPrototype'), + nativeKeys = require('./_nativeKeys'); + +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var hasOwnProperty = objectProto.hasOwnProperty; + +/** + * The base implementation of `_.keys` which doesn't treat sparse arrays as dense. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names. + */ +function baseKeys(object) { + if (!isPrototype(object)) { + return nativeKeys(object); + } + var result = []; + for (var key in Object(object)) { + if (hasOwnProperty.call(object, key) && key != 'constructor') { + result.push(key); + } + } + return result; +} + +module.exports = baseKeys; diff --git a/node_modules/lodash/_baseKeysIn.js b/node_modules/lodash/_baseKeysIn.js new file mode 100644 index 0000000..ea8a0a1 --- /dev/null +++ b/node_modules/lodash/_baseKeysIn.js @@ -0,0 +1,33 @@ +var isObject = require('./isObject'), + isPrototype = require('./_isPrototype'), + nativeKeysIn = require('./_nativeKeysIn'); + +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var hasOwnProperty = objectProto.hasOwnProperty; + +/** + * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names. + */ +function baseKeysIn(object) { + if (!isObject(object)) { + return nativeKeysIn(object); + } + var isProto = isPrototype(object), + result = []; + + for (var key in object) { + if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) { + result.push(key); + } + } + return result; +} + +module.exports = baseKeysIn; diff --git a/node_modules/lodash/_baseLodash.js b/node_modules/lodash/_baseLodash.js new file mode 100644 index 0000000..f76c790 --- /dev/null +++ b/node_modules/lodash/_baseLodash.js @@ -0,0 +1,10 @@ +/** + * The function whose prototype chain sequence wrappers inherit from. + * + * @private + */ +function baseLodash() { + // No operation performed. +} + +module.exports = baseLodash; diff --git a/node_modules/lodash/_baseLt.js b/node_modules/lodash/_baseLt.js new file mode 100644 index 0000000..8674d29 --- /dev/null +++ b/node_modules/lodash/_baseLt.js @@ -0,0 +1,14 @@ +/** + * The base implementation of `_.lt` which doesn't coerce arguments. + * + * @private + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if `value` is less than `other`, + * else `false`. + */ +function baseLt(value, other) { + return value < other; +} + +module.exports = baseLt; diff --git a/node_modules/lodash/_baseMap.js b/node_modules/lodash/_baseMap.js new file mode 100644 index 0000000..0bf5cea --- /dev/null +++ b/node_modules/lodash/_baseMap.js @@ -0,0 +1,22 @@ +var baseEach = require('./_baseEach'), + isArrayLike = require('./isArrayLike'); + +/** + * The base implementation of `_.map` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns the new mapped array. + */ +function baseMap(collection, iteratee) { + var index = -1, + result = isArrayLike(collection) ? Array(collection.length) : []; + + baseEach(collection, function(value, key, collection) { + result[++index] = iteratee(value, key, collection); + }); + return result; +} + +module.exports = baseMap; diff --git a/node_modules/lodash/_baseMatches.js b/node_modules/lodash/_baseMatches.js new file mode 100644 index 0000000..e56582a --- /dev/null +++ b/node_modules/lodash/_baseMatches.js @@ -0,0 +1,22 @@ +var baseIsMatch = require('./_baseIsMatch'), + getMatchData = require('./_getMatchData'), + matchesStrictComparable = require('./_matchesStrictComparable'); + +/** + * The base implementation of `_.matches` which doesn't clone `source`. + * + * @private + * @param {Object} source The object of property values to match. + * @returns {Function} Returns the new spec function. + */ +function baseMatches(source) { + var matchData = getMatchData(source); + if (matchData.length == 1 && matchData[0][2]) { + return matchesStrictComparable(matchData[0][0], matchData[0][1]); + } + return function(object) { + return object === source || baseIsMatch(object, source, matchData); + }; +} + +module.exports = baseMatches; diff --git a/node_modules/lodash/_baseMatchesProperty.js b/node_modules/lodash/_baseMatchesProperty.js new file mode 100644 index 0000000..24afd89 --- /dev/null +++ b/node_modules/lodash/_baseMatchesProperty.js @@ -0,0 +1,33 @@ +var baseIsEqual = require('./_baseIsEqual'), + get = require('./get'), + hasIn = require('./hasIn'), + isKey = require('./_isKey'), + isStrictComparable = require('./_isStrictComparable'), + matchesStrictComparable = require('./_matchesStrictComparable'), + toKey = require('./_toKey'); + +/** Used to compose bitmasks for value comparisons. */ +var COMPARE_PARTIAL_FLAG = 1, + COMPARE_UNORDERED_FLAG = 2; + +/** + * The base implementation of `_.matchesProperty` which doesn't clone `srcValue`. + * + * @private + * @param {string} path The path of the property to get. + * @param {*} srcValue The value to match. + * @returns {Function} Returns the new spec function. + */ +function baseMatchesProperty(path, srcValue) { + if (isKey(path) && isStrictComparable(srcValue)) { + return matchesStrictComparable(toKey(path), srcValue); + } + return function(object) { + var objValue = get(object, path); + return (objValue === undefined && objValue === srcValue) + ? hasIn(object, path) + : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG); + }; +} + +module.exports = baseMatchesProperty; diff --git a/node_modules/lodash/_baseMean.js b/node_modules/lodash/_baseMean.js new file mode 100644 index 0000000..fa9e00a --- /dev/null +++ b/node_modules/lodash/_baseMean.js @@ -0,0 +1,20 @@ +var baseSum = require('./_baseSum'); + +/** Used as references for various `Number` constants. */ +var NAN = 0 / 0; + +/** + * The base implementation of `_.mean` and `_.meanBy` without support for + * iteratee shorthands. + * + * @private + * @param {Array} array The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {number} Returns the mean. + */ +function baseMean(array, iteratee) { + var length = array == null ? 0 : array.length; + return length ? (baseSum(array, iteratee) / length) : NAN; +} + +module.exports = baseMean; diff --git a/node_modules/lodash/_baseMerge.js b/node_modules/lodash/_baseMerge.js new file mode 100644 index 0000000..c98b5eb --- /dev/null +++ b/node_modules/lodash/_baseMerge.js @@ -0,0 +1,42 @@ +var Stack = require('./_Stack'), + assignMergeValue = require('./_assignMergeValue'), + baseFor = require('./_baseFor'), + baseMergeDeep = require('./_baseMergeDeep'), + isObject = require('./isObject'), + keysIn = require('./keysIn'), + safeGet = require('./_safeGet'); + +/** + * The base implementation of `_.merge` without support for multiple sources. + * + * @private + * @param {Object} object The destination object. + * @param {Object} source The source object. + * @param {number} srcIndex The index of `source`. + * @param {Function} [customizer] The function to customize merged values. + * @param {Object} [stack] Tracks traversed source values and their merged + * counterparts. + */ +function baseMerge(object, source, srcIndex, customizer, stack) { + if (object === source) { + return; + } + baseFor(source, function(srcValue, key) { + stack || (stack = new Stack); + if (isObject(srcValue)) { + baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack); + } + else { + var newValue = customizer + ? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack) + : undefined; + + if (newValue === undefined) { + newValue = srcValue; + } + assignMergeValue(object, key, newValue); + } + }, keysIn); +} + +module.exports = baseMerge; diff --git a/node_modules/lodash/_baseMergeDeep.js b/node_modules/lodash/_baseMergeDeep.js new file mode 100644 index 0000000..4679e8d --- /dev/null +++ b/node_modules/lodash/_baseMergeDeep.js @@ -0,0 +1,94 @@ +var assignMergeValue = require('./_assignMergeValue'), + cloneBuffer = require('./_cloneBuffer'), + cloneTypedArray = require('./_cloneTypedArray'), + copyArray = require('./_copyArray'), + initCloneObject = require('./_initCloneObject'), + isArguments = require('./isArguments'), + isArray = require('./isArray'), + isArrayLikeObject = require('./isArrayLikeObject'), + isBuffer = require('./isBuffer'), + isFunction = require('./isFunction'), + isObject = require('./isObject'), + isPlainObject = require('./isPlainObject'), + isTypedArray = require('./isTypedArray'), + safeGet = require('./_safeGet'), + toPlainObject = require('./toPlainObject'); + +/** + * A specialized version of `baseMerge` for arrays and objects which performs + * deep merges and tracks traversed objects enabling objects with circular + * references to be merged. + * + * @private + * @param {Object} object The destination object. + * @param {Object} source The source object. + * @param {string} key The key of the value to merge. + * @param {number} srcIndex The index of `source`. + * @param {Function} mergeFunc The function to merge values. + * @param {Function} [customizer] The function to customize assigned values. + * @param {Object} [stack] Tracks traversed source values and their merged + * counterparts. + */ +function baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) { + var objValue = safeGet(object, key), + srcValue = safeGet(source, key), + stacked = stack.get(srcValue); + + if (stacked) { + assignMergeValue(object, key, stacked); + return; + } + var newValue = customizer + ? customizer(objValue, srcValue, (key + ''), object, source, stack) + : undefined; + + var isCommon = newValue === undefined; + + if (isCommon) { + var isArr = isArray(srcValue), + isBuff = !isArr && isBuffer(srcValue), + isTyped = !isArr && !isBuff && isTypedArray(srcValue); + + newValue = srcValue; + if (isArr || isBuff || isTyped) { + if (isArray(objValue)) { + newValue = objValue; + } + else if (isArrayLikeObject(objValue)) { + newValue = copyArray(objValue); + } + else if (isBuff) { + isCommon = false; + newValue = cloneBuffer(srcValue, true); + } + else if (isTyped) { + isCommon = false; + newValue = cloneTypedArray(srcValue, true); + } + else { + newValue = []; + } + } + else if (isPlainObject(srcValue) || isArguments(srcValue)) { + newValue = objValue; + if (isArguments(objValue)) { + newValue = toPlainObject(objValue); + } + else if (!isObject(objValue) || isFunction(objValue)) { + newValue = initCloneObject(srcValue); + } + } + else { + isCommon = false; + } + } + if (isCommon) { + // Recursively merge objects and arrays (susceptible to call stack limits). + stack.set(srcValue, newValue); + mergeFunc(newValue, srcValue, srcIndex, customizer, stack); + stack['delete'](srcValue); + } + assignMergeValue(object, key, newValue); +} + +module.exports = baseMergeDeep; diff --git a/node_modules/lodash/_baseNth.js b/node_modules/lodash/_baseNth.js new file mode 100644 index 0000000..0403c2a --- /dev/null +++ b/node_modules/lodash/_baseNth.js @@ -0,0 +1,20 @@ +var isIndex = require('./_isIndex'); + +/** + * The base implementation of `_.nth` which doesn't coerce arguments. + * + * @private + * @param {Array} array The array to query. + * @param {number} n The index of the element to return. + * @returns {*} Returns the nth element of `array`. + */ +function baseNth(array, n) { + var length = array.length; + if (!length) { + return; + } + n += n < 0 ? length : 0; + return isIndex(n, length) ? array[n] : undefined; +} + +module.exports = baseNth; diff --git a/node_modules/lodash/_baseOrderBy.js b/node_modules/lodash/_baseOrderBy.js new file mode 100644 index 0000000..775a017 --- /dev/null +++ b/node_modules/lodash/_baseOrderBy.js @@ -0,0 +1,49 @@ +var arrayMap = require('./_arrayMap'), + baseGet = require('./_baseGet'), + baseIteratee = require('./_baseIteratee'), + baseMap = require('./_baseMap'), + baseSortBy = require('./_baseSortBy'), + baseUnary = require('./_baseUnary'), + compareMultiple = require('./_compareMultiple'), + identity = require('./identity'), + isArray = require('./isArray'); + +/** + * The base implementation of `_.orderBy` without param guards. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function[]|Object[]|string[]} iteratees The iteratees to sort by. + * @param {string[]} orders The sort orders of `iteratees`. + * @returns {Array} Returns the new sorted array. + */ +function baseOrderBy(collection, iteratees, orders) { + if (iteratees.length) { + iteratees = arrayMap(iteratees, function(iteratee) { + if (isArray(iteratee)) { + return function(value) { + return baseGet(value, iteratee.length === 1 ? iteratee[0] : iteratee); + } + } + return iteratee; + }); + } else { + iteratees = [identity]; + } + + var index = -1; + iteratees = arrayMap(iteratees, baseUnary(baseIteratee)); + + var result = baseMap(collection, function(value, key, collection) { + var criteria = arrayMap(iteratees, function(iteratee) { + return iteratee(value); + }); + return { 'criteria': criteria, 'index': ++index, 'value': value }; + }); + + return baseSortBy(result, function(object, other) { + return compareMultiple(object, other, orders); + }); +} + +module.exports = baseOrderBy; diff --git a/node_modules/lodash/_basePick.js b/node_modules/lodash/_basePick.js new file mode 100644 index 0000000..09b458a --- /dev/null +++ b/node_modules/lodash/_basePick.js @@ -0,0 +1,19 @@ +var basePickBy = require('./_basePickBy'), + hasIn = require('./hasIn'); + +/** + * The base implementation of `_.pick` without support for individual + * property identifiers. + * + * @private + * @param {Object} object The source object. + * @param {string[]} paths The property paths to pick. + * @returns {Object} Returns the new object. + */ +function basePick(object, paths) { + return basePickBy(object, paths, function(value, path) { + return hasIn(object, path); + }); +} + +module.exports = basePick; diff --git a/node_modules/lodash/_basePickBy.js b/node_modules/lodash/_basePickBy.js new file mode 100644 index 0000000..85be68c --- /dev/null +++ b/node_modules/lodash/_basePickBy.js @@ -0,0 +1,30 @@ +var baseGet = require('./_baseGet'), + baseSet = require('./_baseSet'), + castPath = require('./_castPath'); + +/** + * The base implementation of `_.pickBy` without support for iteratee shorthands. + * + * @private + * @param {Object} object The source object. + * @param {string[]} paths The property paths to pick. + * @param {Function} predicate The function invoked per property. + * @returns {Object} Returns the new object. + */ +function basePickBy(object, paths, predicate) { + var index = -1, + length = paths.length, + result = {}; + + while (++index < length) { + var path = paths[index], + value = baseGet(object, path); + + if (predicate(value, path)) { + baseSet(result, castPath(path, object), value); + } + } + return result; +} + +module.exports = basePickBy; diff --git a/node_modules/lodash/_baseProperty.js b/node_modules/lodash/_baseProperty.js new file mode 100644 index 0000000..496281e --- /dev/null +++ b/node_modules/lodash/_baseProperty.js @@ -0,0 +1,14 @@ +/** + * The base implementation of `_.property` without support for deep paths. + * + * @private + * @param {string} key The key of the property to get. + * @returns {Function} Returns the new accessor function. + */ +function baseProperty(key) { + return function(object) { + return object == null ? undefined : object[key]; + }; +} + +module.exports = baseProperty; diff --git a/node_modules/lodash/_basePropertyDeep.js b/node_modules/lodash/_basePropertyDeep.js new file mode 100644 index 0000000..1e5aae5 --- /dev/null +++ b/node_modules/lodash/_basePropertyDeep.js @@ -0,0 +1,16 @@ +var baseGet = require('./_baseGet'); + +/** + * A specialized version of `baseProperty` which supports deep paths. + * + * @private + * @param {Array|string} path The path of the property to get. + * @returns {Function} Returns the new accessor function. + */ +function basePropertyDeep(path) { + return function(object) { + return baseGet(object, path); + }; +} + +module.exports = basePropertyDeep; diff --git a/node_modules/lodash/_basePropertyOf.js b/node_modules/lodash/_basePropertyOf.js new file mode 100644 index 0000000..4617399 --- /dev/null +++ b/node_modules/lodash/_basePropertyOf.js @@ -0,0 +1,14 @@ +/** + * The base implementation of `_.propertyOf` without support for deep paths. + * + * @private + * @param {Object} object The object to query. + * @returns {Function} Returns the new accessor function. + */ +function basePropertyOf(object) { + return function(key) { + return object == null ? undefined : object[key]; + }; +} + +module.exports = basePropertyOf; diff --git a/node_modules/lodash/_basePullAll.js b/node_modules/lodash/_basePullAll.js new file mode 100644 index 0000000..305720e --- /dev/null +++ b/node_modules/lodash/_basePullAll.js @@ -0,0 +1,51 @@ +var arrayMap = require('./_arrayMap'), + baseIndexOf = require('./_baseIndexOf'), + baseIndexOfWith = require('./_baseIndexOfWith'), + baseUnary = require('./_baseUnary'), + copyArray = require('./_copyArray'); + +/** Used for built-in method references. */ +var arrayProto = Array.prototype; + +/** Built-in value references. */ +var splice = arrayProto.splice; + +/** + * The base implementation of `_.pullAllBy` without support for iteratee + * shorthands. + * + * @private + * @param {Array} array The array to modify. + * @param {Array} values The values to remove. + * @param {Function} [iteratee] The iteratee invoked per element. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns `array`. + */ +function basePullAll(array, values, iteratee, comparator) { + var indexOf = comparator ? baseIndexOfWith : baseIndexOf, + index = -1, + length = values.length, + seen = array; + + if (array === values) { + values = copyArray(values); + } + if (iteratee) { + seen = arrayMap(array, baseUnary(iteratee)); + } + while (++index < length) { + var fromIndex = 0, + value = values[index], + computed = iteratee ? iteratee(value) : value; + + while ((fromIndex = indexOf(seen, computed, fromIndex, comparator)) > -1) { + if (seen !== array) { + splice.call(seen, fromIndex, 1); + } + splice.call(array, fromIndex, 1); + } + } + return array; +} + +module.exports = basePullAll; diff --git a/node_modules/lodash/_basePullAt.js b/node_modules/lodash/_basePullAt.js new file mode 100644 index 0000000..c3e9e71 --- /dev/null +++ b/node_modules/lodash/_basePullAt.js @@ -0,0 +1,37 @@ +var baseUnset = require('./_baseUnset'), + isIndex = require('./_isIndex'); + +/** Used for built-in method references. */ +var arrayProto = Array.prototype; + +/** Built-in value references. */ +var splice = arrayProto.splice; + +/** + * The base implementation of `_.pullAt` without support for individual + * indexes or capturing the removed elements. + * + * @private + * @param {Array} array The array to modify. + * @param {number[]} indexes The indexes of elements to remove. + * @returns {Array} Returns `array`. + */ +function basePullAt(array, indexes) { + var length = array ? indexes.length : 0, + lastIndex = length - 1; + + while (length--) { + var index = indexes[length]; + if (length == lastIndex || index !== previous) { + var previous = index; + if (isIndex(index)) { + splice.call(array, index, 1); + } else { + baseUnset(array, index); + } + } + } + return array; +} + +module.exports = basePullAt; diff --git a/node_modules/lodash/_baseRandom.js b/node_modules/lodash/_baseRandom.js new file mode 100644 index 0000000..94f76a7 --- /dev/null +++ b/node_modules/lodash/_baseRandom.js @@ -0,0 +1,18 @@ +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeFloor = Math.floor, + nativeRandom = Math.random; + +/** + * The base implementation of `_.random` without support for returning + * floating-point numbers. + * + * @private + * @param {number} lower The lower bound. + * @param {number} upper The upper bound. + * @returns {number} Returns the random number. + */ +function baseRandom(lower, upper) { + return lower + nativeFloor(nativeRandom() * (upper - lower + 1)); +} + +module.exports = baseRandom; diff --git a/node_modules/lodash/_baseRange.js b/node_modules/lodash/_baseRange.js new file mode 100644 index 0000000..0fb8e41 --- /dev/null +++ b/node_modules/lodash/_baseRange.js @@ -0,0 +1,28 @@ +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeCeil = Math.ceil, + nativeMax = Math.max; + +/** + * The base implementation of `_.range` and `_.rangeRight` which doesn't + * coerce arguments. + * + * @private + * @param {number} start The start of the range. + * @param {number} end The end of the range. + * @param {number} step The value to increment or decrement by. + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Array} Returns the range of numbers. + */ +function baseRange(start, end, step, fromRight) { + var index = -1, + length = nativeMax(nativeCeil((end - start) / (step || 1)), 0), + result = Array(length); + + while (length--) { + result[fromRight ? length : ++index] = start; + start += step; + } + return result; +} + +module.exports = baseRange; diff --git a/node_modules/lodash/_baseReduce.js b/node_modules/lodash/_baseReduce.js new file mode 100644 index 0000000..5a1f8b5 --- /dev/null +++ b/node_modules/lodash/_baseReduce.js @@ -0,0 +1,23 @@ +/** + * The base implementation of `_.reduce` and `_.reduceRight`, without support + * for iteratee shorthands, which iterates over `collection` using `eachFunc`. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @param {*} accumulator The initial value. + * @param {boolean} initAccum Specify using the first or last element of + * `collection` as the initial value. + * @param {Function} eachFunc The function to iterate over `collection`. + * @returns {*} Returns the accumulated value. + */ +function baseReduce(collection, iteratee, accumulator, initAccum, eachFunc) { + eachFunc(collection, function(value, index, collection) { + accumulator = initAccum + ? (initAccum = false, value) + : iteratee(accumulator, value, index, collection); + }); + return accumulator; +} + +module.exports = baseReduce; diff --git a/node_modules/lodash/_baseRepeat.js b/node_modules/lodash/_baseRepeat.js new file mode 100644 index 0000000..ee44c31 --- /dev/null +++ b/node_modules/lodash/_baseRepeat.js @@ -0,0 +1,35 @@ +/** Used as references for various `Number` constants. */ +var MAX_SAFE_INTEGER = 9007199254740991; + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeFloor = Math.floor; + +/** + * The base implementation of `_.repeat` which doesn't coerce arguments. + * + * @private + * @param {string} string The string to repeat. + * @param {number} n The number of times to repeat the string. + * @returns {string} Returns the repeated string. + */ +function baseRepeat(string, n) { + var result = ''; + if (!string || n < 1 || n > MAX_SAFE_INTEGER) { + return result; + } + // Leverage the exponentiation by squaring algorithm for a faster repeat. + // See https://en.wikipedia.org/wiki/Exponentiation_by_squaring for more details. + do { + if (n % 2) { + result += string; + } + n = nativeFloor(n / 2); + if (n) { + string += string; + } + } while (n); + + return result; +} + +module.exports = baseRepeat; diff --git a/node_modules/lodash/_baseRest.js b/node_modules/lodash/_baseRest.js new file mode 100644 index 0000000..d0dc4bd --- /dev/null +++ b/node_modules/lodash/_baseRest.js @@ -0,0 +1,17 @@ +var identity = require('./identity'), + overRest = require('./_overRest'), + setToString = require('./_setToString'); + +/** + * The base implementation of `_.rest` which doesn't validate or coerce arguments. + * + * @private + * @param {Function} func The function to apply a rest parameter to. + * @param {number} [start=func.length-1] The start position of the rest parameter. + * @returns {Function} Returns the new function. + */ +function baseRest(func, start) { + return setToString(overRest(func, start, identity), func + ''); +} + +module.exports = baseRest; diff --git a/node_modules/lodash/_baseSample.js b/node_modules/lodash/_baseSample.js new file mode 100644 index 0000000..58582b9 --- /dev/null +++ b/node_modules/lodash/_baseSample.js @@ -0,0 +1,15 @@ +var arraySample = require('./_arraySample'), + values = require('./values'); + +/** + * The base implementation of `_.sample`. + * + * @private + * @param {Array|Object} collection The collection to sample. + * @returns {*} Returns the random element. + */ +function baseSample(collection) { + return arraySample(values(collection)); +} + +module.exports = baseSample; diff --git a/node_modules/lodash/_baseSampleSize.js b/node_modules/lodash/_baseSampleSize.js new file mode 100644 index 0000000..5c90ec5 --- /dev/null +++ b/node_modules/lodash/_baseSampleSize.js @@ -0,0 +1,18 @@ +var baseClamp = require('./_baseClamp'), + shuffleSelf = require('./_shuffleSelf'), + values = require('./values'); + +/** + * The base implementation of `_.sampleSize` without param guards. + * + * @private + * @param {Array|Object} collection The collection to sample. + * @param {number} n The number of elements to sample. + * @returns {Array} Returns the random elements. + */ +function baseSampleSize(collection, n) { + var array = values(collection); + return shuffleSelf(array, baseClamp(n, 0, array.length)); +} + +module.exports = baseSampleSize; diff --git a/node_modules/lodash/_baseSet.js b/node_modules/lodash/_baseSet.js new file mode 100644 index 0000000..99f4fbf --- /dev/null +++ b/node_modules/lodash/_baseSet.js @@ -0,0 +1,51 @@ +var assignValue = require('./_assignValue'), + castPath = require('./_castPath'), + isIndex = require('./_isIndex'), + isObject = require('./isObject'), + toKey = require('./_toKey'); + +/** + * The base implementation of `_.set`. + * + * @private + * @param {Object} object The object to modify. + * @param {Array|string} path The path of the property to set. + * @param {*} value The value to set. + * @param {Function} [customizer] The function to customize path creation. + * @returns {Object} Returns `object`. + */ +function baseSet(object, path, value, customizer) { + if (!isObject(object)) { + return object; + } + path = castPath(path, object); + + var index = -1, + length = path.length, + lastIndex = length - 1, + nested = object; + + while (nested != null && ++index < length) { + var key = toKey(path[index]), + newValue = value; + + if (key === '__proto__' || key === 'constructor' || key === 'prototype') { + return object; + } + + if (index != lastIndex) { + var objValue = nested[key]; + newValue = customizer ? customizer(objValue, key, nested) : undefined; + if (newValue === undefined) { + newValue = isObject(objValue) + ? objValue + : (isIndex(path[index + 1]) ? [] : {}); + } + } + assignValue(nested, key, newValue); + nested = nested[key]; + } + return object; +} + +module.exports = baseSet; diff --git a/node_modules/lodash/_baseSetData.js b/node_modules/lodash/_baseSetData.js new file mode 100644 index 0000000..c409947 --- /dev/null +++ b/node_modules/lodash/_baseSetData.js @@ -0,0 +1,17 @@ +var identity = require('./identity'), + metaMap = require('./_metaMap'); + +/** + * The base implementation of `setData` without support for hot loop shorting. + * + * @private + * @param {Function} func The function to associate metadata with. + * @param {*} data The metadata. + * @returns {Function} Returns `func`. + */ +var baseSetData = !metaMap ? identity : function(func, data) { + metaMap.set(func, data); + return func; +}; + +module.exports = baseSetData; diff --git a/node_modules/lodash/_baseSetToString.js b/node_modules/lodash/_baseSetToString.js new file mode 100644 index 0000000..89eaca3 --- /dev/null +++ b/node_modules/lodash/_baseSetToString.js @@ -0,0 +1,22 @@ +var constant = require('./constant'), + defineProperty = require('./_defineProperty'), + identity = require('./identity'); + +/** + * The base implementation of `setToString` without support for hot loop shorting. + * + * @private + * @param {Function} func The function to modify. + * @param {Function} string The `toString` result. + * @returns {Function} Returns `func`. + */ +var baseSetToString = !defineProperty ? identity : function(func, string) { + return defineProperty(func, 'toString', { + 'configurable': true, + 'enumerable': false, + 'value': constant(string), + 'writable': true + }); +}; + +module.exports = baseSetToString; diff --git a/node_modules/lodash/_baseShuffle.js b/node_modules/lodash/_baseShuffle.js new file mode 100644 index 0000000..023077a --- /dev/null +++ b/node_modules/lodash/_baseShuffle.js @@ -0,0 +1,15 @@ +var shuffleSelf = require('./_shuffleSelf'), + values = require('./values'); + +/** + * The base implementation of `_.shuffle`. + * + * @private + * @param {Array|Object} collection The collection to shuffle. + * @returns {Array} Returns the new shuffled array. + */ +function baseShuffle(collection) { + return shuffleSelf(values(collection)); +} + +module.exports = baseShuffle; diff --git a/node_modules/lodash/_baseSlice.js b/node_modules/lodash/_baseSlice.js new file mode 100644 index 0000000..786f6c9 --- /dev/null +++ b/node_modules/lodash/_baseSlice.js @@ -0,0 +1,31 @@ +/** + * The base implementation of `_.slice` without an iteratee call guard. + * + * @private + * @param {Array} array The array to slice. + * @param {number} [start=0] The start position. + * @param {number} [end=array.length] The end position. + * @returns {Array} Returns the slice of `array`. + */ +function baseSlice(array, start, end) { + var index = -1, + length = array.length; + + if (start < 0) { + start = -start > length ? 0 : (length + start); + } + end = end > length ? length : end; + if (end < 0) { + end += length; + } + length = start > end ? 0 : ((end - start) >>> 0); + start >>>= 0; + + var result = Array(length); + while (++index < length) { + result[index] = array[index + start]; + } + return result; +} + +module.exports = baseSlice; diff --git a/node_modules/lodash/_baseSome.js b/node_modules/lodash/_baseSome.js new file mode 100644 index 0000000..58f3f44 --- /dev/null +++ b/node_modules/lodash/_baseSome.js @@ -0,0 +1,22 @@ +var baseEach = require('./_baseEach'); + +/** + * The base implementation of `_.some` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {boolean} Returns `true` if any element passes the predicate check, + * else `false`. + */ +function baseSome(collection, predicate) { + var result; + + baseEach(collection, function(value, index, collection) { + result = predicate(value, index, collection); + return !result; + }); + return !!result; +} + +module.exports = baseSome; diff --git a/node_modules/lodash/_baseSortBy.js b/node_modules/lodash/_baseSortBy.js new file mode 100644 index 0000000..a25c92e --- /dev/null +++ b/node_modules/lodash/_baseSortBy.js @@ -0,0 +1,21 @@ +/** + * The base implementation of `_.sortBy` which uses `comparer` to define the + * sort order of `array` and replaces criteria objects with their corresponding + * values. + * + * @private + * @param {Array} array The array to sort. + * @param {Function} comparer The function to define sort order. + * @returns {Array} Returns `array`. + */ +function baseSortBy(array, comparer) { + var length = array.length; + + array.sort(comparer); + while (length--) { + array[length] = array[length].value; + } + return array; +} + +module.exports = baseSortBy; diff --git a/node_modules/lodash/_baseSortedIndex.js b/node_modules/lodash/_baseSortedIndex.js new file mode 100644 index 0000000..638c366 --- /dev/null +++ b/node_modules/lodash/_baseSortedIndex.js @@ -0,0 +1,42 @@ +var baseSortedIndexBy = require('./_baseSortedIndexBy'), + identity = require('./identity'), + isSymbol = require('./isSymbol'); + +/** Used as references for the maximum length and index of an array. */ +var MAX_ARRAY_LENGTH = 4294967295, + HALF_MAX_ARRAY_LENGTH = MAX_ARRAY_LENGTH >>> 1; + +/** + * The base implementation of `_.sortedIndex` and `_.sortedLastIndex` which + * performs a binary search of `array` to determine the index at which `value` + * should be inserted into `array` in order to maintain its sort order. + * + * @private + * @param {Array} array The sorted array to inspect. + * @param {*} value The value to evaluate. + * @param {boolean} [retHighest] Specify returning the highest qualified index. + * @returns {number} Returns the index at which `value` should be inserted + * into `array`. + */ +function baseSortedIndex(array, value, retHighest) { + var low = 0, + high = array == null ? low : array.length; + + if (typeof value == 'number' && value === value && high <= HALF_MAX_ARRAY_LENGTH) { + while (low < high) { + var mid = (low + high) >>> 1, + computed = array[mid]; + + if (computed !== null && !isSymbol(computed) && + (retHighest ? (computed <= value) : (computed < value))) { + low = mid + 1; + } else { + high = mid; + } + } + return high; + } + return baseSortedIndexBy(array, value, identity, retHighest); +} + +module.exports = baseSortedIndex; diff --git a/node_modules/lodash/_baseSortedIndexBy.js b/node_modules/lodash/_baseSortedIndexBy.js new file mode 100644 index 0000000..c247b37 --- /dev/null +++ b/node_modules/lodash/_baseSortedIndexBy.js @@ -0,0 +1,67 @@ +var isSymbol = require('./isSymbol'); + +/** Used as references for the maximum length and index of an array. */ +var MAX_ARRAY_LENGTH = 4294967295, + MAX_ARRAY_INDEX = MAX_ARRAY_LENGTH - 1; + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeFloor = Math.floor, + nativeMin = Math.min; + +/** + * The base implementation of `_.sortedIndexBy` and `_.sortedLastIndexBy` + * which invokes `iteratee` for `value` and each element of `array` to compute + * their sort ranking. The iteratee is invoked with one argument; (value). + * + * @private + * @param {Array} array The sorted array to inspect. + * @param {*} value The value to evaluate. + * @param {Function} iteratee The iteratee invoked per element. + * @param {boolean} [retHighest] Specify returning the highest qualified index. + * @returns {number} Returns the index at which `value` should be inserted + * into `array`. + */ +function baseSortedIndexBy(array, value, iteratee, retHighest) { + var low = 0, + high = array == null ? 0 : array.length; + if (high === 0) { + return 0; + } + + value = iteratee(value); + var valIsNaN = value !== value, + valIsNull = value === null, + valIsSymbol = isSymbol(value), + valIsUndefined = value === undefined; + + while (low < high) { + var mid = nativeFloor((low + high) / 2), + computed = iteratee(array[mid]), + othIsDefined = computed !== undefined, + othIsNull = computed === null, + othIsReflexive = computed === computed, + othIsSymbol = isSymbol(computed); + + if (valIsNaN) { + var setLow = retHighest || othIsReflexive; + } else if (valIsUndefined) { + setLow = othIsReflexive && (retHighest || othIsDefined); + } else if (valIsNull) { + setLow = othIsReflexive && othIsDefined && (retHighest || !othIsNull); + } else if (valIsSymbol) { + setLow = othIsReflexive && othIsDefined && !othIsNull && (retHighest || !othIsSymbol); + } else if (othIsNull || othIsSymbol) { + setLow = false; + } else { + setLow = retHighest ? (computed <= value) : (computed < value); + } + if (setLow) { + low = mid + 1; + } else { + high = mid; + } + } + return nativeMin(high, MAX_ARRAY_INDEX); +} + +module.exports = baseSortedIndexBy; diff --git a/node_modules/lodash/_baseSortedUniq.js b/node_modules/lodash/_baseSortedUniq.js new file mode 100644 index 0000000..802159a --- /dev/null +++ b/node_modules/lodash/_baseSortedUniq.js @@ -0,0 +1,30 @@ +var eq = require('./eq'); + +/** + * The base implementation of `_.sortedUniq` and `_.sortedUniqBy` without + * support for iteratee shorthands. + * + * @private + * @param {Array} array The array to inspect. + * @param {Function} [iteratee] The iteratee invoked per element. + * @returns {Array} Returns the new duplicate free array. + */ +function baseSortedUniq(array, iteratee) { + var index = -1, + length = array.length, + resIndex = 0, + result = []; + + while (++index < length) { + var value = array[index], + computed = iteratee ? iteratee(value) : value; + + if (!index || !eq(computed, seen)) { + var seen = computed; + result[resIndex++] = value === 0 ? 0 : value; + } + } + return result; +} + +module.exports = baseSortedUniq; diff --git a/node_modules/lodash/_baseSum.js b/node_modules/lodash/_baseSum.js new file mode 100644 index 0000000..a9e84c1 --- /dev/null +++ b/node_modules/lodash/_baseSum.js @@ -0,0 +1,24 @@ +/** + * The base implementation of `_.sum` and `_.sumBy` without support for + * iteratee shorthands. + * + * @private + * @param {Array} array The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {number} Returns the sum. + */ +function baseSum(array, iteratee) { + var result, + index = -1, + length = array.length; + + while (++index < length) { + var current = iteratee(array[index]); + if (current !== undefined) { + result = result === undefined ? current : (result + current); + } + } + return result; +} + +module.exports = baseSum; diff --git a/node_modules/lodash/_baseTimes.js b/node_modules/lodash/_baseTimes.js new file mode 100644 index 0000000..0603fc3 --- /dev/null +++ b/node_modules/lodash/_baseTimes.js @@ -0,0 +1,20 @@ +/** + * The base implementation of `_.times` without support for iteratee shorthands + * or max array length checks. + * + * @private + * @param {number} n The number of times to invoke `iteratee`. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns the array of results. + */ +function baseTimes(n, iteratee) { + var index = -1, + result = Array(n); + + while (++index < n) { + result[index] = iteratee(index); + } + return result; +} + +module.exports = baseTimes; diff --git a/node_modules/lodash/_baseToNumber.js b/node_modules/lodash/_baseToNumber.js new file mode 100644 index 0000000..04859f3 --- /dev/null +++ b/node_modules/lodash/_baseToNumber.js @@ -0,0 +1,24 @@ +var isSymbol = require('./isSymbol'); + +/** Used as references for various `Number` constants. */ +var NAN = 0 / 0; + +/** + * The base implementation of `_.toNumber` which doesn't ensure correct + * conversions of binary, hexadecimal, or octal string values. + * + * @private + * @param {*} value The value to process. + * @returns {number} Returns the number. + */ +function baseToNumber(value) { + if (typeof value == 'number') { + return value; + } + if (isSymbol(value)) { + return NAN; + } + return +value; +} + +module.exports = baseToNumber; diff --git a/node_modules/lodash/_baseToPairs.js b/node_modules/lodash/_baseToPairs.js new file mode 100644 index 0000000..bff1991 --- /dev/null +++ b/node_modules/lodash/_baseToPairs.js @@ -0,0 +1,18 @@ +var arrayMap = require('./_arrayMap'); + +/** + * The base implementation of `_.toPairs` and `_.toPairsIn` which creates an array + * of key-value pairs for `object` corresponding to the property names of `props`. + * + * @private + * @param {Object} object The object to query. + * @param {Array} props The property names to get values for. + * @returns {Object} Returns the key-value pairs. + */ +function baseToPairs(object, props) { + return arrayMap(props, function(key) { + return [key, object[key]]; + }); +} + +module.exports = baseToPairs; diff --git a/node_modules/lodash/_baseToString.js b/node_modules/lodash/_baseToString.js new file mode 100644 index 0000000..ada6ad2 --- /dev/null +++ b/node_modules/lodash/_baseToString.js @@ -0,0 +1,37 @@ +var Symbol = require('./_Symbol'), + arrayMap = require('./_arrayMap'), + isArray = require('./isArray'), + isSymbol = require('./isSymbol'); + +/** Used as references for various `Number` constants. */ +var INFINITY = 1 / 0; + +/** Used to convert symbols to primitives and strings. */ +var symbolProto = Symbol ? Symbol.prototype : undefined, + symbolToString = symbolProto ? symbolProto.toString : undefined; + +/** + * The base implementation of `_.toString` which doesn't convert nullish + * values to empty strings. + * + * @private + * @param {*} value The value to process. + * @returns {string} Returns the string. + */ +function baseToString(value) { + // Exit early for strings to avoid a performance hit in some environments. + if (typeof value == 'string') { + return value; + } + if (isArray(value)) { + // Recursively convert values (susceptible to call stack limits). + return arrayMap(value, baseToString) + ''; + } + if (isSymbol(value)) { + return symbolToString ? symbolToString.call(value) : ''; + } + var result = (value + ''); + return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result; +} + +module.exports = baseToString; diff --git a/node_modules/lodash/_baseTrim.js b/node_modules/lodash/_baseTrim.js new file mode 100644 index 0000000..3e2797d --- /dev/null +++ b/node_modules/lodash/_baseTrim.js @@ -0,0 +1,19 @@ +var trimmedEndIndex = require('./_trimmedEndIndex'); + +/** Used to match leading whitespace. */ +var reTrimStart = /^\s+/; + +/** + * The base implementation of `_.trim`. + * + * @private + * @param {string} string The string to trim. + * @returns {string} Returns the trimmed string. + */ +function baseTrim(string) { + return string + ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, '') + : string; +} + +module.exports = baseTrim; diff --git a/node_modules/lodash/_baseUnary.js b/node_modules/lodash/_baseUnary.js new file mode 100644 index 0000000..98639e9 --- /dev/null +++ b/node_modules/lodash/_baseUnary.js @@ -0,0 +1,14 @@ +/** + * The base implementation of `_.unary` without support for storing metadata. + * + * @private + * @param {Function} func The function to cap arguments for. + * @returns {Function} Returns the new capped function. + */ +function baseUnary(func) { + return function(value) { + return func(value); + }; +} + +module.exports = baseUnary; diff --git a/node_modules/lodash/_baseUniq.js b/node_modules/lodash/_baseUniq.js new file mode 100644 index 0000000..aea459d --- /dev/null +++ b/node_modules/lodash/_baseUniq.js @@ -0,0 +1,72 @@ +var SetCache = require('./_SetCache'), + arrayIncludes = require('./_arrayIncludes'), + arrayIncludesWith = require('./_arrayIncludesWith'), + cacheHas = require('./_cacheHas'), + createSet = require('./_createSet'), + setToArray = require('./_setToArray'); + +/** Used as the size to enable large array optimizations. */ +var LARGE_ARRAY_SIZE = 200; + +/** + * The base implementation of `_.uniqBy` without support for iteratee shorthands. + * + * @private + * @param {Array} array The array to inspect. + * @param {Function} [iteratee] The iteratee invoked per element. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new duplicate free array. + */ +function baseUniq(array, iteratee, comparator) { + var index = -1, + includes = arrayIncludes, + length = array.length, + isCommon = true, + result = [], + seen = result; + + if (comparator) { + isCommon = false; + includes = arrayIncludesWith; + } + else if (length >= LARGE_ARRAY_SIZE) { + var set = iteratee ? null : createSet(array); + if (set) { + return setToArray(set); + } + isCommon = false; + includes = cacheHas; + seen = new SetCache; + } + else { + seen = iteratee ? [] : result; + } + outer: + while (++index < length) { + var value = array[index], + computed = iteratee ? iteratee(value) : value; + + value = (comparator || value !== 0) ? value : 0; + if (isCommon && computed === computed) { + var seenIndex = seen.length; + while (seenIndex--) { + if (seen[seenIndex] === computed) { + continue outer; + } + } + if (iteratee) { + seen.push(computed); + } + result.push(value); + } + else if (!includes(seen, computed, comparator)) { + if (seen !== result) { + seen.push(computed); + } + result.push(value); + } + } + return result; +} + +module.exports = baseUniq; diff --git a/node_modules/lodash/_baseUnset.js b/node_modules/lodash/_baseUnset.js new file mode 100644 index 0000000..eefc6e3 --- /dev/null +++ b/node_modules/lodash/_baseUnset.js @@ -0,0 +1,20 @@ +var castPath = require('./_castPath'), + last = require('./last'), + parent = require('./_parent'), + toKey = require('./_toKey'); + +/** + * The base implementation of `_.unset`. + * + * @private + * @param {Object} object The object to modify. + * @param {Array|string} path The property path to unset. + * @returns {boolean} Returns `true` if the property is deleted, else `false`. + */ +function baseUnset(object, path) { + path = castPath(path, object); + object = parent(object, path); + return object == null || delete object[toKey(last(path))]; +} + +module.exports = baseUnset; diff --git a/node_modules/lodash/_baseUpdate.js b/node_modules/lodash/_baseUpdate.js new file mode 100644 index 0000000..92a6237 --- /dev/null +++ b/node_modules/lodash/_baseUpdate.js @@ -0,0 +1,18 @@ +var baseGet = require('./_baseGet'), + baseSet = require('./_baseSet'); + +/** + * The base implementation of `_.update`. + * + * @private + * @param {Object} object The object to modify. + * @param {Array|string} path The path of the property to update. + * @param {Function} updater The function to produce the updated value. + * @param {Function} [customizer] The function to customize path creation. + * @returns {Object} Returns `object`. + */ +function baseUpdate(object, path, updater, customizer) { + return baseSet(object, path, updater(baseGet(object, path)), customizer); +} + +module.exports = baseUpdate; diff --git a/node_modules/lodash/_baseValues.js b/node_modules/lodash/_baseValues.js new file mode 100644 index 0000000..b95faad --- /dev/null +++ b/node_modules/lodash/_baseValues.js @@ -0,0 +1,19 @@ +var arrayMap = require('./_arrayMap'); + +/** + * The base implementation of `_.values` and `_.valuesIn` which creates an + * array of `object` property values corresponding to the property names + * of `props`. + * + * @private + * @param {Object} object The object to query. + * @param {Array} props The property names to get values for. + * @returns {Object} Returns the array of property values. + */ +function baseValues(object, props) { + return arrayMap(props, function(key) { + return object[key]; + }); +} + +module.exports = baseValues; diff --git a/node_modules/lodash/_baseWhile.js b/node_modules/lodash/_baseWhile.js new file mode 100644 index 0000000..07eac61 --- /dev/null +++ b/node_modules/lodash/_baseWhile.js @@ -0,0 +1,26 @@ +var baseSlice = require('./_baseSlice'); + +/** + * The base implementation of methods like `_.dropWhile` and `_.takeWhile` + * without support for iteratee shorthands. + * + * @private + * @param {Array} array The array to query. + * @param {Function} predicate The function invoked per iteration. + * @param {boolean} [isDrop] Specify dropping elements instead of taking them. + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Array} Returns the slice of `array`. + */ +function baseWhile(array, predicate, isDrop, fromRight) { + var length = array.length, + index = fromRight ? length : -1; + + while ((fromRight ? index-- : ++index < length) && + predicate(array[index], index, array)) {} + + return isDrop + ? baseSlice(array, (fromRight ? 0 : index), (fromRight ? index + 1 : length)) + : baseSlice(array, (fromRight ? index + 1 : 0), (fromRight ? length : index)); +} + +module.exports = baseWhile; diff --git a/node_modules/lodash/_baseWrapperValue.js b/node_modules/lodash/_baseWrapperValue.js new file mode 100644 index 0000000..443e0df --- /dev/null +++ b/node_modules/lodash/_baseWrapperValue.js @@ -0,0 +1,25 @@ +var LazyWrapper = require('./_LazyWrapper'), + arrayPush = require('./_arrayPush'), + arrayReduce = require('./_arrayReduce'); + +/** + * The base implementation of `wrapperValue` which returns the result of + * performing a sequence of actions on the unwrapped `value`, where each + * successive action is supplied the return value of the previous. + * + * @private + * @param {*} value The unwrapped value. + * @param {Array} actions Actions to perform to resolve the unwrapped value. + * @returns {*} Returns the resolved value. + */ +function baseWrapperValue(value, actions) { + var result = value; + if (result instanceof LazyWrapper) { + result = result.value(); + } + return arrayReduce(actions, function(result, action) { + return action.func.apply(action.thisArg, arrayPush([result], action.args)); + }, result); +} + +module.exports = baseWrapperValue; diff --git a/node_modules/lodash/_baseXor.js b/node_modules/lodash/_baseXor.js new file mode 100644 index 0000000..8e69338 --- /dev/null +++ b/node_modules/lodash/_baseXor.js @@ -0,0 +1,36 @@ +var baseDifference = require('./_baseDifference'), + baseFlatten = require('./_baseFlatten'), + baseUniq = require('./_baseUniq'); + +/** + * The base implementation of methods like `_.xor`, without support for + * iteratee shorthands, that accepts an array of arrays to inspect. + * + * @private + * @param {Array} arrays The arrays to inspect. + * @param {Function} [iteratee] The iteratee invoked per element. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new array of values. + */ +function baseXor(arrays, iteratee, comparator) { + var length = arrays.length; + if (length < 2) { + return length ? baseUniq(arrays[0]) : []; + } + var index = -1, + result = Array(length); + + while (++index < length) { + var array = arrays[index], + othIndex = -1; + + while (++othIndex < length) { + if (othIndex != index) { + result[index] = baseDifference(result[index] || array, arrays[othIndex], iteratee, comparator); + } + } + } + return baseUniq(baseFlatten(result, 1), iteratee, comparator); +} + +module.exports = baseXor; diff --git a/node_modules/lodash/_baseZipObject.js b/node_modules/lodash/_baseZipObject.js new file mode 100644 index 0000000..401f85b --- /dev/null +++ b/node_modules/lodash/_baseZipObject.js @@ -0,0 +1,23 @@ +/** + * This base implementation of `_.zipObject` which assigns values using `assignFunc`. + * + * @private + * @param {Array} props The property identifiers. + * @param {Array} values The property values. + * @param {Function} assignFunc The function to assign values. + * @returns {Object} Returns the new object. + */ +function baseZipObject(props, values, assignFunc) { + var index = -1, + length = props.length, + valsLength = values.length, + result = {}; + + while (++index < length) { + var value = index < valsLength ? values[index] : undefined; + assignFunc(result, props[index], value); + } + return result; +} + +module.exports = baseZipObject; diff --git a/node_modules/lodash/_cacheHas.js b/node_modules/lodash/_cacheHas.js new file mode 100644 index 0000000..2dec892 --- /dev/null +++ b/node_modules/lodash/_cacheHas.js @@ -0,0 +1,13 @@ +/** + * Checks if a `cache` value for `key` exists. + * + * @private + * @param {Object} cache The cache to query. + * @param {string} key The key of the entry to check. + * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. + */ +function cacheHas(cache, key) { + return cache.has(key); +} + +module.exports = cacheHas; diff --git a/node_modules/lodash/_castArrayLikeObject.js b/node_modules/lodash/_castArrayLikeObject.js new file mode 100644 index 0000000..92c75fa --- /dev/null +++ b/node_modules/lodash/_castArrayLikeObject.js @@ -0,0 +1,14 @@ +var isArrayLikeObject = require('./isArrayLikeObject'); + +/** + * Casts `value` to an empty array if it's not an array like object. + * + * @private + * @param {*} value The value to inspect. + * @returns {Array|Object} Returns the cast array-like object. + */ +function castArrayLikeObject(value) { + return isArrayLikeObject(value) ? value : []; +} + +module.exports = castArrayLikeObject; diff --git a/node_modules/lodash/_castFunction.js b/node_modules/lodash/_castFunction.js new file mode 100644 index 0000000..98c91ae --- /dev/null +++ b/node_modules/lodash/_castFunction.js @@ -0,0 +1,14 @@ +var identity = require('./identity'); + +/** + * Casts `value` to `identity` if it's not a function. + * + * @private + * @param {*} value The value to inspect. + * @returns {Function} Returns cast function. + */ +function castFunction(value) { + return typeof value == 'function' ? value : identity; +} + +module.exports = castFunction; diff --git a/node_modules/lodash/_castPath.js b/node_modules/lodash/_castPath.js new file mode 100644 index 0000000..017e4c1 --- /dev/null +++ b/node_modules/lodash/_castPath.js @@ -0,0 +1,21 @@ +var isArray = require('./isArray'), + isKey = require('./_isKey'), + stringToPath = require('./_stringToPath'), + toString = require('./toString'); + +/** + * Casts `value` to a path array if it's not one. + * + * @private + * @param {*} value The value to inspect. + * @param {Object} [object] The object to query keys on. + * @returns {Array} Returns the cast property path array. + */ +function castPath(value, object) { + if (isArray(value)) { + return value; + } + return isKey(value, object) ? [value] : stringToPath(toString(value)); +} + +module.exports = castPath; diff --git a/node_modules/lodash/_castRest.js b/node_modules/lodash/_castRest.js new file mode 100644 index 0000000..213c66f --- /dev/null +++ b/node_modules/lodash/_castRest.js @@ -0,0 +1,14 @@ +var baseRest = require('./_baseRest'); + +/** + * A `baseRest` alias which can be replaced with `identity` by module + * replacement plugins. + * + * @private + * @type {Function} + * @param {Function} func The function to apply a rest parameter to. + * @returns {Function} Returns the new function. + */ +var castRest = baseRest; + +module.exports = castRest; diff --git a/node_modules/lodash/_castSlice.js b/node_modules/lodash/_castSlice.js new file mode 100644 index 0000000..071faeb --- /dev/null +++ b/node_modules/lodash/_castSlice.js @@ -0,0 +1,18 @@ +var baseSlice = require('./_baseSlice'); + +/** + * Casts `array` to a slice if it's needed. + * + * @private + * @param {Array} array The array to inspect. + * @param {number} start The start position. + * @param {number} [end=array.length] The end position. + * @returns {Array} Returns the cast slice. + */ +function castSlice(array, start, end) { + var length = array.length; + end = end === undefined ? length : end; + return (!start && end >= length) ? array : baseSlice(array, start, end); +} + +module.exports = castSlice; diff --git a/node_modules/lodash/_charsEndIndex.js b/node_modules/lodash/_charsEndIndex.js new file mode 100644 index 0000000..07908ff --- /dev/null +++ b/node_modules/lodash/_charsEndIndex.js @@ -0,0 +1,19 @@ +var baseIndexOf = require('./_baseIndexOf'); + +/** + * Used by `_.trim` and `_.trimEnd` to get the index of the last string symbol + * that is not found in the character symbols. + * + * @private + * @param {Array} strSymbols The string symbols to inspect. + * @param {Array} chrSymbols The character symbols to find. + * @returns {number} Returns the index of the last unmatched string symbol. + */ +function charsEndIndex(strSymbols, chrSymbols) { + var index = strSymbols.length; + + while (index-- && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {} + return index; +} + +module.exports = charsEndIndex; diff --git a/node_modules/lodash/_charsStartIndex.js b/node_modules/lodash/_charsStartIndex.js new file mode 100644 index 0000000..b17afd2 --- /dev/null +++ b/node_modules/lodash/_charsStartIndex.js @@ -0,0 +1,20 @@ +var baseIndexOf = require('./_baseIndexOf'); + +/** + * Used by `_.trim` and `_.trimStart` to get the index of the first string symbol + * that is not found in the character symbols. + * + * @private + * @param {Array} strSymbols The string symbols to inspect. + * @param {Array} chrSymbols The character symbols to find. + * @returns {number} Returns the index of the first unmatched string symbol. + */ +function charsStartIndex(strSymbols, chrSymbols) { + var index = -1, + length = strSymbols.length; + + while (++index < length && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {} + return index; +} + +module.exports = charsStartIndex; diff --git a/node_modules/lodash/_cloneArrayBuffer.js b/node_modules/lodash/_cloneArrayBuffer.js new file mode 100644 index 0000000..c3d8f6e --- /dev/null +++ b/node_modules/lodash/_cloneArrayBuffer.js @@ -0,0 +1,16 @@ +var Uint8Array = require('./_Uint8Array'); + +/** + * Creates a clone of `arrayBuffer`. + * + * @private + * @param {ArrayBuffer} arrayBuffer The array buffer to clone. + * @returns {ArrayBuffer} Returns the cloned array buffer. + */ +function cloneArrayBuffer(arrayBuffer) { + var result = new arrayBuffer.constructor(arrayBuffer.byteLength); + new Uint8Array(result).set(new Uint8Array(arrayBuffer)); + return result; +} + +module.exports = cloneArrayBuffer; diff --git a/node_modules/lodash/_cloneBuffer.js b/node_modules/lodash/_cloneBuffer.js new file mode 100644 index 0000000..27c4810 --- /dev/null +++ b/node_modules/lodash/_cloneBuffer.js @@ -0,0 +1,35 @@ +var root = require('./_root'); + +/** Detect free variable `exports`. */ +var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports; + +/** Detect free variable `module`. */ +var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module; + +/** Detect the popular CommonJS extension `module.exports`. */ +var moduleExports = freeModule && freeModule.exports === freeExports; + +/** Built-in value references. */ +var Buffer = moduleExports ? root.Buffer : undefined, + allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined; + +/** + * Creates a clone of `buffer`. + * + * @private + * @param {Buffer} buffer The buffer to clone. + * @param {boolean} [isDeep] Specify a deep clone. + * @returns {Buffer} Returns the cloned buffer. + */ +function cloneBuffer(buffer, isDeep) { + if (isDeep) { + return buffer.slice(); + } + var length = buffer.length, + result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length); + + buffer.copy(result); + return result; +} + +module.exports = cloneBuffer; diff --git a/node_modules/lodash/_cloneDataView.js b/node_modules/lodash/_cloneDataView.js new file mode 100644 index 0000000..9c9b7b0 --- /dev/null +++ b/node_modules/lodash/_cloneDataView.js @@ -0,0 +1,16 @@ +var cloneArrayBuffer = require('./_cloneArrayBuffer'); + +/** + * Creates a clone of `dataView`. + * + * @private + * @param {Object} dataView The data view to clone. + * @param {boolean} [isDeep] Specify a deep clone. + * @returns {Object} Returns the cloned data view. + */ +function cloneDataView(dataView, isDeep) { + var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer; + return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength); +} + +module.exports = cloneDataView; diff --git a/node_modules/lodash/_cloneRegExp.js b/node_modules/lodash/_cloneRegExp.js new file mode 100644 index 0000000..64a30df --- /dev/null +++ b/node_modules/lodash/_cloneRegExp.js @@ -0,0 +1,17 @@ +/** Used to match `RegExp` flags from their coerced string values. */ +var reFlags = /\w*$/; + +/** + * Creates a clone of `regexp`. + * + * @private + * @param {Object} regexp The regexp to clone. + * @returns {Object} Returns the cloned regexp. + */ +function cloneRegExp(regexp) { + var result = new regexp.constructor(regexp.source, reFlags.exec(regexp)); + result.lastIndex = regexp.lastIndex; + return result; +} + +module.exports = cloneRegExp; diff --git a/node_modules/lodash/_cloneSymbol.js b/node_modules/lodash/_cloneSymbol.js new file mode 100644 index 0000000..bede39f --- /dev/null +++ b/node_modules/lodash/_cloneSymbol.js @@ -0,0 +1,18 @@ +var Symbol = require('./_Symbol'); + +/** Used to convert symbols to primitives and strings. */ +var symbolProto = Symbol ? Symbol.prototype : undefined, + symbolValueOf = symbolProto ? symbolProto.valueOf : undefined; + +/** + * Creates a clone of the `symbol` object. + * + * @private + * @param {Object} symbol The symbol object to clone. + * @returns {Object} Returns the cloned symbol object. + */ +function cloneSymbol(symbol) { + return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {}; +} + +module.exports = cloneSymbol; diff --git a/node_modules/lodash/_cloneTypedArray.js b/node_modules/lodash/_cloneTypedArray.js new file mode 100644 index 0000000..7aad84d --- /dev/null +++ b/node_modules/lodash/_cloneTypedArray.js @@ -0,0 +1,16 @@ +var cloneArrayBuffer = require('./_cloneArrayBuffer'); + +/** + * Creates a clone of `typedArray`. + * + * @private + * @param {Object} typedArray The typed array to clone. + * @param {boolean} [isDeep] Specify a deep clone. + * @returns {Object} Returns the cloned typed array. + */ +function cloneTypedArray(typedArray, isDeep) { + var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer; + return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length); +} + +module.exports = cloneTypedArray; diff --git a/node_modules/lodash/_compareAscending.js b/node_modules/lodash/_compareAscending.js new file mode 100644 index 0000000..8dc2791 --- /dev/null +++ b/node_modules/lodash/_compareAscending.js @@ -0,0 +1,41 @@ +var isSymbol = require('./isSymbol'); + +/** + * Compares values to sort them in ascending order. + * + * @private + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {number} Returns the sort order indicator for `value`. + */ +function compareAscending(value, other) { + if (value !== other) { + var valIsDefined = value !== undefined, + valIsNull = value === null, + valIsReflexive = value === value, + valIsSymbol = isSymbol(value); + + var othIsDefined = other !== undefined, + othIsNull = other === null, + othIsReflexive = other === other, + othIsSymbol = isSymbol(other); + + if ((!othIsNull && !othIsSymbol && !valIsSymbol && value > other) || + (valIsSymbol && othIsDefined && othIsReflexive && !othIsNull && !othIsSymbol) || + (valIsNull && othIsDefined && othIsReflexive) || + (!valIsDefined && othIsReflexive) || + !valIsReflexive) { + return 1; + } + if ((!valIsNull && !valIsSymbol && !othIsSymbol && value < other) || + (othIsSymbol && valIsDefined && valIsReflexive && !valIsNull && !valIsSymbol) || + (othIsNull && valIsDefined && valIsReflexive) || + (!othIsDefined && valIsReflexive) || + !othIsReflexive) { + return -1; + } + } + return 0; +} + +module.exports = compareAscending; diff --git a/node_modules/lodash/_compareMultiple.js b/node_modules/lodash/_compareMultiple.js new file mode 100644 index 0000000..ad61f0f --- /dev/null +++ b/node_modules/lodash/_compareMultiple.js @@ -0,0 +1,44 @@ +var compareAscending = require('./_compareAscending'); + +/** + * Used by `_.orderBy` to compare multiple properties of a value to another + * and stable sort them. + * + * If `orders` is unspecified, all values are sorted in ascending order. Otherwise, + * specify an order of "desc" for descending or "asc" for ascending sort order + * of corresponding values. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {boolean[]|string[]} orders The order to sort by for each property. + * @returns {number} Returns the sort order indicator for `object`. + */ +function compareMultiple(object, other, orders) { + var index = -1, + objCriteria = object.criteria, + othCriteria = other.criteria, + length = objCriteria.length, + ordersLength = orders.length; + + while (++index < length) { + var result = compareAscending(objCriteria[index], othCriteria[index]); + if (result) { + if (index >= ordersLength) { + return result; + } + var order = orders[index]; + return result * (order == 'desc' ? -1 : 1); + } + } + // Fixes an `Array#sort` bug in the JS engine embedded in Adobe applications + // that causes it, under certain circumstances, to provide the same value for + // `object` and `other`. See https://github.com/jashkenas/underscore/pull/1247 + // for more details. + // + // This also ensures a stable sort in V8 and other engines. + // See https://bugs.chromium.org/p/v8/issues/detail?id=90 for more details. + return object.index - other.index; +} + +module.exports = compareMultiple; diff --git a/node_modules/lodash/_composeArgs.js b/node_modules/lodash/_composeArgs.js new file mode 100644 index 0000000..1ce40f4 --- /dev/null +++ b/node_modules/lodash/_composeArgs.js @@ -0,0 +1,39 @@ +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeMax = Math.max; + +/** + * Creates an array that is the composition of partially applied arguments, + * placeholders, and provided arguments into a single array of arguments. + * + * @private + * @param {Array} args The provided arguments. + * @param {Array} partials The arguments to prepend to those provided. + * @param {Array} holders The `partials` placeholder indexes. + * @params {boolean} [isCurried] Specify composing for a curried function. + * @returns {Array} Returns the new array of composed arguments. + */ +function composeArgs(args, partials, holders, isCurried) { + var argsIndex = -1, + argsLength = args.length, + holdersLength = holders.length, + leftIndex = -1, + leftLength = partials.length, + rangeLength = nativeMax(argsLength - holdersLength, 0), + result = Array(leftLength + rangeLength), + isUncurried = !isCurried; + + while (++leftIndex < leftLength) { + result[leftIndex] = partials[leftIndex]; + } + while (++argsIndex < holdersLength) { + if (isUncurried || argsIndex < argsLength) { + result[holders[argsIndex]] = args[argsIndex]; + } + } + while (rangeLength--) { + result[leftIndex++] = args[argsIndex++]; + } + return result; +} + +module.exports = composeArgs; diff --git a/node_modules/lodash/_composeArgsRight.js b/node_modules/lodash/_composeArgsRight.js new file mode 100644 index 0000000..8dc588d --- /dev/null +++ b/node_modules/lodash/_composeArgsRight.js @@ -0,0 +1,41 @@ +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeMax = Math.max; + +/** + * This function is like `composeArgs` except that the arguments composition + * is tailored for `_.partialRight`. + * + * @private + * @param {Array} args The provided arguments. + * @param {Array} partials The arguments to append to those provided. + * @param {Array} holders The `partials` placeholder indexes. + * @params {boolean} [isCurried] Specify composing for a curried function. + * @returns {Array} Returns the new array of composed arguments. + */ +function composeArgsRight(args, partials, holders, isCurried) { + var argsIndex = -1, + argsLength = args.length, + holdersIndex = -1, + holdersLength = holders.length, + rightIndex = -1, + rightLength = partials.length, + rangeLength = nativeMax(argsLength - holdersLength, 0), + result = Array(rangeLength + rightLength), + isUncurried = !isCurried; + + while (++argsIndex < rangeLength) { + result[argsIndex] = args[argsIndex]; + } + var offset = argsIndex; + while (++rightIndex < rightLength) { + result[offset + rightIndex] = partials[rightIndex]; + } + while (++holdersIndex < holdersLength) { + if (isUncurried || argsIndex < argsLength) { + result[offset + holders[holdersIndex]] = args[argsIndex++]; + } + } + return result; +} + +module.exports = composeArgsRight; diff --git a/node_modules/lodash/_copyArray.js b/node_modules/lodash/_copyArray.js new file mode 100644 index 0000000..cd94d5d --- /dev/null +++ b/node_modules/lodash/_copyArray.js @@ -0,0 +1,20 @@ +/** + * Copies the values of `source` to `array`. + * + * @private + * @param {Array} source The array to copy values from. + * @param {Array} [array=[]] The array to copy values to. + * @returns {Array} Returns `array`. + */ +function copyArray(source, array) { + var index = -1, + length = source.length; + + array || (array = Array(length)); + while (++index < length) { + array[index] = source[index]; + } + return array; +} + +module.exports = copyArray; diff --git a/node_modules/lodash/_copyObject.js b/node_modules/lodash/_copyObject.js new file mode 100644 index 0000000..2f2a5c2 --- /dev/null +++ b/node_modules/lodash/_copyObject.js @@ -0,0 +1,40 @@ +var assignValue = require('./_assignValue'), + baseAssignValue = require('./_baseAssignValue'); + +/** + * Copies properties of `source` to `object`. + * + * @private + * @param {Object} source The object to copy properties from. + * @param {Array} props The property identifiers to copy. + * @param {Object} [object={}] The object to copy properties to. + * @param {Function} [customizer] The function to customize copied values. + * @returns {Object} Returns `object`. + */ +function copyObject(source, props, object, customizer) { + var isNew = !object; + object || (object = {}); + + var index = -1, + length = props.length; + + while (++index < length) { + var key = props[index]; + + var newValue = customizer + ? customizer(object[key], source[key], key, object, source) + : undefined; + + if (newValue === undefined) { + newValue = source[key]; + } + if (isNew) { + baseAssignValue(object, key, newValue); + } else { + assignValue(object, key, newValue); + } + } + return object; +} + +module.exports = copyObject; diff --git a/node_modules/lodash/_copySymbols.js b/node_modules/lodash/_copySymbols.js new file mode 100644 index 0000000..c35944a --- /dev/null +++ b/node_modules/lodash/_copySymbols.js @@ -0,0 +1,16 @@ +var copyObject = require('./_copyObject'), + getSymbols = require('./_getSymbols'); + +/** + * Copies own symbols of `source` to `object`. + * + * @private + * @param {Object} source The object to copy symbols from. + * @param {Object} [object={}] The object to copy symbols to. + * @returns {Object} Returns `object`. + */ +function copySymbols(source, object) { + return copyObject(source, getSymbols(source), object); +} + +module.exports = copySymbols; diff --git a/node_modules/lodash/_copySymbolsIn.js b/node_modules/lodash/_copySymbolsIn.js new file mode 100644 index 0000000..fdf20a7 --- /dev/null +++ b/node_modules/lodash/_copySymbolsIn.js @@ -0,0 +1,16 @@ +var copyObject = require('./_copyObject'), + getSymbolsIn = require('./_getSymbolsIn'); + +/** + * Copies own and inherited symbols of `source` to `object`. + * + * @private + * @param {Object} source The object to copy symbols from. + * @param {Object} [object={}] The object to copy symbols to. + * @returns {Object} Returns `object`. + */ +function copySymbolsIn(source, object) { + return copyObject(source, getSymbolsIn(source), object); +} + +module.exports = copySymbolsIn; diff --git a/node_modules/lodash/_coreJsData.js b/node_modules/lodash/_coreJsData.js new file mode 100644 index 0000000..f8e5b4e --- /dev/null +++ b/node_modules/lodash/_coreJsData.js @@ -0,0 +1,6 @@ +var root = require('./_root'); + +/** Used to detect overreaching core-js shims. */ +var coreJsData = root['__core-js_shared__']; + +module.exports = coreJsData; diff --git a/node_modules/lodash/_countHolders.js b/node_modules/lodash/_countHolders.js new file mode 100644 index 0000000..718fcda --- /dev/null +++ b/node_modules/lodash/_countHolders.js @@ -0,0 +1,21 @@ +/** + * Gets the number of `placeholder` occurrences in `array`. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} placeholder The placeholder to search for. + * @returns {number} Returns the placeholder count. + */ +function countHolders(array, placeholder) { + var length = array.length, + result = 0; + + while (length--) { + if (array[length] === placeholder) { + ++result; + } + } + return result; +} + +module.exports = countHolders; diff --git a/node_modules/lodash/_createAggregator.js b/node_modules/lodash/_createAggregator.js new file mode 100644 index 0000000..0be42c4 --- /dev/null +++ b/node_modules/lodash/_createAggregator.js @@ -0,0 +1,23 @@ +var arrayAggregator = require('./_arrayAggregator'), + baseAggregator = require('./_baseAggregator'), + baseIteratee = require('./_baseIteratee'), + isArray = require('./isArray'); + +/** + * Creates a function like `_.groupBy`. + * + * @private + * @param {Function} setter The function to set accumulator values. + * @param {Function} [initializer] The accumulator object initializer. + * @returns {Function} Returns the new aggregator function. + */ +function createAggregator(setter, initializer) { + return function(collection, iteratee) { + var func = isArray(collection) ? arrayAggregator : baseAggregator, + accumulator = initializer ? initializer() : {}; + + return func(collection, setter, baseIteratee(iteratee, 2), accumulator); + }; +} + +module.exports = createAggregator; diff --git a/node_modules/lodash/_createAssigner.js b/node_modules/lodash/_createAssigner.js new file mode 100644 index 0000000..1f904c5 --- /dev/null +++ b/node_modules/lodash/_createAssigner.js @@ -0,0 +1,37 @@ +var baseRest = require('./_baseRest'), + isIterateeCall = require('./_isIterateeCall'); + +/** + * Creates a function like `_.assign`. + * + * @private + * @param {Function} assigner The function to assign values. + * @returns {Function} Returns the new assigner function. + */ +function createAssigner(assigner) { + return baseRest(function(object, sources) { + var index = -1, + length = sources.length, + customizer = length > 1 ? sources[length - 1] : undefined, + guard = length > 2 ? sources[2] : undefined; + + customizer = (assigner.length > 3 && typeof customizer == 'function') + ? (length--, customizer) + : undefined; + + if (guard && isIterateeCall(sources[0], sources[1], guard)) { + customizer = length < 3 ? undefined : customizer; + length = 1; + } + object = Object(object); + while (++index < length) { + var source = sources[index]; + if (source) { + assigner(object, source, index, customizer); + } + } + return object; + }); +} + +module.exports = createAssigner; diff --git a/node_modules/lodash/_createBaseEach.js b/node_modules/lodash/_createBaseEach.js new file mode 100644 index 0000000..d24fdd1 --- /dev/null +++ b/node_modules/lodash/_createBaseEach.js @@ -0,0 +1,32 @@ +var isArrayLike = require('./isArrayLike'); + +/** + * Creates a `baseEach` or `baseEachRight` function. + * + * @private + * @param {Function} eachFunc The function to iterate over a collection. + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Function} Returns the new base function. + */ +function createBaseEach(eachFunc, fromRight) { + return function(collection, iteratee) { + if (collection == null) { + return collection; + } + if (!isArrayLike(collection)) { + return eachFunc(collection, iteratee); + } + var length = collection.length, + index = fromRight ? length : -1, + iterable = Object(collection); + + while ((fromRight ? index-- : ++index < length)) { + if (iteratee(iterable[index], index, iterable) === false) { + break; + } + } + return collection; + }; +} + +module.exports = createBaseEach; diff --git a/node_modules/lodash/_createBaseFor.js b/node_modules/lodash/_createBaseFor.js new file mode 100644 index 0000000..94cbf29 --- /dev/null +++ b/node_modules/lodash/_createBaseFor.js @@ -0,0 +1,25 @@ +/** + * Creates a base function for methods like `_.forIn` and `_.forOwn`. + * + * @private + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Function} Returns the new base function. + */ +function createBaseFor(fromRight) { + return function(object, iteratee, keysFunc) { + var index = -1, + iterable = Object(object), + props = keysFunc(object), + length = props.length; + + while (length--) { + var key = props[fromRight ? length : ++index]; + if (iteratee(iterable[key], key, iterable) === false) { + break; + } + } + return object; + }; +} + +module.exports = createBaseFor; diff --git a/node_modules/lodash/_createBind.js b/node_modules/lodash/_createBind.js new file mode 100644 index 0000000..07cb99f --- /dev/null +++ b/node_modules/lodash/_createBind.js @@ -0,0 +1,28 @@ +var createCtor = require('./_createCtor'), + root = require('./_root'); + +/** Used to compose bitmasks for function metadata. */ +var WRAP_BIND_FLAG = 1; + +/** + * Creates a function that wraps `func` to invoke it with the optional `this` + * binding of `thisArg`. + * + * @private + * @param {Function} func The function to wrap. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @param {*} [thisArg] The `this` binding of `func`. + * @returns {Function} Returns the new wrapped function. + */ +function createBind(func, bitmask, thisArg) { + var isBind = bitmask & WRAP_BIND_FLAG, + Ctor = createCtor(func); + + function wrapper() { + var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func; + return fn.apply(isBind ? thisArg : this, arguments); + } + return wrapper; +} + +module.exports = createBind; diff --git a/node_modules/lodash/_createCaseFirst.js b/node_modules/lodash/_createCaseFirst.js new file mode 100644 index 0000000..fe8ea48 --- /dev/null +++ b/node_modules/lodash/_createCaseFirst.js @@ -0,0 +1,33 @@ +var castSlice = require('./_castSlice'), + hasUnicode = require('./_hasUnicode'), + stringToArray = require('./_stringToArray'), + toString = require('./toString'); + +/** + * Creates a function like `_.lowerFirst`. + * + * @private + * @param {string} methodName The name of the `String` case method to use. + * @returns {Function} Returns the new case function. + */ +function createCaseFirst(methodName) { + return function(string) { + string = toString(string); + + var strSymbols = hasUnicode(string) + ? stringToArray(string) + : undefined; + + var chr = strSymbols + ? strSymbols[0] + : string.charAt(0); + + var trailing = strSymbols + ? castSlice(strSymbols, 1).join('') + : string.slice(1); + + return chr[methodName]() + trailing; + }; +} + +module.exports = createCaseFirst; diff --git a/node_modules/lodash/_createCompounder.js b/node_modules/lodash/_createCompounder.js new file mode 100644 index 0000000..8d4cee2 --- /dev/null +++ b/node_modules/lodash/_createCompounder.js @@ -0,0 +1,24 @@ +var arrayReduce = require('./_arrayReduce'), + deburr = require('./deburr'), + words = require('./words'); + +/** Used to compose unicode capture groups. */ +var rsApos = "['\u2019]"; + +/** Used to match apostrophes. */ +var reApos = RegExp(rsApos, 'g'); + +/** + * Creates a function like `_.camelCase`. + * + * @private + * @param {Function} callback The function to combine each word. + * @returns {Function} Returns the new compounder function. + */ +function createCompounder(callback) { + return function(string) { + return arrayReduce(words(deburr(string).replace(reApos, '')), callback, ''); + }; +} + +module.exports = createCompounder; diff --git a/node_modules/lodash/_createCtor.js b/node_modules/lodash/_createCtor.js new file mode 100644 index 0000000..9047aa5 --- /dev/null +++ b/node_modules/lodash/_createCtor.js @@ -0,0 +1,37 @@ +var baseCreate = require('./_baseCreate'), + isObject = require('./isObject'); + +/** + * Creates a function that produces an instance of `Ctor` regardless of + * whether it was invoked as part of a `new` expression or by `call` or `apply`. + * + * @private + * @param {Function} Ctor The constructor to wrap. + * @returns {Function} Returns the new wrapped function. + */ +function createCtor(Ctor) { + return function() { + // Use a `switch` statement to work with class constructors. See + // http://ecma-international.org/ecma-262/7.0/#sec-ecmascript-function-objects-call-thisargument-argumentslist + // for more details. + var args = arguments; + switch (args.length) { + case 0: return new Ctor; + case 1: return new Ctor(args[0]); + case 2: return new Ctor(args[0], args[1]); + case 3: return new Ctor(args[0], args[1], args[2]); + case 4: return new Ctor(args[0], args[1], args[2], args[3]); + case 5: return new Ctor(args[0], args[1], args[2], args[3], args[4]); + case 6: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5]); + case 7: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5], args[6]); + } + var thisBinding = baseCreate(Ctor.prototype), + result = Ctor.apply(thisBinding, args); + + // Mimic the constructor's `return` behavior. + // See https://es5.github.io/#x13.2.2 for more details. + return isObject(result) ? result : thisBinding; + }; +} + +module.exports = createCtor; diff --git a/node_modules/lodash/_createCurry.js b/node_modules/lodash/_createCurry.js new file mode 100644 index 0000000..f06c2cd --- /dev/null +++ b/node_modules/lodash/_createCurry.js @@ -0,0 +1,46 @@ +var apply = require('./_apply'), + createCtor = require('./_createCtor'), + createHybrid = require('./_createHybrid'), + createRecurry = require('./_createRecurry'), + getHolder = require('./_getHolder'), + replaceHolders = require('./_replaceHolders'), + root = require('./_root'); + +/** + * Creates a function that wraps `func` to enable currying. + * + * @private + * @param {Function} func The function to wrap. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @param {number} arity The arity of `func`. + * @returns {Function} Returns the new wrapped function. + */ +function createCurry(func, bitmask, arity) { + var Ctor = createCtor(func); + + function wrapper() { + var length = arguments.length, + args = Array(length), + index = length, + placeholder = getHolder(wrapper); + + while (index--) { + args[index] = arguments[index]; + } + var holders = (length < 3 && args[0] !== placeholder && args[length - 1] !== placeholder) + ? [] + : replaceHolders(args, placeholder); + + length -= holders.length; + if (length < arity) { + return createRecurry( + func, bitmask, createHybrid, wrapper.placeholder, undefined, + args, holders, undefined, undefined, arity - length); + } + var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func; + return apply(fn, this, args); + } + return wrapper; +} + +module.exports = createCurry; diff --git a/node_modules/lodash/_createFind.js b/node_modules/lodash/_createFind.js new file mode 100644 index 0000000..8859ff8 --- /dev/null +++ b/node_modules/lodash/_createFind.js @@ -0,0 +1,25 @@ +var baseIteratee = require('./_baseIteratee'), + isArrayLike = require('./isArrayLike'), + keys = require('./keys'); + +/** + * Creates a `_.find` or `_.findLast` function. + * + * @private + * @param {Function} findIndexFunc The function to find the collection index. + * @returns {Function} Returns the new find function. + */ +function createFind(findIndexFunc) { + return function(collection, predicate, fromIndex) { + var iterable = Object(collection); + if (!isArrayLike(collection)) { + var iteratee = baseIteratee(predicate, 3); + collection = keys(collection); + predicate = function(key) { return iteratee(iterable[key], key, iterable); }; + } + var index = findIndexFunc(collection, predicate, fromIndex); + return index > -1 ? iterable[iteratee ? collection[index] : index] : undefined; + }; +} + +module.exports = createFind; diff --git a/node_modules/lodash/_createFlow.js b/node_modules/lodash/_createFlow.js new file mode 100644 index 0000000..baaddbf --- /dev/null +++ b/node_modules/lodash/_createFlow.js @@ -0,0 +1,78 @@ +var LodashWrapper = require('./_LodashWrapper'), + flatRest = require('./_flatRest'), + getData = require('./_getData'), + getFuncName = require('./_getFuncName'), + isArray = require('./isArray'), + isLaziable = require('./_isLaziable'); + +/** Error message constants. */ +var FUNC_ERROR_TEXT = 'Expected a function'; + +/** Used to compose bitmasks for function metadata. */ +var WRAP_CURRY_FLAG = 8, + WRAP_PARTIAL_FLAG = 32, + WRAP_ARY_FLAG = 128, + WRAP_REARG_FLAG = 256; + +/** + * Creates a `_.flow` or `_.flowRight` function. + * + * @private + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Function} Returns the new flow function. + */ +function createFlow(fromRight) { + return flatRest(function(funcs) { + var length = funcs.length, + index = length, + prereq = LodashWrapper.prototype.thru; + + if (fromRight) { + funcs.reverse(); + } + while (index--) { + var func = funcs[index]; + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + if (prereq && !wrapper && getFuncName(func) == 'wrapper') { + var wrapper = new LodashWrapper([], true); + } + } + index = wrapper ? index : length; + while (++index < length) { + func = funcs[index]; + + var funcName = getFuncName(func), + data = funcName == 'wrapper' ? getData(func) : undefined; + + if (data && isLaziable(data[0]) && + data[1] == (WRAP_ARY_FLAG | WRAP_CURRY_FLAG | WRAP_PARTIAL_FLAG | WRAP_REARG_FLAG) && + !data[4].length && data[9] == 1 + ) { + wrapper = wrapper[getFuncName(data[0])].apply(wrapper, data[3]); + } else { + wrapper = (func.length == 1 && isLaziable(func)) + ? wrapper[funcName]() + : wrapper.thru(func); + } + } + return function() { + var args = arguments, + value = args[0]; + + if (wrapper && args.length == 1 && isArray(value)) { + return wrapper.plant(value).value(); + } + var index = 0, + result = length ? funcs[index].apply(this, args) : value; + + while (++index < length) { + result = funcs[index].call(this, result); + } + return result; + }; + }); +} + +module.exports = createFlow; diff --git a/node_modules/lodash/_createHybrid.js b/node_modules/lodash/_createHybrid.js new file mode 100644 index 0000000..b671bd1 --- /dev/null +++ b/node_modules/lodash/_createHybrid.js @@ -0,0 +1,92 @@ +var composeArgs = require('./_composeArgs'), + composeArgsRight = require('./_composeArgsRight'), + countHolders = require('./_countHolders'), + createCtor = require('./_createCtor'), + createRecurry = require('./_createRecurry'), + getHolder = require('./_getHolder'), + reorder = require('./_reorder'), + replaceHolders = require('./_replaceHolders'), + root = require('./_root'); + +/** Used to compose bitmasks for function metadata. */ +var WRAP_BIND_FLAG = 1, + WRAP_BIND_KEY_FLAG = 2, + WRAP_CURRY_FLAG = 8, + WRAP_CURRY_RIGHT_FLAG = 16, + WRAP_ARY_FLAG = 128, + WRAP_FLIP_FLAG = 512; + +/** + * Creates a function that wraps `func` to invoke it with optional `this` + * binding of `thisArg`, partial application, and currying. + * + * @private + * @param {Function|string} func The function or method name to wrap. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @param {*} [thisArg] The `this` binding of `func`. + * @param {Array} [partials] The arguments to prepend to those provided to + * the new function. + * @param {Array} [holders] The `partials` placeholder indexes. + * @param {Array} [partialsRight] The arguments to append to those provided + * to the new function. + * @param {Array} [holdersRight] The `partialsRight` placeholder indexes. + * @param {Array} [argPos] The argument positions of the new function. + * @param {number} [ary] The arity cap of `func`. + * @param {number} [arity] The arity of `func`. + * @returns {Function} Returns the new wrapped function. + */ +function createHybrid(func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary, arity) { + var isAry = bitmask & WRAP_ARY_FLAG, + isBind = bitmask & WRAP_BIND_FLAG, + isBindKey = bitmask & WRAP_BIND_KEY_FLAG, + isCurried = bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG), + isFlip = bitmask & WRAP_FLIP_FLAG, + Ctor = isBindKey ? undefined : createCtor(func); + + function wrapper() { + var length = arguments.length, + args = Array(length), + index = length; + + while (index--) { + args[index] = arguments[index]; + } + if (isCurried) { + var placeholder = getHolder(wrapper), + holdersCount = countHolders(args, placeholder); + } + if (partials) { + args = composeArgs(args, partials, holders, isCurried); + } + if (partialsRight) { + args = composeArgsRight(args, partialsRight, holdersRight, isCurried); + } + length -= holdersCount; + if (isCurried && length < arity) { + var newHolders = replaceHolders(args, placeholder); + return createRecurry( + func, bitmask, createHybrid, wrapper.placeholder, thisArg, + args, newHolders, argPos, ary, arity - length + ); + } + var thisBinding = isBind ? thisArg : this, + fn = isBindKey ? thisBinding[func] : func; + + length = args.length; + if (argPos) { + args = reorder(args, argPos); + } else if (isFlip && length > 1) { + args.reverse(); + } + if (isAry && ary < length) { + args.length = ary; + } + if (this && this !== root && this instanceof wrapper) { + fn = Ctor || createCtor(fn); + } + return fn.apply(thisBinding, args); + } + return wrapper; +} + +module.exports = createHybrid; diff --git a/node_modules/lodash/_createInverter.js b/node_modules/lodash/_createInverter.js new file mode 100644 index 0000000..6c0c562 --- /dev/null +++ b/node_modules/lodash/_createInverter.js @@ -0,0 +1,17 @@ +var baseInverter = require('./_baseInverter'); + +/** + * Creates a function like `_.invertBy`. + * + * @private + * @param {Function} setter The function to set accumulator values. + * @param {Function} toIteratee The function to resolve iteratees. + * @returns {Function} Returns the new inverter function. + */ +function createInverter(setter, toIteratee) { + return function(object, iteratee) { + return baseInverter(object, setter, toIteratee(iteratee), {}); + }; +} + +module.exports = createInverter; diff --git a/node_modules/lodash/_createMathOperation.js b/node_modules/lodash/_createMathOperation.js new file mode 100644 index 0000000..f1e238a --- /dev/null +++ b/node_modules/lodash/_createMathOperation.js @@ -0,0 +1,38 @@ +var baseToNumber = require('./_baseToNumber'), + baseToString = require('./_baseToString'); + +/** + * Creates a function that performs a mathematical operation on two values. + * + * @private + * @param {Function} operator The function to perform the operation. + * @param {number} [defaultValue] The value used for `undefined` arguments. + * @returns {Function} Returns the new mathematical operation function. + */ +function createMathOperation(operator, defaultValue) { + return function(value, other) { + var result; + if (value === undefined && other === undefined) { + return defaultValue; + } + if (value !== undefined) { + result = value; + } + if (other !== undefined) { + if (result === undefined) { + return other; + } + if (typeof value == 'string' || typeof other == 'string') { + value = baseToString(value); + other = baseToString(other); + } else { + value = baseToNumber(value); + other = baseToNumber(other); + } + result = operator(value, other); + } + return result; + }; +} + +module.exports = createMathOperation; diff --git a/node_modules/lodash/_createOver.js b/node_modules/lodash/_createOver.js new file mode 100644 index 0000000..3b94551 --- /dev/null +++ b/node_modules/lodash/_createOver.js @@ -0,0 +1,27 @@ +var apply = require('./_apply'), + arrayMap = require('./_arrayMap'), + baseIteratee = require('./_baseIteratee'), + baseRest = require('./_baseRest'), + baseUnary = require('./_baseUnary'), + flatRest = require('./_flatRest'); + +/** + * Creates a function like `_.over`. + * + * @private + * @param {Function} arrayFunc The function to iterate over iteratees. + * @returns {Function} Returns the new over function. + */ +function createOver(arrayFunc) { + return flatRest(function(iteratees) { + iteratees = arrayMap(iteratees, baseUnary(baseIteratee)); + return baseRest(function(args) { + var thisArg = this; + return arrayFunc(iteratees, function(iteratee) { + return apply(iteratee, thisArg, args); + }); + }); + }); +} + +module.exports = createOver; diff --git a/node_modules/lodash/_createPadding.js b/node_modules/lodash/_createPadding.js new file mode 100644 index 0000000..2124612 --- /dev/null +++ b/node_modules/lodash/_createPadding.js @@ -0,0 +1,33 @@ +var baseRepeat = require('./_baseRepeat'), + baseToString = require('./_baseToString'), + castSlice = require('./_castSlice'), + hasUnicode = require('./_hasUnicode'), + stringSize = require('./_stringSize'), + stringToArray = require('./_stringToArray'); + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeCeil = Math.ceil; + +/** + * Creates the padding for `string` based on `length`. The `chars` string + * is truncated if the number of characters exceeds `length`. + * + * @private + * @param {number} length The padding length. + * @param {string} [chars=' '] The string used as padding. + * @returns {string} Returns the padding for `string`. + */ +function createPadding(length, chars) { + chars = chars === undefined ? ' ' : baseToString(chars); + + var charsLength = chars.length; + if (charsLength < 2) { + return charsLength ? baseRepeat(chars, length) : chars; + } + var result = baseRepeat(chars, nativeCeil(length / stringSize(chars))); + return hasUnicode(chars) + ? castSlice(stringToArray(result), 0, length).join('') + : result.slice(0, length); +} + +module.exports = createPadding; diff --git a/node_modules/lodash/_createPartial.js b/node_modules/lodash/_createPartial.js new file mode 100644 index 0000000..e16c248 --- /dev/null +++ b/node_modules/lodash/_createPartial.js @@ -0,0 +1,43 @@ +var apply = require('./_apply'), + createCtor = require('./_createCtor'), + root = require('./_root'); + +/** Used to compose bitmasks for function metadata. */ +var WRAP_BIND_FLAG = 1; + +/** + * Creates a function that wraps `func` to invoke it with the `this` binding + * of `thisArg` and `partials` prepended to the arguments it receives. + * + * @private + * @param {Function} func The function to wrap. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @param {*} thisArg The `this` binding of `func`. + * @param {Array} partials The arguments to prepend to those provided to + * the new function. + * @returns {Function} Returns the new wrapped function. + */ +function createPartial(func, bitmask, thisArg, partials) { + var isBind = bitmask & WRAP_BIND_FLAG, + Ctor = createCtor(func); + + function wrapper() { + var argsIndex = -1, + argsLength = arguments.length, + leftIndex = -1, + leftLength = partials.length, + args = Array(leftLength + argsLength), + fn = (this && this !== root && this instanceof wrapper) ? Ctor : func; + + while (++leftIndex < leftLength) { + args[leftIndex] = partials[leftIndex]; + } + while (argsLength--) { + args[leftIndex++] = arguments[++argsIndex]; + } + return apply(fn, isBind ? thisArg : this, args); + } + return wrapper; +} + +module.exports = createPartial; diff --git a/node_modules/lodash/_createRange.js b/node_modules/lodash/_createRange.js new file mode 100644 index 0000000..9f52c77 --- /dev/null +++ b/node_modules/lodash/_createRange.js @@ -0,0 +1,30 @@ +var baseRange = require('./_baseRange'), + isIterateeCall = require('./_isIterateeCall'), + toFinite = require('./toFinite'); + +/** + * Creates a `_.range` or `_.rangeRight` function. + * + * @private + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Function} Returns the new range function. + */ +function createRange(fromRight) { + return function(start, end, step) { + if (step && typeof step != 'number' && isIterateeCall(start, end, step)) { + end = step = undefined; + } + // Ensure the sign of `-0` is preserved. + start = toFinite(start); + if (end === undefined) { + end = start; + start = 0; + } else { + end = toFinite(end); + } + step = step === undefined ? (start < end ? 1 : -1) : toFinite(step); + return baseRange(start, end, step, fromRight); + }; +} + +module.exports = createRange; diff --git a/node_modules/lodash/_createRecurry.js b/node_modules/lodash/_createRecurry.js new file mode 100644 index 0000000..eb29fb2 --- /dev/null +++ b/node_modules/lodash/_createRecurry.js @@ -0,0 +1,56 @@ +var isLaziable = require('./_isLaziable'), + setData = require('./_setData'), + setWrapToString = require('./_setWrapToString'); + +/** Used to compose bitmasks for function metadata. */ +var WRAP_BIND_FLAG = 1, + WRAP_BIND_KEY_FLAG = 2, + WRAP_CURRY_BOUND_FLAG = 4, + WRAP_CURRY_FLAG = 8, + WRAP_PARTIAL_FLAG = 32, + WRAP_PARTIAL_RIGHT_FLAG = 64; + +/** + * Creates a function that wraps `func` to continue currying. + * + * @private + * @param {Function} func The function to wrap. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @param {Function} wrapFunc The function to create the `func` wrapper. + * @param {*} placeholder The placeholder value. + * @param {*} [thisArg] The `this` binding of `func`. + * @param {Array} [partials] The arguments to prepend to those provided to + * the new function. + * @param {Array} [holders] The `partials` placeholder indexes. + * @param {Array} [argPos] The argument positions of the new function. + * @param {number} [ary] The arity cap of `func`. + * @param {number} [arity] The arity of `func`. + * @returns {Function} Returns the new wrapped function. + */ +function createRecurry(func, bitmask, wrapFunc, placeholder, thisArg, partials, holders, argPos, ary, arity) { + var isCurry = bitmask & WRAP_CURRY_FLAG, + newHolders = isCurry ? holders : undefined, + newHoldersRight = isCurry ? undefined : holders, + newPartials = isCurry ? partials : undefined, + newPartialsRight = isCurry ? undefined : partials; + + bitmask |= (isCurry ? WRAP_PARTIAL_FLAG : WRAP_PARTIAL_RIGHT_FLAG); + bitmask &= ~(isCurry ? WRAP_PARTIAL_RIGHT_FLAG : WRAP_PARTIAL_FLAG); + + if (!(bitmask & WRAP_CURRY_BOUND_FLAG)) { + bitmask &= ~(WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG); + } + var newData = [ + func, bitmask, thisArg, newPartials, newHolders, newPartialsRight, + newHoldersRight, argPos, ary, arity + ]; + + var result = wrapFunc.apply(undefined, newData); + if (isLaziable(func)) { + setData(result, newData); + } + result.placeholder = placeholder; + return setWrapToString(result, func, bitmask); +} + +module.exports = createRecurry; diff --git a/node_modules/lodash/_createRelationalOperation.js b/node_modules/lodash/_createRelationalOperation.js new file mode 100644 index 0000000..a17c6b5 --- /dev/null +++ b/node_modules/lodash/_createRelationalOperation.js @@ -0,0 +1,20 @@ +var toNumber = require('./toNumber'); + +/** + * Creates a function that performs a relational operation on two values. + * + * @private + * @param {Function} operator The function to perform the operation. + * @returns {Function} Returns the new relational operation function. + */ +function createRelationalOperation(operator) { + return function(value, other) { + if (!(typeof value == 'string' && typeof other == 'string')) { + value = toNumber(value); + other = toNumber(other); + } + return operator(value, other); + }; +} + +module.exports = createRelationalOperation; diff --git a/node_modules/lodash/_createRound.js b/node_modules/lodash/_createRound.js new file mode 100644 index 0000000..88be5df --- /dev/null +++ b/node_modules/lodash/_createRound.js @@ -0,0 +1,35 @@ +var root = require('./_root'), + toInteger = require('./toInteger'), + toNumber = require('./toNumber'), + toString = require('./toString'); + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeIsFinite = root.isFinite, + nativeMin = Math.min; + +/** + * Creates a function like `_.round`. + * + * @private + * @param {string} methodName The name of the `Math` method to use when rounding. + * @returns {Function} Returns the new round function. + */ +function createRound(methodName) { + var func = Math[methodName]; + return function(number, precision) { + number = toNumber(number); + precision = precision == null ? 0 : nativeMin(toInteger(precision), 292); + if (precision && nativeIsFinite(number)) { + // Shift with exponential notation to avoid floating-point issues. + // See [MDN](https://mdn.io/round#Examples) for more details. + var pair = (toString(number) + 'e').split('e'), + value = func(pair[0] + 'e' + (+pair[1] + precision)); + + pair = (toString(value) + 'e').split('e'); + return +(pair[0] + 'e' + (+pair[1] - precision)); + } + return func(number); + }; +} + +module.exports = createRound; diff --git a/node_modules/lodash/_createSet.js b/node_modules/lodash/_createSet.js new file mode 100644 index 0000000..0f644ee --- /dev/null +++ b/node_modules/lodash/_createSet.js @@ -0,0 +1,19 @@ +var Set = require('./_Set'), + noop = require('./noop'), + setToArray = require('./_setToArray'); + +/** Used as references for various `Number` constants. */ +var INFINITY = 1 / 0; + +/** + * Creates a set object of `values`. + * + * @private + * @param {Array} values The values to add to the set. + * @returns {Object} Returns the new set. + */ +var createSet = !(Set && (1 / setToArray(new Set([,-0]))[1]) == INFINITY) ? noop : function(values) { + return new Set(values); +}; + +module.exports = createSet; diff --git a/node_modules/lodash/_createToPairs.js b/node_modules/lodash/_createToPairs.js new file mode 100644 index 0000000..568417a --- /dev/null +++ b/node_modules/lodash/_createToPairs.js @@ -0,0 +1,30 @@ +var baseToPairs = require('./_baseToPairs'), + getTag = require('./_getTag'), + mapToArray = require('./_mapToArray'), + setToPairs = require('./_setToPairs'); + +/** `Object#toString` result references. */ +var mapTag = '[object Map]', + setTag = '[object Set]'; + +/** + * Creates a `_.toPairs` or `_.toPairsIn` function. + * + * @private + * @param {Function} keysFunc The function to get the keys of a given object. + * @returns {Function} Returns the new pairs function. + */ +function createToPairs(keysFunc) { + return function(object) { + var tag = getTag(object); + if (tag == mapTag) { + return mapToArray(object); + } + if (tag == setTag) { + return setToPairs(object); + } + return baseToPairs(object, keysFunc(object)); + }; +} + +module.exports = createToPairs; diff --git a/node_modules/lodash/_createWrap.js b/node_modules/lodash/_createWrap.js new file mode 100644 index 0000000..33f0633 --- /dev/null +++ b/node_modules/lodash/_createWrap.js @@ -0,0 +1,106 @@ +var baseSetData = require('./_baseSetData'), + createBind = require('./_createBind'), + createCurry = require('./_createCurry'), + createHybrid = require('./_createHybrid'), + createPartial = require('./_createPartial'), + getData = require('./_getData'), + mergeData = require('./_mergeData'), + setData = require('./_setData'), + setWrapToString = require('./_setWrapToString'), + toInteger = require('./toInteger'); + +/** Error message constants. */ +var FUNC_ERROR_TEXT = 'Expected a function'; + +/** Used to compose bitmasks for function metadata. */ +var WRAP_BIND_FLAG = 1, + WRAP_BIND_KEY_FLAG = 2, + WRAP_CURRY_FLAG = 8, + WRAP_CURRY_RIGHT_FLAG = 16, + WRAP_PARTIAL_FLAG = 32, + WRAP_PARTIAL_RIGHT_FLAG = 64; + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeMax = Math.max; + +/** + * Creates a function that either curries or invokes `func` with optional + * `this` binding and partially applied arguments. + * + * @private + * @param {Function|string} func The function or method name to wrap. + * @param {number} bitmask The bitmask flags. + * 1 - `_.bind` + * 2 - `_.bindKey` + * 4 - `_.curry` or `_.curryRight` of a bound function + * 8 - `_.curry` + * 16 - `_.curryRight` + * 32 - `_.partial` + * 64 - `_.partialRight` + * 128 - `_.rearg` + * 256 - `_.ary` + * 512 - `_.flip` + * @param {*} [thisArg] The `this` binding of `func`. + * @param {Array} [partials] The arguments to be partially applied. + * @param {Array} [holders] The `partials` placeholder indexes. + * @param {Array} [argPos] The argument positions of the new function. + * @param {number} [ary] The arity cap of `func`. + * @param {number} [arity] The arity of `func`. + * @returns {Function} Returns the new wrapped function. + */ +function createWrap(func, bitmask, thisArg, partials, holders, argPos, ary, arity) { + var isBindKey = bitmask & WRAP_BIND_KEY_FLAG; + if (!isBindKey && typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + var length = partials ? partials.length : 0; + if (!length) { + bitmask &= ~(WRAP_PARTIAL_FLAG | WRAP_PARTIAL_RIGHT_FLAG); + partials = holders = undefined; + } + ary = ary === undefined ? ary : nativeMax(toInteger(ary), 0); + arity = arity === undefined ? arity : toInteger(arity); + length -= holders ? holders.length : 0; + + if (bitmask & WRAP_PARTIAL_RIGHT_FLAG) { + var partialsRight = partials, + holdersRight = holders; + + partials = holders = undefined; + } + var data = isBindKey ? undefined : getData(func); + + var newData = [ + func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, + argPos, ary, arity + ]; + + if (data) { + mergeData(newData, data); + } + func = newData[0]; + bitmask = newData[1]; + thisArg = newData[2]; + partials = newData[3]; + holders = newData[4]; + arity = newData[9] = newData[9] === undefined + ? (isBindKey ? 0 : func.length) + : nativeMax(newData[9] - length, 0); + + if (!arity && bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG)) { + bitmask &= ~(WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG); + } + if (!bitmask || bitmask == WRAP_BIND_FLAG) { + var result = createBind(func, bitmask, thisArg); + } else if (bitmask == WRAP_CURRY_FLAG || bitmask == WRAP_CURRY_RIGHT_FLAG) { + result = createCurry(func, bitmask, arity); + } else if ((bitmask == WRAP_PARTIAL_FLAG || bitmask == (WRAP_BIND_FLAG | WRAP_PARTIAL_FLAG)) && !holders.length) { + result = createPartial(func, bitmask, thisArg, partials); + } else { + result = createHybrid.apply(undefined, newData); + } + var setter = data ? baseSetData : setData; + return setWrapToString(setter(result, newData), func, bitmask); +} + +module.exports = createWrap; diff --git a/node_modules/lodash/_customDefaultsAssignIn.js b/node_modules/lodash/_customDefaultsAssignIn.js new file mode 100644 index 0000000..1f49e6f --- /dev/null +++ b/node_modules/lodash/_customDefaultsAssignIn.js @@ -0,0 +1,29 @@ +var eq = require('./eq'); + +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var hasOwnProperty = objectProto.hasOwnProperty; + +/** + * Used by `_.defaults` to customize its `_.assignIn` use to assign properties + * of source objects to the destination object for all destination properties + * that resolve to `undefined`. + * + * @private + * @param {*} objValue The destination value. + * @param {*} srcValue The source value. + * @param {string} key The key of the property to assign. + * @param {Object} object The parent object of `objValue`. + * @returns {*} Returns the value to assign. + */ +function customDefaultsAssignIn(objValue, srcValue, key, object) { + if (objValue === undefined || + (eq(objValue, objectProto[key]) && !hasOwnProperty.call(object, key))) { + return srcValue; + } + return objValue; +} + +module.exports = customDefaultsAssignIn; diff --git a/node_modules/lodash/_customDefaultsMerge.js b/node_modules/lodash/_customDefaultsMerge.js new file mode 100644 index 0000000..4cab317 --- /dev/null +++ b/node_modules/lodash/_customDefaultsMerge.js @@ -0,0 +1,28 @@ +var baseMerge = require('./_baseMerge'), + isObject = require('./isObject'); + +/** + * Used by `_.defaultsDeep` to customize its `_.merge` use to merge source + * objects into destination objects that are passed thru. + * + * @private + * @param {*} objValue The destination value. + * @param {*} srcValue The source value. + * @param {string} key The key of the property to merge. + * @param {Object} object The parent object of `objValue`. + * @param {Object} source The parent object of `srcValue`. + * @param {Object} [stack] Tracks traversed source values and their merged + * counterparts. + * @returns {*} Returns the value to assign. + */ +function customDefaultsMerge(objValue, srcValue, key, object, source, stack) { + if (isObject(objValue) && isObject(srcValue)) { + // Recursively merge objects and arrays (susceptible to call stack limits). + stack.set(srcValue, objValue); + baseMerge(objValue, srcValue, undefined, customDefaultsMerge, stack); + stack['delete'](srcValue); + } + return objValue; +} + +module.exports = customDefaultsMerge; diff --git a/node_modules/lodash/_customOmitClone.js b/node_modules/lodash/_customOmitClone.js new file mode 100644 index 0000000..968db2e --- /dev/null +++ b/node_modules/lodash/_customOmitClone.js @@ -0,0 +1,16 @@ +var isPlainObject = require('./isPlainObject'); + +/** + * Used by `_.omit` to customize its `_.cloneDeep` use to only clone plain + * objects. + * + * @private + * @param {*} value The value to inspect. + * @param {string} key The key of the property to inspect. + * @returns {*} Returns the uncloned value or `undefined` to defer cloning to `_.cloneDeep`. + */ +function customOmitClone(value) { + return isPlainObject(value) ? undefined : value; +} + +module.exports = customOmitClone; diff --git a/node_modules/lodash/_deburrLetter.js b/node_modules/lodash/_deburrLetter.js new file mode 100644 index 0000000..3e531ed --- /dev/null +++ b/node_modules/lodash/_deburrLetter.js @@ -0,0 +1,71 @@ +var basePropertyOf = require('./_basePropertyOf'); + +/** Used to map Latin Unicode letters to basic Latin letters. */ +var deburredLetters = { + // Latin-1 Supplement block. + '\xc0': 'A', '\xc1': 'A', '\xc2': 'A', '\xc3': 'A', '\xc4': 'A', '\xc5': 'A', + '\xe0': 'a', '\xe1': 'a', '\xe2': 'a', '\xe3': 'a', '\xe4': 'a', '\xe5': 'a', + '\xc7': 'C', '\xe7': 'c', + '\xd0': 'D', '\xf0': 'd', + '\xc8': 'E', '\xc9': 'E', '\xca': 'E', '\xcb': 'E', + '\xe8': 'e', '\xe9': 'e', '\xea': 'e', '\xeb': 'e', + '\xcc': 'I', '\xcd': 'I', '\xce': 'I', '\xcf': 'I', + '\xec': 'i', '\xed': 'i', '\xee': 'i', '\xef': 'i', + '\xd1': 'N', '\xf1': 'n', + '\xd2': 'O', '\xd3': 'O', '\xd4': 'O', '\xd5': 'O', '\xd6': 'O', '\xd8': 'O', + '\xf2': 'o', '\xf3': 'o', '\xf4': 'o', '\xf5': 'o', '\xf6': 'o', '\xf8': 'o', + '\xd9': 'U', '\xda': 'U', '\xdb': 'U', '\xdc': 'U', + '\xf9': 'u', '\xfa': 'u', '\xfb': 'u', '\xfc': 'u', + '\xdd': 'Y', '\xfd': 'y', '\xff': 'y', + '\xc6': 'Ae', '\xe6': 'ae', + '\xde': 'Th', '\xfe': 'th', + '\xdf': 'ss', + // Latin Extended-A block. + '\u0100': 'A', '\u0102': 'A', '\u0104': 'A', + '\u0101': 'a', '\u0103': 'a', '\u0105': 'a', + '\u0106': 'C', '\u0108': 'C', '\u010a': 'C', '\u010c': 'C', + '\u0107': 'c', '\u0109': 'c', '\u010b': 'c', '\u010d': 'c', + '\u010e': 'D', '\u0110': 'D', '\u010f': 'd', '\u0111': 'd', + '\u0112': 'E', '\u0114': 'E', '\u0116': 'E', '\u0118': 'E', '\u011a': 'E', + '\u0113': 'e', '\u0115': 'e', '\u0117': 'e', '\u0119': 'e', '\u011b': 'e', + '\u011c': 'G', '\u011e': 'G', '\u0120': 'G', '\u0122': 'G', + '\u011d': 'g', '\u011f': 'g', '\u0121': 'g', '\u0123': 'g', + '\u0124': 'H', '\u0126': 'H', '\u0125': 'h', '\u0127': 'h', + '\u0128': 'I', '\u012a': 'I', '\u012c': 'I', '\u012e': 'I', '\u0130': 'I', + '\u0129': 'i', '\u012b': 'i', '\u012d': 'i', '\u012f': 'i', '\u0131': 'i', + '\u0134': 'J', '\u0135': 'j', + '\u0136': 'K', '\u0137': 'k', '\u0138': 'k', + '\u0139': 'L', '\u013b': 'L', '\u013d': 'L', '\u013f': 'L', '\u0141': 'L', + '\u013a': 'l', '\u013c': 'l', '\u013e': 'l', '\u0140': 'l', '\u0142': 'l', + '\u0143': 'N', '\u0145': 'N', '\u0147': 'N', '\u014a': 'N', + '\u0144': 'n', '\u0146': 'n', '\u0148': 'n', '\u014b': 'n', + '\u014c': 'O', '\u014e': 'O', '\u0150': 'O', + '\u014d': 'o', '\u014f': 'o', '\u0151': 'o', + '\u0154': 'R', '\u0156': 'R', '\u0158': 'R', + '\u0155': 'r', '\u0157': 'r', '\u0159': 'r', + '\u015a': 'S', '\u015c': 'S', '\u015e': 'S', '\u0160': 'S', + '\u015b': 's', '\u015d': 's', '\u015f': 's', '\u0161': 's', + '\u0162': 'T', '\u0164': 'T', '\u0166': 'T', + '\u0163': 't', '\u0165': 't', '\u0167': 't', + '\u0168': 'U', '\u016a': 'U', '\u016c': 'U', '\u016e': 'U', '\u0170': 'U', '\u0172': 'U', + '\u0169': 'u', '\u016b': 'u', '\u016d': 'u', '\u016f': 'u', '\u0171': 'u', '\u0173': 'u', + '\u0174': 'W', '\u0175': 'w', + '\u0176': 'Y', '\u0177': 'y', '\u0178': 'Y', + '\u0179': 'Z', '\u017b': 'Z', '\u017d': 'Z', + '\u017a': 'z', '\u017c': 'z', '\u017e': 'z', + '\u0132': 'IJ', '\u0133': 'ij', + '\u0152': 'Oe', '\u0153': 'oe', + '\u0149': "'n", '\u017f': 's' +}; + +/** + * Used by `_.deburr` to convert Latin-1 Supplement and Latin Extended-A + * letters to basic Latin letters. + * + * @private + * @param {string} letter The matched letter to deburr. + * @returns {string} Returns the deburred letter. + */ +var deburrLetter = basePropertyOf(deburredLetters); + +module.exports = deburrLetter; diff --git a/node_modules/lodash/_defineProperty.js b/node_modules/lodash/_defineProperty.js new file mode 100644 index 0000000..b6116d9 --- /dev/null +++ b/node_modules/lodash/_defineProperty.js @@ -0,0 +1,11 @@ +var getNative = require('./_getNative'); + +var defineProperty = (function() { + try { + var func = getNative(Object, 'defineProperty'); + func({}, '', {}); + return func; + } catch (e) {} +}()); + +module.exports = defineProperty; diff --git a/node_modules/lodash/_equalArrays.js b/node_modules/lodash/_equalArrays.js new file mode 100644 index 0000000..824228c --- /dev/null +++ b/node_modules/lodash/_equalArrays.js @@ -0,0 +1,84 @@ +var SetCache = require('./_SetCache'), + arraySome = require('./_arraySome'), + cacheHas = require('./_cacheHas'); + +/** Used to compose bitmasks for value comparisons. */ +var COMPARE_PARTIAL_FLAG = 1, + COMPARE_UNORDERED_FLAG = 2; + +/** + * A specialized version of `baseIsEqualDeep` for arrays with support for + * partial deep comparisons. + * + * @private + * @param {Array} array The array to compare. + * @param {Array} other The other array to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} stack Tracks traversed `array` and `other` objects. + * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`. + */ +function equalArrays(array, other, bitmask, customizer, equalFunc, stack) { + var isPartial = bitmask & COMPARE_PARTIAL_FLAG, + arrLength = array.length, + othLength = other.length; + + if (arrLength != othLength && !(isPartial && othLength > arrLength)) { + return false; + } + // Check that cyclic values are equal. + var arrStacked = stack.get(array); + var othStacked = stack.get(other); + if (arrStacked && othStacked) { + return arrStacked == other && othStacked == array; + } + var index = -1, + result = true, + seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined; + + stack.set(array, other); + stack.set(other, array); + + // Ignore non-index properties. + while (++index < arrLength) { + var arrValue = array[index], + othValue = other[index]; + + if (customizer) { + var compared = isPartial + ? customizer(othValue, arrValue, index, other, array, stack) + : customizer(arrValue, othValue, index, array, other, stack); + } + if (compared !== undefined) { + if (compared) { + continue; + } + result = false; + break; + } + // Recursively compare arrays (susceptible to call stack limits). + if (seen) { + if (!arraySome(other, function(othValue, othIndex) { + if (!cacheHas(seen, othIndex) && + (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) { + return seen.push(othIndex); + } + })) { + result = false; + break; + } + } else if (!( + arrValue === othValue || + equalFunc(arrValue, othValue, bitmask, customizer, stack) + )) { + result = false; + break; + } + } + stack['delete'](array); + stack['delete'](other); + return result; +} + +module.exports = equalArrays; diff --git a/node_modules/lodash/_equalByTag.js b/node_modules/lodash/_equalByTag.js new file mode 100644 index 0000000..71919e8 --- /dev/null +++ b/node_modules/lodash/_equalByTag.js @@ -0,0 +1,112 @@ +var Symbol = require('./_Symbol'), + Uint8Array = require('./_Uint8Array'), + eq = require('./eq'), + equalArrays = require('./_equalArrays'), + mapToArray = require('./_mapToArray'), + setToArray = require('./_setToArray'); + +/** Used to compose bitmasks for value comparisons. */ +var COMPARE_PARTIAL_FLAG = 1, + COMPARE_UNORDERED_FLAG = 2; + +/** `Object#toString` result references. */ +var boolTag = '[object Boolean]', + dateTag = '[object Date]', + errorTag = '[object Error]', + mapTag = '[object Map]', + numberTag = '[object Number]', + regexpTag = '[object RegExp]', + setTag = '[object Set]', + stringTag = '[object String]', + symbolTag = '[object Symbol]'; + +var arrayBufferTag = '[object ArrayBuffer]', + dataViewTag = '[object DataView]'; + +/** Used to convert symbols to primitives and strings. */ +var symbolProto = Symbol ? Symbol.prototype : undefined, + symbolValueOf = symbolProto ? symbolProto.valueOf : undefined; + +/** + * A specialized version of `baseIsEqualDeep` for comparing objects of + * the same `toStringTag`. + * + * **Note:** This function only supports comparing values with tags of + * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {string} tag The `toStringTag` of the objects to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} stack Tracks traversed `object` and `other` objects. + * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. + */ +function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) { + switch (tag) { + case dataViewTag: + if ((object.byteLength != other.byteLength) || + (object.byteOffset != other.byteOffset)) { + return false; + } + object = object.buffer; + other = other.buffer; + + case arrayBufferTag: + if ((object.byteLength != other.byteLength) || + !equalFunc(new Uint8Array(object), new Uint8Array(other))) { + return false; + } + return true; + + case boolTag: + case dateTag: + case numberTag: + // Coerce booleans to `1` or `0` and dates to milliseconds. + // Invalid dates are coerced to `NaN`. + return eq(+object, +other); + + case errorTag: + return object.name == other.name && object.message == other.message; + + case regexpTag: + case stringTag: + // Coerce regexes to strings and treat strings, primitives and objects, + // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring + // for more details. + return object == (other + ''); + + case mapTag: + var convert = mapToArray; + + case setTag: + var isPartial = bitmask & COMPARE_PARTIAL_FLAG; + convert || (convert = setToArray); + + if (object.size != other.size && !isPartial) { + return false; + } + // Assume cyclic values are equal. + var stacked = stack.get(object); + if (stacked) { + return stacked == other; + } + bitmask |= COMPARE_UNORDERED_FLAG; + + // Recursively compare objects (susceptible to call stack limits). + stack.set(object, other); + var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack); + stack['delete'](object); + return result; + + case symbolTag: + if (symbolValueOf) { + return symbolValueOf.call(object) == symbolValueOf.call(other); + } + } + return false; +} + +module.exports = equalByTag; diff --git a/node_modules/lodash/_equalObjects.js b/node_modules/lodash/_equalObjects.js new file mode 100644 index 0000000..cdaacd2 --- /dev/null +++ b/node_modules/lodash/_equalObjects.js @@ -0,0 +1,90 @@ +var getAllKeys = require('./_getAllKeys'); + +/** Used to compose bitmasks for value comparisons. */ +var COMPARE_PARTIAL_FLAG = 1; + +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var hasOwnProperty = objectProto.hasOwnProperty; + +/** + * A specialized version of `baseIsEqualDeep` for objects with support for + * partial deep comparisons. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} stack Tracks traversed `object` and `other` objects. + * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. + */ +function equalObjects(object, other, bitmask, customizer, equalFunc, stack) { + var isPartial = bitmask & COMPARE_PARTIAL_FLAG, + objProps = getAllKeys(object), + objLength = objProps.length, + othProps = getAllKeys(other), + othLength = othProps.length; + + if (objLength != othLength && !isPartial) { + return false; + } + var index = objLength; + while (index--) { + var key = objProps[index]; + if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) { + return false; + } + } + // Check that cyclic values are equal. + var objStacked = stack.get(object); + var othStacked = stack.get(other); + if (objStacked && othStacked) { + return objStacked == other && othStacked == object; + } + var result = true; + stack.set(object, other); + stack.set(other, object); + + var skipCtor = isPartial; + while (++index < objLength) { + key = objProps[index]; + var objValue = object[key], + othValue = other[key]; + + if (customizer) { + var compared = isPartial + ? customizer(othValue, objValue, key, other, object, stack) + : customizer(objValue, othValue, key, object, other, stack); + } + // Recursively compare objects (susceptible to call stack limits). + if (!(compared === undefined + ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack)) + : compared + )) { + result = false; + break; + } + skipCtor || (skipCtor = key == 'constructor'); + } + if (result && !skipCtor) { + var objCtor = object.constructor, + othCtor = other.constructor; + + // Non `Object` object instances with different constructors are not equal. + if (objCtor != othCtor && + ('constructor' in object && 'constructor' in other) && + !(typeof objCtor == 'function' && objCtor instanceof objCtor && + typeof othCtor == 'function' && othCtor instanceof othCtor)) { + result = false; + } + } + stack['delete'](object); + stack['delete'](other); + return result; +} + +module.exports = equalObjects; diff --git a/node_modules/lodash/_escapeHtmlChar.js b/node_modules/lodash/_escapeHtmlChar.js new file mode 100644 index 0000000..7ca68ee --- /dev/null +++ b/node_modules/lodash/_escapeHtmlChar.js @@ -0,0 +1,21 @@ +var basePropertyOf = require('./_basePropertyOf'); + +/** Used to map characters to HTML entities. */ +var htmlEscapes = { + '&': '&', + '<': '<', + '>': '>', + '"': '"', + "'": ''' +}; + +/** + * Used by `_.escape` to convert characters to HTML entities. + * + * @private + * @param {string} chr The matched character to escape. + * @returns {string} Returns the escaped character. + */ +var escapeHtmlChar = basePropertyOf(htmlEscapes); + +module.exports = escapeHtmlChar; diff --git a/node_modules/lodash/_escapeStringChar.js b/node_modules/lodash/_escapeStringChar.js new file mode 100644 index 0000000..44eca96 --- /dev/null +++ b/node_modules/lodash/_escapeStringChar.js @@ -0,0 +1,22 @@ +/** Used to escape characters for inclusion in compiled string literals. */ +var stringEscapes = { + '\\': '\\', + "'": "'", + '\n': 'n', + '\r': 'r', + '\u2028': 'u2028', + '\u2029': 'u2029' +}; + +/** + * Used by `_.template` to escape characters for inclusion in compiled string literals. + * + * @private + * @param {string} chr The matched character to escape. + * @returns {string} Returns the escaped character. + */ +function escapeStringChar(chr) { + return '\\' + stringEscapes[chr]; +} + +module.exports = escapeStringChar; diff --git a/node_modules/lodash/_flatRest.js b/node_modules/lodash/_flatRest.js new file mode 100644 index 0000000..94ab6cc --- /dev/null +++ b/node_modules/lodash/_flatRest.js @@ -0,0 +1,16 @@ +var flatten = require('./flatten'), + overRest = require('./_overRest'), + setToString = require('./_setToString'); + +/** + * A specialized version of `baseRest` which flattens the rest array. + * + * @private + * @param {Function} func The function to apply a rest parameter to. + * @returns {Function} Returns the new function. + */ +function flatRest(func) { + return setToString(overRest(func, undefined, flatten), func + ''); +} + +module.exports = flatRest; diff --git a/node_modules/lodash/_freeGlobal.js b/node_modules/lodash/_freeGlobal.js new file mode 100644 index 0000000..bbec998 --- /dev/null +++ b/node_modules/lodash/_freeGlobal.js @@ -0,0 +1,4 @@ +/** Detect free variable `global` from Node.js. */ +var freeGlobal = typeof global == 'object' && global && global.Object === Object && global; + +module.exports = freeGlobal; diff --git a/node_modules/lodash/_getAllKeys.js b/node_modules/lodash/_getAllKeys.js new file mode 100644 index 0000000..a9ce699 --- /dev/null +++ b/node_modules/lodash/_getAllKeys.js @@ -0,0 +1,16 @@ +var baseGetAllKeys = require('./_baseGetAllKeys'), + getSymbols = require('./_getSymbols'), + keys = require('./keys'); + +/** + * Creates an array of own enumerable property names and symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names and symbols. + */ +function getAllKeys(object) { + return baseGetAllKeys(object, keys, getSymbols); +} + +module.exports = getAllKeys; diff --git a/node_modules/lodash/_getAllKeysIn.js b/node_modules/lodash/_getAllKeysIn.js new file mode 100644 index 0000000..1b46678 --- /dev/null +++ b/node_modules/lodash/_getAllKeysIn.js @@ -0,0 +1,17 @@ +var baseGetAllKeys = require('./_baseGetAllKeys'), + getSymbolsIn = require('./_getSymbolsIn'), + keysIn = require('./keysIn'); + +/** + * Creates an array of own and inherited enumerable property names and + * symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names and symbols. + */ +function getAllKeysIn(object) { + return baseGetAllKeys(object, keysIn, getSymbolsIn); +} + +module.exports = getAllKeysIn; diff --git a/node_modules/lodash/_getData.js b/node_modules/lodash/_getData.js new file mode 100644 index 0000000..a1fe7b7 --- /dev/null +++ b/node_modules/lodash/_getData.js @@ -0,0 +1,15 @@ +var metaMap = require('./_metaMap'), + noop = require('./noop'); + +/** + * Gets metadata for `func`. + * + * @private + * @param {Function} func The function to query. + * @returns {*} Returns the metadata for `func`. + */ +var getData = !metaMap ? noop : function(func) { + return metaMap.get(func); +}; + +module.exports = getData; diff --git a/node_modules/lodash/_getFuncName.js b/node_modules/lodash/_getFuncName.js new file mode 100644 index 0000000..21e15b3 --- /dev/null +++ b/node_modules/lodash/_getFuncName.js @@ -0,0 +1,31 @@ +var realNames = require('./_realNames'); + +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var hasOwnProperty = objectProto.hasOwnProperty; + +/** + * Gets the name of `func`. + * + * @private + * @param {Function} func The function to query. + * @returns {string} Returns the function name. + */ +function getFuncName(func) { + var result = (func.name + ''), + array = realNames[result], + length = hasOwnProperty.call(realNames, result) ? array.length : 0; + + while (length--) { + var data = array[length], + otherFunc = data.func; + if (otherFunc == null || otherFunc == func) { + return data.name; + } + } + return result; +} + +module.exports = getFuncName; diff --git a/node_modules/lodash/_getHolder.js b/node_modules/lodash/_getHolder.js new file mode 100644 index 0000000..65e94b5 --- /dev/null +++ b/node_modules/lodash/_getHolder.js @@ -0,0 +1,13 @@ +/** + * Gets the argument placeholder value for `func`. + * + * @private + * @param {Function} func The function to inspect. + * @returns {*} Returns the placeholder value. + */ +function getHolder(func) { + var object = func; + return object.placeholder; +} + +module.exports = getHolder; diff --git a/node_modules/lodash/_getMapData.js b/node_modules/lodash/_getMapData.js new file mode 100644 index 0000000..17f6303 --- /dev/null +++ b/node_modules/lodash/_getMapData.js @@ -0,0 +1,18 @@ +var isKeyable = require('./_isKeyable'); + +/** + * Gets the data for `map`. + * + * @private + * @param {Object} map The map to query. + * @param {string} key The reference key. + * @returns {*} Returns the map data. + */ +function getMapData(map, key) { + var data = map.__data__; + return isKeyable(key) + ? data[typeof key == 'string' ? 'string' : 'hash'] + : data.map; +} + +module.exports = getMapData; diff --git a/node_modules/lodash/_getMatchData.js b/node_modules/lodash/_getMatchData.js new file mode 100644 index 0000000..2cc70f9 --- /dev/null +++ b/node_modules/lodash/_getMatchData.js @@ -0,0 +1,24 @@ +var isStrictComparable = require('./_isStrictComparable'), + keys = require('./keys'); + +/** + * Gets the property names, values, and compare flags of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the match data of `object`. + */ +function getMatchData(object) { + var result = keys(object), + length = result.length; + + while (length--) { + var key = result[length], + value = object[key]; + + result[length] = [key, value, isStrictComparable(value)]; + } + return result; +} + +module.exports = getMatchData; diff --git a/node_modules/lodash/_getNative.js b/node_modules/lodash/_getNative.js new file mode 100644 index 0000000..97a622b --- /dev/null +++ b/node_modules/lodash/_getNative.js @@ -0,0 +1,17 @@ +var baseIsNative = require('./_baseIsNative'), + getValue = require('./_getValue'); + +/** + * Gets the native function at `key` of `object`. + * + * @private + * @param {Object} object The object to query. + * @param {string} key The key of the method to get. + * @returns {*} Returns the function if it's native, else `undefined`. + */ +function getNative(object, key) { + var value = getValue(object, key); + return baseIsNative(value) ? value : undefined; +} + +module.exports = getNative; diff --git a/node_modules/lodash/_getPrototype.js b/node_modules/lodash/_getPrototype.js new file mode 100644 index 0000000..e808612 --- /dev/null +++ b/node_modules/lodash/_getPrototype.js @@ -0,0 +1,6 @@ +var overArg = require('./_overArg'); + +/** Built-in value references. */ +var getPrototype = overArg(Object.getPrototypeOf, Object); + +module.exports = getPrototype; diff --git a/node_modules/lodash/_getRawTag.js b/node_modules/lodash/_getRawTag.js new file mode 100644 index 0000000..49a95c9 --- /dev/null +++ b/node_modules/lodash/_getRawTag.js @@ -0,0 +1,46 @@ +var Symbol = require('./_Symbol'); + +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var hasOwnProperty = objectProto.hasOwnProperty; + +/** + * Used to resolve the + * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring) + * of values. + */ +var nativeObjectToString = objectProto.toString; + +/** Built-in value references. */ +var symToStringTag = Symbol ? Symbol.toStringTag : undefined; + +/** + * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values. + * + * @private + * @param {*} value The value to query. + * @returns {string} Returns the raw `toStringTag`. + */ +function getRawTag(value) { + var isOwn = hasOwnProperty.call(value, symToStringTag), + tag = value[symToStringTag]; + + try { + value[symToStringTag] = undefined; + var unmasked = true; + } catch (e) {} + + var result = nativeObjectToString.call(value); + if (unmasked) { + if (isOwn) { + value[symToStringTag] = tag; + } else { + delete value[symToStringTag]; + } + } + return result; +} + +module.exports = getRawTag; diff --git a/node_modules/lodash/_getSymbols.js b/node_modules/lodash/_getSymbols.js new file mode 100644 index 0000000..7d6eafe --- /dev/null +++ b/node_modules/lodash/_getSymbols.js @@ -0,0 +1,30 @@ +var arrayFilter = require('./_arrayFilter'), + stubArray = require('./stubArray'); + +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Built-in value references. */ +var propertyIsEnumerable = objectProto.propertyIsEnumerable; + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeGetSymbols = Object.getOwnPropertySymbols; + +/** + * Creates an array of the own enumerable symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of symbols. + */ +var getSymbols = !nativeGetSymbols ? stubArray : function(object) { + if (object == null) { + return []; + } + object = Object(object); + return arrayFilter(nativeGetSymbols(object), function(symbol) { + return propertyIsEnumerable.call(object, symbol); + }); +}; + +module.exports = getSymbols; diff --git a/node_modules/lodash/_getSymbolsIn.js b/node_modules/lodash/_getSymbolsIn.js new file mode 100644 index 0000000..cec0855 --- /dev/null +++ b/node_modules/lodash/_getSymbolsIn.js @@ -0,0 +1,25 @@ +var arrayPush = require('./_arrayPush'), + getPrototype = require('./_getPrototype'), + getSymbols = require('./_getSymbols'), + stubArray = require('./stubArray'); + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeGetSymbols = Object.getOwnPropertySymbols; + +/** + * Creates an array of the own and inherited enumerable symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of symbols. + */ +var getSymbolsIn = !nativeGetSymbols ? stubArray : function(object) { + var result = []; + while (object) { + arrayPush(result, getSymbols(object)); + object = getPrototype(object); + } + return result; +}; + +module.exports = getSymbolsIn; diff --git a/node_modules/lodash/_getTag.js b/node_modules/lodash/_getTag.js new file mode 100644 index 0000000..deaf89d --- /dev/null +++ b/node_modules/lodash/_getTag.js @@ -0,0 +1,58 @@ +var DataView = require('./_DataView'), + Map = require('./_Map'), + Promise = require('./_Promise'), + Set = require('./_Set'), + WeakMap = require('./_WeakMap'), + baseGetTag = require('./_baseGetTag'), + toSource = require('./_toSource'); + +/** `Object#toString` result references. */ +var mapTag = '[object Map]', + objectTag = '[object Object]', + promiseTag = '[object Promise]', + setTag = '[object Set]', + weakMapTag = '[object WeakMap]'; + +var dataViewTag = '[object DataView]'; + +/** Used to detect maps, sets, and weakmaps. */ +var dataViewCtorString = toSource(DataView), + mapCtorString = toSource(Map), + promiseCtorString = toSource(Promise), + setCtorString = toSource(Set), + weakMapCtorString = toSource(WeakMap); + +/** + * Gets the `toStringTag` of `value`. + * + * @private + * @param {*} value The value to query. + * @returns {string} Returns the `toStringTag`. + */ +var getTag = baseGetTag; + +// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6. +if ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) || + (Map && getTag(new Map) != mapTag) || + (Promise && getTag(Promise.resolve()) != promiseTag) || + (Set && getTag(new Set) != setTag) || + (WeakMap && getTag(new WeakMap) != weakMapTag)) { + getTag = function(value) { + var result = baseGetTag(value), + Ctor = result == objectTag ? value.constructor : undefined, + ctorString = Ctor ? toSource(Ctor) : ''; + + if (ctorString) { + switch (ctorString) { + case dataViewCtorString: return dataViewTag; + case mapCtorString: return mapTag; + case promiseCtorString: return promiseTag; + case setCtorString: return setTag; + case weakMapCtorString: return weakMapTag; + } + } + return result; + }; +} + +module.exports = getTag; diff --git a/node_modules/lodash/_getValue.js b/node_modules/lodash/_getValue.js new file mode 100644 index 0000000..5f7d773 --- /dev/null +++ b/node_modules/lodash/_getValue.js @@ -0,0 +1,13 @@ +/** + * Gets the value at `key` of `object`. + * + * @private + * @param {Object} [object] The object to query. + * @param {string} key The key of the property to get. + * @returns {*} Returns the property value. + */ +function getValue(object, key) { + return object == null ? undefined : object[key]; +} + +module.exports = getValue; diff --git a/node_modules/lodash/_getView.js b/node_modules/lodash/_getView.js new file mode 100644 index 0000000..df1e5d4 --- /dev/null +++ b/node_modules/lodash/_getView.js @@ -0,0 +1,33 @@ +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeMax = Math.max, + nativeMin = Math.min; + +/** + * Gets the view, applying any `transforms` to the `start` and `end` positions. + * + * @private + * @param {number} start The start of the view. + * @param {number} end The end of the view. + * @param {Array} transforms The transformations to apply to the view. + * @returns {Object} Returns an object containing the `start` and `end` + * positions of the view. + */ +function getView(start, end, transforms) { + var index = -1, + length = transforms.length; + + while (++index < length) { + var data = transforms[index], + size = data.size; + + switch (data.type) { + case 'drop': start += size; break; + case 'dropRight': end -= size; break; + case 'take': end = nativeMin(end, start + size); break; + case 'takeRight': start = nativeMax(start, end - size); break; + } + } + return { 'start': start, 'end': end }; +} + +module.exports = getView; diff --git a/node_modules/lodash/_getWrapDetails.js b/node_modules/lodash/_getWrapDetails.js new file mode 100644 index 0000000..3bcc6e4 --- /dev/null +++ b/node_modules/lodash/_getWrapDetails.js @@ -0,0 +1,17 @@ +/** Used to match wrap detail comments. */ +var reWrapDetails = /\{\n\/\* \[wrapped with (.+)\] \*/, + reSplitDetails = /,? & /; + +/** + * Extracts wrapper details from the `source` body comment. + * + * @private + * @param {string} source The source to inspect. + * @returns {Array} Returns the wrapper details. + */ +function getWrapDetails(source) { + var match = source.match(reWrapDetails); + return match ? match[1].split(reSplitDetails) : []; +} + +module.exports = getWrapDetails; diff --git a/node_modules/lodash/_hasPath.js b/node_modules/lodash/_hasPath.js new file mode 100644 index 0000000..93dbde1 --- /dev/null +++ b/node_modules/lodash/_hasPath.js @@ -0,0 +1,39 @@ +var castPath = require('./_castPath'), + isArguments = require('./isArguments'), + isArray = require('./isArray'), + isIndex = require('./_isIndex'), + isLength = require('./isLength'), + toKey = require('./_toKey'); + +/** + * Checks if `path` exists on `object`. + * + * @private + * @param {Object} object The object to query. + * @param {Array|string} path The path to check. + * @param {Function} hasFunc The function to check properties. + * @returns {boolean} Returns `true` if `path` exists, else `false`. + */ +function hasPath(object, path, hasFunc) { + path = castPath(path, object); + + var index = -1, + length = path.length, + result = false; + + while (++index < length) { + var key = toKey(path[index]); + if (!(result = object != null && hasFunc(object, key))) { + break; + } + object = object[key]; + } + if (result || ++index != length) { + return result; + } + length = object == null ? 0 : object.length; + return !!length && isLength(length) && isIndex(key, length) && + (isArray(object) || isArguments(object)); +} + +module.exports = hasPath; diff --git a/node_modules/lodash/_hasUnicode.js b/node_modules/lodash/_hasUnicode.js new file mode 100644 index 0000000..cb6ca15 --- /dev/null +++ b/node_modules/lodash/_hasUnicode.js @@ -0,0 +1,26 @@ +/** Used to compose unicode character classes. */ +var rsAstralRange = '\\ud800-\\udfff', + rsComboMarksRange = '\\u0300-\\u036f', + reComboHalfMarksRange = '\\ufe20-\\ufe2f', + rsComboSymbolsRange = '\\u20d0-\\u20ff', + rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange, + rsVarRange = '\\ufe0e\\ufe0f'; + +/** Used to compose unicode capture groups. */ +var rsZWJ = '\\u200d'; + +/** Used to detect strings with [zero-width joiners or code points from the astral planes](http://eev.ee/blog/2015/09/12/dark-corners-of-unicode/). */ +var reHasUnicode = RegExp('[' + rsZWJ + rsAstralRange + rsComboRange + rsVarRange + ']'); + +/** + * Checks if `string` contains Unicode symbols. + * + * @private + * @param {string} string The string to inspect. + * @returns {boolean} Returns `true` if a symbol is found, else `false`. + */ +function hasUnicode(string) { + return reHasUnicode.test(string); +} + +module.exports = hasUnicode; diff --git a/node_modules/lodash/_hasUnicodeWord.js b/node_modules/lodash/_hasUnicodeWord.js new file mode 100644 index 0000000..95d52c4 --- /dev/null +++ b/node_modules/lodash/_hasUnicodeWord.js @@ -0,0 +1,15 @@ +/** Used to detect strings that need a more robust regexp to match words. */ +var reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/; + +/** + * Checks if `string` contains a word composed of Unicode symbols. + * + * @private + * @param {string} string The string to inspect. + * @returns {boolean} Returns `true` if a word is found, else `false`. + */ +function hasUnicodeWord(string) { + return reHasUnicodeWord.test(string); +} + +module.exports = hasUnicodeWord; diff --git a/node_modules/lodash/_hashClear.js b/node_modules/lodash/_hashClear.js new file mode 100644 index 0000000..5d4b70c --- /dev/null +++ b/node_modules/lodash/_hashClear.js @@ -0,0 +1,15 @@ +var nativeCreate = require('./_nativeCreate'); + +/** + * Removes all key-value entries from the hash. + * + * @private + * @name clear + * @memberOf Hash + */ +function hashClear() { + this.__data__ = nativeCreate ? nativeCreate(null) : {}; + this.size = 0; +} + +module.exports = hashClear; diff --git a/node_modules/lodash/_hashDelete.js b/node_modules/lodash/_hashDelete.js new file mode 100644 index 0000000..ea9dabf --- /dev/null +++ b/node_modules/lodash/_hashDelete.js @@ -0,0 +1,17 @@ +/** + * Removes `key` and its value from the hash. + * + * @private + * @name delete + * @memberOf Hash + * @param {Object} hash The hash to modify. + * @param {string} key The key of the value to remove. + * @returns {boolean} Returns `true` if the entry was removed, else `false`. + */ +function hashDelete(key) { + var result = this.has(key) && delete this.__data__[key]; + this.size -= result ? 1 : 0; + return result; +} + +module.exports = hashDelete; diff --git a/node_modules/lodash/_hashGet.js b/node_modules/lodash/_hashGet.js new file mode 100644 index 0000000..1fc2f34 --- /dev/null +++ b/node_modules/lodash/_hashGet.js @@ -0,0 +1,30 @@ +var nativeCreate = require('./_nativeCreate'); + +/** Used to stand-in for `undefined` hash values. */ +var HASH_UNDEFINED = '__lodash_hash_undefined__'; + +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var hasOwnProperty = objectProto.hasOwnProperty; + +/** + * Gets the hash value for `key`. + * + * @private + * @name get + * @memberOf Hash + * @param {string} key The key of the value to get. + * @returns {*} Returns the entry value. + */ +function hashGet(key) { + var data = this.__data__; + if (nativeCreate) { + var result = data[key]; + return result === HASH_UNDEFINED ? undefined : result; + } + return hasOwnProperty.call(data, key) ? data[key] : undefined; +} + +module.exports = hashGet; diff --git a/node_modules/lodash/_hashHas.js b/node_modules/lodash/_hashHas.js new file mode 100644 index 0000000..281a551 --- /dev/null +++ b/node_modules/lodash/_hashHas.js @@ -0,0 +1,23 @@ +var nativeCreate = require('./_nativeCreate'); + +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var hasOwnProperty = objectProto.hasOwnProperty; + +/** + * Checks if a hash value for `key` exists. + * + * @private + * @name has + * @memberOf Hash + * @param {string} key The key of the entry to check. + * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. + */ +function hashHas(key) { + var data = this.__data__; + return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key); +} + +module.exports = hashHas; diff --git a/node_modules/lodash/_hashSet.js b/node_modules/lodash/_hashSet.js new file mode 100644 index 0000000..e105528 --- /dev/null +++ b/node_modules/lodash/_hashSet.js @@ -0,0 +1,23 @@ +var nativeCreate = require('./_nativeCreate'); + +/** Used to stand-in for `undefined` hash values. */ +var HASH_UNDEFINED = '__lodash_hash_undefined__'; + +/** + * Sets the hash `key` to `value`. + * + * @private + * @name set + * @memberOf Hash + * @param {string} key The key of the value to set. + * @param {*} value The value to set. + * @returns {Object} Returns the hash instance. + */ +function hashSet(key, value) { + var data = this.__data__; + this.size += this.has(key) ? 0 : 1; + data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value; + return this; +} + +module.exports = hashSet; diff --git a/node_modules/lodash/_initCloneArray.js b/node_modules/lodash/_initCloneArray.js new file mode 100644 index 0000000..078c15a --- /dev/null +++ b/node_modules/lodash/_initCloneArray.js @@ -0,0 +1,26 @@ +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var hasOwnProperty = objectProto.hasOwnProperty; + +/** + * Initializes an array clone. + * + * @private + * @param {Array} array The array to clone. + * @returns {Array} Returns the initialized clone. + */ +function initCloneArray(array) { + var length = array.length, + result = new array.constructor(length); + + // Add properties assigned by `RegExp#exec`. + if (length && typeof array[0] == 'string' && hasOwnProperty.call(array, 'index')) { + result.index = array.index; + result.input = array.input; + } + return result; +} + +module.exports = initCloneArray; diff --git a/node_modules/lodash/_initCloneByTag.js b/node_modules/lodash/_initCloneByTag.js new file mode 100644 index 0000000..f69a008 --- /dev/null +++ b/node_modules/lodash/_initCloneByTag.js @@ -0,0 +1,77 @@ +var cloneArrayBuffer = require('./_cloneArrayBuffer'), + cloneDataView = require('./_cloneDataView'), + cloneRegExp = require('./_cloneRegExp'), + cloneSymbol = require('./_cloneSymbol'), + cloneTypedArray = require('./_cloneTypedArray'); + +/** `Object#toString` result references. */ +var boolTag = '[object Boolean]', + dateTag = '[object Date]', + mapTag = '[object Map]', + numberTag = '[object Number]', + regexpTag = '[object RegExp]', + setTag = '[object Set]', + stringTag = '[object String]', + symbolTag = '[object Symbol]'; + +var arrayBufferTag = '[object ArrayBuffer]', + dataViewTag = '[object DataView]', + float32Tag = '[object Float32Array]', + float64Tag = '[object Float64Array]', + int8Tag = '[object Int8Array]', + int16Tag = '[object Int16Array]', + int32Tag = '[object Int32Array]', + uint8Tag = '[object Uint8Array]', + uint8ClampedTag = '[object Uint8ClampedArray]', + uint16Tag = '[object Uint16Array]', + uint32Tag = '[object Uint32Array]'; + +/** + * Initializes an object clone based on its `toStringTag`. + * + * **Note:** This function only supports cloning values with tags of + * `Boolean`, `Date`, `Error`, `Map`, `Number`, `RegExp`, `Set`, or `String`. + * + * @private + * @param {Object} object The object to clone. + * @param {string} tag The `toStringTag` of the object to clone. + * @param {boolean} [isDeep] Specify a deep clone. + * @returns {Object} Returns the initialized clone. + */ +function initCloneByTag(object, tag, isDeep) { + var Ctor = object.constructor; + switch (tag) { + case arrayBufferTag: + return cloneArrayBuffer(object); + + case boolTag: + case dateTag: + return new Ctor(+object); + + case dataViewTag: + return cloneDataView(object, isDeep); + + case float32Tag: case float64Tag: + case int8Tag: case int16Tag: case int32Tag: + case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag: + return cloneTypedArray(object, isDeep); + + case mapTag: + return new Ctor; + + case numberTag: + case stringTag: + return new Ctor(object); + + case regexpTag: + return cloneRegExp(object); + + case setTag: + return new Ctor; + + case symbolTag: + return cloneSymbol(object); + } +} + +module.exports = initCloneByTag; diff --git a/node_modules/lodash/_initCloneObject.js b/node_modules/lodash/_initCloneObject.js new file mode 100644 index 0000000..5a13e64 --- /dev/null +++ b/node_modules/lodash/_initCloneObject.js @@ -0,0 +1,18 @@ +var baseCreate = require('./_baseCreate'), + getPrototype = require('./_getPrototype'), + isPrototype = require('./_isPrototype'); + +/** + * Initializes an object clone. + * + * @private + * @param {Object} object The object to clone. + * @returns {Object} Returns the initialized clone. + */ +function initCloneObject(object) { + return (typeof object.constructor == 'function' && !isPrototype(object)) + ? baseCreate(getPrototype(object)) + : {}; +} + +module.exports = initCloneObject; diff --git a/node_modules/lodash/_insertWrapDetails.js b/node_modules/lodash/_insertWrapDetails.js new file mode 100644 index 0000000..e790808 --- /dev/null +++ b/node_modules/lodash/_insertWrapDetails.js @@ -0,0 +1,23 @@ +/** Used to match wrap detail comments. */ +var reWrapComment = /\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/; + +/** + * Inserts wrapper `details` in a comment at the top of the `source` body. + * + * @private + * @param {string} source The source to modify. + * @returns {Array} details The details to insert. + * @returns {string} Returns the modified source. + */ +function insertWrapDetails(source, details) { + var length = details.length; + if (!length) { + return source; + } + var lastIndex = length - 1; + details[lastIndex] = (length > 1 ? '& ' : '') + details[lastIndex]; + details = details.join(length > 2 ? ', ' : ' '); + return source.replace(reWrapComment, '{\n/* [wrapped with ' + details + '] */\n'); +} + +module.exports = insertWrapDetails; diff --git a/node_modules/lodash/_isFlattenable.js b/node_modules/lodash/_isFlattenable.js new file mode 100644 index 0000000..4cc2c24 --- /dev/null +++ b/node_modules/lodash/_isFlattenable.js @@ -0,0 +1,20 @@ +var Symbol = require('./_Symbol'), + isArguments = require('./isArguments'), + isArray = require('./isArray'); + +/** Built-in value references. */ +var spreadableSymbol = Symbol ? Symbol.isConcatSpreadable : undefined; + +/** + * Checks if `value` is a flattenable `arguments` object or array. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is flattenable, else `false`. + */ +function isFlattenable(value) { + return isArray(value) || isArguments(value) || + !!(spreadableSymbol && value && value[spreadableSymbol]); +} + +module.exports = isFlattenable; diff --git a/node_modules/lodash/_isIndex.js b/node_modules/lodash/_isIndex.js new file mode 100644 index 0000000..061cd39 --- /dev/null +++ b/node_modules/lodash/_isIndex.js @@ -0,0 +1,25 @@ +/** Used as references for various `Number` constants. */ +var MAX_SAFE_INTEGER = 9007199254740991; + +/** Used to detect unsigned integer values. */ +var reIsUint = /^(?:0|[1-9]\d*)$/; + +/** + * Checks if `value` is a valid array-like index. + * + * @private + * @param {*} value The value to check. + * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index. + * @returns {boolean} Returns `true` if `value` is a valid index, else `false`. + */ +function isIndex(value, length) { + var type = typeof value; + length = length == null ? MAX_SAFE_INTEGER : length; + + return !!length && + (type == 'number' || + (type != 'symbol' && reIsUint.test(value))) && + (value > -1 && value % 1 == 0 && value < length); +} + +module.exports = isIndex; diff --git a/node_modules/lodash/_isIterateeCall.js b/node_modules/lodash/_isIterateeCall.js new file mode 100644 index 0000000..a0bb5a9 --- /dev/null +++ b/node_modules/lodash/_isIterateeCall.js @@ -0,0 +1,30 @@ +var eq = require('./eq'), + isArrayLike = require('./isArrayLike'), + isIndex = require('./_isIndex'), + isObject = require('./isObject'); + +/** + * Checks if the given arguments are from an iteratee call. + * + * @private + * @param {*} value The potential iteratee value argument. + * @param {*} index The potential iteratee index or key argument. + * @param {*} object The potential iteratee object argument. + * @returns {boolean} Returns `true` if the arguments are from an iteratee call, + * else `false`. + */ +function isIterateeCall(value, index, object) { + if (!isObject(object)) { + return false; + } + var type = typeof index; + if (type == 'number' + ? (isArrayLike(object) && isIndex(index, object.length)) + : (type == 'string' && index in object) + ) { + return eq(object[index], value); + } + return false; +} + +module.exports = isIterateeCall; diff --git a/node_modules/lodash/_isKey.js b/node_modules/lodash/_isKey.js new file mode 100644 index 0000000..ff08b06 --- /dev/null +++ b/node_modules/lodash/_isKey.js @@ -0,0 +1,29 @@ +var isArray = require('./isArray'), + isSymbol = require('./isSymbol'); + +/** Used to match property names within property paths. */ +var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, + reIsPlainProp = /^\w*$/; + +/** + * Checks if `value` is a property name and not a property path. + * + * @private + * @param {*} value The value to check. + * @param {Object} [object] The object to query keys on. + * @returns {boolean} Returns `true` if `value` is a property name, else `false`. + */ +function isKey(value, object) { + if (isArray(value)) { + return false; + } + var type = typeof value; + if (type == 'number' || type == 'symbol' || type == 'boolean' || + value == null || isSymbol(value)) { + return true; + } + return reIsPlainProp.test(value) || !reIsDeepProp.test(value) || + (object != null && value in Object(object)); +} + +module.exports = isKey; diff --git a/node_modules/lodash/_isKeyable.js b/node_modules/lodash/_isKeyable.js new file mode 100644 index 0000000..39f1828 --- /dev/null +++ b/node_modules/lodash/_isKeyable.js @@ -0,0 +1,15 @@ +/** + * Checks if `value` is suitable for use as unique object key. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is suitable, else `false`. + */ +function isKeyable(value) { + var type = typeof value; + return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean') + ? (value !== '__proto__') + : (value === null); +} + +module.exports = isKeyable; diff --git a/node_modules/lodash/_isLaziable.js b/node_modules/lodash/_isLaziable.js new file mode 100644 index 0000000..a57c4f2 --- /dev/null +++ b/node_modules/lodash/_isLaziable.js @@ -0,0 +1,28 @@ +var LazyWrapper = require('./_LazyWrapper'), + getData = require('./_getData'), + getFuncName = require('./_getFuncName'), + lodash = require('./wrapperLodash'); + +/** + * Checks if `func` has a lazy counterpart. + * + * @private + * @param {Function} func The function to check. + * @returns {boolean} Returns `true` if `func` has a lazy counterpart, + * else `false`. + */ +function isLaziable(func) { + var funcName = getFuncName(func), + other = lodash[funcName]; + + if (typeof other != 'function' || !(funcName in LazyWrapper.prototype)) { + return false; + } + if (func === other) { + return true; + } + var data = getData(other); + return !!data && func === data[0]; +} + +module.exports = isLaziable; diff --git a/node_modules/lodash/_isMaskable.js b/node_modules/lodash/_isMaskable.js new file mode 100644 index 0000000..eb98d09 --- /dev/null +++ b/node_modules/lodash/_isMaskable.js @@ -0,0 +1,14 @@ +var coreJsData = require('./_coreJsData'), + isFunction = require('./isFunction'), + stubFalse = require('./stubFalse'); + +/** + * Checks if `func` is capable of being masked. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `func` is maskable, else `false`. + */ +var isMaskable = coreJsData ? isFunction : stubFalse; + +module.exports = isMaskable; diff --git a/node_modules/lodash/_isMasked.js b/node_modules/lodash/_isMasked.js new file mode 100644 index 0000000..4b0f21b --- /dev/null +++ b/node_modules/lodash/_isMasked.js @@ -0,0 +1,20 @@ +var coreJsData = require('./_coreJsData'); + +/** Used to detect methods masquerading as native. */ +var maskSrcKey = (function() { + var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || ''); + return uid ? ('Symbol(src)_1.' + uid) : ''; +}()); + +/** + * Checks if `func` has its source masked. + * + * @private + * @param {Function} func The function to check. + * @returns {boolean} Returns `true` if `func` is masked, else `false`. + */ +function isMasked(func) { + return !!maskSrcKey && (maskSrcKey in func); +} + +module.exports = isMasked; diff --git a/node_modules/lodash/_isPrototype.js b/node_modules/lodash/_isPrototype.js new file mode 100644 index 0000000..0f29498 --- /dev/null +++ b/node_modules/lodash/_isPrototype.js @@ -0,0 +1,18 @@ +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** + * Checks if `value` is likely a prototype object. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a prototype, else `false`. + */ +function isPrototype(value) { + var Ctor = value && value.constructor, + proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto; + + return value === proto; +} + +module.exports = isPrototype; diff --git a/node_modules/lodash/_isStrictComparable.js b/node_modules/lodash/_isStrictComparable.js new file mode 100644 index 0000000..b59f40b --- /dev/null +++ b/node_modules/lodash/_isStrictComparable.js @@ -0,0 +1,15 @@ +var isObject = require('./isObject'); + +/** + * Checks if `value` is suitable for strict equality comparisons, i.e. `===`. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` if suitable for strict + * equality comparisons, else `false`. + */ +function isStrictComparable(value) { + return value === value && !isObject(value); +} + +module.exports = isStrictComparable; diff --git a/node_modules/lodash/_iteratorToArray.js b/node_modules/lodash/_iteratorToArray.js new file mode 100644 index 0000000..4768566 --- /dev/null +++ b/node_modules/lodash/_iteratorToArray.js @@ -0,0 +1,18 @@ +/** + * Converts `iterator` to an array. + * + * @private + * @param {Object} iterator The iterator to convert. + * @returns {Array} Returns the converted array. + */ +function iteratorToArray(iterator) { + var data, + result = []; + + while (!(data = iterator.next()).done) { + result.push(data.value); + } + return result; +} + +module.exports = iteratorToArray; diff --git a/node_modules/lodash/_lazyClone.js b/node_modules/lodash/_lazyClone.js new file mode 100644 index 0000000..d8a51f8 --- /dev/null +++ b/node_modules/lodash/_lazyClone.js @@ -0,0 +1,23 @@ +var LazyWrapper = require('./_LazyWrapper'), + copyArray = require('./_copyArray'); + +/** + * Creates a clone of the lazy wrapper object. + * + * @private + * @name clone + * @memberOf LazyWrapper + * @returns {Object} Returns the cloned `LazyWrapper` object. + */ +function lazyClone() { + var result = new LazyWrapper(this.__wrapped__); + result.__actions__ = copyArray(this.__actions__); + result.__dir__ = this.__dir__; + result.__filtered__ = this.__filtered__; + result.__iteratees__ = copyArray(this.__iteratees__); + result.__takeCount__ = this.__takeCount__; + result.__views__ = copyArray(this.__views__); + return result; +} + +module.exports = lazyClone; diff --git a/node_modules/lodash/_lazyReverse.js b/node_modules/lodash/_lazyReverse.js new file mode 100644 index 0000000..c5b5219 --- /dev/null +++ b/node_modules/lodash/_lazyReverse.js @@ -0,0 +1,23 @@ +var LazyWrapper = require('./_LazyWrapper'); + +/** + * Reverses the direction of lazy iteration. + * + * @private + * @name reverse + * @memberOf LazyWrapper + * @returns {Object} Returns the new reversed `LazyWrapper` object. + */ +function lazyReverse() { + if (this.__filtered__) { + var result = new LazyWrapper(this); + result.__dir__ = -1; + result.__filtered__ = true; + } else { + result = this.clone(); + result.__dir__ *= -1; + } + return result; +} + +module.exports = lazyReverse; diff --git a/node_modules/lodash/_lazyValue.js b/node_modules/lodash/_lazyValue.js new file mode 100644 index 0000000..371ca8d --- /dev/null +++ b/node_modules/lodash/_lazyValue.js @@ -0,0 +1,69 @@ +var baseWrapperValue = require('./_baseWrapperValue'), + getView = require('./_getView'), + isArray = require('./isArray'); + +/** Used to indicate the type of lazy iteratees. */ +var LAZY_FILTER_FLAG = 1, + LAZY_MAP_FLAG = 2; + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeMin = Math.min; + +/** + * Extracts the unwrapped value from its lazy wrapper. + * + * @private + * @name value + * @memberOf LazyWrapper + * @returns {*} Returns the unwrapped value. + */ +function lazyValue() { + var array = this.__wrapped__.value(), + dir = this.__dir__, + isArr = isArray(array), + isRight = dir < 0, + arrLength = isArr ? array.length : 0, + view = getView(0, arrLength, this.__views__), + start = view.start, + end = view.end, + length = end - start, + index = isRight ? end : (start - 1), + iteratees = this.__iteratees__, + iterLength = iteratees.length, + resIndex = 0, + takeCount = nativeMin(length, this.__takeCount__); + + if (!isArr || (!isRight && arrLength == length && takeCount == length)) { + return baseWrapperValue(array, this.__actions__); + } + var result = []; + + outer: + while (length-- && resIndex < takeCount) { + index += dir; + + var iterIndex = -1, + value = array[index]; + + while (++iterIndex < iterLength) { + var data = iteratees[iterIndex], + iteratee = data.iteratee, + type = data.type, + computed = iteratee(value); + + if (type == LAZY_MAP_FLAG) { + value = computed; + } else if (!computed) { + if (type == LAZY_FILTER_FLAG) { + continue outer; + } else { + break outer; + } + } + } + result[resIndex++] = value; + } + return result; +} + +module.exports = lazyValue; diff --git a/node_modules/lodash/_listCacheClear.js b/node_modules/lodash/_listCacheClear.js new file mode 100644 index 0000000..acbe39a --- /dev/null +++ b/node_modules/lodash/_listCacheClear.js @@ -0,0 +1,13 @@ +/** + * Removes all key-value entries from the list cache. + * + * @private + * @name clear + * @memberOf ListCache + */ +function listCacheClear() { + this.__data__ = []; + this.size = 0; +} + +module.exports = listCacheClear; diff --git a/node_modules/lodash/_listCacheDelete.js b/node_modules/lodash/_listCacheDelete.js new file mode 100644 index 0000000..b1384ad --- /dev/null +++ b/node_modules/lodash/_listCacheDelete.js @@ -0,0 +1,35 @@ +var assocIndexOf = require('./_assocIndexOf'); + +/** Used for built-in method references. */ +var arrayProto = Array.prototype; + +/** Built-in value references. */ +var splice = arrayProto.splice; + +/** + * Removes `key` and its value from the list cache. + * + * @private + * @name delete + * @memberOf ListCache + * @param {string} key The key of the value to remove. + * @returns {boolean} Returns `true` if the entry was removed, else `false`. + */ +function listCacheDelete(key) { + var data = this.__data__, + index = assocIndexOf(data, key); + + if (index < 0) { + return false; + } + var lastIndex = data.length - 1; + if (index == lastIndex) { + data.pop(); + } else { + splice.call(data, index, 1); + } + --this.size; + return true; +} + +module.exports = listCacheDelete; diff --git a/node_modules/lodash/_listCacheGet.js b/node_modules/lodash/_listCacheGet.js new file mode 100644 index 0000000..f8192fc --- /dev/null +++ b/node_modules/lodash/_listCacheGet.js @@ -0,0 +1,19 @@ +var assocIndexOf = require('./_assocIndexOf'); + +/** + * Gets the list cache value for `key`. + * + * @private + * @name get + * @memberOf ListCache + * @param {string} key The key of the value to get. + * @returns {*} Returns the entry value. + */ +function listCacheGet(key) { + var data = this.__data__, + index = assocIndexOf(data, key); + + return index < 0 ? undefined : data[index][1]; +} + +module.exports = listCacheGet; diff --git a/node_modules/lodash/_listCacheHas.js b/node_modules/lodash/_listCacheHas.js new file mode 100644 index 0000000..2adf671 --- /dev/null +++ b/node_modules/lodash/_listCacheHas.js @@ -0,0 +1,16 @@ +var assocIndexOf = require('./_assocIndexOf'); + +/** + * Checks if a list cache value for `key` exists. + * + * @private + * @name has + * @memberOf ListCache + * @param {string} key The key of the entry to check. + * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. + */ +function listCacheHas(key) { + return assocIndexOf(this.__data__, key) > -1; +} + +module.exports = listCacheHas; diff --git a/node_modules/lodash/_listCacheSet.js b/node_modules/lodash/_listCacheSet.js new file mode 100644 index 0000000..5855c95 --- /dev/null +++ b/node_modules/lodash/_listCacheSet.js @@ -0,0 +1,26 @@ +var assocIndexOf = require('./_assocIndexOf'); + +/** + * Sets the list cache `key` to `value`. + * + * @private + * @name set + * @memberOf ListCache + * @param {string} key The key of the value to set. + * @param {*} value The value to set. + * @returns {Object} Returns the list cache instance. + */ +function listCacheSet(key, value) { + var data = this.__data__, + index = assocIndexOf(data, key); + + if (index < 0) { + ++this.size; + data.push([key, value]); + } else { + data[index][1] = value; + } + return this; +} + +module.exports = listCacheSet; diff --git a/node_modules/lodash/_mapCacheClear.js b/node_modules/lodash/_mapCacheClear.js new file mode 100644 index 0000000..bc9ca20 --- /dev/null +++ b/node_modules/lodash/_mapCacheClear.js @@ -0,0 +1,21 @@ +var Hash = require('./_Hash'), + ListCache = require('./_ListCache'), + Map = require('./_Map'); + +/** + * Removes all key-value entries from the map. + * + * @private + * @name clear + * @memberOf MapCache + */ +function mapCacheClear() { + this.size = 0; + this.__data__ = { + 'hash': new Hash, + 'map': new (Map || ListCache), + 'string': new Hash + }; +} + +module.exports = mapCacheClear; diff --git a/node_modules/lodash/_mapCacheDelete.js b/node_modules/lodash/_mapCacheDelete.js new file mode 100644 index 0000000..946ca3c --- /dev/null +++ b/node_modules/lodash/_mapCacheDelete.js @@ -0,0 +1,18 @@ +var getMapData = require('./_getMapData'); + +/** + * Removes `key` and its value from the map. + * + * @private + * @name delete + * @memberOf MapCache + * @param {string} key The key of the value to remove. + * @returns {boolean} Returns `true` if the entry was removed, else `false`. + */ +function mapCacheDelete(key) { + var result = getMapData(this, key)['delete'](key); + this.size -= result ? 1 : 0; + return result; +} + +module.exports = mapCacheDelete; diff --git a/node_modules/lodash/_mapCacheGet.js b/node_modules/lodash/_mapCacheGet.js new file mode 100644 index 0000000..f29f55c --- /dev/null +++ b/node_modules/lodash/_mapCacheGet.js @@ -0,0 +1,16 @@ +var getMapData = require('./_getMapData'); + +/** + * Gets the map value for `key`. + * + * @private + * @name get + * @memberOf MapCache + * @param {string} key The key of the value to get. + * @returns {*} Returns the entry value. + */ +function mapCacheGet(key) { + return getMapData(this, key).get(key); +} + +module.exports = mapCacheGet; diff --git a/node_modules/lodash/_mapCacheHas.js b/node_modules/lodash/_mapCacheHas.js new file mode 100644 index 0000000..a1214c0 --- /dev/null +++ b/node_modules/lodash/_mapCacheHas.js @@ -0,0 +1,16 @@ +var getMapData = require('./_getMapData'); + +/** + * Checks if a map value for `key` exists. + * + * @private + * @name has + * @memberOf MapCache + * @param {string} key The key of the entry to check. + * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. + */ +function mapCacheHas(key) { + return getMapData(this, key).has(key); +} + +module.exports = mapCacheHas; diff --git a/node_modules/lodash/_mapCacheSet.js b/node_modules/lodash/_mapCacheSet.js new file mode 100644 index 0000000..7346849 --- /dev/null +++ b/node_modules/lodash/_mapCacheSet.js @@ -0,0 +1,22 @@ +var getMapData = require('./_getMapData'); + +/** + * Sets the map `key` to `value`. + * + * @private + * @name set + * @memberOf MapCache + * @param {string} key The key of the value to set. + * @param {*} value The value to set. + * @returns {Object} Returns the map cache instance. + */ +function mapCacheSet(key, value) { + var data = getMapData(this, key), + size = data.size; + + data.set(key, value); + this.size += data.size == size ? 0 : 1; + return this; +} + +module.exports = mapCacheSet; diff --git a/node_modules/lodash/_mapToArray.js b/node_modules/lodash/_mapToArray.js new file mode 100644 index 0000000..fe3dd53 --- /dev/null +++ b/node_modules/lodash/_mapToArray.js @@ -0,0 +1,18 @@ +/** + * Converts `map` to its key-value pairs. + * + * @private + * @param {Object} map The map to convert. + * @returns {Array} Returns the key-value pairs. + */ +function mapToArray(map) { + var index = -1, + result = Array(map.size); + + map.forEach(function(value, key) { + result[++index] = [key, value]; + }); + return result; +} + +module.exports = mapToArray; diff --git a/node_modules/lodash/_matchesStrictComparable.js b/node_modules/lodash/_matchesStrictComparable.js new file mode 100644 index 0000000..f608af9 --- /dev/null +++ b/node_modules/lodash/_matchesStrictComparable.js @@ -0,0 +1,20 @@ +/** + * A specialized version of `matchesProperty` for source values suitable + * for strict equality comparisons, i.e. `===`. + * + * @private + * @param {string} key The key of the property to get. + * @param {*} srcValue The value to match. + * @returns {Function} Returns the new spec function. + */ +function matchesStrictComparable(key, srcValue) { + return function(object) { + if (object == null) { + return false; + } + return object[key] === srcValue && + (srcValue !== undefined || (key in Object(object))); + }; +} + +module.exports = matchesStrictComparable; diff --git a/node_modules/lodash/_memoizeCapped.js b/node_modules/lodash/_memoizeCapped.js new file mode 100644 index 0000000..7f71c8f --- /dev/null +++ b/node_modules/lodash/_memoizeCapped.js @@ -0,0 +1,26 @@ +var memoize = require('./memoize'); + +/** Used as the maximum memoize cache size. */ +var MAX_MEMOIZE_SIZE = 500; + +/** + * A specialized version of `_.memoize` which clears the memoized function's + * cache when it exceeds `MAX_MEMOIZE_SIZE`. + * + * @private + * @param {Function} func The function to have its output memoized. + * @returns {Function} Returns the new memoized function. + */ +function memoizeCapped(func) { + var result = memoize(func, function(key) { + if (cache.size === MAX_MEMOIZE_SIZE) { + cache.clear(); + } + return key; + }); + + var cache = result.cache; + return result; +} + +module.exports = memoizeCapped; diff --git a/node_modules/lodash/_mergeData.js b/node_modules/lodash/_mergeData.js new file mode 100644 index 0000000..cb570f9 --- /dev/null +++ b/node_modules/lodash/_mergeData.js @@ -0,0 +1,90 @@ +var composeArgs = require('./_composeArgs'), + composeArgsRight = require('./_composeArgsRight'), + replaceHolders = require('./_replaceHolders'); + +/** Used as the internal argument placeholder. */ +var PLACEHOLDER = '__lodash_placeholder__'; + +/** Used to compose bitmasks for function metadata. */ +var WRAP_BIND_FLAG = 1, + WRAP_BIND_KEY_FLAG = 2, + WRAP_CURRY_BOUND_FLAG = 4, + WRAP_CURRY_FLAG = 8, + WRAP_ARY_FLAG = 128, + WRAP_REARG_FLAG = 256; + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeMin = Math.min; + +/** + * Merges the function metadata of `source` into `data`. + * + * Merging metadata reduces the number of wrappers used to invoke a function. + * This is possible because methods like `_.bind`, `_.curry`, and `_.partial` + * may be applied regardless of execution order. Methods like `_.ary` and + * `_.rearg` modify function arguments, making the order in which they are + * executed important, preventing the merging of metadata. However, we make + * an exception for a safe combined case where curried functions have `_.ary` + * and or `_.rearg` applied. + * + * @private + * @param {Array} data The destination metadata. + * @param {Array} source The source metadata. + * @returns {Array} Returns `data`. + */ +function mergeData(data, source) { + var bitmask = data[1], + srcBitmask = source[1], + newBitmask = bitmask | srcBitmask, + isCommon = newBitmask < (WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG | WRAP_ARY_FLAG); + + var isCombo = + ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_CURRY_FLAG)) || + ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_REARG_FLAG) && (data[7].length <= source[8])) || + ((srcBitmask == (WRAP_ARY_FLAG | WRAP_REARG_FLAG)) && (source[7].length <= source[8]) && (bitmask == WRAP_CURRY_FLAG)); + + // Exit early if metadata can't be merged. + if (!(isCommon || isCombo)) { + return data; + } + // Use source `thisArg` if available. + if (srcBitmask & WRAP_BIND_FLAG) { + data[2] = source[2]; + // Set when currying a bound function. + newBitmask |= bitmask & WRAP_BIND_FLAG ? 0 : WRAP_CURRY_BOUND_FLAG; + } + // Compose partial arguments. + var value = source[3]; + if (value) { + var partials = data[3]; + data[3] = partials ? composeArgs(partials, value, source[4]) : value; + data[4] = partials ? replaceHolders(data[3], PLACEHOLDER) : source[4]; + } + // Compose partial right arguments. + value = source[5]; + if (value) { + partials = data[5]; + data[5] = partials ? composeArgsRight(partials, value, source[6]) : value; + data[6] = partials ? replaceHolders(data[5], PLACEHOLDER) : source[6]; + } + // Use source `argPos` if available. + value = source[7]; + if (value) { + data[7] = value; + } + // Use source `ary` if it's smaller. + if (srcBitmask & WRAP_ARY_FLAG) { + data[8] = data[8] == null ? source[8] : nativeMin(data[8], source[8]); + } + // Use source `arity` if one is not provided. + if (data[9] == null) { + data[9] = source[9]; + } + // Use source `func` and merge bitmasks. + data[0] = source[0]; + data[1] = newBitmask; + + return data; +} + +module.exports = mergeData; diff --git a/node_modules/lodash/_metaMap.js b/node_modules/lodash/_metaMap.js new file mode 100644 index 0000000..0157a0b --- /dev/null +++ b/node_modules/lodash/_metaMap.js @@ -0,0 +1,6 @@ +var WeakMap = require('./_WeakMap'); + +/** Used to store function metadata. */ +var metaMap = WeakMap && new WeakMap; + +module.exports = metaMap; diff --git a/node_modules/lodash/_nativeCreate.js b/node_modules/lodash/_nativeCreate.js new file mode 100644 index 0000000..c7aede8 --- /dev/null +++ b/node_modules/lodash/_nativeCreate.js @@ -0,0 +1,6 @@ +var getNative = require('./_getNative'); + +/* Built-in method references that are verified to be native. */ +var nativeCreate = getNative(Object, 'create'); + +module.exports = nativeCreate; diff --git a/node_modules/lodash/_nativeKeys.js b/node_modules/lodash/_nativeKeys.js new file mode 100644 index 0000000..479a104 --- /dev/null +++ b/node_modules/lodash/_nativeKeys.js @@ -0,0 +1,6 @@ +var overArg = require('./_overArg'); + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeKeys = overArg(Object.keys, Object); + +module.exports = nativeKeys; diff --git a/node_modules/lodash/_nativeKeysIn.js b/node_modules/lodash/_nativeKeysIn.js new file mode 100644 index 0000000..00ee505 --- /dev/null +++ b/node_modules/lodash/_nativeKeysIn.js @@ -0,0 +1,20 @@ +/** + * This function is like + * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys) + * except that it includes inherited enumerable properties. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names. + */ +function nativeKeysIn(object) { + var result = []; + if (object != null) { + for (var key in Object(object)) { + result.push(key); + } + } + return result; +} + +module.exports = nativeKeysIn; diff --git a/node_modules/lodash/_nodeUtil.js b/node_modules/lodash/_nodeUtil.js new file mode 100644 index 0000000..983d78f --- /dev/null +++ b/node_modules/lodash/_nodeUtil.js @@ -0,0 +1,30 @@ +var freeGlobal = require('./_freeGlobal'); + +/** Detect free variable `exports`. */ +var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports; + +/** Detect free variable `module`. */ +var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module; + +/** Detect the popular CommonJS extension `module.exports`. */ +var moduleExports = freeModule && freeModule.exports === freeExports; + +/** Detect free variable `process` from Node.js. */ +var freeProcess = moduleExports && freeGlobal.process; + +/** Used to access faster Node.js helpers. */ +var nodeUtil = (function() { + try { + // Use `util.types` for Node.js 10+. + var types = freeModule && freeModule.require && freeModule.require('util').types; + + if (types) { + return types; + } + + // Legacy `process.binding('util')` for Node.js < 10. + return freeProcess && freeProcess.binding && freeProcess.binding('util'); + } catch (e) {} +}()); + +module.exports = nodeUtil; diff --git a/node_modules/lodash/_objectToString.js b/node_modules/lodash/_objectToString.js new file mode 100644 index 0000000..c614ec0 --- /dev/null +++ b/node_modules/lodash/_objectToString.js @@ -0,0 +1,22 @@ +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** + * Used to resolve the + * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring) + * of values. + */ +var nativeObjectToString = objectProto.toString; + +/** + * Converts `value` to a string using `Object.prototype.toString`. + * + * @private + * @param {*} value The value to convert. + * @returns {string} Returns the converted string. + */ +function objectToString(value) { + return nativeObjectToString.call(value); +} + +module.exports = objectToString; diff --git a/node_modules/lodash/_overArg.js b/node_modules/lodash/_overArg.js new file mode 100644 index 0000000..651c5c5 --- /dev/null +++ b/node_modules/lodash/_overArg.js @@ -0,0 +1,15 @@ +/** + * Creates a unary function that invokes `func` with its argument transformed. + * + * @private + * @param {Function} func The function to wrap. + * @param {Function} transform The argument transform. + * @returns {Function} Returns the new function. + */ +function overArg(func, transform) { + return function(arg) { + return func(transform(arg)); + }; +} + +module.exports = overArg; diff --git a/node_modules/lodash/_overRest.js b/node_modules/lodash/_overRest.js new file mode 100644 index 0000000..c7cdef3 --- /dev/null +++ b/node_modules/lodash/_overRest.js @@ -0,0 +1,36 @@ +var apply = require('./_apply'); + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeMax = Math.max; + +/** + * A specialized version of `baseRest` which transforms the rest array. + * + * @private + * @param {Function} func The function to apply a rest parameter to. + * @param {number} [start=func.length-1] The start position of the rest parameter. + * @param {Function} transform The rest array transform. + * @returns {Function} Returns the new function. + */ +function overRest(func, start, transform) { + start = nativeMax(start === undefined ? (func.length - 1) : start, 0); + return function() { + var args = arguments, + index = -1, + length = nativeMax(args.length - start, 0), + array = Array(length); + + while (++index < length) { + array[index] = args[start + index]; + } + index = -1; + var otherArgs = Array(start + 1); + while (++index < start) { + otherArgs[index] = args[index]; + } + otherArgs[start] = transform(array); + return apply(func, this, otherArgs); + }; +} + +module.exports = overRest; diff --git a/node_modules/lodash/_parent.js b/node_modules/lodash/_parent.js new file mode 100644 index 0000000..f174328 --- /dev/null +++ b/node_modules/lodash/_parent.js @@ -0,0 +1,16 @@ +var baseGet = require('./_baseGet'), + baseSlice = require('./_baseSlice'); + +/** + * Gets the parent value at `path` of `object`. + * + * @private + * @param {Object} object The object to query. + * @param {Array} path The path to get the parent value of. + * @returns {*} Returns the parent value. + */ +function parent(object, path) { + return path.length < 2 ? object : baseGet(object, baseSlice(path, 0, -1)); +} + +module.exports = parent; diff --git a/node_modules/lodash/_reEscape.js b/node_modules/lodash/_reEscape.js new file mode 100644 index 0000000..7f47eda --- /dev/null +++ b/node_modules/lodash/_reEscape.js @@ -0,0 +1,4 @@ +/** Used to match template delimiters. */ +var reEscape = /<%-([\s\S]+?)%>/g; + +module.exports = reEscape; diff --git a/node_modules/lodash/_reEvaluate.js b/node_modules/lodash/_reEvaluate.js new file mode 100644 index 0000000..6adfc31 --- /dev/null +++ b/node_modules/lodash/_reEvaluate.js @@ -0,0 +1,4 @@ +/** Used to match template delimiters. */ +var reEvaluate = /<%([\s\S]+?)%>/g; + +module.exports = reEvaluate; diff --git a/node_modules/lodash/_reInterpolate.js b/node_modules/lodash/_reInterpolate.js new file mode 100644 index 0000000..d02ff0b --- /dev/null +++ b/node_modules/lodash/_reInterpolate.js @@ -0,0 +1,4 @@ +/** Used to match template delimiters. */ +var reInterpolate = /<%=([\s\S]+?)%>/g; + +module.exports = reInterpolate; diff --git a/node_modules/lodash/_realNames.js b/node_modules/lodash/_realNames.js new file mode 100644 index 0000000..aa0d529 --- /dev/null +++ b/node_modules/lodash/_realNames.js @@ -0,0 +1,4 @@ +/** Used to lookup unminified function names. */ +var realNames = {}; + +module.exports = realNames; diff --git a/node_modules/lodash/_reorder.js b/node_modules/lodash/_reorder.js new file mode 100644 index 0000000..a3502b0 --- /dev/null +++ b/node_modules/lodash/_reorder.js @@ -0,0 +1,29 @@ +var copyArray = require('./_copyArray'), + isIndex = require('./_isIndex'); + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeMin = Math.min; + +/** + * Reorder `array` according to the specified indexes where the element at + * the first index is assigned as the first element, the element at + * the second index is assigned as the second element, and so on. + * + * @private + * @param {Array} array The array to reorder. + * @param {Array} indexes The arranged array indexes. + * @returns {Array} Returns `array`. + */ +function reorder(array, indexes) { + var arrLength = array.length, + length = nativeMin(indexes.length, arrLength), + oldArray = copyArray(array); + + while (length--) { + var index = indexes[length]; + array[length] = isIndex(index, arrLength) ? oldArray[index] : undefined; + } + return array; +} + +module.exports = reorder; diff --git a/node_modules/lodash/_replaceHolders.js b/node_modules/lodash/_replaceHolders.js new file mode 100644 index 0000000..74360ec --- /dev/null +++ b/node_modules/lodash/_replaceHolders.js @@ -0,0 +1,29 @@ +/** Used as the internal argument placeholder. */ +var PLACEHOLDER = '__lodash_placeholder__'; + +/** + * Replaces all `placeholder` elements in `array` with an internal placeholder + * and returns an array of their indexes. + * + * @private + * @param {Array} array The array to modify. + * @param {*} placeholder The placeholder to replace. + * @returns {Array} Returns the new array of placeholder indexes. + */ +function replaceHolders(array, placeholder) { + var index = -1, + length = array.length, + resIndex = 0, + result = []; + + while (++index < length) { + var value = array[index]; + if (value === placeholder || value === PLACEHOLDER) { + array[index] = PLACEHOLDER; + result[resIndex++] = index; + } + } + return result; +} + +module.exports = replaceHolders; diff --git a/node_modules/lodash/_root.js b/node_modules/lodash/_root.js new file mode 100644 index 0000000..d2852be --- /dev/null +++ b/node_modules/lodash/_root.js @@ -0,0 +1,9 @@ +var freeGlobal = require('./_freeGlobal'); + +/** Detect free variable `self`. */ +var freeSelf = typeof self == 'object' && self && self.Object === Object && self; + +/** Used as a reference to the global object. */ +var root = freeGlobal || freeSelf || Function('return this')(); + +module.exports = root; diff --git a/node_modules/lodash/_safeGet.js b/node_modules/lodash/_safeGet.js new file mode 100644 index 0000000..b070897 --- /dev/null +++ b/node_modules/lodash/_safeGet.js @@ -0,0 +1,21 @@ +/** + * Gets the value at `key`, unless `key` is "__proto__" or "constructor". + * + * @private + * @param {Object} object The object to query. + * @param {string} key The key of the property to get. + * @returns {*} Returns the property value. + */ +function safeGet(object, key) { + if (key === 'constructor' && typeof object[key] === 'function') { + return; + } + + if (key == '__proto__') { + return; + } + + return object[key]; +} + +module.exports = safeGet; diff --git a/node_modules/lodash/_setCacheAdd.js b/node_modules/lodash/_setCacheAdd.js new file mode 100644 index 0000000..1081a74 --- /dev/null +++ b/node_modules/lodash/_setCacheAdd.js @@ -0,0 +1,19 @@ +/** Used to stand-in for `undefined` hash values. */ +var HASH_UNDEFINED = '__lodash_hash_undefined__'; + +/** + * Adds `value` to the array cache. + * + * @private + * @name add + * @memberOf SetCache + * @alias push + * @param {*} value The value to cache. + * @returns {Object} Returns the cache instance. + */ +function setCacheAdd(value) { + this.__data__.set(value, HASH_UNDEFINED); + return this; +} + +module.exports = setCacheAdd; diff --git a/node_modules/lodash/_setCacheHas.js b/node_modules/lodash/_setCacheHas.js new file mode 100644 index 0000000..9a49255 --- /dev/null +++ b/node_modules/lodash/_setCacheHas.js @@ -0,0 +1,14 @@ +/** + * Checks if `value` is in the array cache. + * + * @private + * @name has + * @memberOf SetCache + * @param {*} value The value to search for. + * @returns {number} Returns `true` if `value` is found, else `false`. + */ +function setCacheHas(value) { + return this.__data__.has(value); +} + +module.exports = setCacheHas; diff --git a/node_modules/lodash/_setData.js b/node_modules/lodash/_setData.js new file mode 100644 index 0000000..e5cf3eb --- /dev/null +++ b/node_modules/lodash/_setData.js @@ -0,0 +1,20 @@ +var baseSetData = require('./_baseSetData'), + shortOut = require('./_shortOut'); + +/** + * Sets metadata for `func`. + * + * **Note:** If this function becomes hot, i.e. is invoked a lot in a short + * period of time, it will trip its breaker and transition to an identity + * function to avoid garbage collection pauses in V8. See + * [V8 issue 2070](https://bugs.chromium.org/p/v8/issues/detail?id=2070) + * for more details. + * + * @private + * @param {Function} func The function to associate metadata with. + * @param {*} data The metadata. + * @returns {Function} Returns `func`. + */ +var setData = shortOut(baseSetData); + +module.exports = setData; diff --git a/node_modules/lodash/_setToArray.js b/node_modules/lodash/_setToArray.js new file mode 100644 index 0000000..b87f074 --- /dev/null +++ b/node_modules/lodash/_setToArray.js @@ -0,0 +1,18 @@ +/** + * Converts `set` to an array of its values. + * + * @private + * @param {Object} set The set to convert. + * @returns {Array} Returns the values. + */ +function setToArray(set) { + var index = -1, + result = Array(set.size); + + set.forEach(function(value) { + result[++index] = value; + }); + return result; +} + +module.exports = setToArray; diff --git a/node_modules/lodash/_setToPairs.js b/node_modules/lodash/_setToPairs.js new file mode 100644 index 0000000..36ad37a --- /dev/null +++ b/node_modules/lodash/_setToPairs.js @@ -0,0 +1,18 @@ +/** + * Converts `set` to its value-value pairs. + * + * @private + * @param {Object} set The set to convert. + * @returns {Array} Returns the value-value pairs. + */ +function setToPairs(set) { + var index = -1, + result = Array(set.size); + + set.forEach(function(value) { + result[++index] = [value, value]; + }); + return result; +} + +module.exports = setToPairs; diff --git a/node_modules/lodash/_setToString.js b/node_modules/lodash/_setToString.js new file mode 100644 index 0000000..6ca8419 --- /dev/null +++ b/node_modules/lodash/_setToString.js @@ -0,0 +1,14 @@ +var baseSetToString = require('./_baseSetToString'), + shortOut = require('./_shortOut'); + +/** + * Sets the `toString` method of `func` to return `string`. + * + * @private + * @param {Function} func The function to modify. + * @param {Function} string The `toString` result. + * @returns {Function} Returns `func`. + */ +var setToString = shortOut(baseSetToString); + +module.exports = setToString; diff --git a/node_modules/lodash/_setWrapToString.js b/node_modules/lodash/_setWrapToString.js new file mode 100644 index 0000000..decdc44 --- /dev/null +++ b/node_modules/lodash/_setWrapToString.js @@ -0,0 +1,21 @@ +var getWrapDetails = require('./_getWrapDetails'), + insertWrapDetails = require('./_insertWrapDetails'), + setToString = require('./_setToString'), + updateWrapDetails = require('./_updateWrapDetails'); + +/** + * Sets the `toString` method of `wrapper` to mimic the source of `reference` + * with wrapper details in a comment at the top of the source body. + * + * @private + * @param {Function} wrapper The function to modify. + * @param {Function} reference The reference function. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @returns {Function} Returns `wrapper`. + */ +function setWrapToString(wrapper, reference, bitmask) { + var source = (reference + ''); + return setToString(wrapper, insertWrapDetails(source, updateWrapDetails(getWrapDetails(source), bitmask))); +} + +module.exports = setWrapToString; diff --git a/node_modules/lodash/_shortOut.js b/node_modules/lodash/_shortOut.js new file mode 100644 index 0000000..3300a07 --- /dev/null +++ b/node_modules/lodash/_shortOut.js @@ -0,0 +1,37 @@ +/** Used to detect hot functions by number of calls within a span of milliseconds. */ +var HOT_COUNT = 800, + HOT_SPAN = 16; + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeNow = Date.now; + +/** + * Creates a function that'll short out and invoke `identity` instead + * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN` + * milliseconds. + * + * @private + * @param {Function} func The function to restrict. + * @returns {Function} Returns the new shortable function. + */ +function shortOut(func) { + var count = 0, + lastCalled = 0; + + return function() { + var stamp = nativeNow(), + remaining = HOT_SPAN - (stamp - lastCalled); + + lastCalled = stamp; + if (remaining > 0) { + if (++count >= HOT_COUNT) { + return arguments[0]; + } + } else { + count = 0; + } + return func.apply(undefined, arguments); + }; +} + +module.exports = shortOut; diff --git a/node_modules/lodash/_shuffleSelf.js b/node_modules/lodash/_shuffleSelf.js new file mode 100644 index 0000000..8bcc4f5 --- /dev/null +++ b/node_modules/lodash/_shuffleSelf.js @@ -0,0 +1,28 @@ +var baseRandom = require('./_baseRandom'); + +/** + * A specialized version of `_.shuffle` which mutates and sets the size of `array`. + * + * @private + * @param {Array} array The array to shuffle. + * @param {number} [size=array.length] The size of `array`. + * @returns {Array} Returns `array`. + */ +function shuffleSelf(array, size) { + var index = -1, + length = array.length, + lastIndex = length - 1; + + size = size === undefined ? length : size; + while (++index < size) { + var rand = baseRandom(index, lastIndex), + value = array[rand]; + + array[rand] = array[index]; + array[index] = value; + } + array.length = size; + return array; +} + +module.exports = shuffleSelf; diff --git a/node_modules/lodash/_stackClear.js b/node_modules/lodash/_stackClear.js new file mode 100644 index 0000000..ce8e5a9 --- /dev/null +++ b/node_modules/lodash/_stackClear.js @@ -0,0 +1,15 @@ +var ListCache = require('./_ListCache'); + +/** + * Removes all key-value entries from the stack. + * + * @private + * @name clear + * @memberOf Stack + */ +function stackClear() { + this.__data__ = new ListCache; + this.size = 0; +} + +module.exports = stackClear; diff --git a/node_modules/lodash/_stackDelete.js b/node_modules/lodash/_stackDelete.js new file mode 100644 index 0000000..ff9887a --- /dev/null +++ b/node_modules/lodash/_stackDelete.js @@ -0,0 +1,18 @@ +/** + * Removes `key` and its value from the stack. + * + * @private + * @name delete + * @memberOf Stack + * @param {string} key The key of the value to remove. + * @returns {boolean} Returns `true` if the entry was removed, else `false`. + */ +function stackDelete(key) { + var data = this.__data__, + result = data['delete'](key); + + this.size = data.size; + return result; +} + +module.exports = stackDelete; diff --git a/node_modules/lodash/_stackGet.js b/node_modules/lodash/_stackGet.js new file mode 100644 index 0000000..1cdf004 --- /dev/null +++ b/node_modules/lodash/_stackGet.js @@ -0,0 +1,14 @@ +/** + * Gets the stack value for `key`. + * + * @private + * @name get + * @memberOf Stack + * @param {string} key The key of the value to get. + * @returns {*} Returns the entry value. + */ +function stackGet(key) { + return this.__data__.get(key); +} + +module.exports = stackGet; diff --git a/node_modules/lodash/_stackHas.js b/node_modules/lodash/_stackHas.js new file mode 100644 index 0000000..16a3ad1 --- /dev/null +++ b/node_modules/lodash/_stackHas.js @@ -0,0 +1,14 @@ +/** + * Checks if a stack value for `key` exists. + * + * @private + * @name has + * @memberOf Stack + * @param {string} key The key of the entry to check. + * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. + */ +function stackHas(key) { + return this.__data__.has(key); +} + +module.exports = stackHas; diff --git a/node_modules/lodash/_stackSet.js b/node_modules/lodash/_stackSet.js new file mode 100644 index 0000000..b790ac5 --- /dev/null +++ b/node_modules/lodash/_stackSet.js @@ -0,0 +1,34 @@ +var ListCache = require('./_ListCache'), + Map = require('./_Map'), + MapCache = require('./_MapCache'); + +/** Used as the size to enable large array optimizations. */ +var LARGE_ARRAY_SIZE = 200; + +/** + * Sets the stack `key` to `value`. + * + * @private + * @name set + * @memberOf Stack + * @param {string} key The key of the value to set. + * @param {*} value The value to set. + * @returns {Object} Returns the stack cache instance. + */ +function stackSet(key, value) { + var data = this.__data__; + if (data instanceof ListCache) { + var pairs = data.__data__; + if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) { + pairs.push([key, value]); + this.size = ++data.size; + return this; + } + data = this.__data__ = new MapCache(pairs); + } + data.set(key, value); + this.size = data.size; + return this; +} + +module.exports = stackSet; diff --git a/node_modules/lodash/_strictIndexOf.js b/node_modules/lodash/_strictIndexOf.js new file mode 100644 index 0000000..0486a49 --- /dev/null +++ b/node_modules/lodash/_strictIndexOf.js @@ -0,0 +1,23 @@ +/** + * A specialized version of `_.indexOf` which performs strict equality + * comparisons of values, i.e. `===`. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} fromIndex The index to search from. + * @returns {number} Returns the index of the matched value, else `-1`. + */ +function strictIndexOf(array, value, fromIndex) { + var index = fromIndex - 1, + length = array.length; + + while (++index < length) { + if (array[index] === value) { + return index; + } + } + return -1; +} + +module.exports = strictIndexOf; diff --git a/node_modules/lodash/_strictLastIndexOf.js b/node_modules/lodash/_strictLastIndexOf.js new file mode 100644 index 0000000..d7310dc --- /dev/null +++ b/node_modules/lodash/_strictLastIndexOf.js @@ -0,0 +1,21 @@ +/** + * A specialized version of `_.lastIndexOf` which performs strict equality + * comparisons of values, i.e. `===`. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} fromIndex The index to search from. + * @returns {number} Returns the index of the matched value, else `-1`. + */ +function strictLastIndexOf(array, value, fromIndex) { + var index = fromIndex + 1; + while (index--) { + if (array[index] === value) { + return index; + } + } + return index; +} + +module.exports = strictLastIndexOf; diff --git a/node_modules/lodash/_stringSize.js b/node_modules/lodash/_stringSize.js new file mode 100644 index 0000000..17ef462 --- /dev/null +++ b/node_modules/lodash/_stringSize.js @@ -0,0 +1,18 @@ +var asciiSize = require('./_asciiSize'), + hasUnicode = require('./_hasUnicode'), + unicodeSize = require('./_unicodeSize'); + +/** + * Gets the number of symbols in `string`. + * + * @private + * @param {string} string The string to inspect. + * @returns {number} Returns the string size. + */ +function stringSize(string) { + return hasUnicode(string) + ? unicodeSize(string) + : asciiSize(string); +} + +module.exports = stringSize; diff --git a/node_modules/lodash/_stringToArray.js b/node_modules/lodash/_stringToArray.js new file mode 100644 index 0000000..d161158 --- /dev/null +++ b/node_modules/lodash/_stringToArray.js @@ -0,0 +1,18 @@ +var asciiToArray = require('./_asciiToArray'), + hasUnicode = require('./_hasUnicode'), + unicodeToArray = require('./_unicodeToArray'); + +/** + * Converts `string` to an array. + * + * @private + * @param {string} string The string to convert. + * @returns {Array} Returns the converted array. + */ +function stringToArray(string) { + return hasUnicode(string) + ? unicodeToArray(string) + : asciiToArray(string); +} + +module.exports = stringToArray; diff --git a/node_modules/lodash/_stringToPath.js b/node_modules/lodash/_stringToPath.js new file mode 100644 index 0000000..8f39f8a --- /dev/null +++ b/node_modules/lodash/_stringToPath.js @@ -0,0 +1,27 @@ +var memoizeCapped = require('./_memoizeCapped'); + +/** Used to match property names within property paths. */ +var rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g; + +/** Used to match backslashes in property paths. */ +var reEscapeChar = /\\(\\)?/g; + +/** + * Converts `string` to a property path array. + * + * @private + * @param {string} string The string to convert. + * @returns {Array} Returns the property path array. + */ +var stringToPath = memoizeCapped(function(string) { + var result = []; + if (string.charCodeAt(0) === 46 /* . */) { + result.push(''); + } + string.replace(rePropName, function(match, number, quote, subString) { + result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match)); + }); + return result; +}); + +module.exports = stringToPath; diff --git a/node_modules/lodash/_toKey.js b/node_modules/lodash/_toKey.js new file mode 100644 index 0000000..c6d645c --- /dev/null +++ b/node_modules/lodash/_toKey.js @@ -0,0 +1,21 @@ +var isSymbol = require('./isSymbol'); + +/** Used as references for various `Number` constants. */ +var INFINITY = 1 / 0; + +/** + * Converts `value` to a string key if it's not a string or symbol. + * + * @private + * @param {*} value The value to inspect. + * @returns {string|symbol} Returns the key. + */ +function toKey(value) { + if (typeof value == 'string' || isSymbol(value)) { + return value; + } + var result = (value + ''); + return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result; +} + +module.exports = toKey; diff --git a/node_modules/lodash/_toSource.js b/node_modules/lodash/_toSource.js new file mode 100644 index 0000000..a020b38 --- /dev/null +++ b/node_modules/lodash/_toSource.js @@ -0,0 +1,26 @@ +/** Used for built-in method references. */ +var funcProto = Function.prototype; + +/** Used to resolve the decompiled source of functions. */ +var funcToString = funcProto.toString; + +/** + * Converts `func` to its source code. + * + * @private + * @param {Function} func The function to convert. + * @returns {string} Returns the source code. + */ +function toSource(func) { + if (func != null) { + try { + return funcToString.call(func); + } catch (e) {} + try { + return (func + ''); + } catch (e) {} + } + return ''; +} + +module.exports = toSource; diff --git a/node_modules/lodash/_trimmedEndIndex.js b/node_modules/lodash/_trimmedEndIndex.js new file mode 100644 index 0000000..139439a --- /dev/null +++ b/node_modules/lodash/_trimmedEndIndex.js @@ -0,0 +1,19 @@ +/** Used to match a single whitespace character. */ +var reWhitespace = /\s/; + +/** + * Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace + * character of `string`. + * + * @private + * @param {string} string The string to inspect. + * @returns {number} Returns the index of the last non-whitespace character. + */ +function trimmedEndIndex(string) { + var index = string.length; + + while (index-- && reWhitespace.test(string.charAt(index))) {} + return index; +} + +module.exports = trimmedEndIndex; diff --git a/node_modules/lodash/_unescapeHtmlChar.js b/node_modules/lodash/_unescapeHtmlChar.js new file mode 100644 index 0000000..a71fecb --- /dev/null +++ b/node_modules/lodash/_unescapeHtmlChar.js @@ -0,0 +1,21 @@ +var basePropertyOf = require('./_basePropertyOf'); + +/** Used to map HTML entities to characters. */ +var htmlUnescapes = { + '&': '&', + '<': '<', + '>': '>', + '"': '"', + ''': "'" +}; + +/** + * Used by `_.unescape` to convert HTML entities to characters. + * + * @private + * @param {string} chr The matched character to unescape. + * @returns {string} Returns the unescaped character. + */ +var unescapeHtmlChar = basePropertyOf(htmlUnescapes); + +module.exports = unescapeHtmlChar; diff --git a/node_modules/lodash/_unicodeSize.js b/node_modules/lodash/_unicodeSize.js new file mode 100644 index 0000000..68137ec --- /dev/null +++ b/node_modules/lodash/_unicodeSize.js @@ -0,0 +1,44 @@ +/** Used to compose unicode character classes. */ +var rsAstralRange = '\\ud800-\\udfff', + rsComboMarksRange = '\\u0300-\\u036f', + reComboHalfMarksRange = '\\ufe20-\\ufe2f', + rsComboSymbolsRange = '\\u20d0-\\u20ff', + rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange, + rsVarRange = '\\ufe0e\\ufe0f'; + +/** Used to compose unicode capture groups. */ +var rsAstral = '[' + rsAstralRange + ']', + rsCombo = '[' + rsComboRange + ']', + rsFitz = '\\ud83c[\\udffb-\\udfff]', + rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')', + rsNonAstral = '[^' + rsAstralRange + ']', + rsRegional = '(?:\\ud83c[\\udde6-\\uddff]){2}', + rsSurrPair = '[\\ud800-\\udbff][\\udc00-\\udfff]', + rsZWJ = '\\u200d'; + +/** Used to compose unicode regexes. */ +var reOptMod = rsModifier + '?', + rsOptVar = '[' + rsVarRange + ']?', + rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*', + rsSeq = rsOptVar + reOptMod + rsOptJoin, + rsSymbol = '(?:' + [rsNonAstral + rsCombo + '?', rsCombo, rsRegional, rsSurrPair, rsAstral].join('|') + ')'; + +/** Used to match [string symbols](https://mathiasbynens.be/notes/javascript-unicode). */ +var reUnicode = RegExp(rsFitz + '(?=' + rsFitz + ')|' + rsSymbol + rsSeq, 'g'); + +/** + * Gets the size of a Unicode `string`. + * + * @private + * @param {string} string The string inspect. + * @returns {number} Returns the string size. + */ +function unicodeSize(string) { + var result = reUnicode.lastIndex = 0; + while (reUnicode.test(string)) { + ++result; + } + return result; +} + +module.exports = unicodeSize; diff --git a/node_modules/lodash/_unicodeToArray.js b/node_modules/lodash/_unicodeToArray.js new file mode 100644 index 0000000..2a725c0 --- /dev/null +++ b/node_modules/lodash/_unicodeToArray.js @@ -0,0 +1,40 @@ +/** Used to compose unicode character classes. */ +var rsAstralRange = '\\ud800-\\udfff', + rsComboMarksRange = '\\u0300-\\u036f', + reComboHalfMarksRange = '\\ufe20-\\ufe2f', + rsComboSymbolsRange = '\\u20d0-\\u20ff', + rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange, + rsVarRange = '\\ufe0e\\ufe0f'; + +/** Used to compose unicode capture groups. */ +var rsAstral = '[' + rsAstralRange + ']', + rsCombo = '[' + rsComboRange + ']', + rsFitz = '\\ud83c[\\udffb-\\udfff]', + rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')', + rsNonAstral = '[^' + rsAstralRange + ']', + rsRegional = '(?:\\ud83c[\\udde6-\\uddff]){2}', + rsSurrPair = '[\\ud800-\\udbff][\\udc00-\\udfff]', + rsZWJ = '\\u200d'; + +/** Used to compose unicode regexes. */ +var reOptMod = rsModifier + '?', + rsOptVar = '[' + rsVarRange + ']?', + rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*', + rsSeq = rsOptVar + reOptMod + rsOptJoin, + rsSymbol = '(?:' + [rsNonAstral + rsCombo + '?', rsCombo, rsRegional, rsSurrPair, rsAstral].join('|') + ')'; + +/** Used to match [string symbols](https://mathiasbynens.be/notes/javascript-unicode). */ +var reUnicode = RegExp(rsFitz + '(?=' + rsFitz + ')|' + rsSymbol + rsSeq, 'g'); + +/** + * Converts a Unicode `string` to an array. + * + * @private + * @param {string} string The string to convert. + * @returns {Array} Returns the converted array. + */ +function unicodeToArray(string) { + return string.match(reUnicode) || []; +} + +module.exports = unicodeToArray; diff --git a/node_modules/lodash/_unicodeWords.js b/node_modules/lodash/_unicodeWords.js new file mode 100644 index 0000000..e72e6e0 --- /dev/null +++ b/node_modules/lodash/_unicodeWords.js @@ -0,0 +1,69 @@ +/** Used to compose unicode character classes. */ +var rsAstralRange = '\\ud800-\\udfff', + rsComboMarksRange = '\\u0300-\\u036f', + reComboHalfMarksRange = '\\ufe20-\\ufe2f', + rsComboSymbolsRange = '\\u20d0-\\u20ff', + rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange, + rsDingbatRange = '\\u2700-\\u27bf', + rsLowerRange = 'a-z\\xdf-\\xf6\\xf8-\\xff', + rsMathOpRange = '\\xac\\xb1\\xd7\\xf7', + rsNonCharRange = '\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf', + rsPunctuationRange = '\\u2000-\\u206f', + rsSpaceRange = ' \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000', + rsUpperRange = 'A-Z\\xc0-\\xd6\\xd8-\\xde', + rsVarRange = '\\ufe0e\\ufe0f', + rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange; + +/** Used to compose unicode capture groups. */ +var rsApos = "['\u2019]", + rsBreak = '[' + rsBreakRange + ']', + rsCombo = '[' + rsComboRange + ']', + rsDigits = '\\d+', + rsDingbat = '[' + rsDingbatRange + ']', + rsLower = '[' + rsLowerRange + ']', + rsMisc = '[^' + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + ']', + rsFitz = '\\ud83c[\\udffb-\\udfff]', + rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')', + rsNonAstral = '[^' + rsAstralRange + ']', + rsRegional = '(?:\\ud83c[\\udde6-\\uddff]){2}', + rsSurrPair = '[\\ud800-\\udbff][\\udc00-\\udfff]', + rsUpper = '[' + rsUpperRange + ']', + rsZWJ = '\\u200d'; + +/** Used to compose unicode regexes. */ +var rsMiscLower = '(?:' + rsLower + '|' + rsMisc + ')', + rsMiscUpper = '(?:' + rsUpper + '|' + rsMisc + ')', + rsOptContrLower = '(?:' + rsApos + '(?:d|ll|m|re|s|t|ve))?', + rsOptContrUpper = '(?:' + rsApos + '(?:D|LL|M|RE|S|T|VE))?', + reOptMod = rsModifier + '?', + rsOptVar = '[' + rsVarRange + ']?', + rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*', + rsOrdLower = '\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])', + rsOrdUpper = '\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])', + rsSeq = rsOptVar + reOptMod + rsOptJoin, + rsEmoji = '(?:' + [rsDingbat, rsRegional, rsSurrPair].join('|') + ')' + rsSeq; + +/** Used to match complex or compound words. */ +var reUnicodeWord = RegExp([ + rsUpper + '?' + rsLower + '+' + rsOptContrLower + '(?=' + [rsBreak, rsUpper, '$'].join('|') + ')', + rsMiscUpper + '+' + rsOptContrUpper + '(?=' + [rsBreak, rsUpper + rsMiscLower, '$'].join('|') + ')', + rsUpper + '?' + rsMiscLower + '+' + rsOptContrLower, + rsUpper + '+' + rsOptContrUpper, + rsOrdUpper, + rsOrdLower, + rsDigits, + rsEmoji +].join('|'), 'g'); + +/** + * Splits a Unicode `string` into an array of its words. + * + * @private + * @param {string} The string to inspect. + * @returns {Array} Returns the words of `string`. + */ +function unicodeWords(string) { + return string.match(reUnicodeWord) || []; +} + +module.exports = unicodeWords; diff --git a/node_modules/lodash/_updateWrapDetails.js b/node_modules/lodash/_updateWrapDetails.js new file mode 100644 index 0000000..8759fbd --- /dev/null +++ b/node_modules/lodash/_updateWrapDetails.js @@ -0,0 +1,46 @@ +var arrayEach = require('./_arrayEach'), + arrayIncludes = require('./_arrayIncludes'); + +/** Used to compose bitmasks for function metadata. */ +var WRAP_BIND_FLAG = 1, + WRAP_BIND_KEY_FLAG = 2, + WRAP_CURRY_FLAG = 8, + WRAP_CURRY_RIGHT_FLAG = 16, + WRAP_PARTIAL_FLAG = 32, + WRAP_PARTIAL_RIGHT_FLAG = 64, + WRAP_ARY_FLAG = 128, + WRAP_REARG_FLAG = 256, + WRAP_FLIP_FLAG = 512; + +/** Used to associate wrap methods with their bit flags. */ +var wrapFlags = [ + ['ary', WRAP_ARY_FLAG], + ['bind', WRAP_BIND_FLAG], + ['bindKey', WRAP_BIND_KEY_FLAG], + ['curry', WRAP_CURRY_FLAG], + ['curryRight', WRAP_CURRY_RIGHT_FLAG], + ['flip', WRAP_FLIP_FLAG], + ['partial', WRAP_PARTIAL_FLAG], + ['partialRight', WRAP_PARTIAL_RIGHT_FLAG], + ['rearg', WRAP_REARG_FLAG] +]; + +/** + * Updates wrapper `details` based on `bitmask` flags. + * + * @private + * @returns {Array} details The details to modify. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @returns {Array} Returns `details`. + */ +function updateWrapDetails(details, bitmask) { + arrayEach(wrapFlags, function(pair) { + var value = '_.' + pair[0]; + if ((bitmask & pair[1]) && !arrayIncludes(details, value)) { + details.push(value); + } + }); + return details.sort(); +} + +module.exports = updateWrapDetails; diff --git a/node_modules/lodash/_wrapperClone.js b/node_modules/lodash/_wrapperClone.js new file mode 100644 index 0000000..7bb58a2 --- /dev/null +++ b/node_modules/lodash/_wrapperClone.js @@ -0,0 +1,23 @@ +var LazyWrapper = require('./_LazyWrapper'), + LodashWrapper = require('./_LodashWrapper'), + copyArray = require('./_copyArray'); + +/** + * Creates a clone of `wrapper`. + * + * @private + * @param {Object} wrapper The wrapper to clone. + * @returns {Object} Returns the cloned wrapper. + */ +function wrapperClone(wrapper) { + if (wrapper instanceof LazyWrapper) { + return wrapper.clone(); + } + var result = new LodashWrapper(wrapper.__wrapped__, wrapper.__chain__); + result.__actions__ = copyArray(wrapper.__actions__); + result.__index__ = wrapper.__index__; + result.__values__ = wrapper.__values__; + return result; +} + +module.exports = wrapperClone; diff --git a/node_modules/lodash/add.js b/node_modules/lodash/add.js new file mode 100644 index 0000000..f069515 --- /dev/null +++ b/node_modules/lodash/add.js @@ -0,0 +1,22 @@ +var createMathOperation = require('./_createMathOperation'); + +/** + * Adds two numbers. + * + * @static + * @memberOf _ + * @since 3.4.0 + * @category Math + * @param {number} augend The first number in an addition. + * @param {number} addend The second number in an addition. + * @returns {number} Returns the total. + * @example + * + * _.add(6, 4); + * // => 10 + */ +var add = createMathOperation(function(augend, addend) { + return augend + addend; +}, 0); + +module.exports = add; diff --git a/node_modules/lodash/after.js b/node_modules/lodash/after.js new file mode 100644 index 0000000..3900c97 --- /dev/null +++ b/node_modules/lodash/after.js @@ -0,0 +1,42 @@ +var toInteger = require('./toInteger'); + +/** Error message constants. */ +var FUNC_ERROR_TEXT = 'Expected a function'; + +/** + * The opposite of `_.before`; this method creates a function that invokes + * `func` once it's called `n` or more times. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {number} n The number of calls before `func` is invoked. + * @param {Function} func The function to restrict. + * @returns {Function} Returns the new restricted function. + * @example + * + * var saves = ['profile', 'settings']; + * + * var done = _.after(saves.length, function() { + * console.log('done saving!'); + * }); + * + * _.forEach(saves, function(type) { + * asyncSave({ 'type': type, 'complete': done }); + * }); + * // => Logs 'done saving!' after the two async saves have completed. + */ +function after(n, func) { + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + n = toInteger(n); + return function() { + if (--n < 1) { + return func.apply(this, arguments); + } + }; +} + +module.exports = after; diff --git a/node_modules/lodash/array.js b/node_modules/lodash/array.js new file mode 100644 index 0000000..af688d3 --- /dev/null +++ b/node_modules/lodash/array.js @@ -0,0 +1,67 @@ +module.exports = { + 'chunk': require('./chunk'), + 'compact': require('./compact'), + 'concat': require('./concat'), + 'difference': require('./difference'), + 'differenceBy': require('./differenceBy'), + 'differenceWith': require('./differenceWith'), + 'drop': require('./drop'), + 'dropRight': require('./dropRight'), + 'dropRightWhile': require('./dropRightWhile'), + 'dropWhile': require('./dropWhile'), + 'fill': require('./fill'), + 'findIndex': require('./findIndex'), + 'findLastIndex': require('./findLastIndex'), + 'first': require('./first'), + 'flatten': require('./flatten'), + 'flattenDeep': require('./flattenDeep'), + 'flattenDepth': require('./flattenDepth'), + 'fromPairs': require('./fromPairs'), + 'head': require('./head'), + 'indexOf': require('./indexOf'), + 'initial': require('./initial'), + 'intersection': require('./intersection'), + 'intersectionBy': require('./intersectionBy'), + 'intersectionWith': require('./intersectionWith'), + 'join': require('./join'), + 'last': require('./last'), + 'lastIndexOf': require('./lastIndexOf'), + 'nth': require('./nth'), + 'pull': require('./pull'), + 'pullAll': require('./pullAll'), + 'pullAllBy': require('./pullAllBy'), + 'pullAllWith': require('./pullAllWith'), + 'pullAt': require('./pullAt'), + 'remove': require('./remove'), + 'reverse': require('./reverse'), + 'slice': require('./slice'), + 'sortedIndex': require('./sortedIndex'), + 'sortedIndexBy': require('./sortedIndexBy'), + 'sortedIndexOf': require('./sortedIndexOf'), + 'sortedLastIndex': require('./sortedLastIndex'), + 'sortedLastIndexBy': require('./sortedLastIndexBy'), + 'sortedLastIndexOf': require('./sortedLastIndexOf'), + 'sortedUniq': require('./sortedUniq'), + 'sortedUniqBy': require('./sortedUniqBy'), + 'tail': require('./tail'), + 'take': require('./take'), + 'takeRight': require('./takeRight'), + 'takeRightWhile': require('./takeRightWhile'), + 'takeWhile': require('./takeWhile'), + 'union': require('./union'), + 'unionBy': require('./unionBy'), + 'unionWith': require('./unionWith'), + 'uniq': require('./uniq'), + 'uniqBy': require('./uniqBy'), + 'uniqWith': require('./uniqWith'), + 'unzip': require('./unzip'), + 'unzipWith': require('./unzipWith'), + 'without': require('./without'), + 'xor': require('./xor'), + 'xorBy': require('./xorBy'), + 'xorWith': require('./xorWith'), + 'zip': require('./zip'), + 'zipObject': require('./zipObject'), + 'zipObjectDeep': require('./zipObjectDeep'), + 'zipWith': require('./zipWith') +}; diff --git a/node_modules/lodash/ary.js b/node_modules/lodash/ary.js new file mode 100644 index 0000000..70c87d0 --- /dev/null +++ b/node_modules/lodash/ary.js @@ -0,0 +1,29 @@ +var createWrap = require('./_createWrap'); + +/** Used to compose bitmasks for function metadata. */ +var WRAP_ARY_FLAG = 128; + +/** + * Creates a function that invokes `func`, with up to `n` arguments, + * ignoring any additional arguments. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Function + * @param {Function} func The function to cap arguments for. + * @param {number} [n=func.length] The arity cap. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Function} Returns the new capped function. + * @example + * + * _.map(['6', '8', '10'], _.ary(parseInt, 1)); + * // => [6, 8, 10] + */ +function ary(func, n, guard) { + n = guard ? undefined : n; + n = (func && n == null) ? func.length : n; + return createWrap(func, WRAP_ARY_FLAG, undefined, undefined, undefined, undefined, n); +} + +module.exports = ary; diff --git a/node_modules/lodash/assign.js b/node_modules/lodash/assign.js new file mode 100644 index 0000000..909db26 --- /dev/null +++ b/node_modules/lodash/assign.js @@ -0,0 +1,58 @@ +var assignValue = require('./_assignValue'), + copyObject = require('./_copyObject'), + createAssigner = require('./_createAssigner'), + isArrayLike = require('./isArrayLike'), + isPrototype = require('./_isPrototype'), + keys = require('./keys'); + +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var hasOwnProperty = objectProto.hasOwnProperty; + +/** + * Assigns own enumerable string keyed properties of source objects to the + * destination object. Source objects are applied from left to right. + * Subsequent sources overwrite property assignments of previous sources. + * + * **Note:** This method mutates `object` and is loosely based on + * [`Object.assign`](https://mdn.io/Object/assign). + * + * @static + * @memberOf _ + * @since 0.10.0 + * @category Object + * @param {Object} object The destination object. + * @param {...Object} [sources] The source objects. + * @returns {Object} Returns `object`. + * @see _.assignIn + * @example + * + * function Foo() { + * this.a = 1; + * } + * + * function Bar() { + * this.c = 3; + * } + * + * Foo.prototype.b = 2; + * Bar.prototype.d = 4; + * + * _.assign({ 'a': 0 }, new Foo, new Bar); + * // => { 'a': 1, 'c': 3 } + */ +var assign = createAssigner(function(object, source) { + if (isPrototype(source) || isArrayLike(source)) { + copyObject(source, keys(source), object); + return; + } + for (var key in source) { + if (hasOwnProperty.call(source, key)) { + assignValue(object, key, source[key]); + } + } +}); + +module.exports = assign; diff --git a/node_modules/lodash/assignIn.js b/node_modules/lodash/assignIn.js new file mode 100644 index 0000000..e663473 --- /dev/null +++ b/node_modules/lodash/assignIn.js @@ -0,0 +1,40 @@ +var copyObject = require('./_copyObject'), + createAssigner = require('./_createAssigner'), + keysIn = require('./keysIn'); + +/** + * This method is like `_.assign` except that it iterates over own and + * inherited source properties. + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @alias extend + * @category Object + * @param {Object} object The destination object. + * @param {...Object} [sources] The source objects. + * @returns {Object} Returns `object`. + * @see _.assign + * @example + * + * function Foo() { + * this.a = 1; + * } + * + * function Bar() { + * this.c = 3; + * } + * + * Foo.prototype.b = 2; + * Bar.prototype.d = 4; + * + * _.assignIn({ 'a': 0 }, new Foo, new Bar); + * // => { 'a': 1, 'b': 2, 'c': 3, 'd': 4 } + */ +var assignIn = createAssigner(function(object, source) { + copyObject(source, keysIn(source), object); +}); + +module.exports = assignIn; diff --git a/node_modules/lodash/assignInWith.js b/node_modules/lodash/assignInWith.js new file mode 100644 index 0000000..68fcc0b --- /dev/null +++ b/node_modules/lodash/assignInWith.js @@ -0,0 +1,38 @@ +var copyObject = require('./_copyObject'), + createAssigner = require('./_createAssigner'), + keysIn = require('./keysIn'); + +/** + * This method is like `_.assignIn` except that it accepts `customizer` + * which is invoked to produce the assigned values. If `customizer` returns + * `undefined`, assignment is handled by the method instead. The `customizer` + * is invoked with five arguments: (objValue, srcValue, key, object, source). + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @alias extendWith + * @category Object + * @param {Object} object The destination object. + * @param {...Object} sources The source objects. + * @param {Function} [customizer] The function to customize assigned values. + * @returns {Object} Returns `object`. + * @see _.assignWith + * @example + * + * function customizer(objValue, srcValue) { + * return _.isUndefined(objValue) ? srcValue : objValue; + * } + * + * var defaults = _.partialRight(_.assignInWith, customizer); + * + * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 }); + * // => { 'a': 1, 'b': 2 } + */ +var assignInWith = createAssigner(function(object, source, srcIndex, customizer) { + copyObject(source, keysIn(source), object, customizer); +}); + +module.exports = assignInWith; diff --git a/node_modules/lodash/assignWith.js b/node_modules/lodash/assignWith.js new file mode 100644 index 0000000..7dc6c76 --- /dev/null +++ b/node_modules/lodash/assignWith.js @@ -0,0 +1,37 @@ +var copyObject = require('./_copyObject'), + createAssigner = require('./_createAssigner'), + keys = require('./keys'); + +/** + * This method is like `_.assign` except that it accepts `customizer` + * which is invoked to produce the assigned values. If `customizer` returns + * `undefined`, assignment is handled by the method instead. The `customizer` + * is invoked with five arguments: (objValue, srcValue, key, object, source). + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The destination object. + * @param {...Object} sources The source objects. + * @param {Function} [customizer] The function to customize assigned values. + * @returns {Object} Returns `object`. + * @see _.assignInWith + * @example + * + * function customizer(objValue, srcValue) { + * return _.isUndefined(objValue) ? srcValue : objValue; + * } + * + * var defaults = _.partialRight(_.assignWith, customizer); + * + * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 }); + * // => { 'a': 1, 'b': 2 } + */ +var assignWith = createAssigner(function(object, source, srcIndex, customizer) { + copyObject(source, keys(source), object, customizer); +}); + +module.exports = assignWith; diff --git a/node_modules/lodash/at.js b/node_modules/lodash/at.js new file mode 100644 index 0000000..781ee9e --- /dev/null +++ b/node_modules/lodash/at.js @@ -0,0 +1,23 @@ +var baseAt = require('./_baseAt'), + flatRest = require('./_flatRest'); + +/** + * Creates an array of values corresponding to `paths` of `object`. + * + * @static + * @memberOf _ + * @since 1.0.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {...(string|string[])} [paths] The property paths to pick. + * @returns {Array} Returns the picked values. + * @example + * + * var object = { 'a': [{ 'b': { 'c': 3 } }, 4] }; + * + * _.at(object, ['a[0].b.c', 'a[1]']); + * // => [3, 4] + */ +var at = flatRest(baseAt); + +module.exports = at; diff --git a/node_modules/lodash/attempt.js b/node_modules/lodash/attempt.js new file mode 100644 index 0000000..624d015 --- /dev/null +++ b/node_modules/lodash/attempt.js @@ -0,0 +1,35 @@ +var apply = require('./_apply'), + baseRest = require('./_baseRest'), + isError = require('./isError'); + +/** + * Attempts to invoke `func`, returning either the result or the caught error + * object. Any additional arguments are provided to `func` when it's invoked. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Util + * @param {Function} func The function to attempt. + * @param {...*} [args] The arguments to invoke `func` with. + * @returns {*} Returns the `func` result or error object. + * @example + * + * // Avoid throwing errors for invalid selectors. + * var elements = _.attempt(function(selector) { + * return document.querySelectorAll(selector); + * }, '>_>'); + * + * if (_.isError(elements)) { + * elements = []; + * } + */ +var attempt = baseRest(function(func, args) { + try { + return apply(func, undefined, args); + } catch (e) { + return isError(e) ? e : new Error(e); + } +}); + +module.exports = attempt; diff --git a/node_modules/lodash/before.js b/node_modules/lodash/before.js new file mode 100644 index 0000000..a3e0a16 --- /dev/null +++ b/node_modules/lodash/before.js @@ -0,0 +1,40 @@ +var toInteger = require('./toInteger'); + +/** Error message constants. */ +var FUNC_ERROR_TEXT = 'Expected a function'; + +/** + * Creates a function that invokes `func`, with the `this` binding and arguments + * of the created function, while it's called less than `n` times. Subsequent + * calls to the created function return the result of the last `func` invocation. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Function + * @param {number} n The number of calls at which `func` is no longer invoked. + * @param {Function} func The function to restrict. + * @returns {Function} Returns the new restricted function. + * @example + * + * jQuery(element).on('click', _.before(5, addContactToList)); + * // => Allows adding up to 4 contacts to the list. + */ +function before(n, func) { + var result; + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + n = toInteger(n); + return function() { + if (--n > 0) { + result = func.apply(this, arguments); + } + if (n <= 1) { + func = undefined; + } + return result; + }; +} + +module.exports = before; diff --git a/node_modules/lodash/bind.js b/node_modules/lodash/bind.js new file mode 100644 index 0000000..b1076e9 --- /dev/null +++ b/node_modules/lodash/bind.js @@ -0,0 +1,57 @@ +var baseRest = require('./_baseRest'), + createWrap = require('./_createWrap'), + getHolder = require('./_getHolder'), + replaceHolders = require('./_replaceHolders'); + +/** Used to compose bitmasks for function metadata. */ +var WRAP_BIND_FLAG = 1, + WRAP_PARTIAL_FLAG = 32; + +/** + * Creates a function that invokes `func` with the `this` binding of `thisArg` + * and `partials` prepended to the arguments it receives. + * + * The `_.bind.placeholder` value, which defaults to `_` in monolithic builds, + * may be used as a placeholder for partially applied arguments. + * + * **Note:** Unlike native `Function#bind`, this method doesn't set the "length" + * property of bound functions. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {Function} func The function to bind. + * @param {*} thisArg The `this` binding of `func`. + * @param {...*} [partials] The arguments to be partially applied. + * @returns {Function} Returns the new bound function. + * @example + * + * function greet(greeting, punctuation) { + * return greeting + ' ' + this.user + punctuation; + * } + * + * var object = { 'user': 'fred' }; + * + * var bound = _.bind(greet, object, 'hi'); + * bound('!'); + * // => 'hi fred!' + * + * // Bound with placeholders. + * var bound = _.bind(greet, object, _, '!'); + * bound('hi'); + * // => 'hi fred!' + */ +var bind = baseRest(function(func, thisArg, partials) { + var bitmask = WRAP_BIND_FLAG; + if (partials.length) { + var holders = replaceHolders(partials, getHolder(bind)); + bitmask |= WRAP_PARTIAL_FLAG; + } + return createWrap(func, bitmask, thisArg, partials, holders); +}); + +// Assign default placeholders. +bind.placeholder = {}; + +module.exports = bind; diff --git a/node_modules/lodash/bindAll.js b/node_modules/lodash/bindAll.js new file mode 100644 index 0000000..a35706d --- /dev/null +++ b/node_modules/lodash/bindAll.js @@ -0,0 +1,41 @@ +var arrayEach = require('./_arrayEach'), + baseAssignValue = require('./_baseAssignValue'), + bind = require('./bind'), + flatRest = require('./_flatRest'), + toKey = require('./_toKey'); + +/** + * Binds methods of an object to the object itself, overwriting the existing + * method. + * + * **Note:** This method doesn't set the "length" property of bound functions. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Util + * @param {Object} object The object to bind and assign the bound methods to. + * @param {...(string|string[])} methodNames The object method names to bind. + * @returns {Object} Returns `object`. + * @example + * + * var view = { + * 'label': 'docs', + * 'click': function() { + * console.log('clicked ' + this.label); + * } + * }; + * + * _.bindAll(view, ['click']); + * jQuery(element).on('click', view.click); + * // => Logs 'clicked docs' when clicked. + */ +var bindAll = flatRest(function(object, methodNames) { + arrayEach(methodNames, function(key) { + key = toKey(key); + baseAssignValue(object, key, bind(object[key], object)); + }); + return object; +}); + +module.exports = bindAll; diff --git a/node_modules/lodash/bindKey.js b/node_modules/lodash/bindKey.js new file mode 100644 index 0000000..f7fd64c --- /dev/null +++ b/node_modules/lodash/bindKey.js @@ -0,0 +1,68 @@ +var baseRest = require('./_baseRest'), + createWrap = require('./_createWrap'), + getHolder = require('./_getHolder'), + replaceHolders = require('./_replaceHolders'); + +/** Used to compose bitmasks for function metadata. */ +var WRAP_BIND_FLAG = 1, + WRAP_BIND_KEY_FLAG = 2, + WRAP_PARTIAL_FLAG = 32; + +/** + * Creates a function that invokes the method at `object[key]` with `partials` + * prepended to the arguments it receives. + * + * This method differs from `_.bind` by allowing bound functions to reference + * methods that may be redefined or don't yet exist. See + * [Peter Michaux's article](http://peter.michaux.ca/articles/lazy-function-definition-pattern) + * for more details. + * + * The `_.bindKey.placeholder` value, which defaults to `_` in monolithic + * builds, may be used as a placeholder for partially applied arguments. + * + * @static + * @memberOf _ + * @since 0.10.0 + * @category Function + * @param {Object} object The object to invoke the method on. + * @param {string} key The key of the method. + * @param {...*} [partials] The arguments to be partially applied. + * @returns {Function} Returns the new bound function. + * @example + * + * var object = { + * 'user': 'fred', + * 'greet': function(greeting, punctuation) { + * return greeting + ' ' + this.user + punctuation; + * } + * }; + * + * var bound = _.bindKey(object, 'greet', 'hi'); + * bound('!'); + * // => 'hi fred!' + * + * object.greet = function(greeting, punctuation) { + * return greeting + 'ya ' + this.user + punctuation; + * }; + * + * bound('!'); + * // => 'hiya fred!' + * + * // Bound with placeholders. + * var bound = _.bindKey(object, 'greet', _, '!'); + * bound('hi'); + * // => 'hiya fred!' + */ +var bindKey = baseRest(function(object, key, partials) { + var bitmask = WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG; + if (partials.length) { + var holders = replaceHolders(partials, getHolder(bindKey)); + bitmask |= WRAP_PARTIAL_FLAG; + } + return createWrap(key, bitmask, object, partials, holders); +}); + +// Assign default placeholders. +bindKey.placeholder = {}; + +module.exports = bindKey; diff --git a/node_modules/lodash/camelCase.js b/node_modules/lodash/camelCase.js new file mode 100644 index 0000000..d7390de --- /dev/null +++ b/node_modules/lodash/camelCase.js @@ -0,0 +1,29 @@ +var capitalize = require('./capitalize'), + createCompounder = require('./_createCompounder'); + +/** + * Converts `string` to [camel case](https://en.wikipedia.org/wiki/CamelCase). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to convert. + * @returns {string} Returns the camel cased string. + * @example + * + * _.camelCase('Foo Bar'); + * // => 'fooBar' + * + * _.camelCase('--foo-bar--'); + * // => 'fooBar' + * + * _.camelCase('__FOO_BAR__'); + * // => 'fooBar' + */ +var camelCase = createCompounder(function(result, word, index) { + word = word.toLowerCase(); + return result + (index ? capitalize(word) : word); +}); + +module.exports = camelCase; diff --git a/node_modules/lodash/capitalize.js b/node_modules/lodash/capitalize.js new file mode 100644 index 0000000..3e1600e --- /dev/null +++ b/node_modules/lodash/capitalize.js @@ -0,0 +1,23 @@ +var toString = require('./toString'), + upperFirst = require('./upperFirst'); + +/** + * Converts the first character of `string` to upper case and the remaining + * to lower case. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to capitalize. + * @returns {string} Returns the capitalized string. + * @example + * + * _.capitalize('FRED'); + * // => 'Fred' + */ +function capitalize(string) { + return upperFirst(toString(string).toLowerCase()); +} + +module.exports = capitalize; diff --git a/node_modules/lodash/castArray.js b/node_modules/lodash/castArray.js new file mode 100644 index 0000000..e470bdb --- /dev/null +++ b/node_modules/lodash/castArray.js @@ -0,0 +1,44 @@ +var isArray = require('./isArray'); + +/** + * Casts `value` as an array if it's not one. + * + * @static + * @memberOf _ + * @since 4.4.0 + * @category Lang + * @param {*} value The value to inspect. + * @returns {Array} Returns the cast array. + * @example + * + * _.castArray(1); + * // => [1] + * + * _.castArray({ 'a': 1 }); + * // => [{ 'a': 1 }] + * + * _.castArray('abc'); + * // => ['abc'] + * + * _.castArray(null); + * // => [null] + * + * _.castArray(undefined); + * // => [undefined] + * + * _.castArray(); + * // => [] + * + * var array = [1, 2, 3]; + * console.log(_.castArray(array) === array); + * // => true + */ +function castArray() { + if (!arguments.length) { + return []; + } + var value = arguments[0]; + return isArray(value) ? value : [value]; +} + +module.exports = castArray; diff --git a/node_modules/lodash/ceil.js b/node_modules/lodash/ceil.js new file mode 100644 index 0000000..56c8722 --- /dev/null +++ b/node_modules/lodash/ceil.js @@ -0,0 +1,26 @@ +var createRound = require('./_createRound'); + +/** + * Computes `number` rounded up to `precision`. + * + * @static + * @memberOf _ + * @since 3.10.0 + * @category Math + * @param {number} number The number to round up. + * @param {number} [precision=0] The precision to round up to. + * @returns {number} Returns the rounded up number. + * @example + * + * _.ceil(4.006); + * // => 5 + * + * _.ceil(6.004, 2); + * // => 6.01 + * + * _.ceil(6040, -2); + * // => 6100 + */ +var ceil = createRound('ceil'); + +module.exports = ceil; diff --git a/node_modules/lodash/chain.js b/node_modules/lodash/chain.js new file mode 100644 index 0000000..f6cd647 --- /dev/null +++ b/node_modules/lodash/chain.js @@ -0,0 +1,38 @@ +var lodash = require('./wrapperLodash'); + +/** + * Creates a `lodash` wrapper instance that wraps `value` with explicit method + * chain sequences enabled. The result of such sequences must be unwrapped + * with `_#value`. + * + * @static + * @memberOf _ + * @since 1.3.0 + * @category Seq + * @param {*} value The value to wrap. + * @returns {Object} Returns the new `lodash` wrapper instance. + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36 }, + * { 'user': 'fred', 'age': 40 }, + * { 'user': 'pebbles', 'age': 1 } + * ]; + * + * var youngest = _ + * .chain(users) + * .sortBy('age') + * .map(function(o) { + * return o.user + ' is ' + o.age; + * }) + * .head() + * .value(); + * // => 'pebbles is 1' + */ +function chain(value) { + var result = lodash(value); + result.__chain__ = true; + return result; +} + +module.exports = chain; diff --git a/node_modules/lodash/chunk.js b/node_modules/lodash/chunk.js new file mode 100644 index 0000000..5b562fe --- /dev/null +++ b/node_modules/lodash/chunk.js @@ -0,0 +1,50 @@ +var baseSlice = require('./_baseSlice'), + isIterateeCall = require('./_isIterateeCall'), + toInteger = require('./toInteger'); + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeCeil = Math.ceil, + nativeMax = Math.max; + +/** + * Creates an array of elements split into groups the length of `size`. + * If `array` can't be split evenly, the final chunk will be the remaining + * elements. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to process. + * @param {number} [size=1] The length of each chunk + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Array} Returns the new array of chunks. + * @example + * + * _.chunk(['a', 'b', 'c', 'd'], 2); + * // => [['a', 'b'], ['c', 'd']] + * + * _.chunk(['a', 'b', 'c', 'd'], 3); + * // => [['a', 'b', 'c'], ['d']] + */ +function chunk(array, size, guard) { + if ((guard ? isIterateeCall(array, size, guard) : size === undefined)) { + size = 1; + } else { + size = nativeMax(toInteger(size), 0); + } + var length = array == null ? 0 : array.length; + if (!length || size < 1) { + return []; + } + var index = 0, + resIndex = 0, + result = Array(nativeCeil(length / size)); + + while (index < length) { + result[resIndex++] = baseSlice(array, index, (index += size)); + } + return result; +} + +module.exports = chunk; diff --git a/node_modules/lodash/clamp.js b/node_modules/lodash/clamp.js new file mode 100644 index 0000000..91a72c9 --- /dev/null +++ b/node_modules/lodash/clamp.js @@ -0,0 +1,39 @@ +var baseClamp = require('./_baseClamp'), + toNumber = require('./toNumber'); + +/** + * Clamps `number` within the inclusive `lower` and `upper` bounds. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Number + * @param {number} number The number to clamp. + * @param {number} [lower] The lower bound. + * @param {number} upper The upper bound. + * @returns {number} Returns the clamped number. + * @example + * + * _.clamp(-10, -5, 5); + * // => -5 + * + * _.clamp(10, -5, 5); + * // => 5 + */ +function clamp(number, lower, upper) { + if (upper === undefined) { + upper = lower; + lower = undefined; + } + if (upper !== undefined) { + upper = toNumber(upper); + upper = upper === upper ? upper : 0; + } + if (lower !== undefined) { + lower = toNumber(lower); + lower = lower === lower ? lower : 0; + } + return baseClamp(toNumber(number), lower, upper); +} + +module.exports = clamp; diff --git a/node_modules/lodash/clone.js b/node_modules/lodash/clone.js new file mode 100644 index 0000000..dd439d6 --- /dev/null +++ b/node_modules/lodash/clone.js @@ -0,0 +1,36 @@ +var baseClone = require('./_baseClone'); + +/** Used to compose bitmasks for cloning. */ +var CLONE_SYMBOLS_FLAG = 4; + +/** + * Creates a shallow clone of `value`. + * + * **Note:** This method is loosely based on the + * [structured clone algorithm](https://mdn.io/Structured_clone_algorithm) + * and supports cloning arrays, array buffers, booleans, date objects, maps, + * numbers, `Object` objects, regexes, sets, strings, symbols, and typed + * arrays. The own enumerable properties of `arguments` objects are cloned + * as plain objects. An empty object is returned for uncloneable values such + * as error objects, functions, DOM nodes, and WeakMaps. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to clone. + * @returns {*} Returns the cloned value. + * @see _.cloneDeep + * @example + * + * var objects = [{ 'a': 1 }, { 'b': 2 }]; + * + * var shallow = _.clone(objects); + * console.log(shallow[0] === objects[0]); + * // => true + */ +function clone(value) { + return baseClone(value, CLONE_SYMBOLS_FLAG); +} + +module.exports = clone; diff --git a/node_modules/lodash/cloneDeep.js b/node_modules/lodash/cloneDeep.js new file mode 100644 index 0000000..4425fbe --- /dev/null +++ b/node_modules/lodash/cloneDeep.js @@ -0,0 +1,29 @@ +var baseClone = require('./_baseClone'); + +/** Used to compose bitmasks for cloning. */ +var CLONE_DEEP_FLAG = 1, + CLONE_SYMBOLS_FLAG = 4; + +/** + * This method is like `_.clone` except that it recursively clones `value`. + * + * @static + * @memberOf _ + * @since 1.0.0 + * @category Lang + * @param {*} value The value to recursively clone. + * @returns {*} Returns the deep cloned value. + * @see _.clone + * @example + * + * var objects = [{ 'a': 1 }, { 'b': 2 }]; + * + * var deep = _.cloneDeep(objects); + * console.log(deep[0] === objects[0]); + * // => false + */ +function cloneDeep(value) { + return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG); +} + +module.exports = cloneDeep; diff --git a/node_modules/lodash/cloneDeepWith.js b/node_modules/lodash/cloneDeepWith.js new file mode 100644 index 0000000..fd9c6c0 --- /dev/null +++ b/node_modules/lodash/cloneDeepWith.js @@ -0,0 +1,40 @@ +var baseClone = require('./_baseClone'); + +/** Used to compose bitmasks for cloning. */ +var CLONE_DEEP_FLAG = 1, + CLONE_SYMBOLS_FLAG = 4; + +/** + * This method is like `_.cloneWith` except that it recursively clones `value`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to recursively clone. + * @param {Function} [customizer] The function to customize cloning. + * @returns {*} Returns the deep cloned value. + * @see _.cloneWith + * @example + * + * function customizer(value) { + * if (_.isElement(value)) { + * return value.cloneNode(true); + * } + * } + * + * var el = _.cloneDeepWith(document.body, customizer); + * + * console.log(el === document.body); + * // => false + * console.log(el.nodeName); + * // => 'BODY' + * console.log(el.childNodes.length); + * // => 20 + */ +function cloneDeepWith(value, customizer) { + customizer = typeof customizer == 'function' ? customizer : undefined; + return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG, customizer); +} + +module.exports = cloneDeepWith; diff --git a/node_modules/lodash/cloneWith.js b/node_modules/lodash/cloneWith.js new file mode 100644 index 0000000..d2f4e75 --- /dev/null +++ b/node_modules/lodash/cloneWith.js @@ -0,0 +1,42 @@ +var baseClone = require('./_baseClone'); + +/** Used to compose bitmasks for cloning. */ +var CLONE_SYMBOLS_FLAG = 4; + +/** + * This method is like `_.clone` except that it accepts `customizer` which + * is invoked to produce the cloned value. If `customizer` returns `undefined`, + * cloning is handled by the method instead. The `customizer` is invoked with + * up to four arguments; (value [, index|key, object, stack]). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to clone. + * @param {Function} [customizer] The function to customize cloning. + * @returns {*} Returns the cloned value. + * @see _.cloneDeepWith + * @example + * + * function customizer(value) { + * if (_.isElement(value)) { + * return value.cloneNode(false); + * } + * } + * + * var el = _.cloneWith(document.body, customizer); + * + * console.log(el === document.body); + * // => false + * console.log(el.nodeName); + * // => 'BODY' + * console.log(el.childNodes.length); + * // => 0 + */ +function cloneWith(value, customizer) { + customizer = typeof customizer == 'function' ? customizer : undefined; + return baseClone(value, CLONE_SYMBOLS_FLAG, customizer); +} + +module.exports = cloneWith; diff --git a/node_modules/lodash/collection.js b/node_modules/lodash/collection.js new file mode 100644 index 0000000..77fe837 --- /dev/null +++ b/node_modules/lodash/collection.js @@ -0,0 +1,30 @@ +module.exports = { + 'countBy': require('./countBy'), + 'each': require('./each'), + 'eachRight': require('./eachRight'), + 'every': require('./every'), + 'filter': require('./filter'), + 'find': require('./find'), + 'findLast': require('./findLast'), + 'flatMap': require('./flatMap'), + 'flatMapDeep': require('./flatMapDeep'), + 'flatMapDepth': require('./flatMapDepth'), + 'forEach': require('./forEach'), + 'forEachRight': require('./forEachRight'), + 'groupBy': require('./groupBy'), + 'includes': require('./includes'), + 'invokeMap': require('./invokeMap'), + 'keyBy': require('./keyBy'), + 'map': require('./map'), + 'orderBy': require('./orderBy'), + 'partition': require('./partition'), + 'reduce': require('./reduce'), + 'reduceRight': require('./reduceRight'), + 'reject': require('./reject'), + 'sample': require('./sample'), + 'sampleSize': require('./sampleSize'), + 'shuffle': require('./shuffle'), + 'size': require('./size'), + 'some': require('./some'), + 'sortBy': require('./sortBy') +}; diff --git a/node_modules/lodash/commit.js b/node_modules/lodash/commit.js new file mode 100644 index 0000000..fe4db71 --- /dev/null +++ b/node_modules/lodash/commit.js @@ -0,0 +1,33 @@ +var LodashWrapper = require('./_LodashWrapper'); + +/** + * Executes the chain sequence and returns the wrapped result. + * + * @name commit + * @memberOf _ + * @since 3.2.0 + * @category Seq + * @returns {Object} Returns the new `lodash` wrapper instance. + * @example + * + * var array = [1, 2]; + * var wrapped = _(array).push(3); + * + * console.log(array); + * // => [1, 2] + * + * wrapped = wrapped.commit(); + * console.log(array); + * // => [1, 2, 3] + * + * wrapped.last(); + * // => 3 + * + * console.log(array); + * // => [1, 2, 3] + */ +function wrapperCommit() { + return new LodashWrapper(this.value(), this.__chain__); +} + +module.exports = wrapperCommit; diff --git a/node_modules/lodash/compact.js b/node_modules/lodash/compact.js new file mode 100644 index 0000000..031fab4 --- /dev/null +++ b/node_modules/lodash/compact.js @@ -0,0 +1,31 @@ +/** + * Creates an array with all falsey values removed. The values `false`, `null`, + * `0`, `""`, `undefined`, and `NaN` are falsey. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to compact. + * @returns {Array} Returns the new array of filtered values. + * @example + * + * _.compact([0, 1, false, 2, '', 3]); + * // => [1, 2, 3] + */ +function compact(array) { + var index = -1, + length = array == null ? 0 : array.length, + resIndex = 0, + result = []; + + while (++index < length) { + var value = array[index]; + if (value) { + result[resIndex++] = value; + } + } + return result; +} + +module.exports = compact; diff --git a/node_modules/lodash/concat.js b/node_modules/lodash/concat.js new file mode 100644 index 0000000..1da48a4 --- /dev/null +++ b/node_modules/lodash/concat.js @@ -0,0 +1,43 @@ +var arrayPush = require('./_arrayPush'), + baseFlatten = require('./_baseFlatten'), + copyArray = require('./_copyArray'), + isArray = require('./isArray'); + +/** + * Creates a new array concatenating `array` with any additional arrays + * and/or values. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to concatenate. + * @param {...*} [values] The values to concatenate. + * @returns {Array} Returns the new concatenated array. + * @example + * + * var array = [1]; + * var other = _.concat(array, 2, [3], [[4]]); + * + * console.log(other); + * // => [1, 2, 3, [4]] + * + * console.log(array); + * // => [1] + */ +function concat() { + var length = arguments.length; + if (!length) { + return []; + } + var args = Array(length - 1), + array = arguments[0], + index = length; + + while (index--) { + args[index - 1] = arguments[index]; + } + return arrayPush(isArray(array) ? copyArray(array) : [array], baseFlatten(args, 1)); +} + +module.exports = concat; diff --git a/node_modules/lodash/cond.js b/node_modules/lodash/cond.js new file mode 100644 index 0000000..6455598 --- /dev/null +++ b/node_modules/lodash/cond.js @@ -0,0 +1,60 @@ +var apply = require('./_apply'), + arrayMap = require('./_arrayMap'), + baseIteratee = require('./_baseIteratee'), + baseRest = require('./_baseRest'); + +/** Error message constants. */ +var FUNC_ERROR_TEXT = 'Expected a function'; + +/** + * Creates a function that iterates over `pairs` and invokes the corresponding + * function of the first predicate to return truthy. The predicate-function + * pairs are invoked with the `this` binding and arguments of the created + * function. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Util + * @param {Array} pairs The predicate-function pairs. + * @returns {Function} Returns the new composite function. + * @example + * + * var func = _.cond([ + * [_.matches({ 'a': 1 }), _.constant('matches A')], + * [_.conforms({ 'b': _.isNumber }), _.constant('matches B')], + * [_.stubTrue, _.constant('no match')] + * ]); + * + * func({ 'a': 1, 'b': 2 }); + * // => 'matches A' + * + * func({ 'a': 0, 'b': 1 }); + * // => 'matches B' + * + * func({ 'a': '1', 'b': '2' }); + * // => 'no match' + */ +function cond(pairs) { + var length = pairs == null ? 0 : pairs.length, + toIteratee = baseIteratee; + + pairs = !length ? [] : arrayMap(pairs, function(pair) { + if (typeof pair[1] != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + return [toIteratee(pair[0]), pair[1]]; + }); + + return baseRest(function(args) { + var index = -1; + while (++index < length) { + var pair = pairs[index]; + if (apply(pair[0], this, args)) { + return apply(pair[1], this, args); + } + } + }); +} + +module.exports = cond; diff --git a/node_modules/lodash/conforms.js b/node_modules/lodash/conforms.js new file mode 100644 index 0000000..5501a94 --- /dev/null +++ b/node_modules/lodash/conforms.js @@ -0,0 +1,35 @@ +var baseClone = require('./_baseClone'), + baseConforms = require('./_baseConforms'); + +/** Used to compose bitmasks for cloning. */ +var CLONE_DEEP_FLAG = 1; + +/** + * Creates a function that invokes the predicate properties of `source` with + * the corresponding property values of a given object, returning `true` if + * all predicates return truthy, else `false`. + * + * **Note:** The created function is equivalent to `_.conformsTo` with + * `source` partially applied. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Util + * @param {Object} source The object of property predicates to conform to. + * @returns {Function} Returns the new spec function. + * @example + * + * var objects = [ + * { 'a': 2, 'b': 1 }, + * { 'a': 1, 'b': 2 } + * ]; + * + * _.filter(objects, _.conforms({ 'b': function(n) { return n > 1; } })); + * // => [{ 'a': 1, 'b': 2 }] + */ +function conforms(source) { + return baseConforms(baseClone(source, CLONE_DEEP_FLAG)); +} + +module.exports = conforms; diff --git a/node_modules/lodash/conformsTo.js b/node_modules/lodash/conformsTo.js new file mode 100644 index 0000000..b8a93eb --- /dev/null +++ b/node_modules/lodash/conformsTo.js @@ -0,0 +1,32 @@ +var baseConformsTo = require('./_baseConformsTo'), + keys = require('./keys'); + +/** + * Checks if `object` conforms to `source` by invoking the predicate + * properties of `source` with the corresponding property values of `object`. + * + * **Note:** This method is equivalent to `_.conforms` when `source` is + * partially applied. + * + * @static + * @memberOf _ + * @since 4.14.0 + * @category Lang + * @param {Object} object The object to inspect. + * @param {Object} source The object of property predicates to conform to. + * @returns {boolean} Returns `true` if `object` conforms, else `false`. + * @example + * + * var object = { 'a': 1, 'b': 2 }; + * + * _.conformsTo(object, { 'b': function(n) { return n > 1; } }); + * // => true + * + * _.conformsTo(object, { 'b': function(n) { return n > 2; } }); + * // => false + */ +function conformsTo(object, source) { + return source == null || baseConformsTo(object, source, keys(source)); +} + +module.exports = conformsTo; diff --git a/node_modules/lodash/constant.js b/node_modules/lodash/constant.js new file mode 100644 index 0000000..655ece3 --- /dev/null +++ b/node_modules/lodash/constant.js @@ -0,0 +1,26 @@ +/** + * Creates a function that returns `value`. + * + * @static + * @memberOf _ + * @since 2.4.0 + * @category Util + * @param {*} value The value to return from the new function. + * @returns {Function} Returns the new constant function. + * @example + * + * var objects = _.times(2, _.constant({ 'a': 1 })); + * + * console.log(objects); + * // => [{ 'a': 1 }, { 'a': 1 }] + * + * console.log(objects[0] === objects[1]); + * // => true + */ +function constant(value) { + return function() { + return value; + }; +} + +module.exports = constant; diff --git a/node_modules/lodash/core.js b/node_modules/lodash/core.js new file mode 100644 index 0000000..be1d567 --- /dev/null +++ b/node_modules/lodash/core.js @@ -0,0 +1,3877 @@ +/** + * @license + * Lodash (Custom Build) + * Build: `lodash core -o ./dist/lodash.core.js` + * Copyright OpenJS Foundation and other contributors + * Released under MIT license + * Based on Underscore.js 1.8.3 + * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors + */ +;(function() { + + /** Used as a safe reference for `undefined` in pre-ES5 environments. */ + var undefined; + + /** Used as the semantic version number. */ + var VERSION = '4.17.21'; + + /** Error message constants. */ + var FUNC_ERROR_TEXT = 'Expected a function'; + + /** Used to compose bitmasks for value comparisons. */ + var COMPARE_PARTIAL_FLAG = 1, + COMPARE_UNORDERED_FLAG = 2; + + /** Used to compose bitmasks for function metadata. */ + var WRAP_BIND_FLAG = 1, + WRAP_PARTIAL_FLAG = 32; + + /** Used as references for various `Number` constants. */ + var INFINITY = 1 / 0, + MAX_SAFE_INTEGER = 9007199254740991; + + /** `Object#toString` result references. */ + var argsTag = '[object Arguments]', + arrayTag = '[object Array]', + asyncTag = '[object AsyncFunction]', + boolTag = '[object Boolean]', + dateTag = '[object Date]', + errorTag = '[object Error]', + funcTag = '[object Function]', + genTag = '[object GeneratorFunction]', + numberTag = '[object Number]', + objectTag = '[object Object]', + proxyTag = '[object Proxy]', + regexpTag = '[object RegExp]', + stringTag = '[object String]'; + + /** Used to match HTML entities and HTML characters. */ + var reUnescapedHtml = /[&<>"']/g, + reHasUnescapedHtml = RegExp(reUnescapedHtml.source); + + /** Used to detect unsigned integer values. */ + var reIsUint = /^(?:0|[1-9]\d*)$/; + + /** Used to map characters to HTML entities. */ + var htmlEscapes = { + '&': '&', + '<': '<', + '>': '>', + '"': '"', + "'": ''' + }; + + /** Detect free variable `global` from Node.js. */ + var freeGlobal = typeof global == 'object' && global && global.Object === Object && global; + + /** Detect free variable `self`. */ + var freeSelf = typeof self == 'object' && self && self.Object === Object && self; + + /** Used as a reference to the global object. */ + var root = freeGlobal || freeSelf || Function('return this')(); + + /** Detect free variable `exports`. */ + var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports; + + /** Detect free variable `module`. */ + var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module; + + /*--------------------------------------------------------------------------*/ + + /** + * Appends the elements of `values` to `array`. + * + * @private + * @param {Array} array The array to modify. + * @param {Array} values The values to append. + * @returns {Array} Returns `array`. + */ + function arrayPush(array, values) { + array.push.apply(array, values); + return array; + } + + /** + * The base implementation of `_.findIndex` and `_.findLastIndex` without + * support for iteratee shorthands. + * + * @private + * @param {Array} array The array to inspect. + * @param {Function} predicate The function invoked per iteration. + * @param {number} fromIndex The index to search from. + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {number} Returns the index of the matched value, else `-1`. + */ + function baseFindIndex(array, predicate, fromIndex, fromRight) { + var length = array.length, + index = fromIndex + (fromRight ? 1 : -1); + + while ((fromRight ? index-- : ++index < length)) { + if (predicate(array[index], index, array)) { + return index; + } + } + return -1; + } + + /** + * The base implementation of `_.property` without support for deep paths. + * + * @private + * @param {string} key The key of the property to get. + * @returns {Function} Returns the new accessor function. + */ + function baseProperty(key) { + return function(object) { + return object == null ? undefined : object[key]; + }; + } + + /** + * The base implementation of `_.propertyOf` without support for deep paths. + * + * @private + * @param {Object} object The object to query. + * @returns {Function} Returns the new accessor function. + */ + function basePropertyOf(object) { + return function(key) { + return object == null ? undefined : object[key]; + }; + } + + /** + * The base implementation of `_.reduce` and `_.reduceRight`, without support + * for iteratee shorthands, which iterates over `collection` using `eachFunc`. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @param {*} accumulator The initial value. + * @param {boolean} initAccum Specify using the first or last element of + * `collection` as the initial value. + * @param {Function} eachFunc The function to iterate over `collection`. + * @returns {*} Returns the accumulated value. + */ + function baseReduce(collection, iteratee, accumulator, initAccum, eachFunc) { + eachFunc(collection, function(value, index, collection) { + accumulator = initAccum + ? (initAccum = false, value) + : iteratee(accumulator, value, index, collection); + }); + return accumulator; + } + + /** + * The base implementation of `_.values` and `_.valuesIn` which creates an + * array of `object` property values corresponding to the property names + * of `props`. + * + * @private + * @param {Object} object The object to query. + * @param {Array} props The property names to get values for. + * @returns {Object} Returns the array of property values. + */ + function baseValues(object, props) { + return baseMap(props, function(key) { + return object[key]; + }); + } + + /** + * Used by `_.escape` to convert characters to HTML entities. + * + * @private + * @param {string} chr The matched character to escape. + * @returns {string} Returns the escaped character. + */ + var escapeHtmlChar = basePropertyOf(htmlEscapes); + + /** + * Creates a unary function that invokes `func` with its argument transformed. + * + * @private + * @param {Function} func The function to wrap. + * @param {Function} transform The argument transform. + * @returns {Function} Returns the new function. + */ + function overArg(func, transform) { + return function(arg) { + return func(transform(arg)); + }; + } + + /*--------------------------------------------------------------------------*/ + + /** Used for built-in method references. */ + var arrayProto = Array.prototype, + objectProto = Object.prototype; + + /** Used to check objects for own properties. */ + var hasOwnProperty = objectProto.hasOwnProperty; + + /** Used to generate unique IDs. */ + var idCounter = 0; + + /** + * Used to resolve the + * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring) + * of values. + */ + var nativeObjectToString = objectProto.toString; + + /** Used to restore the original `_` reference in `_.noConflict`. */ + var oldDash = root._; + + /** Built-in value references. */ + var objectCreate = Object.create, + propertyIsEnumerable = objectProto.propertyIsEnumerable; + + /* Built-in method references for those with the same name as other `lodash` methods. */ + var nativeIsFinite = root.isFinite, + nativeKeys = overArg(Object.keys, Object), + nativeMax = Math.max; + + /*------------------------------------------------------------------------*/ + + /** + * Creates a `lodash` object which wraps `value` to enable implicit method + * chain sequences. Methods that operate on and return arrays, collections, + * and functions can be chained together. Methods that retrieve a single value + * or may return a primitive value will automatically end the chain sequence + * and return the unwrapped value. Otherwise, the value must be unwrapped + * with `_#value`. + * + * Explicit chain sequences, which must be unwrapped with `_#value`, may be + * enabled using `_.chain`. + * + * The execution of chained methods is lazy, that is, it's deferred until + * `_#value` is implicitly or explicitly called. + * + * Lazy evaluation allows several methods to support shortcut fusion. + * Shortcut fusion is an optimization to merge iteratee calls; this avoids + * the creation of intermediate arrays and can greatly reduce the number of + * iteratee executions. Sections of a chain sequence qualify for shortcut + * fusion if the section is applied to an array and iteratees accept only + * one argument. The heuristic for whether a section qualifies for shortcut + * fusion is subject to change. + * + * Chaining is supported in custom builds as long as the `_#value` method is + * directly or indirectly included in the build. + * + * In addition to lodash methods, wrappers have `Array` and `String` methods. + * + * The wrapper `Array` methods are: + * `concat`, `join`, `pop`, `push`, `shift`, `sort`, `splice`, and `unshift` + * + * The wrapper `String` methods are: + * `replace` and `split` + * + * The wrapper methods that support shortcut fusion are: + * `at`, `compact`, `drop`, `dropRight`, `dropWhile`, `filter`, `find`, + * `findLast`, `head`, `initial`, `last`, `map`, `reject`, `reverse`, `slice`, + * `tail`, `take`, `takeRight`, `takeRightWhile`, `takeWhile`, and `toArray` + * + * The chainable wrapper methods are: + * `after`, `ary`, `assign`, `assignIn`, `assignInWith`, `assignWith`, `at`, + * `before`, `bind`, `bindAll`, `bindKey`, `castArray`, `chain`, `chunk`, + * `commit`, `compact`, `concat`, `conforms`, `constant`, `countBy`, `create`, + * `curry`, `debounce`, `defaults`, `defaultsDeep`, `defer`, `delay`, + * `difference`, `differenceBy`, `differenceWith`, `drop`, `dropRight`, + * `dropRightWhile`, `dropWhile`, `extend`, `extendWith`, `fill`, `filter`, + * `flatMap`, `flatMapDeep`, `flatMapDepth`, `flatten`, `flattenDeep`, + * `flattenDepth`, `flip`, `flow`, `flowRight`, `fromPairs`, `functions`, + * `functionsIn`, `groupBy`, `initial`, `intersection`, `intersectionBy`, + * `intersectionWith`, `invert`, `invertBy`, `invokeMap`, `iteratee`, `keyBy`, + * `keys`, `keysIn`, `map`, `mapKeys`, `mapValues`, `matches`, `matchesProperty`, + * `memoize`, `merge`, `mergeWith`, `method`, `methodOf`, `mixin`, `negate`, + * `nthArg`, `omit`, `omitBy`, `once`, `orderBy`, `over`, `overArgs`, + * `overEvery`, `overSome`, `partial`, `partialRight`, `partition`, `pick`, + * `pickBy`, `plant`, `property`, `propertyOf`, `pull`, `pullAll`, `pullAllBy`, + * `pullAllWith`, `pullAt`, `push`, `range`, `rangeRight`, `rearg`, `reject`, + * `remove`, `rest`, `reverse`, `sampleSize`, `set`, `setWith`, `shuffle`, + * `slice`, `sort`, `sortBy`, `splice`, `spread`, `tail`, `take`, `takeRight`, + * `takeRightWhile`, `takeWhile`, `tap`, `throttle`, `thru`, `toArray`, + * `toPairs`, `toPairsIn`, `toPath`, `toPlainObject`, `transform`, `unary`, + * `union`, `unionBy`, `unionWith`, `uniq`, `uniqBy`, `uniqWith`, `unset`, + * `unshift`, `unzip`, `unzipWith`, `update`, `updateWith`, `values`, + * `valuesIn`, `without`, `wrap`, `xor`, `xorBy`, `xorWith`, `zip`, + * `zipObject`, `zipObjectDeep`, and `zipWith` + * + * The wrapper methods that are **not** chainable by default are: + * `add`, `attempt`, `camelCase`, `capitalize`, `ceil`, `clamp`, `clone`, + * `cloneDeep`, `cloneDeepWith`, `cloneWith`, `conformsTo`, `deburr`, + * `defaultTo`, `divide`, `each`, `eachRight`, `endsWith`, `eq`, `escape`, + * `escapeRegExp`, `every`, `find`, `findIndex`, `findKey`, `findLast`, + * `findLastIndex`, `findLastKey`, `first`, `floor`, `forEach`, `forEachRight`, + * `forIn`, `forInRight`, `forOwn`, `forOwnRight`, `get`, `gt`, `gte`, `has`, + * `hasIn`, `head`, `identity`, `includes`, `indexOf`, `inRange`, `invoke`, + * `isArguments`, `isArray`, `isArrayBuffer`, `isArrayLike`, `isArrayLikeObject`, + * `isBoolean`, `isBuffer`, `isDate`, `isElement`, `isEmpty`, `isEqual`, + * `isEqualWith`, `isError`, `isFinite`, `isFunction`, `isInteger`, `isLength`, + * `isMap`, `isMatch`, `isMatchWith`, `isNaN`, `isNative`, `isNil`, `isNull`, + * `isNumber`, `isObject`, `isObjectLike`, `isPlainObject`, `isRegExp`, + * `isSafeInteger`, `isSet`, `isString`, `isUndefined`, `isTypedArray`, + * `isWeakMap`, `isWeakSet`, `join`, `kebabCase`, `last`, `lastIndexOf`, + * `lowerCase`, `lowerFirst`, `lt`, `lte`, `max`, `maxBy`, `mean`, `meanBy`, + * `min`, `minBy`, `multiply`, `noConflict`, `noop`, `now`, `nth`, `pad`, + * `padEnd`, `padStart`, `parseInt`, `pop`, `random`, `reduce`, `reduceRight`, + * `repeat`, `result`, `round`, `runInContext`, `sample`, `shift`, `size`, + * `snakeCase`, `some`, `sortedIndex`, `sortedIndexBy`, `sortedLastIndex`, + * `sortedLastIndexBy`, `startCase`, `startsWith`, `stubArray`, `stubFalse`, + * `stubObject`, `stubString`, `stubTrue`, `subtract`, `sum`, `sumBy`, + * `template`, `times`, `toFinite`, `toInteger`, `toJSON`, `toLength`, + * `toLower`, `toNumber`, `toSafeInteger`, `toString`, `toUpper`, `trim`, + * `trimEnd`, `trimStart`, `truncate`, `unescape`, `uniqueId`, `upperCase`, + * `upperFirst`, `value`, and `words` + * + * @name _ + * @constructor + * @category Seq + * @param {*} value The value to wrap in a `lodash` instance. + * @returns {Object} Returns the new `lodash` wrapper instance. + * @example + * + * function square(n) { + * return n * n; + * } + * + * var wrapped = _([1, 2, 3]); + * + * // Returns an unwrapped value. + * wrapped.reduce(_.add); + * // => 6 + * + * // Returns a wrapped value. + * var squares = wrapped.map(square); + * + * _.isArray(squares); + * // => false + * + * _.isArray(squares.value()); + * // => true + */ + function lodash(value) { + return value instanceof LodashWrapper + ? value + : new LodashWrapper(value); + } + + /** + * The base implementation of `_.create` without support for assigning + * properties to the created object. + * + * @private + * @param {Object} proto The object to inherit from. + * @returns {Object} Returns the new object. + */ + var baseCreate = (function() { + function object() {} + return function(proto) { + if (!isObject(proto)) { + return {}; + } + if (objectCreate) { + return objectCreate(proto); + } + object.prototype = proto; + var result = new object; + object.prototype = undefined; + return result; + }; + }()); + + /** + * The base constructor for creating `lodash` wrapper objects. + * + * @private + * @param {*} value The value to wrap. + * @param {boolean} [chainAll] Enable explicit method chain sequences. + */ + function LodashWrapper(value, chainAll) { + this.__wrapped__ = value; + this.__actions__ = []; + this.__chain__ = !!chainAll; + } + + LodashWrapper.prototype = baseCreate(lodash.prototype); + LodashWrapper.prototype.constructor = LodashWrapper; + + /*------------------------------------------------------------------------*/ + + /** + * Assigns `value` to `key` of `object` if the existing value is not equivalent + * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. + * + * @private + * @param {Object} object The object to modify. + * @param {string} key The key of the property to assign. + * @param {*} value The value to assign. + */ + function assignValue(object, key, value) { + var objValue = object[key]; + if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) || + (value === undefined && !(key in object))) { + baseAssignValue(object, key, value); + } + } + + /** + * The base implementation of `assignValue` and `assignMergeValue` without + * value checks. + * + * @private + * @param {Object} object The object to modify. + * @param {string} key The key of the property to assign. + * @param {*} value The value to assign. + */ + function baseAssignValue(object, key, value) { + object[key] = value; + } + + /** + * The base implementation of `_.delay` and `_.defer` which accepts `args` + * to provide to `func`. + * + * @private + * @param {Function} func The function to delay. + * @param {number} wait The number of milliseconds to delay invocation. + * @param {Array} args The arguments to provide to `func`. + * @returns {number|Object} Returns the timer id or timeout object. + */ + function baseDelay(func, wait, args) { + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + return setTimeout(function() { func.apply(undefined, args); }, wait); + } + + /** + * The base implementation of `_.forEach` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array|Object} Returns `collection`. + */ + var baseEach = createBaseEach(baseForOwn); + + /** + * The base implementation of `_.every` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {boolean} Returns `true` if all elements pass the predicate check, + * else `false` + */ + function baseEvery(collection, predicate) { + var result = true; + baseEach(collection, function(value, index, collection) { + result = !!predicate(value, index, collection); + return result; + }); + return result; + } + + /** + * The base implementation of methods like `_.max` and `_.min` which accepts a + * `comparator` to determine the extremum value. + * + * @private + * @param {Array} array The array to iterate over. + * @param {Function} iteratee The iteratee invoked per iteration. + * @param {Function} comparator The comparator used to compare values. + * @returns {*} Returns the extremum value. + */ + function baseExtremum(array, iteratee, comparator) { + var index = -1, + length = array.length; + + while (++index < length) { + var value = array[index], + current = iteratee(value); + + if (current != null && (computed === undefined + ? (current === current && !false) + : comparator(current, computed) + )) { + var computed = current, + result = value; + } + } + return result; + } + + /** + * The base implementation of `_.filter` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {Array} Returns the new filtered array. + */ + function baseFilter(collection, predicate) { + var result = []; + baseEach(collection, function(value, index, collection) { + if (predicate(value, index, collection)) { + result.push(value); + } + }); + return result; + } + + /** + * The base implementation of `_.flatten` with support for restricting flattening. + * + * @private + * @param {Array} array The array to flatten. + * @param {number} depth The maximum recursion depth. + * @param {boolean} [predicate=isFlattenable] The function invoked per iteration. + * @param {boolean} [isStrict] Restrict to values that pass `predicate` checks. + * @param {Array} [result=[]] The initial result value. + * @returns {Array} Returns the new flattened array. + */ + function baseFlatten(array, depth, predicate, isStrict, result) { + var index = -1, + length = array.length; + + predicate || (predicate = isFlattenable); + result || (result = []); + + while (++index < length) { + var value = array[index]; + if (depth > 0 && predicate(value)) { + if (depth > 1) { + // Recursively flatten arrays (susceptible to call stack limits). + baseFlatten(value, depth - 1, predicate, isStrict, result); + } else { + arrayPush(result, value); + } + } else if (!isStrict) { + result[result.length] = value; + } + } + return result; + } + + /** + * The base implementation of `baseForOwn` which iterates over `object` + * properties returned by `keysFunc` and invokes `iteratee` for each property. + * Iteratee functions may exit iteration early by explicitly returning `false`. + * + * @private + * @param {Object} object The object to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @param {Function} keysFunc The function to get the keys of `object`. + * @returns {Object} Returns `object`. + */ + var baseFor = createBaseFor(); + + /** + * The base implementation of `_.forOwn` without support for iteratee shorthands. + * + * @private + * @param {Object} object The object to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Object} Returns `object`. + */ + function baseForOwn(object, iteratee) { + return object && baseFor(object, iteratee, keys); + } + + /** + * The base implementation of `_.functions` which creates an array of + * `object` function property names filtered from `props`. + * + * @private + * @param {Object} object The object to inspect. + * @param {Array} props The property names to filter. + * @returns {Array} Returns the function names. + */ + function baseFunctions(object, props) { + return baseFilter(props, function(key) { + return isFunction(object[key]); + }); + } + + /** + * The base implementation of `getTag` without fallbacks for buggy environments. + * + * @private + * @param {*} value The value to query. + * @returns {string} Returns the `toStringTag`. + */ + function baseGetTag(value) { + return objectToString(value); + } + + /** + * The base implementation of `_.gt` which doesn't coerce arguments. + * + * @private + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if `value` is greater than `other`, + * else `false`. + */ + function baseGt(value, other) { + return value > other; + } + + /** + * The base implementation of `_.isArguments`. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an `arguments` object, + */ + var baseIsArguments = noop; + + /** + * The base implementation of `_.isDate` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a date object, else `false`. + */ + function baseIsDate(value) { + return isObjectLike(value) && baseGetTag(value) == dateTag; + } + + /** + * The base implementation of `_.isEqual` which supports partial comparisons + * and tracks traversed objects. + * + * @private + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @param {boolean} bitmask The bitmask flags. + * 1 - Unordered comparison + * 2 - Partial comparison + * @param {Function} [customizer] The function to customize comparisons. + * @param {Object} [stack] Tracks traversed `value` and `other` objects. + * @returns {boolean} Returns `true` if the values are equivalent, else `false`. + */ + function baseIsEqual(value, other, bitmask, customizer, stack) { + if (value === other) { + return true; + } + if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) { + return value !== value && other !== other; + } + return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack); + } + + /** + * A specialized version of `baseIsEqual` for arrays and objects which performs + * deep comparisons and tracks traversed objects enabling objects with circular + * references to be compared. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} [stack] Tracks traversed `object` and `other` objects. + * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. + */ + function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) { + var objIsArr = isArray(object), + othIsArr = isArray(other), + objTag = objIsArr ? arrayTag : baseGetTag(object), + othTag = othIsArr ? arrayTag : baseGetTag(other); + + objTag = objTag == argsTag ? objectTag : objTag; + othTag = othTag == argsTag ? objectTag : othTag; + + var objIsObj = objTag == objectTag, + othIsObj = othTag == objectTag, + isSameTag = objTag == othTag; + + stack || (stack = []); + var objStack = find(stack, function(entry) { + return entry[0] == object; + }); + var othStack = find(stack, function(entry) { + return entry[0] == other; + }); + if (objStack && othStack) { + return objStack[1] == other; + } + stack.push([object, other]); + stack.push([other, object]); + if (isSameTag && !objIsObj) { + var result = (objIsArr) + ? equalArrays(object, other, bitmask, customizer, equalFunc, stack) + : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack); + stack.pop(); + return result; + } + if (!(bitmask & COMPARE_PARTIAL_FLAG)) { + var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'), + othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__'); + + if (objIsWrapped || othIsWrapped) { + var objUnwrapped = objIsWrapped ? object.value() : object, + othUnwrapped = othIsWrapped ? other.value() : other; + + var result = equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack); + stack.pop(); + return result; + } + } + if (!isSameTag) { + return false; + } + var result = equalObjects(object, other, bitmask, customizer, equalFunc, stack); + stack.pop(); + return result; + } + + /** + * The base implementation of `_.isRegExp` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a regexp, else `false`. + */ + function baseIsRegExp(value) { + return isObjectLike(value) && baseGetTag(value) == regexpTag; + } + + /** + * The base implementation of `_.iteratee`. + * + * @private + * @param {*} [value=_.identity] The value to convert to an iteratee. + * @returns {Function} Returns the iteratee. + */ + function baseIteratee(func) { + if (typeof func == 'function') { + return func; + } + if (func == null) { + return identity; + } + return (typeof func == 'object' ? baseMatches : baseProperty)(func); + } + + /** + * The base implementation of `_.lt` which doesn't coerce arguments. + * + * @private + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if `value` is less than `other`, + * else `false`. + */ + function baseLt(value, other) { + return value < other; + } + + /** + * The base implementation of `_.map` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns the new mapped array. + */ + function baseMap(collection, iteratee) { + var index = -1, + result = isArrayLike(collection) ? Array(collection.length) : []; + + baseEach(collection, function(value, key, collection) { + result[++index] = iteratee(value, key, collection); + }); + return result; + } + + /** + * The base implementation of `_.matches` which doesn't clone `source`. + * + * @private + * @param {Object} source The object of property values to match. + * @returns {Function} Returns the new spec function. + */ + function baseMatches(source) { + var props = nativeKeys(source); + return function(object) { + var length = props.length; + if (object == null) { + return !length; + } + object = Object(object); + while (length--) { + var key = props[length]; + if (!(key in object && + baseIsEqual(source[key], object[key], COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG) + )) { + return false; + } + } + return true; + }; + } + + /** + * The base implementation of `_.pick` without support for individual + * property identifiers. + * + * @private + * @param {Object} object The source object. + * @param {string[]} paths The property paths to pick. + * @returns {Object} Returns the new object. + */ + function basePick(object, props) { + object = Object(object); + return reduce(props, function(result, key) { + if (key in object) { + result[key] = object[key]; + } + return result; + }, {}); + } + + /** + * The base implementation of `_.rest` which doesn't validate or coerce arguments. + * + * @private + * @param {Function} func The function to apply a rest parameter to. + * @param {number} [start=func.length-1] The start position of the rest parameter. + * @returns {Function} Returns the new function. + */ + function baseRest(func, start) { + return setToString(overRest(func, start, identity), func + ''); + } + + /** + * The base implementation of `_.slice` without an iteratee call guard. + * + * @private + * @param {Array} array The array to slice. + * @param {number} [start=0] The start position. + * @param {number} [end=array.length] The end position. + * @returns {Array} Returns the slice of `array`. + */ + function baseSlice(array, start, end) { + var index = -1, + length = array.length; + + if (start < 0) { + start = -start > length ? 0 : (length + start); + } + end = end > length ? length : end; + if (end < 0) { + end += length; + } + length = start > end ? 0 : ((end - start) >>> 0); + start >>>= 0; + + var result = Array(length); + while (++index < length) { + result[index] = array[index + start]; + } + return result; + } + + /** + * Copies the values of `source` to `array`. + * + * @private + * @param {Array} source The array to copy values from. + * @param {Array} [array=[]] The array to copy values to. + * @returns {Array} Returns `array`. + */ + function copyArray(source) { + return baseSlice(source, 0, source.length); + } + + /** + * The base implementation of `_.some` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {boolean} Returns `true` if any element passes the predicate check, + * else `false`. + */ + function baseSome(collection, predicate) { + var result; + + baseEach(collection, function(value, index, collection) { + result = predicate(value, index, collection); + return !result; + }); + return !!result; + } + + /** + * The base implementation of `wrapperValue` which returns the result of + * performing a sequence of actions on the unwrapped `value`, where each + * successive action is supplied the return value of the previous. + * + * @private + * @param {*} value The unwrapped value. + * @param {Array} actions Actions to perform to resolve the unwrapped value. + * @returns {*} Returns the resolved value. + */ + function baseWrapperValue(value, actions) { + var result = value; + return reduce(actions, function(result, action) { + return action.func.apply(action.thisArg, arrayPush([result], action.args)); + }, result); + } + + /** + * Compares values to sort them in ascending order. + * + * @private + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {number} Returns the sort order indicator for `value`. + */ + function compareAscending(value, other) { + if (value !== other) { + var valIsDefined = value !== undefined, + valIsNull = value === null, + valIsReflexive = value === value, + valIsSymbol = false; + + var othIsDefined = other !== undefined, + othIsNull = other === null, + othIsReflexive = other === other, + othIsSymbol = false; + + if ((!othIsNull && !othIsSymbol && !valIsSymbol && value > other) || + (valIsSymbol && othIsDefined && othIsReflexive && !othIsNull && !othIsSymbol) || + (valIsNull && othIsDefined && othIsReflexive) || + (!valIsDefined && othIsReflexive) || + !valIsReflexive) { + return 1; + } + if ((!valIsNull && !valIsSymbol && !othIsSymbol && value < other) || + (othIsSymbol && valIsDefined && valIsReflexive && !valIsNull && !valIsSymbol) || + (othIsNull && valIsDefined && valIsReflexive) || + (!othIsDefined && valIsReflexive) || + !othIsReflexive) { + return -1; + } + } + return 0; + } + + /** + * Copies properties of `source` to `object`. + * + * @private + * @param {Object} source The object to copy properties from. + * @param {Array} props The property identifiers to copy. + * @param {Object} [object={}] The object to copy properties to. + * @param {Function} [customizer] The function to customize copied values. + * @returns {Object} Returns `object`. + */ + function copyObject(source, props, object, customizer) { + var isNew = !object; + object || (object = {}); + + var index = -1, + length = props.length; + + while (++index < length) { + var key = props[index]; + + var newValue = customizer + ? customizer(object[key], source[key], key, object, source) + : undefined; + + if (newValue === undefined) { + newValue = source[key]; + } + if (isNew) { + baseAssignValue(object, key, newValue); + } else { + assignValue(object, key, newValue); + } + } + return object; + } + + /** + * Creates a function like `_.assign`. + * + * @private + * @param {Function} assigner The function to assign values. + * @returns {Function} Returns the new assigner function. + */ + function createAssigner(assigner) { + return baseRest(function(object, sources) { + var index = -1, + length = sources.length, + customizer = length > 1 ? sources[length - 1] : undefined; + + customizer = (assigner.length > 3 && typeof customizer == 'function') + ? (length--, customizer) + : undefined; + + object = Object(object); + while (++index < length) { + var source = sources[index]; + if (source) { + assigner(object, source, index, customizer); + } + } + return object; + }); + } + + /** + * Creates a `baseEach` or `baseEachRight` function. + * + * @private + * @param {Function} eachFunc The function to iterate over a collection. + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Function} Returns the new base function. + */ + function createBaseEach(eachFunc, fromRight) { + return function(collection, iteratee) { + if (collection == null) { + return collection; + } + if (!isArrayLike(collection)) { + return eachFunc(collection, iteratee); + } + var length = collection.length, + index = fromRight ? length : -1, + iterable = Object(collection); + + while ((fromRight ? index-- : ++index < length)) { + if (iteratee(iterable[index], index, iterable) === false) { + break; + } + } + return collection; + }; + } + + /** + * Creates a base function for methods like `_.forIn` and `_.forOwn`. + * + * @private + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Function} Returns the new base function. + */ + function createBaseFor(fromRight) { + return function(object, iteratee, keysFunc) { + var index = -1, + iterable = Object(object), + props = keysFunc(object), + length = props.length; + + while (length--) { + var key = props[fromRight ? length : ++index]; + if (iteratee(iterable[key], key, iterable) === false) { + break; + } + } + return object; + }; + } + + /** + * Creates a function that produces an instance of `Ctor` regardless of + * whether it was invoked as part of a `new` expression or by `call` or `apply`. + * + * @private + * @param {Function} Ctor The constructor to wrap. + * @returns {Function} Returns the new wrapped function. + */ + function createCtor(Ctor) { + return function() { + // Use a `switch` statement to work with class constructors. See + // http://ecma-international.org/ecma-262/7.0/#sec-ecmascript-function-objects-call-thisargument-argumentslist + // for more details. + var args = arguments; + var thisBinding = baseCreate(Ctor.prototype), + result = Ctor.apply(thisBinding, args); + + // Mimic the constructor's `return` behavior. + // See https://es5.github.io/#x13.2.2 for more details. + return isObject(result) ? result : thisBinding; + }; + } + + /** + * Creates a `_.find` or `_.findLast` function. + * + * @private + * @param {Function} findIndexFunc The function to find the collection index. + * @returns {Function} Returns the new find function. + */ + function createFind(findIndexFunc) { + return function(collection, predicate, fromIndex) { + var iterable = Object(collection); + if (!isArrayLike(collection)) { + var iteratee = baseIteratee(predicate, 3); + collection = keys(collection); + predicate = function(key) { return iteratee(iterable[key], key, iterable); }; + } + var index = findIndexFunc(collection, predicate, fromIndex); + return index > -1 ? iterable[iteratee ? collection[index] : index] : undefined; + }; + } + + /** + * Creates a function that wraps `func` to invoke it with the `this` binding + * of `thisArg` and `partials` prepended to the arguments it receives. + * + * @private + * @param {Function} func The function to wrap. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @param {*} thisArg The `this` binding of `func`. + * @param {Array} partials The arguments to prepend to those provided to + * the new function. + * @returns {Function} Returns the new wrapped function. + */ + function createPartial(func, bitmask, thisArg, partials) { + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + var isBind = bitmask & WRAP_BIND_FLAG, + Ctor = createCtor(func); + + function wrapper() { + var argsIndex = -1, + argsLength = arguments.length, + leftIndex = -1, + leftLength = partials.length, + args = Array(leftLength + argsLength), + fn = (this && this !== root && this instanceof wrapper) ? Ctor : func; + + while (++leftIndex < leftLength) { + args[leftIndex] = partials[leftIndex]; + } + while (argsLength--) { + args[leftIndex++] = arguments[++argsIndex]; + } + return fn.apply(isBind ? thisArg : this, args); + } + return wrapper; + } + + /** + * A specialized version of `baseIsEqualDeep` for arrays with support for + * partial deep comparisons. + * + * @private + * @param {Array} array The array to compare. + * @param {Array} other The other array to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} stack Tracks traversed `array` and `other` objects. + * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`. + */ + function equalArrays(array, other, bitmask, customizer, equalFunc, stack) { + var isPartial = bitmask & COMPARE_PARTIAL_FLAG, + arrLength = array.length, + othLength = other.length; + + if (arrLength != othLength && !(isPartial && othLength > arrLength)) { + return false; + } + // Check that cyclic values are equal. + var arrStacked = stack.get(array); + var othStacked = stack.get(other); + if (arrStacked && othStacked) { + return arrStacked == other && othStacked == array; + } + var index = -1, + result = true, + seen = (bitmask & COMPARE_UNORDERED_FLAG) ? [] : undefined; + + // Ignore non-index properties. + while (++index < arrLength) { + var arrValue = array[index], + othValue = other[index]; + + var compared; + if (compared !== undefined) { + if (compared) { + continue; + } + result = false; + break; + } + // Recursively compare arrays (susceptible to call stack limits). + if (seen) { + if (!baseSome(other, function(othValue, othIndex) { + if (!indexOf(seen, othIndex) && + (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) { + return seen.push(othIndex); + } + })) { + result = false; + break; + } + } else if (!( + arrValue === othValue || + equalFunc(arrValue, othValue, bitmask, customizer, stack) + )) { + result = false; + break; + } + } + return result; + } + + /** + * A specialized version of `baseIsEqualDeep` for comparing objects of + * the same `toStringTag`. + * + * **Note:** This function only supports comparing values with tags of + * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {string} tag The `toStringTag` of the objects to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} stack Tracks traversed `object` and `other` objects. + * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. + */ + function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) { + switch (tag) { + + case boolTag: + case dateTag: + case numberTag: + // Coerce booleans to `1` or `0` and dates to milliseconds. + // Invalid dates are coerced to `NaN`. + return eq(+object, +other); + + case errorTag: + return object.name == other.name && object.message == other.message; + + case regexpTag: + case stringTag: + // Coerce regexes to strings and treat strings, primitives and objects, + // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring + // for more details. + return object == (other + ''); + + } + return false; + } + + /** + * A specialized version of `baseIsEqualDeep` for objects with support for + * partial deep comparisons. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} stack Tracks traversed `object` and `other` objects. + * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. + */ + function equalObjects(object, other, bitmask, customizer, equalFunc, stack) { + var isPartial = bitmask & COMPARE_PARTIAL_FLAG, + objProps = keys(object), + objLength = objProps.length, + othProps = keys(other), + othLength = othProps.length; + + if (objLength != othLength && !isPartial) { + return false; + } + var index = objLength; + while (index--) { + var key = objProps[index]; + if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) { + return false; + } + } + // Check that cyclic values are equal. + var objStacked = stack.get(object); + var othStacked = stack.get(other); + if (objStacked && othStacked) { + return objStacked == other && othStacked == object; + } + var result = true; + + var skipCtor = isPartial; + while (++index < objLength) { + key = objProps[index]; + var objValue = object[key], + othValue = other[key]; + + var compared; + // Recursively compare objects (susceptible to call stack limits). + if (!(compared === undefined + ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack)) + : compared + )) { + result = false; + break; + } + skipCtor || (skipCtor = key == 'constructor'); + } + if (result && !skipCtor) { + var objCtor = object.constructor, + othCtor = other.constructor; + + // Non `Object` object instances with different constructors are not equal. + if (objCtor != othCtor && + ('constructor' in object && 'constructor' in other) && + !(typeof objCtor == 'function' && objCtor instanceof objCtor && + typeof othCtor == 'function' && othCtor instanceof othCtor)) { + result = false; + } + } + return result; + } + + /** + * A specialized version of `baseRest` which flattens the rest array. + * + * @private + * @param {Function} func The function to apply a rest parameter to. + * @returns {Function} Returns the new function. + */ + function flatRest(func) { + return setToString(overRest(func, undefined, flatten), func + ''); + } + + /** + * Checks if `value` is a flattenable `arguments` object or array. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is flattenable, else `false`. + */ + function isFlattenable(value) { + return isArray(value) || isArguments(value); + } + + /** + * Checks if `value` is a valid array-like index. + * + * @private + * @param {*} value The value to check. + * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index. + * @returns {boolean} Returns `true` if `value` is a valid index, else `false`. + */ + function isIndex(value, length) { + var type = typeof value; + length = length == null ? MAX_SAFE_INTEGER : length; + + return !!length && + (type == 'number' || + (type != 'symbol' && reIsUint.test(value))) && + (value > -1 && value % 1 == 0 && value < length); + } + + /** + * Checks if the given arguments are from an iteratee call. + * + * @private + * @param {*} value The potential iteratee value argument. + * @param {*} index The potential iteratee index or key argument. + * @param {*} object The potential iteratee object argument. + * @returns {boolean} Returns `true` if the arguments are from an iteratee call, + * else `false`. + */ + function isIterateeCall(value, index, object) { + if (!isObject(object)) { + return false; + } + var type = typeof index; + if (type == 'number' + ? (isArrayLike(object) && isIndex(index, object.length)) + : (type == 'string' && index in object) + ) { + return eq(object[index], value); + } + return false; + } + + /** + * This function is like + * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys) + * except that it includes inherited enumerable properties. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names. + */ + function nativeKeysIn(object) { + var result = []; + if (object != null) { + for (var key in Object(object)) { + result.push(key); + } + } + return result; + } + + /** + * Converts `value` to a string using `Object.prototype.toString`. + * + * @private + * @param {*} value The value to convert. + * @returns {string} Returns the converted string. + */ + function objectToString(value) { + return nativeObjectToString.call(value); + } + + /** + * A specialized version of `baseRest` which transforms the rest array. + * + * @private + * @param {Function} func The function to apply a rest parameter to. + * @param {number} [start=func.length-1] The start position of the rest parameter. + * @param {Function} transform The rest array transform. + * @returns {Function} Returns the new function. + */ + function overRest(func, start, transform) { + start = nativeMax(start === undefined ? (func.length - 1) : start, 0); + return function() { + var args = arguments, + index = -1, + length = nativeMax(args.length - start, 0), + array = Array(length); + + while (++index < length) { + array[index] = args[start + index]; + } + index = -1; + var otherArgs = Array(start + 1); + while (++index < start) { + otherArgs[index] = args[index]; + } + otherArgs[start] = transform(array); + return func.apply(this, otherArgs); + }; + } + + /** + * Sets the `toString` method of `func` to return `string`. + * + * @private + * @param {Function} func The function to modify. + * @param {Function} string The `toString` result. + * @returns {Function} Returns `func`. + */ + var setToString = identity; + + /*------------------------------------------------------------------------*/ + + /** + * Creates an array with all falsey values removed. The values `false`, `null`, + * `0`, `""`, `undefined`, and `NaN` are falsey. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to compact. + * @returns {Array} Returns the new array of filtered values. + * @example + * + * _.compact([0, 1, false, 2, '', 3]); + * // => [1, 2, 3] + */ + function compact(array) { + return baseFilter(array, Boolean); + } + + /** + * Creates a new array concatenating `array` with any additional arrays + * and/or values. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to concatenate. + * @param {...*} [values] The values to concatenate. + * @returns {Array} Returns the new concatenated array. + * @example + * + * var array = [1]; + * var other = _.concat(array, 2, [3], [[4]]); + * + * console.log(other); + * // => [1, 2, 3, [4]] + * + * console.log(array); + * // => [1] + */ + function concat() { + var length = arguments.length; + if (!length) { + return []; + } + var args = Array(length - 1), + array = arguments[0], + index = length; + + while (index--) { + args[index - 1] = arguments[index]; + } + return arrayPush(isArray(array) ? copyArray(array) : [array], baseFlatten(args, 1)); + } + + /** + * This method is like `_.find` except that it returns the index of the first + * element `predicate` returns truthy for instead of the element itself. + * + * @static + * @memberOf _ + * @since 1.1.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param {number} [fromIndex=0] The index to search from. + * @returns {number} Returns the index of the found element, else `-1`. + * @example + * + * var users = [ + * { 'user': 'barney', 'active': false }, + * { 'user': 'fred', 'active': false }, + * { 'user': 'pebbles', 'active': true } + * ]; + * + * _.findIndex(users, function(o) { return o.user == 'barney'; }); + * // => 0 + * + * // The `_.matches` iteratee shorthand. + * _.findIndex(users, { 'user': 'fred', 'active': false }); + * // => 1 + * + * // The `_.matchesProperty` iteratee shorthand. + * _.findIndex(users, ['active', false]); + * // => 0 + * + * // The `_.property` iteratee shorthand. + * _.findIndex(users, 'active'); + * // => 2 + */ + function findIndex(array, predicate, fromIndex) { + var length = array == null ? 0 : array.length; + if (!length) { + return -1; + } + var index = fromIndex == null ? 0 : toInteger(fromIndex); + if (index < 0) { + index = nativeMax(length + index, 0); + } + return baseFindIndex(array, baseIteratee(predicate, 3), index); + } + + /** + * Flattens `array` a single level deep. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to flatten. + * @returns {Array} Returns the new flattened array. + * @example + * + * _.flatten([1, [2, [3, [4]], 5]]); + * // => [1, 2, [3, [4]], 5] + */ + function flatten(array) { + var length = array == null ? 0 : array.length; + return length ? baseFlatten(array, 1) : []; + } + + /** + * Recursively flattens `array`. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to flatten. + * @returns {Array} Returns the new flattened array. + * @example + * + * _.flattenDeep([1, [2, [3, [4]], 5]]); + * // => [1, 2, 3, 4, 5] + */ + function flattenDeep(array) { + var length = array == null ? 0 : array.length; + return length ? baseFlatten(array, INFINITY) : []; + } + + /** + * Gets the first element of `array`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @alias first + * @category Array + * @param {Array} array The array to query. + * @returns {*} Returns the first element of `array`. + * @example + * + * _.head([1, 2, 3]); + * // => 1 + * + * _.head([]); + * // => undefined + */ + function head(array) { + return (array && array.length) ? array[0] : undefined; + } + + /** + * Gets the index at which the first occurrence of `value` is found in `array` + * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. If `fromIndex` is negative, it's used as the + * offset from the end of `array`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} [fromIndex=0] The index to search from. + * @returns {number} Returns the index of the matched value, else `-1`. + * @example + * + * _.indexOf([1, 2, 1, 2], 2); + * // => 1 + * + * // Search from the `fromIndex`. + * _.indexOf([1, 2, 1, 2], 2, 2); + * // => 3 + */ + function indexOf(array, value, fromIndex) { + var length = array == null ? 0 : array.length; + if (typeof fromIndex == 'number') { + fromIndex = fromIndex < 0 ? nativeMax(length + fromIndex, 0) : fromIndex; + } else { + fromIndex = 0; + } + var index = (fromIndex || 0) - 1, + isReflexive = value === value; + + while (++index < length) { + var other = array[index]; + if ((isReflexive ? other === value : other !== other)) { + return index; + } + } + return -1; + } + + /** + * Gets the last element of `array`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to query. + * @returns {*} Returns the last element of `array`. + * @example + * + * _.last([1, 2, 3]); + * // => 3 + */ + function last(array) { + var length = array == null ? 0 : array.length; + return length ? array[length - 1] : undefined; + } + + /** + * Creates a slice of `array` from `start` up to, but not including, `end`. + * + * **Note:** This method is used instead of + * [`Array#slice`](https://mdn.io/Array/slice) to ensure dense arrays are + * returned. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to slice. + * @param {number} [start=0] The start position. + * @param {number} [end=array.length] The end position. + * @returns {Array} Returns the slice of `array`. + */ + function slice(array, start, end) { + var length = array == null ? 0 : array.length; + start = start == null ? 0 : +start; + end = end === undefined ? length : +end; + return length ? baseSlice(array, start, end) : []; + } + + /*------------------------------------------------------------------------*/ + + /** + * Creates a `lodash` wrapper instance that wraps `value` with explicit method + * chain sequences enabled. The result of such sequences must be unwrapped + * with `_#value`. + * + * @static + * @memberOf _ + * @since 1.3.0 + * @category Seq + * @param {*} value The value to wrap. + * @returns {Object} Returns the new `lodash` wrapper instance. + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36 }, + * { 'user': 'fred', 'age': 40 }, + * { 'user': 'pebbles', 'age': 1 } + * ]; + * + * var youngest = _ + * .chain(users) + * .sortBy('age') + * .map(function(o) { + * return o.user + ' is ' + o.age; + * }) + * .head() + * .value(); + * // => 'pebbles is 1' + */ + function chain(value) { + var result = lodash(value); + result.__chain__ = true; + return result; + } + + /** + * This method invokes `interceptor` and returns `value`. The interceptor + * is invoked with one argument; (value). The purpose of this method is to + * "tap into" a method chain sequence in order to modify intermediate results. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Seq + * @param {*} value The value to provide to `interceptor`. + * @param {Function} interceptor The function to invoke. + * @returns {*} Returns `value`. + * @example + * + * _([1, 2, 3]) + * .tap(function(array) { + * // Mutate input array. + * array.pop(); + * }) + * .reverse() + * .value(); + * // => [2, 1] + */ + function tap(value, interceptor) { + interceptor(value); + return value; + } + + /** + * This method is like `_.tap` except that it returns the result of `interceptor`. + * The purpose of this method is to "pass thru" values replacing intermediate + * results in a method chain sequence. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Seq + * @param {*} value The value to provide to `interceptor`. + * @param {Function} interceptor The function to invoke. + * @returns {*} Returns the result of `interceptor`. + * @example + * + * _(' abc ') + * .chain() + * .trim() + * .thru(function(value) { + * return [value]; + * }) + * .value(); + * // => ['abc'] + */ + function thru(value, interceptor) { + return interceptor(value); + } + + /** + * Creates a `lodash` wrapper instance with explicit method chain sequences enabled. + * + * @name chain + * @memberOf _ + * @since 0.1.0 + * @category Seq + * @returns {Object} Returns the new `lodash` wrapper instance. + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36 }, + * { 'user': 'fred', 'age': 40 } + * ]; + * + * // A sequence without explicit chaining. + * _(users).head(); + * // => { 'user': 'barney', 'age': 36 } + * + * // A sequence with explicit chaining. + * _(users) + * .chain() + * .head() + * .pick('user') + * .value(); + * // => { 'user': 'barney' } + */ + function wrapperChain() { + return chain(this); + } + + /** + * Executes the chain sequence to resolve the unwrapped value. + * + * @name value + * @memberOf _ + * @since 0.1.0 + * @alias toJSON, valueOf + * @category Seq + * @returns {*} Returns the resolved unwrapped value. + * @example + * + * _([1, 2, 3]).value(); + * // => [1, 2, 3] + */ + function wrapperValue() { + return baseWrapperValue(this.__wrapped__, this.__actions__); + } + + /*------------------------------------------------------------------------*/ + + /** + * Checks if `predicate` returns truthy for **all** elements of `collection`. + * Iteration is stopped once `predicate` returns falsey. The predicate is + * invoked with three arguments: (value, index|key, collection). + * + * **Note:** This method returns `true` for + * [empty collections](https://en.wikipedia.org/wiki/Empty_set) because + * [everything is true](https://en.wikipedia.org/wiki/Vacuous_truth) of + * elements of empty collections. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {boolean} Returns `true` if all elements pass the predicate check, + * else `false`. + * @example + * + * _.every([true, 1, null, 'yes'], Boolean); + * // => false + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': false }, + * { 'user': 'fred', 'age': 40, 'active': false } + * ]; + * + * // The `_.matches` iteratee shorthand. + * _.every(users, { 'user': 'barney', 'active': false }); + * // => false + * + * // The `_.matchesProperty` iteratee shorthand. + * _.every(users, ['active', false]); + * // => true + * + * // The `_.property` iteratee shorthand. + * _.every(users, 'active'); + * // => false + */ + function every(collection, predicate, guard) { + predicate = guard ? undefined : predicate; + return baseEvery(collection, baseIteratee(predicate)); + } + + /** + * Iterates over elements of `collection`, returning an array of all elements + * `predicate` returns truthy for. The predicate is invoked with three + * arguments: (value, index|key, collection). + * + * **Note:** Unlike `_.remove`, this method returns a new array. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new filtered array. + * @see _.reject + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': true }, + * { 'user': 'fred', 'age': 40, 'active': false } + * ]; + * + * _.filter(users, function(o) { return !o.active; }); + * // => objects for ['fred'] + * + * // The `_.matches` iteratee shorthand. + * _.filter(users, { 'age': 36, 'active': true }); + * // => objects for ['barney'] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.filter(users, ['active', false]); + * // => objects for ['fred'] + * + * // The `_.property` iteratee shorthand. + * _.filter(users, 'active'); + * // => objects for ['barney'] + * + * // Combining several predicates using `_.overEvery` or `_.overSome`. + * _.filter(users, _.overSome([{ 'age': 36 }, ['age', 40]])); + * // => objects for ['fred', 'barney'] + */ + function filter(collection, predicate) { + return baseFilter(collection, baseIteratee(predicate)); + } + + /** + * Iterates over elements of `collection`, returning the first element + * `predicate` returns truthy for. The predicate is invoked with three + * arguments: (value, index|key, collection). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param {number} [fromIndex=0] The index to search from. + * @returns {*} Returns the matched element, else `undefined`. + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': true }, + * { 'user': 'fred', 'age': 40, 'active': false }, + * { 'user': 'pebbles', 'age': 1, 'active': true } + * ]; + * + * _.find(users, function(o) { return o.age < 40; }); + * // => object for 'barney' + * + * // The `_.matches` iteratee shorthand. + * _.find(users, { 'age': 1, 'active': true }); + * // => object for 'pebbles' + * + * // The `_.matchesProperty` iteratee shorthand. + * _.find(users, ['active', false]); + * // => object for 'fred' + * + * // The `_.property` iteratee shorthand. + * _.find(users, 'active'); + * // => object for 'barney' + */ + var find = createFind(findIndex); + + /** + * Iterates over elements of `collection` and invokes `iteratee` for each element. + * The iteratee is invoked with three arguments: (value, index|key, collection). + * Iteratee functions may exit iteration early by explicitly returning `false`. + * + * **Note:** As with other "Collections" methods, objects with a "length" + * property are iterated like arrays. To avoid this behavior use `_.forIn` + * or `_.forOwn` for object iteration. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @alias each + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Array|Object} Returns `collection`. + * @see _.forEachRight + * @example + * + * _.forEach([1, 2], function(value) { + * console.log(value); + * }); + * // => Logs `1` then `2`. + * + * _.forEach({ 'a': 1, 'b': 2 }, function(value, key) { + * console.log(key); + * }); + * // => Logs 'a' then 'b' (iteration order is not guaranteed). + */ + function forEach(collection, iteratee) { + return baseEach(collection, baseIteratee(iteratee)); + } + + /** + * Creates an array of values by running each element in `collection` thru + * `iteratee`. The iteratee is invoked with three arguments: + * (value, index|key, collection). + * + * Many lodash methods are guarded to work as iteratees for methods like + * `_.every`, `_.filter`, `_.map`, `_.mapValues`, `_.reject`, and `_.some`. + * + * The guarded methods are: + * `ary`, `chunk`, `curry`, `curryRight`, `drop`, `dropRight`, `every`, + * `fill`, `invert`, `parseInt`, `random`, `range`, `rangeRight`, `repeat`, + * `sampleSize`, `slice`, `some`, `sortBy`, `split`, `take`, `takeRight`, + * `template`, `trim`, `trimEnd`, `trimStart`, and `words` + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new mapped array. + * @example + * + * function square(n) { + * return n * n; + * } + * + * _.map([4, 8], square); + * // => [16, 64] + * + * _.map({ 'a': 4, 'b': 8 }, square); + * // => [16, 64] (iteration order is not guaranteed) + * + * var users = [ + * { 'user': 'barney' }, + * { 'user': 'fred' } + * ]; + * + * // The `_.property` iteratee shorthand. + * _.map(users, 'user'); + * // => ['barney', 'fred'] + */ + function map(collection, iteratee) { + return baseMap(collection, baseIteratee(iteratee)); + } + + /** + * Reduces `collection` to a value which is the accumulated result of running + * each element in `collection` thru `iteratee`, where each successive + * invocation is supplied the return value of the previous. If `accumulator` + * is not given, the first element of `collection` is used as the initial + * value. The iteratee is invoked with four arguments: + * (accumulator, value, index|key, collection). + * + * Many lodash methods are guarded to work as iteratees for methods like + * `_.reduce`, `_.reduceRight`, and `_.transform`. + * + * The guarded methods are: + * `assign`, `defaults`, `defaultsDeep`, `includes`, `merge`, `orderBy`, + * and `sortBy` + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @param {*} [accumulator] The initial value. + * @returns {*} Returns the accumulated value. + * @see _.reduceRight + * @example + * + * _.reduce([1, 2], function(sum, n) { + * return sum + n; + * }, 0); + * // => 3 + * + * _.reduce({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) { + * (result[value] || (result[value] = [])).push(key); + * return result; + * }, {}); + * // => { '1': ['a', 'c'], '2': ['b'] } (iteration order is not guaranteed) + */ + function reduce(collection, iteratee, accumulator) { + return baseReduce(collection, baseIteratee(iteratee), accumulator, arguments.length < 3, baseEach); + } + + /** + * Gets the size of `collection` by returning its length for array-like + * values or the number of own enumerable string keyed properties for objects. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object|string} collection The collection to inspect. + * @returns {number} Returns the collection size. + * @example + * + * _.size([1, 2, 3]); + * // => 3 + * + * _.size({ 'a': 1, 'b': 2 }); + * // => 2 + * + * _.size('pebbles'); + * // => 7 + */ + function size(collection) { + if (collection == null) { + return 0; + } + collection = isArrayLike(collection) ? collection : nativeKeys(collection); + return collection.length; + } + + /** + * Checks if `predicate` returns truthy for **any** element of `collection`. + * Iteration is stopped once `predicate` returns truthy. The predicate is + * invoked with three arguments: (value, index|key, collection). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {boolean} Returns `true` if any element passes the predicate check, + * else `false`. + * @example + * + * _.some([null, 0, 'yes', false], Boolean); + * // => true + * + * var users = [ + * { 'user': 'barney', 'active': true }, + * { 'user': 'fred', 'active': false } + * ]; + * + * // The `_.matches` iteratee shorthand. + * _.some(users, { 'user': 'barney', 'active': false }); + * // => false + * + * // The `_.matchesProperty` iteratee shorthand. + * _.some(users, ['active', false]); + * // => true + * + * // The `_.property` iteratee shorthand. + * _.some(users, 'active'); + * // => true + */ + function some(collection, predicate, guard) { + predicate = guard ? undefined : predicate; + return baseSome(collection, baseIteratee(predicate)); + } + + /** + * Creates an array of elements, sorted in ascending order by the results of + * running each element in a collection thru each iteratee. This method + * performs a stable sort, that is, it preserves the original sort order of + * equal elements. The iteratees are invoked with one argument: (value). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {...(Function|Function[])} [iteratees=[_.identity]] + * The iteratees to sort by. + * @returns {Array} Returns the new sorted array. + * @example + * + * var users = [ + * { 'user': 'fred', 'age': 48 }, + * { 'user': 'barney', 'age': 36 }, + * { 'user': 'fred', 'age': 30 }, + * { 'user': 'barney', 'age': 34 } + * ]; + * + * _.sortBy(users, [function(o) { return o.user; }]); + * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 30]] + * + * _.sortBy(users, ['user', 'age']); + * // => objects for [['barney', 34], ['barney', 36], ['fred', 30], ['fred', 48]] + */ + function sortBy(collection, iteratee) { + var index = 0; + iteratee = baseIteratee(iteratee); + + return baseMap(baseMap(collection, function(value, key, collection) { + return { 'value': value, 'index': index++, 'criteria': iteratee(value, key, collection) }; + }).sort(function(object, other) { + return compareAscending(object.criteria, other.criteria) || (object.index - other.index); + }), baseProperty('value')); + } + + /*------------------------------------------------------------------------*/ + + /** + * Creates a function that invokes `func`, with the `this` binding and arguments + * of the created function, while it's called less than `n` times. Subsequent + * calls to the created function return the result of the last `func` invocation. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Function + * @param {number} n The number of calls at which `func` is no longer invoked. + * @param {Function} func The function to restrict. + * @returns {Function} Returns the new restricted function. + * @example + * + * jQuery(element).on('click', _.before(5, addContactToList)); + * // => Allows adding up to 4 contacts to the list. + */ + function before(n, func) { + var result; + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + n = toInteger(n); + return function() { + if (--n > 0) { + result = func.apply(this, arguments); + } + if (n <= 1) { + func = undefined; + } + return result; + }; + } + + /** + * Creates a function that invokes `func` with the `this` binding of `thisArg` + * and `partials` prepended to the arguments it receives. + * + * The `_.bind.placeholder` value, which defaults to `_` in monolithic builds, + * may be used as a placeholder for partially applied arguments. + * + * **Note:** Unlike native `Function#bind`, this method doesn't set the "length" + * property of bound functions. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {Function} func The function to bind. + * @param {*} thisArg The `this` binding of `func`. + * @param {...*} [partials] The arguments to be partially applied. + * @returns {Function} Returns the new bound function. + * @example + * + * function greet(greeting, punctuation) { + * return greeting + ' ' + this.user + punctuation; + * } + * + * var object = { 'user': 'fred' }; + * + * var bound = _.bind(greet, object, 'hi'); + * bound('!'); + * // => 'hi fred!' + * + * // Bound with placeholders. + * var bound = _.bind(greet, object, _, '!'); + * bound('hi'); + * // => 'hi fred!' + */ + var bind = baseRest(function(func, thisArg, partials) { + return createPartial(func, WRAP_BIND_FLAG | WRAP_PARTIAL_FLAG, thisArg, partials); + }); + + /** + * Defers invoking the `func` until the current call stack has cleared. Any + * additional arguments are provided to `func` when it's invoked. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {Function} func The function to defer. + * @param {...*} [args] The arguments to invoke `func` with. + * @returns {number} Returns the timer id. + * @example + * + * _.defer(function(text) { + * console.log(text); + * }, 'deferred'); + * // => Logs 'deferred' after one millisecond. + */ + var defer = baseRest(function(func, args) { + return baseDelay(func, 1, args); + }); + + /** + * Invokes `func` after `wait` milliseconds. Any additional arguments are + * provided to `func` when it's invoked. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {Function} func The function to delay. + * @param {number} wait The number of milliseconds to delay invocation. + * @param {...*} [args] The arguments to invoke `func` with. + * @returns {number} Returns the timer id. + * @example + * + * _.delay(function(text) { + * console.log(text); + * }, 1000, 'later'); + * // => Logs 'later' after one second. + */ + var delay = baseRest(function(func, wait, args) { + return baseDelay(func, toNumber(wait) || 0, args); + }); + + /** + * Creates a function that negates the result of the predicate `func`. The + * `func` predicate is invoked with the `this` binding and arguments of the + * created function. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Function + * @param {Function} predicate The predicate to negate. + * @returns {Function} Returns the new negated function. + * @example + * + * function isEven(n) { + * return n % 2 == 0; + * } + * + * _.filter([1, 2, 3, 4, 5, 6], _.negate(isEven)); + * // => [1, 3, 5] + */ + function negate(predicate) { + if (typeof predicate != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + return function() { + var args = arguments; + return !predicate.apply(this, args); + }; + } + + /** + * Creates a function that is restricted to invoking `func` once. Repeat calls + * to the function return the value of the first invocation. The `func` is + * invoked with the `this` binding and arguments of the created function. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {Function} func The function to restrict. + * @returns {Function} Returns the new restricted function. + * @example + * + * var initialize = _.once(createApplication); + * initialize(); + * initialize(); + * // => `createApplication` is invoked once + */ + function once(func) { + return before(2, func); + } + + /*------------------------------------------------------------------------*/ + + /** + * Creates a shallow clone of `value`. + * + * **Note:** This method is loosely based on the + * [structured clone algorithm](https://mdn.io/Structured_clone_algorithm) + * and supports cloning arrays, array buffers, booleans, date objects, maps, + * numbers, `Object` objects, regexes, sets, strings, symbols, and typed + * arrays. The own enumerable properties of `arguments` objects are cloned + * as plain objects. An empty object is returned for uncloneable values such + * as error objects, functions, DOM nodes, and WeakMaps. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to clone. + * @returns {*} Returns the cloned value. + * @see _.cloneDeep + * @example + * + * var objects = [{ 'a': 1 }, { 'b': 2 }]; + * + * var shallow = _.clone(objects); + * console.log(shallow[0] === objects[0]); + * // => true + */ + function clone(value) { + if (!isObject(value)) { + return value; + } + return isArray(value) ? copyArray(value) : copyObject(value, nativeKeys(value)); + } + + /** + * Performs a + * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * comparison between two values to determine if they are equivalent. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if the values are equivalent, else `false`. + * @example + * + * var object = { 'a': 1 }; + * var other = { 'a': 1 }; + * + * _.eq(object, object); + * // => true + * + * _.eq(object, other); + * // => false + * + * _.eq('a', 'a'); + * // => true + * + * _.eq('a', Object('a')); + * // => false + * + * _.eq(NaN, NaN); + * // => true + */ + function eq(value, other) { + return value === other || (value !== value && other !== other); + } + + /** + * Checks if `value` is likely an `arguments` object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an `arguments` object, + * else `false`. + * @example + * + * _.isArguments(function() { return arguments; }()); + * // => true + * + * _.isArguments([1, 2, 3]); + * // => false + */ + var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) { + return isObjectLike(value) && hasOwnProperty.call(value, 'callee') && + !propertyIsEnumerable.call(value, 'callee'); + }; + + /** + * Checks if `value` is classified as an `Array` object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an array, else `false`. + * @example + * + * _.isArray([1, 2, 3]); + * // => true + * + * _.isArray(document.body.children); + * // => false + * + * _.isArray('abc'); + * // => false + * + * _.isArray(_.noop); + * // => false + */ + var isArray = Array.isArray; + + /** + * Checks if `value` is array-like. A value is considered array-like if it's + * not a function and has a `value.length` that's an integer greater than or + * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is array-like, else `false`. + * @example + * + * _.isArrayLike([1, 2, 3]); + * // => true + * + * _.isArrayLike(document.body.children); + * // => true + * + * _.isArrayLike('abc'); + * // => true + * + * _.isArrayLike(_.noop); + * // => false + */ + function isArrayLike(value) { + return value != null && isLength(value.length) && !isFunction(value); + } + + /** + * Checks if `value` is classified as a boolean primitive or object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a boolean, else `false`. + * @example + * + * _.isBoolean(false); + * // => true + * + * _.isBoolean(null); + * // => false + */ + function isBoolean(value) { + return value === true || value === false || + (isObjectLike(value) && baseGetTag(value) == boolTag); + } + + /** + * Checks if `value` is classified as a `Date` object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a date object, else `false`. + * @example + * + * _.isDate(new Date); + * // => true + * + * _.isDate('Mon April 23 2012'); + * // => false + */ + var isDate = baseIsDate; + + /** + * Checks if `value` is an empty object, collection, map, or set. + * + * Objects are considered empty if they have no own enumerable string keyed + * properties. + * + * Array-like values such as `arguments` objects, arrays, buffers, strings, or + * jQuery-like collections are considered empty if they have a `length` of `0`. + * Similarly, maps and sets are considered empty if they have a `size` of `0`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is empty, else `false`. + * @example + * + * _.isEmpty(null); + * // => true + * + * _.isEmpty(true); + * // => true + * + * _.isEmpty(1); + * // => true + * + * _.isEmpty([1, 2, 3]); + * // => false + * + * _.isEmpty({ 'a': 1 }); + * // => false + */ + function isEmpty(value) { + if (isArrayLike(value) && + (isArray(value) || isString(value) || + isFunction(value.splice) || isArguments(value))) { + return !value.length; + } + return !nativeKeys(value).length; + } + + /** + * Performs a deep comparison between two values to determine if they are + * equivalent. + * + * **Note:** This method supports comparing arrays, array buffers, booleans, + * date objects, error objects, maps, numbers, `Object` objects, regexes, + * sets, strings, symbols, and typed arrays. `Object` objects are compared + * by their own, not inherited, enumerable properties. Functions and DOM + * nodes are compared by strict equality, i.e. `===`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if the values are equivalent, else `false`. + * @example + * + * var object = { 'a': 1 }; + * var other = { 'a': 1 }; + * + * _.isEqual(object, other); + * // => true + * + * object === other; + * // => false + */ + function isEqual(value, other) { + return baseIsEqual(value, other); + } + + /** + * Checks if `value` is a finite primitive number. + * + * **Note:** This method is based on + * [`Number.isFinite`](https://mdn.io/Number/isFinite). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a finite number, else `false`. + * @example + * + * _.isFinite(3); + * // => true + * + * _.isFinite(Number.MIN_VALUE); + * // => true + * + * _.isFinite(Infinity); + * // => false + * + * _.isFinite('3'); + * // => false + */ + function isFinite(value) { + return typeof value == 'number' && nativeIsFinite(value); + } + + /** + * Checks if `value` is classified as a `Function` object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a function, else `false`. + * @example + * + * _.isFunction(_); + * // => true + * + * _.isFunction(/abc/); + * // => false + */ + function isFunction(value) { + if (!isObject(value)) { + return false; + } + // The use of `Object#toString` avoids issues with the `typeof` operator + // in Safari 9 which returns 'object' for typed arrays and other constructors. + var tag = baseGetTag(value); + return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag; + } + + /** + * Checks if `value` is a valid array-like length. + * + * **Note:** This method is loosely based on + * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a valid length, else `false`. + * @example + * + * _.isLength(3); + * // => true + * + * _.isLength(Number.MIN_VALUE); + * // => false + * + * _.isLength(Infinity); + * // => false + * + * _.isLength('3'); + * // => false + */ + function isLength(value) { + return typeof value == 'number' && + value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER; + } + + /** + * Checks if `value` is the + * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types) + * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`) + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an object, else `false`. + * @example + * + * _.isObject({}); + * // => true + * + * _.isObject([1, 2, 3]); + * // => true + * + * _.isObject(_.noop); + * // => true + * + * _.isObject(null); + * // => false + */ + function isObject(value) { + var type = typeof value; + return value != null && (type == 'object' || type == 'function'); + } + + /** + * Checks if `value` is object-like. A value is object-like if it's not `null` + * and has a `typeof` result of "object". + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is object-like, else `false`. + * @example + * + * _.isObjectLike({}); + * // => true + * + * _.isObjectLike([1, 2, 3]); + * // => true + * + * _.isObjectLike(_.noop); + * // => false + * + * _.isObjectLike(null); + * // => false + */ + function isObjectLike(value) { + return value != null && typeof value == 'object'; + } + + /** + * Checks if `value` is `NaN`. + * + * **Note:** This method is based on + * [`Number.isNaN`](https://mdn.io/Number/isNaN) and is not the same as + * global [`isNaN`](https://mdn.io/isNaN) which returns `true` for + * `undefined` and other non-number values. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`. + * @example + * + * _.isNaN(NaN); + * // => true + * + * _.isNaN(new Number(NaN)); + * // => true + * + * isNaN(undefined); + * // => true + * + * _.isNaN(undefined); + * // => false + */ + function isNaN(value) { + // An `NaN` primitive is the only value that is not equal to itself. + // Perform the `toStringTag` check first to avoid errors with some + // ActiveX objects in IE. + return isNumber(value) && value != +value; + } + + /** + * Checks if `value` is `null`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is `null`, else `false`. + * @example + * + * _.isNull(null); + * // => true + * + * _.isNull(void 0); + * // => false + */ + function isNull(value) { + return value === null; + } + + /** + * Checks if `value` is classified as a `Number` primitive or object. + * + * **Note:** To exclude `Infinity`, `-Infinity`, and `NaN`, which are + * classified as numbers, use the `_.isFinite` method. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a number, else `false`. + * @example + * + * _.isNumber(3); + * // => true + * + * _.isNumber(Number.MIN_VALUE); + * // => true + * + * _.isNumber(Infinity); + * // => true + * + * _.isNumber('3'); + * // => false + */ + function isNumber(value) { + return typeof value == 'number' || + (isObjectLike(value) && baseGetTag(value) == numberTag); + } + + /** + * Checks if `value` is classified as a `RegExp` object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a regexp, else `false`. + * @example + * + * _.isRegExp(/abc/); + * // => true + * + * _.isRegExp('/abc/'); + * // => false + */ + var isRegExp = baseIsRegExp; + + /** + * Checks if `value` is classified as a `String` primitive or object. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a string, else `false`. + * @example + * + * _.isString('abc'); + * // => true + * + * _.isString(1); + * // => false + */ + function isString(value) { + return typeof value == 'string' || + (!isArray(value) && isObjectLike(value) && baseGetTag(value) == stringTag); + } + + /** + * Checks if `value` is `undefined`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is `undefined`, else `false`. + * @example + * + * _.isUndefined(void 0); + * // => true + * + * _.isUndefined(null); + * // => false + */ + function isUndefined(value) { + return value === undefined; + } + + /** + * Converts `value` to an array. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Lang + * @param {*} value The value to convert. + * @returns {Array} Returns the converted array. + * @example + * + * _.toArray({ 'a': 1, 'b': 2 }); + * // => [1, 2] + * + * _.toArray('abc'); + * // => ['a', 'b', 'c'] + * + * _.toArray(1); + * // => [] + * + * _.toArray(null); + * // => [] + */ + function toArray(value) { + if (!isArrayLike(value)) { + return values(value); + } + return value.length ? copyArray(value) : []; + } + + /** + * Converts `value` to an integer. + * + * **Note:** This method is loosely based on + * [`ToInteger`](http://www.ecma-international.org/ecma-262/7.0/#sec-tointeger). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {number} Returns the converted integer. + * @example + * + * _.toInteger(3.2); + * // => 3 + * + * _.toInteger(Number.MIN_VALUE); + * // => 0 + * + * _.toInteger(Infinity); + * // => 1.7976931348623157e+308 + * + * _.toInteger('3.2'); + * // => 3 + */ + var toInteger = Number; + + /** + * Converts `value` to a number. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to process. + * @returns {number} Returns the number. + * @example + * + * _.toNumber(3.2); + * // => 3.2 + * + * _.toNumber(Number.MIN_VALUE); + * // => 5e-324 + * + * _.toNumber(Infinity); + * // => Infinity + * + * _.toNumber('3.2'); + * // => 3.2 + */ + var toNumber = Number; + + /** + * Converts `value` to a string. An empty string is returned for `null` + * and `undefined` values. The sign of `-0` is preserved. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {string} Returns the converted string. + * @example + * + * _.toString(null); + * // => '' + * + * _.toString(-0); + * // => '-0' + * + * _.toString([1, 2, 3]); + * // => '1,2,3' + */ + function toString(value) { + if (typeof value == 'string') { + return value; + } + return value == null ? '' : (value + ''); + } + + /*------------------------------------------------------------------------*/ + + /** + * Assigns own enumerable string keyed properties of source objects to the + * destination object. Source objects are applied from left to right. + * Subsequent sources overwrite property assignments of previous sources. + * + * **Note:** This method mutates `object` and is loosely based on + * [`Object.assign`](https://mdn.io/Object/assign). + * + * @static + * @memberOf _ + * @since 0.10.0 + * @category Object + * @param {Object} object The destination object. + * @param {...Object} [sources] The source objects. + * @returns {Object} Returns `object`. + * @see _.assignIn + * @example + * + * function Foo() { + * this.a = 1; + * } + * + * function Bar() { + * this.c = 3; + * } + * + * Foo.prototype.b = 2; + * Bar.prototype.d = 4; + * + * _.assign({ 'a': 0 }, new Foo, new Bar); + * // => { 'a': 1, 'c': 3 } + */ + var assign = createAssigner(function(object, source) { + copyObject(source, nativeKeys(source), object); + }); + + /** + * This method is like `_.assign` except that it iterates over own and + * inherited source properties. + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @alias extend + * @category Object + * @param {Object} object The destination object. + * @param {...Object} [sources] The source objects. + * @returns {Object} Returns `object`. + * @see _.assign + * @example + * + * function Foo() { + * this.a = 1; + * } + * + * function Bar() { + * this.c = 3; + * } + * + * Foo.prototype.b = 2; + * Bar.prototype.d = 4; + * + * _.assignIn({ 'a': 0 }, new Foo, new Bar); + * // => { 'a': 1, 'b': 2, 'c': 3, 'd': 4 } + */ + var assignIn = createAssigner(function(object, source) { + copyObject(source, nativeKeysIn(source), object); + }); + + /** + * Creates an object that inherits from the `prototype` object. If a + * `properties` object is given, its own enumerable string keyed properties + * are assigned to the created object. + * + * @static + * @memberOf _ + * @since 2.3.0 + * @category Object + * @param {Object} prototype The object to inherit from. + * @param {Object} [properties] The properties to assign to the object. + * @returns {Object} Returns the new object. + * @example + * + * function Shape() { + * this.x = 0; + * this.y = 0; + * } + * + * function Circle() { + * Shape.call(this); + * } + * + * Circle.prototype = _.create(Shape.prototype, { + * 'constructor': Circle + * }); + * + * var circle = new Circle; + * circle instanceof Circle; + * // => true + * + * circle instanceof Shape; + * // => true + */ + function create(prototype, properties) { + var result = baseCreate(prototype); + return properties == null ? result : assign(result, properties); + } + + /** + * Assigns own and inherited enumerable string keyed properties of source + * objects to the destination object for all destination properties that + * resolve to `undefined`. Source objects are applied from left to right. + * Once a property is set, additional values of the same property are ignored. + * + * **Note:** This method mutates `object`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The destination object. + * @param {...Object} [sources] The source objects. + * @returns {Object} Returns `object`. + * @see _.defaultsDeep + * @example + * + * _.defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 }); + * // => { 'a': 1, 'b': 2 } + */ + var defaults = baseRest(function(object, sources) { + object = Object(object); + + var index = -1; + var length = sources.length; + var guard = length > 2 ? sources[2] : undefined; + + if (guard && isIterateeCall(sources[0], sources[1], guard)) { + length = 1; + } + + while (++index < length) { + var source = sources[index]; + var props = keysIn(source); + var propsIndex = -1; + var propsLength = props.length; + + while (++propsIndex < propsLength) { + var key = props[propsIndex]; + var value = object[key]; + + if (value === undefined || + (eq(value, objectProto[key]) && !hasOwnProperty.call(object, key))) { + object[key] = source[key]; + } + } + } + + return object; + }); + + /** + * Checks if `path` is a direct property of `object`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path to check. + * @returns {boolean} Returns `true` if `path` exists, else `false`. + * @example + * + * var object = { 'a': { 'b': 2 } }; + * var other = _.create({ 'a': _.create({ 'b': 2 }) }); + * + * _.has(object, 'a'); + * // => true + * + * _.has(object, 'a.b'); + * // => true + * + * _.has(object, ['a', 'b']); + * // => true + * + * _.has(other, 'a'); + * // => false + */ + function has(object, path) { + return object != null && hasOwnProperty.call(object, path); + } + + /** + * Creates an array of the own enumerable property names of `object`. + * + * **Note:** Non-object values are coerced to objects. See the + * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys) + * for more details. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names. + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.keys(new Foo); + * // => ['a', 'b'] (iteration order is not guaranteed) + * + * _.keys('hi'); + * // => ['0', '1'] + */ + var keys = nativeKeys; + + /** + * Creates an array of the own and inherited enumerable property names of `object`. + * + * **Note:** Non-object values are coerced to objects. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Object + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names. + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.keysIn(new Foo); + * // => ['a', 'b', 'c'] (iteration order is not guaranteed) + */ + var keysIn = nativeKeysIn; + + /** + * Creates an object composed of the picked `object` properties. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The source object. + * @param {...(string|string[])} [paths] The property paths to pick. + * @returns {Object} Returns the new object. + * @example + * + * var object = { 'a': 1, 'b': '2', 'c': 3 }; + * + * _.pick(object, ['a', 'c']); + * // => { 'a': 1, 'c': 3 } + */ + var pick = flatRest(function(object, paths) { + return object == null ? {} : basePick(object, paths); + }); + + /** + * This method is like `_.get` except that if the resolved value is a + * function it's invoked with the `this` binding of its parent object and + * its result is returned. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path of the property to resolve. + * @param {*} [defaultValue] The value returned for `undefined` resolved values. + * @returns {*} Returns the resolved value. + * @example + * + * var object = { 'a': [{ 'b': { 'c1': 3, 'c2': _.constant(4) } }] }; + * + * _.result(object, 'a[0].b.c1'); + * // => 3 + * + * _.result(object, 'a[0].b.c2'); + * // => 4 + * + * _.result(object, 'a[0].b.c3', 'default'); + * // => 'default' + * + * _.result(object, 'a[0].b.c3', _.constant('default')); + * // => 'default' + */ + function result(object, path, defaultValue) { + var value = object == null ? undefined : object[path]; + if (value === undefined) { + value = defaultValue; + } + return isFunction(value) ? value.call(object) : value; + } + + /** + * Creates an array of the own enumerable string keyed property values of `object`. + * + * **Note:** Non-object values are coerced to objects. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property values. + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.values(new Foo); + * // => [1, 2] (iteration order is not guaranteed) + * + * _.values('hi'); + * // => ['h', 'i'] + */ + function values(object) { + return object == null ? [] : baseValues(object, keys(object)); + } + + /*------------------------------------------------------------------------*/ + + /** + * Converts the characters "&", "<", ">", '"', and "'" in `string` to their + * corresponding HTML entities. + * + * **Note:** No other characters are escaped. To escape additional + * characters use a third-party library like [_he_](https://mths.be/he). + * + * Though the ">" character is escaped for symmetry, characters like + * ">" and "/" don't need escaping in HTML and have no special meaning + * unless they're part of a tag or unquoted attribute value. See + * [Mathias Bynens's article](https://mathiasbynens.be/notes/ambiguous-ampersands) + * (under "semi-related fun fact") for more details. + * + * When working with HTML you should always + * [quote attribute values](http://wonko.com/post/html-escaping) to reduce + * XSS vectors. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category String + * @param {string} [string=''] The string to escape. + * @returns {string} Returns the escaped string. + * @example + * + * _.escape('fred, barney, & pebbles'); + * // => 'fred, barney, & pebbles' + */ + function escape(string) { + string = toString(string); + return (string && reHasUnescapedHtml.test(string)) + ? string.replace(reUnescapedHtml, escapeHtmlChar) + : string; + } + + /*------------------------------------------------------------------------*/ + + /** + * This method returns the first argument it receives. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Util + * @param {*} value Any value. + * @returns {*} Returns `value`. + * @example + * + * var object = { 'a': 1 }; + * + * console.log(_.identity(object) === object); + * // => true + */ + function identity(value) { + return value; + } + + /** + * Creates a function that invokes `func` with the arguments of the created + * function. If `func` is a property name, the created function returns the + * property value for a given element. If `func` is an array or object, the + * created function returns `true` for elements that contain the equivalent + * source properties, otherwise it returns `false`. + * + * @static + * @since 4.0.0 + * @memberOf _ + * @category Util + * @param {*} [func=_.identity] The value to convert to a callback. + * @returns {Function} Returns the callback. + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': true }, + * { 'user': 'fred', 'age': 40, 'active': false } + * ]; + * + * // The `_.matches` iteratee shorthand. + * _.filter(users, _.iteratee({ 'user': 'barney', 'active': true })); + * // => [{ 'user': 'barney', 'age': 36, 'active': true }] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.filter(users, _.iteratee(['user', 'fred'])); + * // => [{ 'user': 'fred', 'age': 40 }] + * + * // The `_.property` iteratee shorthand. + * _.map(users, _.iteratee('user')); + * // => ['barney', 'fred'] + * + * // Create custom iteratee shorthands. + * _.iteratee = _.wrap(_.iteratee, function(iteratee, func) { + * return !_.isRegExp(func) ? iteratee(func) : function(string) { + * return func.test(string); + * }; + * }); + * + * _.filter(['abc', 'def'], /ef/); + * // => ['def'] + */ + var iteratee = baseIteratee; + + /** + * Creates a function that performs a partial deep comparison between a given + * object and `source`, returning `true` if the given object has equivalent + * property values, else `false`. + * + * **Note:** The created function is equivalent to `_.isMatch` with `source` + * partially applied. + * + * Partial comparisons will match empty array and empty object `source` + * values against any array or object value, respectively. See `_.isEqual` + * for a list of supported value comparisons. + * + * **Note:** Multiple values can be checked by combining several matchers + * using `_.overSome` + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Util + * @param {Object} source The object of property values to match. + * @returns {Function} Returns the new spec function. + * @example + * + * var objects = [ + * { 'a': 1, 'b': 2, 'c': 3 }, + * { 'a': 4, 'b': 5, 'c': 6 } + * ]; + * + * _.filter(objects, _.matches({ 'a': 4, 'c': 6 })); + * // => [{ 'a': 4, 'b': 5, 'c': 6 }] + * + * // Checking for several possible values + * _.filter(objects, _.overSome([_.matches({ 'a': 1 }), _.matches({ 'a': 4 })])); + * // => [{ 'a': 1, 'b': 2, 'c': 3 }, { 'a': 4, 'b': 5, 'c': 6 }] + */ + function matches(source) { + return baseMatches(assign({}, source)); + } + + /** + * Adds all own enumerable string keyed function properties of a source + * object to the destination object. If `object` is a function, then methods + * are added to its prototype as well. + * + * **Note:** Use `_.runInContext` to create a pristine `lodash` function to + * avoid conflicts caused by modifying the original. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Util + * @param {Function|Object} [object=lodash] The destination object. + * @param {Object} source The object of functions to add. + * @param {Object} [options={}] The options object. + * @param {boolean} [options.chain=true] Specify whether mixins are chainable. + * @returns {Function|Object} Returns `object`. + * @example + * + * function vowels(string) { + * return _.filter(string, function(v) { + * return /[aeiou]/i.test(v); + * }); + * } + * + * _.mixin({ 'vowels': vowels }); + * _.vowels('fred'); + * // => ['e'] + * + * _('fred').vowels().value(); + * // => ['e'] + * + * _.mixin({ 'vowels': vowels }, { 'chain': false }); + * _('fred').vowels(); + * // => ['e'] + */ + function mixin(object, source, options) { + var props = keys(source), + methodNames = baseFunctions(source, props); + + if (options == null && + !(isObject(source) && (methodNames.length || !props.length))) { + options = source; + source = object; + object = this; + methodNames = baseFunctions(source, keys(source)); + } + var chain = !(isObject(options) && 'chain' in options) || !!options.chain, + isFunc = isFunction(object); + + baseEach(methodNames, function(methodName) { + var func = source[methodName]; + object[methodName] = func; + if (isFunc) { + object.prototype[methodName] = function() { + var chainAll = this.__chain__; + if (chain || chainAll) { + var result = object(this.__wrapped__), + actions = result.__actions__ = copyArray(this.__actions__); + + actions.push({ 'func': func, 'args': arguments, 'thisArg': object }); + result.__chain__ = chainAll; + return result; + } + return func.apply(object, arrayPush([this.value()], arguments)); + }; + } + }); + + return object; + } + + /** + * Reverts the `_` variable to its previous value and returns a reference to + * the `lodash` function. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Util + * @returns {Function} Returns the `lodash` function. + * @example + * + * var lodash = _.noConflict(); + */ + function noConflict() { + if (root._ === this) { + root._ = oldDash; + } + return this; + } + + /** + * This method returns `undefined`. + * + * @static + * @memberOf _ + * @since 2.3.0 + * @category Util + * @example + * + * _.times(2, _.noop); + * // => [undefined, undefined] + */ + function noop() { + // No operation performed. + } + + /** + * Generates a unique ID. If `prefix` is given, the ID is appended to it. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Util + * @param {string} [prefix=''] The value to prefix the ID with. + * @returns {string} Returns the unique ID. + * @example + * + * _.uniqueId('contact_'); + * // => 'contact_104' + * + * _.uniqueId(); + * // => '105' + */ + function uniqueId(prefix) { + var id = ++idCounter; + return toString(prefix) + id; + } + + /*------------------------------------------------------------------------*/ + + /** + * Computes the maximum value of `array`. If `array` is empty or falsey, + * `undefined` is returned. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Math + * @param {Array} array The array to iterate over. + * @returns {*} Returns the maximum value. + * @example + * + * _.max([4, 2, 8, 6]); + * // => 8 + * + * _.max([]); + * // => undefined + */ + function max(array) { + return (array && array.length) + ? baseExtremum(array, identity, baseGt) + : undefined; + } + + /** + * Computes the minimum value of `array`. If `array` is empty or falsey, + * `undefined` is returned. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Math + * @param {Array} array The array to iterate over. + * @returns {*} Returns the minimum value. + * @example + * + * _.min([4, 2, 8, 6]); + * // => 2 + * + * _.min([]); + * // => undefined + */ + function min(array) { + return (array && array.length) + ? baseExtremum(array, identity, baseLt) + : undefined; + } + + /*------------------------------------------------------------------------*/ + + // Add methods that return wrapped values in chain sequences. + lodash.assignIn = assignIn; + lodash.before = before; + lodash.bind = bind; + lodash.chain = chain; + lodash.compact = compact; + lodash.concat = concat; + lodash.create = create; + lodash.defaults = defaults; + lodash.defer = defer; + lodash.delay = delay; + lodash.filter = filter; + lodash.flatten = flatten; + lodash.flattenDeep = flattenDeep; + lodash.iteratee = iteratee; + lodash.keys = keys; + lodash.map = map; + lodash.matches = matches; + lodash.mixin = mixin; + lodash.negate = negate; + lodash.once = once; + lodash.pick = pick; + lodash.slice = slice; + lodash.sortBy = sortBy; + lodash.tap = tap; + lodash.thru = thru; + lodash.toArray = toArray; + lodash.values = values; + + // Add aliases. + lodash.extend = assignIn; + + // Add methods to `lodash.prototype`. + mixin(lodash, lodash); + + /*------------------------------------------------------------------------*/ + + // Add methods that return unwrapped values in chain sequences. + lodash.clone = clone; + lodash.escape = escape; + lodash.every = every; + lodash.find = find; + lodash.forEach = forEach; + lodash.has = has; + lodash.head = head; + lodash.identity = identity; + lodash.indexOf = indexOf; + lodash.isArguments = isArguments; + lodash.isArray = isArray; + lodash.isBoolean = isBoolean; + lodash.isDate = isDate; + lodash.isEmpty = isEmpty; + lodash.isEqual = isEqual; + lodash.isFinite = isFinite; + lodash.isFunction = isFunction; + lodash.isNaN = isNaN; + lodash.isNull = isNull; + lodash.isNumber = isNumber; + lodash.isObject = isObject; + lodash.isRegExp = isRegExp; + lodash.isString = isString; + lodash.isUndefined = isUndefined; + lodash.last = last; + lodash.max = max; + lodash.min = min; + lodash.noConflict = noConflict; + lodash.noop = noop; + lodash.reduce = reduce; + lodash.result = result; + lodash.size = size; + lodash.some = some; + lodash.uniqueId = uniqueId; + + // Add aliases. + lodash.each = forEach; + lodash.first = head; + + mixin(lodash, (function() { + var source = {}; + baseForOwn(lodash, function(func, methodName) { + if (!hasOwnProperty.call(lodash.prototype, methodName)) { + source[methodName] = func; + } + }); + return source; + }()), { 'chain': false }); + + /*------------------------------------------------------------------------*/ + + /** + * The semantic version number. + * + * @static + * @memberOf _ + * @type {string} + */ + lodash.VERSION = VERSION; + + // Add `Array` methods to `lodash.prototype`. + baseEach(['pop', 'join', 'replace', 'reverse', 'split', 'push', 'shift', 'sort', 'splice', 'unshift'], function(methodName) { + var func = (/^(?:replace|split)$/.test(methodName) ? String.prototype : arrayProto)[methodName], + chainName = /^(?:push|sort|unshift)$/.test(methodName) ? 'tap' : 'thru', + retUnwrapped = /^(?:pop|join|replace|shift)$/.test(methodName); + + lodash.prototype[methodName] = function() { + var args = arguments; + if (retUnwrapped && !this.__chain__) { + var value = this.value(); + return func.apply(isArray(value) ? value : [], args); + } + return this[chainName](function(value) { + return func.apply(isArray(value) ? value : [], args); + }); + }; + }); + + // Add chain sequence methods to the `lodash` wrapper. + lodash.prototype.toJSON = lodash.prototype.valueOf = lodash.prototype.value = wrapperValue; + + /*--------------------------------------------------------------------------*/ + + // Some AMD build optimizers, like r.js, check for condition patterns like: + if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) { + // Expose Lodash on the global object to prevent errors when Lodash is + // loaded by a script tag in the presence of an AMD loader. + // See http://requirejs.org/docs/errors.html#mismatch for more details. + // Use `_.noConflict` to remove Lodash from the global object. + root._ = lodash; + + // Define as an anonymous module so, through path mapping, it can be + // referenced as the "underscore" module. + define(function() { + return lodash; + }); + } + // Check for `exports` after `define` in case a build optimizer adds it. + else if (freeModule) { + // Export for Node.js. + (freeModule.exports = lodash)._ = lodash; + // Export for CommonJS support. + freeExports._ = lodash; + } + else { + // Export to the global object. + root._ = lodash; + } +}.call(this)); diff --git a/node_modules/lodash/core.min.js b/node_modules/lodash/core.min.js new file mode 100644 index 0000000..e425e4d --- /dev/null +++ b/node_modules/lodash/core.min.js @@ -0,0 +1,29 @@ +/** + * @license + * Lodash (Custom Build) lodash.com/license | Underscore.js 1.8.3 underscorejs.org/LICENSE + * Build: `lodash core -o ./dist/lodash.core.js` + */ +;(function(){function n(n){return H(n)&&pn.call(n,"callee")&&!yn.call(n,"callee")}function t(n,t){return n.push.apply(n,t),n}function r(n){return function(t){return null==t?Z:t[n]}}function e(n,t,r,e,u){return u(n,function(n,u,o){r=e?(e=false,n):t(r,n,u,o)}),r}function u(n,t){return j(t,function(t){return n[t]})}function o(n){return n instanceof i?n:new i(n)}function i(n,t){this.__wrapped__=n,this.__actions__=[],this.__chain__=!!t}function c(n,t,r){if(typeof n!="function")throw new TypeError("Expected a function"); +return setTimeout(function(){n.apply(Z,r)},t)}function f(n,t){var r=true;return mn(n,function(n,e,u){return r=!!t(n,e,u)}),r}function a(n,t,r){for(var e=-1,u=n.length;++et}function b(n,t,r,e,u){return n===t||(null==n||null==t||!H(n)&&!H(t)?n!==n&&t!==t:y(n,t,r,e,b,u))}function y(n,t,r,e,u,o){var i=Nn(n),c=Nn(t),f=i?"[object Array]":hn.call(n),a=c?"[object Array]":hn.call(t),f="[object Arguments]"==f?"[object Object]":f,a="[object Arguments]"==a?"[object Object]":a,l="[object Object]"==f,c="[object Object]"==a,a=f==a;o||(o=[]);var p=An(o,function(t){return t[0]==n}),s=An(o,function(n){ +return n[0]==t});if(p&&s)return p[1]==t;if(o.push([n,t]),o.push([t,n]),a&&!l){if(i)r=T(n,t,r,e,u,o);else n:{switch(f){case"[object Boolean]":case"[object Date]":case"[object Number]":r=J(+n,+t);break n;case"[object Error]":r=n.name==t.name&&n.message==t.message;break n;case"[object RegExp]":case"[object String]":r=n==t+"";break n}r=false}return o.pop(),r}return 1&r||(i=l&&pn.call(n,"__wrapped__"),f=c&&pn.call(t,"__wrapped__"),!i&&!f)?!!a&&(r=B(n,t,r,e,u,o),o.pop(),r):(i=i?n.value():n,f=f?t.value():t, +r=u(i,f,r,e,o),o.pop(),r)}function g(n){return typeof n=="function"?n:null==n?X:(typeof n=="object"?d:r)(n)}function _(n,t){return nt&&(t=-t>u?0:u+t),r=r>u?u:r,0>r&&(r+=u),u=t>r?0:r-t>>>0,t>>>=0,r=Array(u);++ei))return false;var c=o.get(n),f=o.get(t);if(c&&f)return c==t&&f==n;for(var c=-1,f=true,a=2&r?[]:Z;++cr?jn(e+r,0):r:0,r=(r||0)-1;for(var u=t===t;++rarguments.length,mn); +}function G(n,t){var r;if(typeof t!="function")throw new TypeError("Expected a function");return n=Fn(n),function(){return 0<--n&&(r=t.apply(this,arguments)),1>=n&&(t=Z),r}}function J(n,t){return n===t||n!==n&&t!==t}function M(n){var t;return(t=null!=n)&&(t=n.length,t=typeof t=="number"&&-1=t),t&&!U(n)}function U(n){return!!V(n)&&(n=hn.call(n),"[object Function]"==n||"[object GeneratorFunction]"==n||"[object AsyncFunction]"==n||"[object Proxy]"==n)}function V(n){var t=typeof n; +return null!=n&&("object"==t||"function"==t)}function H(n){return null!=n&&typeof n=="object"}function K(n){return typeof n=="number"||H(n)&&"[object Number]"==hn.call(n)}function L(n){return typeof n=="string"||!Nn(n)&&H(n)&&"[object String]"==hn.call(n)}function Q(n){return typeof n=="string"?n:null==n?"":n+""}function W(n){return null==n?[]:u(n,Dn(n))}function X(n){return n}function Y(n,r,e){var u=Dn(r),o=h(r,u);null!=e||V(r)&&(o.length||!u.length)||(e=r,r=n,n=this,o=h(r,Dn(r)));var i=!(V(e)&&"chain"in e&&!e.chain),c=U(n); +return mn(o,function(e){var u=r[e];n[e]=u,c&&(n.prototype[e]=function(){var r=this.__chain__;if(i||r){var e=n(this.__wrapped__);return(e.__actions__=A(this.__actions__)).push({func:u,args:arguments,thisArg:n}),e.__chain__=r,e}return u.apply(n,t([this.value()],arguments))})}),n}var Z,nn=1/0,tn=/[&<>"']/g,rn=RegExp(tn.source),en=/^(?:0|[1-9]\d*)$/,un=typeof self=="object"&&self&&self.Object===Object&&self,on=typeof global=="object"&&global&&global.Object===Object&&global||un||Function("return this")(),cn=(un=typeof exports=="object"&&exports&&!exports.nodeType&&exports)&&typeof module=="object"&&module&&!module.nodeType&&module,fn=function(n){ +return function(t){return null==n?Z:n[t]}}({"&":"&","<":"<",">":">",'"':""","'":"'"}),an=Array.prototype,ln=Object.prototype,pn=ln.hasOwnProperty,sn=0,hn=ln.toString,vn=on._,bn=Object.create,yn=ln.propertyIsEnumerable,gn=on.isFinite,_n=function(n,t){return function(r){return n(t(r))}}(Object.keys,Object),jn=Math.max,dn=function(){function n(){}return function(t){return V(t)?bn?bn(t):(n.prototype=t,t=new n,n.prototype=Z,t):{}}}();i.prototype=dn(o.prototype),i.prototype.constructor=i; +var mn=function(n,t){return function(r,e){if(null==r)return r;if(!M(r))return n(r,e);for(var u=r.length,o=t?u:-1,i=Object(r);(t?o--:++or&&(r=jn(e+r,0));n:{for(t=g(t),e=n.length,r+=-1;++re||o&&c&&a||!u&&a||!i){r=1;break n}if(!o&&r { '4': 1, '6': 2 } + * + * // The `_.property` iteratee shorthand. + * _.countBy(['one', 'two', 'three'], 'length'); + * // => { '3': 2, '5': 1 } + */ +var countBy = createAggregator(function(result, value, key) { + if (hasOwnProperty.call(result, key)) { + ++result[key]; + } else { + baseAssignValue(result, key, 1); + } +}); + +module.exports = countBy; diff --git a/node_modules/lodash/create.js b/node_modules/lodash/create.js new file mode 100644 index 0000000..919edb8 --- /dev/null +++ b/node_modules/lodash/create.js @@ -0,0 +1,43 @@ +var baseAssign = require('./_baseAssign'), + baseCreate = require('./_baseCreate'); + +/** + * Creates an object that inherits from the `prototype` object. If a + * `properties` object is given, its own enumerable string keyed properties + * are assigned to the created object. + * + * @static + * @memberOf _ + * @since 2.3.0 + * @category Object + * @param {Object} prototype The object to inherit from. + * @param {Object} [properties] The properties to assign to the object. + * @returns {Object} Returns the new object. + * @example + * + * function Shape() { + * this.x = 0; + * this.y = 0; + * } + * + * function Circle() { + * Shape.call(this); + * } + * + * Circle.prototype = _.create(Shape.prototype, { + * 'constructor': Circle + * }); + * + * var circle = new Circle; + * circle instanceof Circle; + * // => true + * + * circle instanceof Shape; + * // => true + */ +function create(prototype, properties) { + var result = baseCreate(prototype); + return properties == null ? result : baseAssign(result, properties); +} + +module.exports = create; diff --git a/node_modules/lodash/curry.js b/node_modules/lodash/curry.js new file mode 100644 index 0000000..918db1a --- /dev/null +++ b/node_modules/lodash/curry.js @@ -0,0 +1,57 @@ +var createWrap = require('./_createWrap'); + +/** Used to compose bitmasks for function metadata. */ +var WRAP_CURRY_FLAG = 8; + +/** + * Creates a function that accepts arguments of `func` and either invokes + * `func` returning its result, if at least `arity` number of arguments have + * been provided, or returns a function that accepts the remaining `func` + * arguments, and so on. The arity of `func` may be specified if `func.length` + * is not sufficient. + * + * The `_.curry.placeholder` value, which defaults to `_` in monolithic builds, + * may be used as a placeholder for provided arguments. + * + * **Note:** This method doesn't set the "length" property of curried functions. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Function + * @param {Function} func The function to curry. + * @param {number} [arity=func.length] The arity of `func`. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Function} Returns the new curried function. + * @example + * + * var abc = function(a, b, c) { + * return [a, b, c]; + * }; + * + * var curried = _.curry(abc); + * + * curried(1)(2)(3); + * // => [1, 2, 3] + * + * curried(1, 2)(3); + * // => [1, 2, 3] + * + * curried(1, 2, 3); + * // => [1, 2, 3] + * + * // Curried with placeholders. + * curried(1)(_, 3)(2); + * // => [1, 2, 3] + */ +function curry(func, arity, guard) { + arity = guard ? undefined : arity; + var result = createWrap(func, WRAP_CURRY_FLAG, undefined, undefined, undefined, undefined, undefined, arity); + result.placeholder = curry.placeholder; + return result; +} + +// Assign default placeholders. +curry.placeholder = {}; + +module.exports = curry; diff --git a/node_modules/lodash/curryRight.js b/node_modules/lodash/curryRight.js new file mode 100644 index 0000000..c85b6f3 --- /dev/null +++ b/node_modules/lodash/curryRight.js @@ -0,0 +1,54 @@ +var createWrap = require('./_createWrap'); + +/** Used to compose bitmasks for function metadata. */ +var WRAP_CURRY_RIGHT_FLAG = 16; + +/** + * This method is like `_.curry` except that arguments are applied to `func` + * in the manner of `_.partialRight` instead of `_.partial`. + * + * The `_.curryRight.placeholder` value, which defaults to `_` in monolithic + * builds, may be used as a placeholder for provided arguments. + * + * **Note:** This method doesn't set the "length" property of curried functions. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Function + * @param {Function} func The function to curry. + * @param {number} [arity=func.length] The arity of `func`. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Function} Returns the new curried function. + * @example + * + * var abc = function(a, b, c) { + * return [a, b, c]; + * }; + * + * var curried = _.curryRight(abc); + * + * curried(3)(2)(1); + * // => [1, 2, 3] + * + * curried(2, 3)(1); + * // => [1, 2, 3] + * + * curried(1, 2, 3); + * // => [1, 2, 3] + * + * // Curried with placeholders. + * curried(3)(1, _)(2); + * // => [1, 2, 3] + */ +function curryRight(func, arity, guard) { + arity = guard ? undefined : arity; + var result = createWrap(func, WRAP_CURRY_RIGHT_FLAG, undefined, undefined, undefined, undefined, undefined, arity); + result.placeholder = curryRight.placeholder; + return result; +} + +// Assign default placeholders. +curryRight.placeholder = {}; + +module.exports = curryRight; diff --git a/node_modules/lodash/date.js b/node_modules/lodash/date.js new file mode 100644 index 0000000..cbf5b41 --- /dev/null +++ b/node_modules/lodash/date.js @@ -0,0 +1,3 @@ +module.exports = { + 'now': require('./now') +}; diff --git a/node_modules/lodash/debounce.js b/node_modules/lodash/debounce.js new file mode 100644 index 0000000..8f751d5 --- /dev/null +++ b/node_modules/lodash/debounce.js @@ -0,0 +1,191 @@ +var isObject = require('./isObject'), + now = require('./now'), + toNumber = require('./toNumber'); + +/** Error message constants. */ +var FUNC_ERROR_TEXT = 'Expected a function'; + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeMax = Math.max, + nativeMin = Math.min; + +/** + * Creates a debounced function that delays invoking `func` until after `wait` + * milliseconds have elapsed since the last time the debounced function was + * invoked. The debounced function comes with a `cancel` method to cancel + * delayed `func` invocations and a `flush` method to immediately invoke them. + * Provide `options` to indicate whether `func` should be invoked on the + * leading and/or trailing edge of the `wait` timeout. The `func` is invoked + * with the last arguments provided to the debounced function. Subsequent + * calls to the debounced function return the result of the last `func` + * invocation. + * + * **Note:** If `leading` and `trailing` options are `true`, `func` is + * invoked on the trailing edge of the timeout only if the debounced function + * is invoked more than once during the `wait` timeout. + * + * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred + * until to the next tick, similar to `setTimeout` with a timeout of `0`. + * + * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/) + * for details over the differences between `_.debounce` and `_.throttle`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {Function} func The function to debounce. + * @param {number} [wait=0] The number of milliseconds to delay. + * @param {Object} [options={}] The options object. + * @param {boolean} [options.leading=false] + * Specify invoking on the leading edge of the timeout. + * @param {number} [options.maxWait] + * The maximum time `func` is allowed to be delayed before it's invoked. + * @param {boolean} [options.trailing=true] + * Specify invoking on the trailing edge of the timeout. + * @returns {Function} Returns the new debounced function. + * @example + * + * // Avoid costly calculations while the window size is in flux. + * jQuery(window).on('resize', _.debounce(calculateLayout, 150)); + * + * // Invoke `sendMail` when clicked, debouncing subsequent calls. + * jQuery(element).on('click', _.debounce(sendMail, 300, { + * 'leading': true, + * 'trailing': false + * })); + * + * // Ensure `batchLog` is invoked once after 1 second of debounced calls. + * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 }); + * var source = new EventSource('/stream'); + * jQuery(source).on('message', debounced); + * + * // Cancel the trailing debounced invocation. + * jQuery(window).on('popstate', debounced.cancel); + */ +function debounce(func, wait, options) { + var lastArgs, + lastThis, + maxWait, + result, + timerId, + lastCallTime, + lastInvokeTime = 0, + leading = false, + maxing = false, + trailing = true; + + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + wait = toNumber(wait) || 0; + if (isObject(options)) { + leading = !!options.leading; + maxing = 'maxWait' in options; + maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait; + trailing = 'trailing' in options ? !!options.trailing : trailing; + } + + function invokeFunc(time) { + var args = lastArgs, + thisArg = lastThis; + + lastArgs = lastThis = undefined; + lastInvokeTime = time; + result = func.apply(thisArg, args); + return result; + } + + function leadingEdge(time) { + // Reset any `maxWait` timer. + lastInvokeTime = time; + // Start the timer for the trailing edge. + timerId = setTimeout(timerExpired, wait); + // Invoke the leading edge. + return leading ? invokeFunc(time) : result; + } + + function remainingWait(time) { + var timeSinceLastCall = time - lastCallTime, + timeSinceLastInvoke = time - lastInvokeTime, + timeWaiting = wait - timeSinceLastCall; + + return maxing + ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke) + : timeWaiting; + } + + function shouldInvoke(time) { + var timeSinceLastCall = time - lastCallTime, + timeSinceLastInvoke = time - lastInvokeTime; + + // Either this is the first call, activity has stopped and we're at the + // trailing edge, the system time has gone backwards and we're treating + // it as the trailing edge, or we've hit the `maxWait` limit. + return (lastCallTime === undefined || (timeSinceLastCall >= wait) || + (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait)); + } + + function timerExpired() { + var time = now(); + if (shouldInvoke(time)) { + return trailingEdge(time); + } + // Restart the timer. + timerId = setTimeout(timerExpired, remainingWait(time)); + } + + function trailingEdge(time) { + timerId = undefined; + + // Only invoke if we have `lastArgs` which means `func` has been + // debounced at least once. + if (trailing && lastArgs) { + return invokeFunc(time); + } + lastArgs = lastThis = undefined; + return result; + } + + function cancel() { + if (timerId !== undefined) { + clearTimeout(timerId); + } + lastInvokeTime = 0; + lastArgs = lastCallTime = lastThis = timerId = undefined; + } + + function flush() { + return timerId === undefined ? result : trailingEdge(now()); + } + + function debounced() { + var time = now(), + isInvoking = shouldInvoke(time); + + lastArgs = arguments; + lastThis = this; + lastCallTime = time; + + if (isInvoking) { + if (timerId === undefined) { + return leadingEdge(lastCallTime); + } + if (maxing) { + // Handle invocations in a tight loop. + clearTimeout(timerId); + timerId = setTimeout(timerExpired, wait); + return invokeFunc(lastCallTime); + } + } + if (timerId === undefined) { + timerId = setTimeout(timerExpired, wait); + } + return result; + } + debounced.cancel = cancel; + debounced.flush = flush; + return debounced; +} + +module.exports = debounce; diff --git a/node_modules/lodash/deburr.js b/node_modules/lodash/deburr.js new file mode 100644 index 0000000..f85e314 --- /dev/null +++ b/node_modules/lodash/deburr.js @@ -0,0 +1,45 @@ +var deburrLetter = require('./_deburrLetter'), + toString = require('./toString'); + +/** Used to match Latin Unicode letters (excluding mathematical operators). */ +var reLatin = /[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g; + +/** Used to compose unicode character classes. */ +var rsComboMarksRange = '\\u0300-\\u036f', + reComboHalfMarksRange = '\\ufe20-\\ufe2f', + rsComboSymbolsRange = '\\u20d0-\\u20ff', + rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange; + +/** Used to compose unicode capture groups. */ +var rsCombo = '[' + rsComboRange + ']'; + +/** + * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and + * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols). + */ +var reComboMark = RegExp(rsCombo, 'g'); + +/** + * Deburrs `string` by converting + * [Latin-1 Supplement](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table) + * and [Latin Extended-A](https://en.wikipedia.org/wiki/Latin_Extended-A) + * letters to basic Latin letters and removing + * [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to deburr. + * @returns {string} Returns the deburred string. + * @example + * + * _.deburr('déjà vu'); + * // => 'deja vu' + */ +function deburr(string) { + string = toString(string); + return string && string.replace(reLatin, deburrLetter).replace(reComboMark, ''); +} + +module.exports = deburr; diff --git a/node_modules/lodash/defaultTo.js b/node_modules/lodash/defaultTo.js new file mode 100644 index 0000000..5b33359 --- /dev/null +++ b/node_modules/lodash/defaultTo.js @@ -0,0 +1,25 @@ +/** + * Checks `value` to determine whether a default value should be returned in + * its place. The `defaultValue` is returned if `value` is `NaN`, `null`, + * or `undefined`. + * + * @static + * @memberOf _ + * @since 4.14.0 + * @category Util + * @param {*} value The value to check. + * @param {*} defaultValue The default value. + * @returns {*} Returns the resolved value. + * @example + * + * _.defaultTo(1, 10); + * // => 1 + * + * _.defaultTo(undefined, 10); + * // => 10 + */ +function defaultTo(value, defaultValue) { + return (value == null || value !== value) ? defaultValue : value; +} + +module.exports = defaultTo; diff --git a/node_modules/lodash/defaults.js b/node_modules/lodash/defaults.js new file mode 100644 index 0000000..c74df04 --- /dev/null +++ b/node_modules/lodash/defaults.js @@ -0,0 +1,64 @@ +var baseRest = require('./_baseRest'), + eq = require('./eq'), + isIterateeCall = require('./_isIterateeCall'), + keysIn = require('./keysIn'); + +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var hasOwnProperty = objectProto.hasOwnProperty; + +/** + * Assigns own and inherited enumerable string keyed properties of source + * objects to the destination object for all destination properties that + * resolve to `undefined`. Source objects are applied from left to right. + * Once a property is set, additional values of the same property are ignored. + * + * **Note:** This method mutates `object`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The destination object. + * @param {...Object} [sources] The source objects. + * @returns {Object} Returns `object`. + * @see _.defaultsDeep + * @example + * + * _.defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 }); + * // => { 'a': 1, 'b': 2 } + */ +var defaults = baseRest(function(object, sources) { + object = Object(object); + + var index = -1; + var length = sources.length; + var guard = length > 2 ? sources[2] : undefined; + + if (guard && isIterateeCall(sources[0], sources[1], guard)) { + length = 1; + } + + while (++index < length) { + var source = sources[index]; + var props = keysIn(source); + var propsIndex = -1; + var propsLength = props.length; + + while (++propsIndex < propsLength) { + var key = props[propsIndex]; + var value = object[key]; + + if (value === undefined || + (eq(value, objectProto[key]) && !hasOwnProperty.call(object, key))) { + object[key] = source[key]; + } + } + } + + return object; +}); + +module.exports = defaults; diff --git a/node_modules/lodash/defaultsDeep.js b/node_modules/lodash/defaultsDeep.js new file mode 100644 index 0000000..9b5fa3e --- /dev/null +++ b/node_modules/lodash/defaultsDeep.js @@ -0,0 +1,30 @@ +var apply = require('./_apply'), + baseRest = require('./_baseRest'), + customDefaultsMerge = require('./_customDefaultsMerge'), + mergeWith = require('./mergeWith'); + +/** + * This method is like `_.defaults` except that it recursively assigns + * default properties. + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 3.10.0 + * @category Object + * @param {Object} object The destination object. + * @param {...Object} [sources] The source objects. + * @returns {Object} Returns `object`. + * @see _.defaults + * @example + * + * _.defaultsDeep({ 'a': { 'b': 2 } }, { 'a': { 'b': 1, 'c': 3 } }); + * // => { 'a': { 'b': 2, 'c': 3 } } + */ +var defaultsDeep = baseRest(function(args) { + args.push(undefined, customDefaultsMerge); + return apply(mergeWith, undefined, args); +}); + +module.exports = defaultsDeep; diff --git a/node_modules/lodash/defer.js b/node_modules/lodash/defer.js new file mode 100644 index 0000000..f6d6c6f --- /dev/null +++ b/node_modules/lodash/defer.js @@ -0,0 +1,26 @@ +var baseDelay = require('./_baseDelay'), + baseRest = require('./_baseRest'); + +/** + * Defers invoking the `func` until the current call stack has cleared. Any + * additional arguments are provided to `func` when it's invoked. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {Function} func The function to defer. + * @param {...*} [args] The arguments to invoke `func` with. + * @returns {number} Returns the timer id. + * @example + * + * _.defer(function(text) { + * console.log(text); + * }, 'deferred'); + * // => Logs 'deferred' after one millisecond. + */ +var defer = baseRest(function(func, args) { + return baseDelay(func, 1, args); +}); + +module.exports = defer; diff --git a/node_modules/lodash/delay.js b/node_modules/lodash/delay.js new file mode 100644 index 0000000..bd55479 --- /dev/null +++ b/node_modules/lodash/delay.js @@ -0,0 +1,28 @@ +var baseDelay = require('./_baseDelay'), + baseRest = require('./_baseRest'), + toNumber = require('./toNumber'); + +/** + * Invokes `func` after `wait` milliseconds. Any additional arguments are + * provided to `func` when it's invoked. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {Function} func The function to delay. + * @param {number} wait The number of milliseconds to delay invocation. + * @param {...*} [args] The arguments to invoke `func` with. + * @returns {number} Returns the timer id. + * @example + * + * _.delay(function(text) { + * console.log(text); + * }, 1000, 'later'); + * // => Logs 'later' after one second. + */ +var delay = baseRest(function(func, wait, args) { + return baseDelay(func, toNumber(wait) || 0, args); +}); + +module.exports = delay; diff --git a/node_modules/lodash/difference.js b/node_modules/lodash/difference.js new file mode 100644 index 0000000..fa28bb3 --- /dev/null +++ b/node_modules/lodash/difference.js @@ -0,0 +1,33 @@ +var baseDifference = require('./_baseDifference'), + baseFlatten = require('./_baseFlatten'), + baseRest = require('./_baseRest'), + isArrayLikeObject = require('./isArrayLikeObject'); + +/** + * Creates an array of `array` values not included in the other given arrays + * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. The order and references of result values are + * determined by the first array. + * + * **Note:** Unlike `_.pullAll`, this method returns a new array. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {...Array} [values] The values to exclude. + * @returns {Array} Returns the new array of filtered values. + * @see _.without, _.xor + * @example + * + * _.difference([2, 1], [2, 3]); + * // => [1] + */ +var difference = baseRest(function(array, values) { + return isArrayLikeObject(array) + ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true)) + : []; +}); + +module.exports = difference; diff --git a/node_modules/lodash/differenceBy.js b/node_modules/lodash/differenceBy.js new file mode 100644 index 0000000..2cd63e7 --- /dev/null +++ b/node_modules/lodash/differenceBy.js @@ -0,0 +1,44 @@ +var baseDifference = require('./_baseDifference'), + baseFlatten = require('./_baseFlatten'), + baseIteratee = require('./_baseIteratee'), + baseRest = require('./_baseRest'), + isArrayLikeObject = require('./isArrayLikeObject'), + last = require('./last'); + +/** + * This method is like `_.difference` except that it accepts `iteratee` which + * is invoked for each element of `array` and `values` to generate the criterion + * by which they're compared. The order and references of result values are + * determined by the first array. The iteratee is invoked with one argument: + * (value). + * + * **Note:** Unlike `_.pullAllBy`, this method returns a new array. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {...Array} [values] The values to exclude. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {Array} Returns the new array of filtered values. + * @example + * + * _.differenceBy([2.1, 1.2], [2.3, 3.4], Math.floor); + * // => [1.2] + * + * // The `_.property` iteratee shorthand. + * _.differenceBy([{ 'x': 2 }, { 'x': 1 }], [{ 'x': 1 }], 'x'); + * // => [{ 'x': 2 }] + */ +var differenceBy = baseRest(function(array, values) { + var iteratee = last(values); + if (isArrayLikeObject(iteratee)) { + iteratee = undefined; + } + return isArrayLikeObject(array) + ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true), baseIteratee(iteratee, 2)) + : []; +}); + +module.exports = differenceBy; diff --git a/node_modules/lodash/differenceWith.js b/node_modules/lodash/differenceWith.js new file mode 100644 index 0000000..c0233f4 --- /dev/null +++ b/node_modules/lodash/differenceWith.js @@ -0,0 +1,40 @@ +var baseDifference = require('./_baseDifference'), + baseFlatten = require('./_baseFlatten'), + baseRest = require('./_baseRest'), + isArrayLikeObject = require('./isArrayLikeObject'), + last = require('./last'); + +/** + * This method is like `_.difference` except that it accepts `comparator` + * which is invoked to compare elements of `array` to `values`. The order and + * references of result values are determined by the first array. The comparator + * is invoked with two arguments: (arrVal, othVal). + * + * **Note:** Unlike `_.pullAllWith`, this method returns a new array. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {...Array} [values] The values to exclude. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new array of filtered values. + * @example + * + * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]; + * + * _.differenceWith(objects, [{ 'x': 1, 'y': 2 }], _.isEqual); + * // => [{ 'x': 2, 'y': 1 }] + */ +var differenceWith = baseRest(function(array, values) { + var comparator = last(values); + if (isArrayLikeObject(comparator)) { + comparator = undefined; + } + return isArrayLikeObject(array) + ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true), undefined, comparator) + : []; +}); + +module.exports = differenceWith; diff --git a/node_modules/lodash/divide.js b/node_modules/lodash/divide.js new file mode 100644 index 0000000..8cae0cd --- /dev/null +++ b/node_modules/lodash/divide.js @@ -0,0 +1,22 @@ +var createMathOperation = require('./_createMathOperation'); + +/** + * Divide two numbers. + * + * @static + * @memberOf _ + * @since 4.7.0 + * @category Math + * @param {number} dividend The first number in a division. + * @param {number} divisor The second number in a division. + * @returns {number} Returns the quotient. + * @example + * + * _.divide(6, 4); + * // => 1.5 + */ +var divide = createMathOperation(function(dividend, divisor) { + return dividend / divisor; +}, 1); + +module.exports = divide; diff --git a/node_modules/lodash/drop.js b/node_modules/lodash/drop.js new file mode 100644 index 0000000..d5c3cba --- /dev/null +++ b/node_modules/lodash/drop.js @@ -0,0 +1,38 @@ +var baseSlice = require('./_baseSlice'), + toInteger = require('./toInteger'); + +/** + * Creates a slice of `array` with `n` elements dropped from the beginning. + * + * @static + * @memberOf _ + * @since 0.5.0 + * @category Array + * @param {Array} array The array to query. + * @param {number} [n=1] The number of elements to drop. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Array} Returns the slice of `array`. + * @example + * + * _.drop([1, 2, 3]); + * // => [2, 3] + * + * _.drop([1, 2, 3], 2); + * // => [3] + * + * _.drop([1, 2, 3], 5); + * // => [] + * + * _.drop([1, 2, 3], 0); + * // => [1, 2, 3] + */ +function drop(array, n, guard) { + var length = array == null ? 0 : array.length; + if (!length) { + return []; + } + n = (guard || n === undefined) ? 1 : toInteger(n); + return baseSlice(array, n < 0 ? 0 : n, length); +} + +module.exports = drop; diff --git a/node_modules/lodash/dropRight.js b/node_modules/lodash/dropRight.js new file mode 100644 index 0000000..441fe99 --- /dev/null +++ b/node_modules/lodash/dropRight.js @@ -0,0 +1,39 @@ +var baseSlice = require('./_baseSlice'), + toInteger = require('./toInteger'); + +/** + * Creates a slice of `array` with `n` elements dropped from the end. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to query. + * @param {number} [n=1] The number of elements to drop. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Array} Returns the slice of `array`. + * @example + * + * _.dropRight([1, 2, 3]); + * // => [1, 2] + * + * _.dropRight([1, 2, 3], 2); + * // => [1] + * + * _.dropRight([1, 2, 3], 5); + * // => [] + * + * _.dropRight([1, 2, 3], 0); + * // => [1, 2, 3] + */ +function dropRight(array, n, guard) { + var length = array == null ? 0 : array.length; + if (!length) { + return []; + } + n = (guard || n === undefined) ? 1 : toInteger(n); + n = length - n; + return baseSlice(array, 0, n < 0 ? 0 : n); +} + +module.exports = dropRight; diff --git a/node_modules/lodash/dropRightWhile.js b/node_modules/lodash/dropRightWhile.js new file mode 100644 index 0000000..9ad36a0 --- /dev/null +++ b/node_modules/lodash/dropRightWhile.js @@ -0,0 +1,45 @@ +var baseIteratee = require('./_baseIteratee'), + baseWhile = require('./_baseWhile'); + +/** + * Creates a slice of `array` excluding elements dropped from the end. + * Elements are dropped until `predicate` returns falsey. The predicate is + * invoked with three arguments: (value, index, array). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to query. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the slice of `array`. + * @example + * + * var users = [ + * { 'user': 'barney', 'active': true }, + * { 'user': 'fred', 'active': false }, + * { 'user': 'pebbles', 'active': false } + * ]; + * + * _.dropRightWhile(users, function(o) { return !o.active; }); + * // => objects for ['barney'] + * + * // The `_.matches` iteratee shorthand. + * _.dropRightWhile(users, { 'user': 'pebbles', 'active': false }); + * // => objects for ['barney', 'fred'] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.dropRightWhile(users, ['active', false]); + * // => objects for ['barney'] + * + * // The `_.property` iteratee shorthand. + * _.dropRightWhile(users, 'active'); + * // => objects for ['barney', 'fred', 'pebbles'] + */ +function dropRightWhile(array, predicate) { + return (array && array.length) + ? baseWhile(array, baseIteratee(predicate, 3), true, true) + : []; +} + +module.exports = dropRightWhile; diff --git a/node_modules/lodash/dropWhile.js b/node_modules/lodash/dropWhile.js new file mode 100644 index 0000000..903ef56 --- /dev/null +++ b/node_modules/lodash/dropWhile.js @@ -0,0 +1,45 @@ +var baseIteratee = require('./_baseIteratee'), + baseWhile = require('./_baseWhile'); + +/** + * Creates a slice of `array` excluding elements dropped from the beginning. + * Elements are dropped until `predicate` returns falsey. The predicate is + * invoked with three arguments: (value, index, array). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to query. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the slice of `array`. + * @example + * + * var users = [ + * { 'user': 'barney', 'active': false }, + * { 'user': 'fred', 'active': false }, + * { 'user': 'pebbles', 'active': true } + * ]; + * + * _.dropWhile(users, function(o) { return !o.active; }); + * // => objects for ['pebbles'] + * + * // The `_.matches` iteratee shorthand. + * _.dropWhile(users, { 'user': 'barney', 'active': false }); + * // => objects for ['fred', 'pebbles'] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.dropWhile(users, ['active', false]); + * // => objects for ['pebbles'] + * + * // The `_.property` iteratee shorthand. + * _.dropWhile(users, 'active'); + * // => objects for ['barney', 'fred', 'pebbles'] + */ +function dropWhile(array, predicate) { + return (array && array.length) + ? baseWhile(array, baseIteratee(predicate, 3), true) + : []; +} + +module.exports = dropWhile; diff --git a/node_modules/lodash/each.js b/node_modules/lodash/each.js new file mode 100644 index 0000000..8800f42 --- /dev/null +++ b/node_modules/lodash/each.js @@ -0,0 +1 @@ +module.exports = require('./forEach'); diff --git a/node_modules/lodash/eachRight.js b/node_modules/lodash/eachRight.js new file mode 100644 index 0000000..3252b2a --- /dev/null +++ b/node_modules/lodash/eachRight.js @@ -0,0 +1 @@ +module.exports = require('./forEachRight'); diff --git a/node_modules/lodash/endsWith.js b/node_modules/lodash/endsWith.js new file mode 100644 index 0000000..76fc866 --- /dev/null +++ b/node_modules/lodash/endsWith.js @@ -0,0 +1,43 @@ +var baseClamp = require('./_baseClamp'), + baseToString = require('./_baseToString'), + toInteger = require('./toInteger'), + toString = require('./toString'); + +/** + * Checks if `string` ends with the given target string. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to inspect. + * @param {string} [target] The string to search for. + * @param {number} [position=string.length] The position to search up to. + * @returns {boolean} Returns `true` if `string` ends with `target`, + * else `false`. + * @example + * + * _.endsWith('abc', 'c'); + * // => true + * + * _.endsWith('abc', 'b'); + * // => false + * + * _.endsWith('abc', 'b', 2); + * // => true + */ +function endsWith(string, target, position) { + string = toString(string); + target = baseToString(target); + + var length = string.length; + position = position === undefined + ? length + : baseClamp(toInteger(position), 0, length); + + var end = position; + position -= target.length; + return position >= 0 && string.slice(position, end) == target; +} + +module.exports = endsWith; diff --git a/node_modules/lodash/entries.js b/node_modules/lodash/entries.js new file mode 100644 index 0000000..7a88df2 --- /dev/null +++ b/node_modules/lodash/entries.js @@ -0,0 +1 @@ +module.exports = require('./toPairs'); diff --git a/node_modules/lodash/entriesIn.js b/node_modules/lodash/entriesIn.js new file mode 100644 index 0000000..f6c6331 --- /dev/null +++ b/node_modules/lodash/entriesIn.js @@ -0,0 +1 @@ +module.exports = require('./toPairsIn'); diff --git a/node_modules/lodash/eq.js b/node_modules/lodash/eq.js new file mode 100644 index 0000000..a940688 --- /dev/null +++ b/node_modules/lodash/eq.js @@ -0,0 +1,37 @@ +/** + * Performs a + * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * comparison between two values to determine if they are equivalent. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if the values are equivalent, else `false`. + * @example + * + * var object = { 'a': 1 }; + * var other = { 'a': 1 }; + * + * _.eq(object, object); + * // => true + * + * _.eq(object, other); + * // => false + * + * _.eq('a', 'a'); + * // => true + * + * _.eq('a', Object('a')); + * // => false + * + * _.eq(NaN, NaN); + * // => true + */ +function eq(value, other) { + return value === other || (value !== value && other !== other); +} + +module.exports = eq; diff --git a/node_modules/lodash/escape.js b/node_modules/lodash/escape.js new file mode 100644 index 0000000..9247e00 --- /dev/null +++ b/node_modules/lodash/escape.js @@ -0,0 +1,43 @@ +var escapeHtmlChar = require('./_escapeHtmlChar'), + toString = require('./toString'); + +/** Used to match HTML entities and HTML characters. */ +var reUnescapedHtml = /[&<>"']/g, + reHasUnescapedHtml = RegExp(reUnescapedHtml.source); + +/** + * Converts the characters "&", "<", ">", '"', and "'" in `string` to their + * corresponding HTML entities. + * + * **Note:** No other characters are escaped. To escape additional + * characters use a third-party library like [_he_](https://mths.be/he). + * + * Though the ">" character is escaped for symmetry, characters like + * ">" and "/" don't need escaping in HTML and have no special meaning + * unless they're part of a tag or unquoted attribute value. See + * [Mathias Bynens's article](https://mathiasbynens.be/notes/ambiguous-ampersands) + * (under "semi-related fun fact") for more details. + * + * When working with HTML you should always + * [quote attribute values](http://wonko.com/post/html-escaping) to reduce + * XSS vectors. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category String + * @param {string} [string=''] The string to escape. + * @returns {string} Returns the escaped string. + * @example + * + * _.escape('fred, barney, & pebbles'); + * // => 'fred, barney, & pebbles' + */ +function escape(string) { + string = toString(string); + return (string && reHasUnescapedHtml.test(string)) + ? string.replace(reUnescapedHtml, escapeHtmlChar) + : string; +} + +module.exports = escape; diff --git a/node_modules/lodash/escapeRegExp.js b/node_modules/lodash/escapeRegExp.js new file mode 100644 index 0000000..0a58c69 --- /dev/null +++ b/node_modules/lodash/escapeRegExp.js @@ -0,0 +1,32 @@ +var toString = require('./toString'); + +/** + * Used to match `RegExp` + * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns). + */ +var reRegExpChar = /[\\^$.*+?()[\]{}|]/g, + reHasRegExpChar = RegExp(reRegExpChar.source); + +/** + * Escapes the `RegExp` special characters "^", "$", "\", ".", "*", "+", + * "?", "(", ")", "[", "]", "{", "}", and "|" in `string`. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to escape. + * @returns {string} Returns the escaped string. + * @example + * + * _.escapeRegExp('[lodash](https://lodash.com/)'); + * // => '\[lodash\]\(https://lodash\.com/\)' + */ +function escapeRegExp(string) { + string = toString(string); + return (string && reHasRegExpChar.test(string)) + ? string.replace(reRegExpChar, '\\$&') + : string; +} + +module.exports = escapeRegExp; diff --git a/node_modules/lodash/every.js b/node_modules/lodash/every.js new file mode 100644 index 0000000..25080da --- /dev/null +++ b/node_modules/lodash/every.js @@ -0,0 +1,56 @@ +var arrayEvery = require('./_arrayEvery'), + baseEvery = require('./_baseEvery'), + baseIteratee = require('./_baseIteratee'), + isArray = require('./isArray'), + isIterateeCall = require('./_isIterateeCall'); + +/** + * Checks if `predicate` returns truthy for **all** elements of `collection`. + * Iteration is stopped once `predicate` returns falsey. The predicate is + * invoked with three arguments: (value, index|key, collection). + * + * **Note:** This method returns `true` for + * [empty collections](https://en.wikipedia.org/wiki/Empty_set) because + * [everything is true](https://en.wikipedia.org/wiki/Vacuous_truth) of + * elements of empty collections. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {boolean} Returns `true` if all elements pass the predicate check, + * else `false`. + * @example + * + * _.every([true, 1, null, 'yes'], Boolean); + * // => false + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': false }, + * { 'user': 'fred', 'age': 40, 'active': false } + * ]; + * + * // The `_.matches` iteratee shorthand. + * _.every(users, { 'user': 'barney', 'active': false }); + * // => false + * + * // The `_.matchesProperty` iteratee shorthand. + * _.every(users, ['active', false]); + * // => true + * + * // The `_.property` iteratee shorthand. + * _.every(users, 'active'); + * // => false + */ +function every(collection, predicate, guard) { + var func = isArray(collection) ? arrayEvery : baseEvery; + if (guard && isIterateeCall(collection, predicate, guard)) { + predicate = undefined; + } + return func(collection, baseIteratee(predicate, 3)); +} + +module.exports = every; diff --git a/node_modules/lodash/extend.js b/node_modules/lodash/extend.js new file mode 100644 index 0000000..e00166c --- /dev/null +++ b/node_modules/lodash/extend.js @@ -0,0 +1 @@ +module.exports = require('./assignIn'); diff --git a/node_modules/lodash/extendWith.js b/node_modules/lodash/extendWith.js new file mode 100644 index 0000000..dbdcb3b --- /dev/null +++ b/node_modules/lodash/extendWith.js @@ -0,0 +1 @@ +module.exports = require('./assignInWith'); diff --git a/node_modules/lodash/fill.js b/node_modules/lodash/fill.js new file mode 100644 index 0000000..ae13aa1 --- /dev/null +++ b/node_modules/lodash/fill.js @@ -0,0 +1,45 @@ +var baseFill = require('./_baseFill'), + isIterateeCall = require('./_isIterateeCall'); + +/** + * Fills elements of `array` with `value` from `start` up to, but not + * including, `end`. + * + * **Note:** This method mutates `array`. + * + * @static + * @memberOf _ + * @since 3.2.0 + * @category Array + * @param {Array} array The array to fill. + * @param {*} value The value to fill `array` with. + * @param {number} [start=0] The start position. + * @param {number} [end=array.length] The end position. + * @returns {Array} Returns `array`. + * @example + * + * var array = [1, 2, 3]; + * + * _.fill(array, 'a'); + * console.log(array); + * // => ['a', 'a', 'a'] + * + * _.fill(Array(3), 2); + * // => [2, 2, 2] + * + * _.fill([4, 6, 8, 10], '*', 1, 3); + * // => [4, '*', '*', 10] + */ +function fill(array, value, start, end) { + var length = array == null ? 0 : array.length; + if (!length) { + return []; + } + if (start && typeof start != 'number' && isIterateeCall(array, value, start)) { + start = 0; + end = length; + } + return baseFill(array, value, start, end); +} + +module.exports = fill; diff --git a/node_modules/lodash/filter.js b/node_modules/lodash/filter.js new file mode 100644 index 0000000..89e0c8c --- /dev/null +++ b/node_modules/lodash/filter.js @@ -0,0 +1,52 @@ +var arrayFilter = require('./_arrayFilter'), + baseFilter = require('./_baseFilter'), + baseIteratee = require('./_baseIteratee'), + isArray = require('./isArray'); + +/** + * Iterates over elements of `collection`, returning an array of all elements + * `predicate` returns truthy for. The predicate is invoked with three + * arguments: (value, index|key, collection). + * + * **Note:** Unlike `_.remove`, this method returns a new array. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new filtered array. + * @see _.reject + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': true }, + * { 'user': 'fred', 'age': 40, 'active': false } + * ]; + * + * _.filter(users, function(o) { return !o.active; }); + * // => objects for ['fred'] + * + * // The `_.matches` iteratee shorthand. + * _.filter(users, { 'age': 36, 'active': true }); + * // => objects for ['barney'] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.filter(users, ['active', false]); + * // => objects for ['fred'] + * + * // The `_.property` iteratee shorthand. + * _.filter(users, 'active'); + * // => objects for ['barney'] + * + * // Combining several predicates using `_.overEvery` or `_.overSome`. + * _.filter(users, _.overSome([{ 'age': 36 }, ['age', 40]])); + * // => objects for ['fred', 'barney'] + */ +function filter(collection, predicate) { + var func = isArray(collection) ? arrayFilter : baseFilter; + return func(collection, baseIteratee(predicate, 3)); +} + +module.exports = filter; diff --git a/node_modules/lodash/find.js b/node_modules/lodash/find.js new file mode 100644 index 0000000..de732cc --- /dev/null +++ b/node_modules/lodash/find.js @@ -0,0 +1,42 @@ +var createFind = require('./_createFind'), + findIndex = require('./findIndex'); + +/** + * Iterates over elements of `collection`, returning the first element + * `predicate` returns truthy for. The predicate is invoked with three + * arguments: (value, index|key, collection). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param {number} [fromIndex=0] The index to search from. + * @returns {*} Returns the matched element, else `undefined`. + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': true }, + * { 'user': 'fred', 'age': 40, 'active': false }, + * { 'user': 'pebbles', 'age': 1, 'active': true } + * ]; + * + * _.find(users, function(o) { return o.age < 40; }); + * // => object for 'barney' + * + * // The `_.matches` iteratee shorthand. + * _.find(users, { 'age': 1, 'active': true }); + * // => object for 'pebbles' + * + * // The `_.matchesProperty` iteratee shorthand. + * _.find(users, ['active', false]); + * // => object for 'fred' + * + * // The `_.property` iteratee shorthand. + * _.find(users, 'active'); + * // => object for 'barney' + */ +var find = createFind(findIndex); + +module.exports = find; diff --git a/node_modules/lodash/findIndex.js b/node_modules/lodash/findIndex.js new file mode 100644 index 0000000..4689069 --- /dev/null +++ b/node_modules/lodash/findIndex.js @@ -0,0 +1,55 @@ +var baseFindIndex = require('./_baseFindIndex'), + baseIteratee = require('./_baseIteratee'), + toInteger = require('./toInteger'); + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeMax = Math.max; + +/** + * This method is like `_.find` except that it returns the index of the first + * element `predicate` returns truthy for instead of the element itself. + * + * @static + * @memberOf _ + * @since 1.1.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param {number} [fromIndex=0] The index to search from. + * @returns {number} Returns the index of the found element, else `-1`. + * @example + * + * var users = [ + * { 'user': 'barney', 'active': false }, + * { 'user': 'fred', 'active': false }, + * { 'user': 'pebbles', 'active': true } + * ]; + * + * _.findIndex(users, function(o) { return o.user == 'barney'; }); + * // => 0 + * + * // The `_.matches` iteratee shorthand. + * _.findIndex(users, { 'user': 'fred', 'active': false }); + * // => 1 + * + * // The `_.matchesProperty` iteratee shorthand. + * _.findIndex(users, ['active', false]); + * // => 0 + * + * // The `_.property` iteratee shorthand. + * _.findIndex(users, 'active'); + * // => 2 + */ +function findIndex(array, predicate, fromIndex) { + var length = array == null ? 0 : array.length; + if (!length) { + return -1; + } + var index = fromIndex == null ? 0 : toInteger(fromIndex); + if (index < 0) { + index = nativeMax(length + index, 0); + } + return baseFindIndex(array, baseIteratee(predicate, 3), index); +} + +module.exports = findIndex; diff --git a/node_modules/lodash/findKey.js b/node_modules/lodash/findKey.js new file mode 100644 index 0000000..cac0248 --- /dev/null +++ b/node_modules/lodash/findKey.js @@ -0,0 +1,44 @@ +var baseFindKey = require('./_baseFindKey'), + baseForOwn = require('./_baseForOwn'), + baseIteratee = require('./_baseIteratee'); + +/** + * This method is like `_.find` except that it returns the key of the first + * element `predicate` returns truthy for instead of the element itself. + * + * @static + * @memberOf _ + * @since 1.1.0 + * @category Object + * @param {Object} object The object to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {string|undefined} Returns the key of the matched element, + * else `undefined`. + * @example + * + * var users = { + * 'barney': { 'age': 36, 'active': true }, + * 'fred': { 'age': 40, 'active': false }, + * 'pebbles': { 'age': 1, 'active': true } + * }; + * + * _.findKey(users, function(o) { return o.age < 40; }); + * // => 'barney' (iteration order is not guaranteed) + * + * // The `_.matches` iteratee shorthand. + * _.findKey(users, { 'age': 1, 'active': true }); + * // => 'pebbles' + * + * // The `_.matchesProperty` iteratee shorthand. + * _.findKey(users, ['active', false]); + * // => 'fred' + * + * // The `_.property` iteratee shorthand. + * _.findKey(users, 'active'); + * // => 'barney' + */ +function findKey(object, predicate) { + return baseFindKey(object, baseIteratee(predicate, 3), baseForOwn); +} + +module.exports = findKey; diff --git a/node_modules/lodash/findLast.js b/node_modules/lodash/findLast.js new file mode 100644 index 0000000..70b4271 --- /dev/null +++ b/node_modules/lodash/findLast.js @@ -0,0 +1,25 @@ +var createFind = require('./_createFind'), + findLastIndex = require('./findLastIndex'); + +/** + * This method is like `_.find` except that it iterates over elements of + * `collection` from right to left. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Collection + * @param {Array|Object} collection The collection to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param {number} [fromIndex=collection.length-1] The index to search from. + * @returns {*} Returns the matched element, else `undefined`. + * @example + * + * _.findLast([1, 2, 3, 4], function(n) { + * return n % 2 == 1; + * }); + * // => 3 + */ +var findLast = createFind(findLastIndex); + +module.exports = findLast; diff --git a/node_modules/lodash/findLastIndex.js b/node_modules/lodash/findLastIndex.js new file mode 100644 index 0000000..7da3431 --- /dev/null +++ b/node_modules/lodash/findLastIndex.js @@ -0,0 +1,59 @@ +var baseFindIndex = require('./_baseFindIndex'), + baseIteratee = require('./_baseIteratee'), + toInteger = require('./toInteger'); + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeMax = Math.max, + nativeMin = Math.min; + +/** + * This method is like `_.findIndex` except that it iterates over elements + * of `collection` from right to left. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param {number} [fromIndex=array.length-1] The index to search from. + * @returns {number} Returns the index of the found element, else `-1`. + * @example + * + * var users = [ + * { 'user': 'barney', 'active': true }, + * { 'user': 'fred', 'active': false }, + * { 'user': 'pebbles', 'active': false } + * ]; + * + * _.findLastIndex(users, function(o) { return o.user == 'pebbles'; }); + * // => 2 + * + * // The `_.matches` iteratee shorthand. + * _.findLastIndex(users, { 'user': 'barney', 'active': true }); + * // => 0 + * + * // The `_.matchesProperty` iteratee shorthand. + * _.findLastIndex(users, ['active', false]); + * // => 2 + * + * // The `_.property` iteratee shorthand. + * _.findLastIndex(users, 'active'); + * // => 0 + */ +function findLastIndex(array, predicate, fromIndex) { + var length = array == null ? 0 : array.length; + if (!length) { + return -1; + } + var index = length - 1; + if (fromIndex !== undefined) { + index = toInteger(fromIndex); + index = fromIndex < 0 + ? nativeMax(length + index, 0) + : nativeMin(index, length - 1); + } + return baseFindIndex(array, baseIteratee(predicate, 3), index, true); +} + +module.exports = findLastIndex; diff --git a/node_modules/lodash/findLastKey.js b/node_modules/lodash/findLastKey.js new file mode 100644 index 0000000..66fb9fb --- /dev/null +++ b/node_modules/lodash/findLastKey.js @@ -0,0 +1,44 @@ +var baseFindKey = require('./_baseFindKey'), + baseForOwnRight = require('./_baseForOwnRight'), + baseIteratee = require('./_baseIteratee'); + +/** + * This method is like `_.findKey` except that it iterates over elements of + * a collection in the opposite order. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Object + * @param {Object} object The object to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {string|undefined} Returns the key of the matched element, + * else `undefined`. + * @example + * + * var users = { + * 'barney': { 'age': 36, 'active': true }, + * 'fred': { 'age': 40, 'active': false }, + * 'pebbles': { 'age': 1, 'active': true } + * }; + * + * _.findLastKey(users, function(o) { return o.age < 40; }); + * // => returns 'pebbles' assuming `_.findKey` returns 'barney' + * + * // The `_.matches` iteratee shorthand. + * _.findLastKey(users, { 'age': 36, 'active': true }); + * // => 'barney' + * + * // The `_.matchesProperty` iteratee shorthand. + * _.findLastKey(users, ['active', false]); + * // => 'fred' + * + * // The `_.property` iteratee shorthand. + * _.findLastKey(users, 'active'); + * // => 'pebbles' + */ +function findLastKey(object, predicate) { + return baseFindKey(object, baseIteratee(predicate, 3), baseForOwnRight); +} + +module.exports = findLastKey; diff --git a/node_modules/lodash/first.js b/node_modules/lodash/first.js new file mode 100644 index 0000000..53f4ad1 --- /dev/null +++ b/node_modules/lodash/first.js @@ -0,0 +1 @@ +module.exports = require('./head'); diff --git a/node_modules/lodash/flake.lock b/node_modules/lodash/flake.lock new file mode 100644 index 0000000..dd03252 --- /dev/null +++ b/node_modules/lodash/flake.lock @@ -0,0 +1,40 @@ +{ + "nodes": { + "nixpkgs": { + "locked": { + "lastModified": 1613582597, + "narHash": "sha256-6LvipIvFuhyorHpUqK3HjySC5Y6gshXHFBhU9EJ4DoM=", + "path": "/nix/store/srvplqq673sqd9vyfhyc5w1p88y1gfm4-source", + "rev": "6b1057b452c55bb3b463f0d7055bc4ec3fd1f381", + "type": "path" + }, + "original": { + "id": "nixpkgs", + "type": "indirect" + } + }, + "root": { + "inputs": { + "nixpkgs": "nixpkgs", + "utils": "utils" + } + }, + "utils": { + "locked": { + "lastModified": 1610051610, + "narHash": "sha256-U9rPz/usA1/Aohhk7Cmc2gBrEEKRzcW4nwPWMPwja4Y=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "3982c9903e93927c2164caa727cd3f6a0e6d14cc", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/node_modules/lodash/flake.nix b/node_modules/lodash/flake.nix new file mode 100644 index 0000000..15a451c --- /dev/null +++ b/node_modules/lodash/flake.nix @@ -0,0 +1,20 @@ +{ + inputs = { + utils.url = "github:numtide/flake-utils"; + }; + + outputs = { self, nixpkgs, utils }: + utils.lib.eachDefaultSystem (system: + let + pkgs = nixpkgs.legacyPackages."${system}"; + in rec { + devShell = pkgs.mkShell { + nativeBuildInputs = with pkgs; [ + yarn + nodejs-14_x + nodePackages.typescript-language-server + nodePackages.eslint + ]; + }; + }); +} diff --git a/node_modules/lodash/flatMap.js b/node_modules/lodash/flatMap.js new file mode 100644 index 0000000..e668506 --- /dev/null +++ b/node_modules/lodash/flatMap.js @@ -0,0 +1,29 @@ +var baseFlatten = require('./_baseFlatten'), + map = require('./map'); + +/** + * Creates a flattened array of values by running each element in `collection` + * thru `iteratee` and flattening the mapped results. The iteratee is invoked + * with three arguments: (value, index|key, collection). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new flattened array. + * @example + * + * function duplicate(n) { + * return [n, n]; + * } + * + * _.flatMap([1, 2], duplicate); + * // => [1, 1, 2, 2] + */ +function flatMap(collection, iteratee) { + return baseFlatten(map(collection, iteratee), 1); +} + +module.exports = flatMap; diff --git a/node_modules/lodash/flatMapDeep.js b/node_modules/lodash/flatMapDeep.js new file mode 100644 index 0000000..4653d60 --- /dev/null +++ b/node_modules/lodash/flatMapDeep.js @@ -0,0 +1,31 @@ +var baseFlatten = require('./_baseFlatten'), + map = require('./map'); + +/** Used as references for various `Number` constants. */ +var INFINITY = 1 / 0; + +/** + * This method is like `_.flatMap` except that it recursively flattens the + * mapped results. + * + * @static + * @memberOf _ + * @since 4.7.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new flattened array. + * @example + * + * function duplicate(n) { + * return [[[n, n]]]; + * } + * + * _.flatMapDeep([1, 2], duplicate); + * // => [1, 1, 2, 2] + */ +function flatMapDeep(collection, iteratee) { + return baseFlatten(map(collection, iteratee), INFINITY); +} + +module.exports = flatMapDeep; diff --git a/node_modules/lodash/flatMapDepth.js b/node_modules/lodash/flatMapDepth.js new file mode 100644 index 0000000..6d72005 --- /dev/null +++ b/node_modules/lodash/flatMapDepth.js @@ -0,0 +1,31 @@ +var baseFlatten = require('./_baseFlatten'), + map = require('./map'), + toInteger = require('./toInteger'); + +/** + * This method is like `_.flatMap` except that it recursively flattens the + * mapped results up to `depth` times. + * + * @static + * @memberOf _ + * @since 4.7.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @param {number} [depth=1] The maximum recursion depth. + * @returns {Array} Returns the new flattened array. + * @example + * + * function duplicate(n) { + * return [[[n, n]]]; + * } + * + * _.flatMapDepth([1, 2], duplicate, 2); + * // => [[1, 1], [2, 2]] + */ +function flatMapDepth(collection, iteratee, depth) { + depth = depth === undefined ? 1 : toInteger(depth); + return baseFlatten(map(collection, iteratee), depth); +} + +module.exports = flatMapDepth; diff --git a/node_modules/lodash/flatten.js b/node_modules/lodash/flatten.js new file mode 100644 index 0000000..3f09f7f --- /dev/null +++ b/node_modules/lodash/flatten.js @@ -0,0 +1,22 @@ +var baseFlatten = require('./_baseFlatten'); + +/** + * Flattens `array` a single level deep. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to flatten. + * @returns {Array} Returns the new flattened array. + * @example + * + * _.flatten([1, [2, [3, [4]], 5]]); + * // => [1, 2, [3, [4]], 5] + */ +function flatten(array) { + var length = array == null ? 0 : array.length; + return length ? baseFlatten(array, 1) : []; +} + +module.exports = flatten; diff --git a/node_modules/lodash/flattenDeep.js b/node_modules/lodash/flattenDeep.js new file mode 100644 index 0000000..8ad585c --- /dev/null +++ b/node_modules/lodash/flattenDeep.js @@ -0,0 +1,25 @@ +var baseFlatten = require('./_baseFlatten'); + +/** Used as references for various `Number` constants. */ +var INFINITY = 1 / 0; + +/** + * Recursively flattens `array`. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to flatten. + * @returns {Array} Returns the new flattened array. + * @example + * + * _.flattenDeep([1, [2, [3, [4]], 5]]); + * // => [1, 2, 3, 4, 5] + */ +function flattenDeep(array) { + var length = array == null ? 0 : array.length; + return length ? baseFlatten(array, INFINITY) : []; +} + +module.exports = flattenDeep; diff --git a/node_modules/lodash/flattenDepth.js b/node_modules/lodash/flattenDepth.js new file mode 100644 index 0000000..441fdcc --- /dev/null +++ b/node_modules/lodash/flattenDepth.js @@ -0,0 +1,33 @@ +var baseFlatten = require('./_baseFlatten'), + toInteger = require('./toInteger'); + +/** + * Recursively flatten `array` up to `depth` times. + * + * @static + * @memberOf _ + * @since 4.4.0 + * @category Array + * @param {Array} array The array to flatten. + * @param {number} [depth=1] The maximum recursion depth. + * @returns {Array} Returns the new flattened array. + * @example + * + * var array = [1, [2, [3, [4]], 5]]; + * + * _.flattenDepth(array, 1); + * // => [1, 2, [3, [4]], 5] + * + * _.flattenDepth(array, 2); + * // => [1, 2, 3, [4], 5] + */ +function flattenDepth(array, depth) { + var length = array == null ? 0 : array.length; + if (!length) { + return []; + } + depth = depth === undefined ? 1 : toInteger(depth); + return baseFlatten(array, depth); +} + +module.exports = flattenDepth; diff --git a/node_modules/lodash/flip.js b/node_modules/lodash/flip.js new file mode 100644 index 0000000..c28dd78 --- /dev/null +++ b/node_modules/lodash/flip.js @@ -0,0 +1,28 @@ +var createWrap = require('./_createWrap'); + +/** Used to compose bitmasks for function metadata. */ +var WRAP_FLIP_FLAG = 512; + +/** + * Creates a function that invokes `func` with arguments reversed. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Function + * @param {Function} func The function to flip arguments for. + * @returns {Function} Returns the new flipped function. + * @example + * + * var flipped = _.flip(function() { + * return _.toArray(arguments); + * }); + * + * flipped('a', 'b', 'c', 'd'); + * // => ['d', 'c', 'b', 'a'] + */ +function flip(func) { + return createWrap(func, WRAP_FLIP_FLAG); +} + +module.exports = flip; diff --git a/node_modules/lodash/floor.js b/node_modules/lodash/floor.js new file mode 100644 index 0000000..ab6dfa2 --- /dev/null +++ b/node_modules/lodash/floor.js @@ -0,0 +1,26 @@ +var createRound = require('./_createRound'); + +/** + * Computes `number` rounded down to `precision`. + * + * @static + * @memberOf _ + * @since 3.10.0 + * @category Math + * @param {number} number The number to round down. + * @param {number} [precision=0] The precision to round down to. + * @returns {number} Returns the rounded down number. + * @example + * + * _.floor(4.006); + * // => 4 + * + * _.floor(0.046, 2); + * // => 0.04 + * + * _.floor(4060, -2); + * // => 4000 + */ +var floor = createRound('floor'); + +module.exports = floor; diff --git a/node_modules/lodash/flow.js b/node_modules/lodash/flow.js new file mode 100644 index 0000000..74b6b62 --- /dev/null +++ b/node_modules/lodash/flow.js @@ -0,0 +1,27 @@ +var createFlow = require('./_createFlow'); + +/** + * Creates a function that returns the result of invoking the given functions + * with the `this` binding of the created function, where each successive + * invocation is supplied the return value of the previous. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Util + * @param {...(Function|Function[])} [funcs] The functions to invoke. + * @returns {Function} Returns the new composite function. + * @see _.flowRight + * @example + * + * function square(n) { + * return n * n; + * } + * + * var addSquare = _.flow([_.add, square]); + * addSquare(1, 2); + * // => 9 + */ +var flow = createFlow(); + +module.exports = flow; diff --git a/node_modules/lodash/flowRight.js b/node_modules/lodash/flowRight.js new file mode 100644 index 0000000..1146141 --- /dev/null +++ b/node_modules/lodash/flowRight.js @@ -0,0 +1,26 @@ +var createFlow = require('./_createFlow'); + +/** + * This method is like `_.flow` except that it creates a function that + * invokes the given functions from right to left. + * + * @static + * @since 3.0.0 + * @memberOf _ + * @category Util + * @param {...(Function|Function[])} [funcs] The functions to invoke. + * @returns {Function} Returns the new composite function. + * @see _.flow + * @example + * + * function square(n) { + * return n * n; + * } + * + * var addSquare = _.flowRight([square, _.add]); + * addSquare(1, 2); + * // => 9 + */ +var flowRight = createFlow(true); + +module.exports = flowRight; diff --git a/node_modules/lodash/forEach.js b/node_modules/lodash/forEach.js new file mode 100644 index 0000000..c64eaa7 --- /dev/null +++ b/node_modules/lodash/forEach.js @@ -0,0 +1,41 @@ +var arrayEach = require('./_arrayEach'), + baseEach = require('./_baseEach'), + castFunction = require('./_castFunction'), + isArray = require('./isArray'); + +/** + * Iterates over elements of `collection` and invokes `iteratee` for each element. + * The iteratee is invoked with three arguments: (value, index|key, collection). + * Iteratee functions may exit iteration early by explicitly returning `false`. + * + * **Note:** As with other "Collections" methods, objects with a "length" + * property are iterated like arrays. To avoid this behavior use `_.forIn` + * or `_.forOwn` for object iteration. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @alias each + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Array|Object} Returns `collection`. + * @see _.forEachRight + * @example + * + * _.forEach([1, 2], function(value) { + * console.log(value); + * }); + * // => Logs `1` then `2`. + * + * _.forEach({ 'a': 1, 'b': 2 }, function(value, key) { + * console.log(key); + * }); + * // => Logs 'a' then 'b' (iteration order is not guaranteed). + */ +function forEach(collection, iteratee) { + var func = isArray(collection) ? arrayEach : baseEach; + return func(collection, castFunction(iteratee)); +} + +module.exports = forEach; diff --git a/node_modules/lodash/forEachRight.js b/node_modules/lodash/forEachRight.js new file mode 100644 index 0000000..7390eba --- /dev/null +++ b/node_modules/lodash/forEachRight.js @@ -0,0 +1,31 @@ +var arrayEachRight = require('./_arrayEachRight'), + baseEachRight = require('./_baseEachRight'), + castFunction = require('./_castFunction'), + isArray = require('./isArray'); + +/** + * This method is like `_.forEach` except that it iterates over elements of + * `collection` from right to left. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @alias eachRight + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Array|Object} Returns `collection`. + * @see _.forEach + * @example + * + * _.forEachRight([1, 2], function(value) { + * console.log(value); + * }); + * // => Logs `2` then `1`. + */ +function forEachRight(collection, iteratee) { + var func = isArray(collection) ? arrayEachRight : baseEachRight; + return func(collection, castFunction(iteratee)); +} + +module.exports = forEachRight; diff --git a/node_modules/lodash/forIn.js b/node_modules/lodash/forIn.js new file mode 100644 index 0000000..583a596 --- /dev/null +++ b/node_modules/lodash/forIn.js @@ -0,0 +1,39 @@ +var baseFor = require('./_baseFor'), + castFunction = require('./_castFunction'), + keysIn = require('./keysIn'); + +/** + * Iterates over own and inherited enumerable string keyed properties of an + * object and invokes `iteratee` for each property. The iteratee is invoked + * with three arguments: (value, key, object). Iteratee functions may exit + * iteration early by explicitly returning `false`. + * + * @static + * @memberOf _ + * @since 0.3.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Object} Returns `object`. + * @see _.forInRight + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.forIn(new Foo, function(value, key) { + * console.log(key); + * }); + * // => Logs 'a', 'b', then 'c' (iteration order is not guaranteed). + */ +function forIn(object, iteratee) { + return object == null + ? object + : baseFor(object, castFunction(iteratee), keysIn); +} + +module.exports = forIn; diff --git a/node_modules/lodash/forInRight.js b/node_modules/lodash/forInRight.js new file mode 100644 index 0000000..4aedf58 --- /dev/null +++ b/node_modules/lodash/forInRight.js @@ -0,0 +1,37 @@ +var baseForRight = require('./_baseForRight'), + castFunction = require('./_castFunction'), + keysIn = require('./keysIn'); + +/** + * This method is like `_.forIn` except that it iterates over properties of + * `object` in the opposite order. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Object} Returns `object`. + * @see _.forIn + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.forInRight(new Foo, function(value, key) { + * console.log(key); + * }); + * // => Logs 'c', 'b', then 'a' assuming `_.forIn` logs 'a', 'b', then 'c'. + */ +function forInRight(object, iteratee) { + return object == null + ? object + : baseForRight(object, castFunction(iteratee), keysIn); +} + +module.exports = forInRight; diff --git a/node_modules/lodash/forOwn.js b/node_modules/lodash/forOwn.js new file mode 100644 index 0000000..94eed84 --- /dev/null +++ b/node_modules/lodash/forOwn.js @@ -0,0 +1,36 @@ +var baseForOwn = require('./_baseForOwn'), + castFunction = require('./_castFunction'); + +/** + * Iterates over own enumerable string keyed properties of an object and + * invokes `iteratee` for each property. The iteratee is invoked with three + * arguments: (value, key, object). Iteratee functions may exit iteration + * early by explicitly returning `false`. + * + * @static + * @memberOf _ + * @since 0.3.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Object} Returns `object`. + * @see _.forOwnRight + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.forOwn(new Foo, function(value, key) { + * console.log(key); + * }); + * // => Logs 'a' then 'b' (iteration order is not guaranteed). + */ +function forOwn(object, iteratee) { + return object && baseForOwn(object, castFunction(iteratee)); +} + +module.exports = forOwn; diff --git a/node_modules/lodash/forOwnRight.js b/node_modules/lodash/forOwnRight.js new file mode 100644 index 0000000..86f338f --- /dev/null +++ b/node_modules/lodash/forOwnRight.js @@ -0,0 +1,34 @@ +var baseForOwnRight = require('./_baseForOwnRight'), + castFunction = require('./_castFunction'); + +/** + * This method is like `_.forOwn` except that it iterates over properties of + * `object` in the opposite order. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Object} Returns `object`. + * @see _.forOwn + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.forOwnRight(new Foo, function(value, key) { + * console.log(key); + * }); + * // => Logs 'b' then 'a' assuming `_.forOwn` logs 'a' then 'b'. + */ +function forOwnRight(object, iteratee) { + return object && baseForOwnRight(object, castFunction(iteratee)); +} + +module.exports = forOwnRight; diff --git a/node_modules/lodash/fp.js b/node_modules/lodash/fp.js new file mode 100644 index 0000000..e372dbb --- /dev/null +++ b/node_modules/lodash/fp.js @@ -0,0 +1,2 @@ +var _ = require('./lodash.min').runInContext(); +module.exports = require('./fp/_baseConvert')(_, _); diff --git a/node_modules/lodash/fp/F.js b/node_modules/lodash/fp/F.js new file mode 100644 index 0000000..a05a63a --- /dev/null +++ b/node_modules/lodash/fp/F.js @@ -0,0 +1 @@ +module.exports = require('./stubFalse'); diff --git a/node_modules/lodash/fp/T.js b/node_modules/lodash/fp/T.js new file mode 100644 index 0000000..e2ba8ea --- /dev/null +++ b/node_modules/lodash/fp/T.js @@ -0,0 +1 @@ +module.exports = require('./stubTrue'); diff --git a/node_modules/lodash/fp/__.js b/node_modules/lodash/fp/__.js new file mode 100644 index 0000000..4af98de --- /dev/null +++ b/node_modules/lodash/fp/__.js @@ -0,0 +1 @@ +module.exports = require('./placeholder'); diff --git a/node_modules/lodash/fp/_baseConvert.js b/node_modules/lodash/fp/_baseConvert.js new file mode 100644 index 0000000..9baf8e1 --- /dev/null +++ b/node_modules/lodash/fp/_baseConvert.js @@ -0,0 +1,569 @@ +var mapping = require('./_mapping'), + fallbackHolder = require('./placeholder'); + +/** Built-in value reference. */ +var push = Array.prototype.push; + +/** + * Creates a function, with an arity of `n`, that invokes `func` with the + * arguments it receives. + * + * @private + * @param {Function} func The function to wrap. + * @param {number} n The arity of the new function. + * @returns {Function} Returns the new function. + */ +function baseArity(func, n) { + return n == 2 + ? function(a, b) { return func.apply(undefined, arguments); } + : function(a) { return func.apply(undefined, arguments); }; +} + +/** + * Creates a function that invokes `func`, with up to `n` arguments, ignoring + * any additional arguments. + * + * @private + * @param {Function} func The function to cap arguments for. + * @param {number} n The arity cap. + * @returns {Function} Returns the new function. + */ +function baseAry(func, n) { + return n == 2 + ? function(a, b) { return func(a, b); } + : function(a) { return func(a); }; +} + +/** + * Creates a clone of `array`. + * + * @private + * @param {Array} array The array to clone. + * @returns {Array} Returns the cloned array. + */ +function cloneArray(array) { + var length = array ? array.length : 0, + result = Array(length); + + while (length--) { + result[length] = array[length]; + } + return result; +} + +/** + * Creates a function that clones a given object using the assignment `func`. + * + * @private + * @param {Function} func The assignment function. + * @returns {Function} Returns the new cloner function. + */ +function createCloner(func) { + return function(object) { + return func({}, object); + }; +} + +/** + * A specialized version of `_.spread` which flattens the spread array into + * the arguments of the invoked `func`. + * + * @private + * @param {Function} func The function to spread arguments over. + * @param {number} start The start position of the spread. + * @returns {Function} Returns the new function. + */ +function flatSpread(func, start) { + return function() { + var length = arguments.length, + lastIndex = length - 1, + args = Array(length); + + while (length--) { + args[length] = arguments[length]; + } + var array = args[start], + otherArgs = args.slice(0, start); + + if (array) { + push.apply(otherArgs, array); + } + if (start != lastIndex) { + push.apply(otherArgs, args.slice(start + 1)); + } + return func.apply(this, otherArgs); + }; +} + +/** + * Creates a function that wraps `func` and uses `cloner` to clone the first + * argument it receives. + * + * @private + * @param {Function} func The function to wrap. + * @param {Function} cloner The function to clone arguments. + * @returns {Function} Returns the new immutable function. + */ +function wrapImmutable(func, cloner) { + return function() { + var length = arguments.length; + if (!length) { + return; + } + var args = Array(length); + while (length--) { + args[length] = arguments[length]; + } + var result = args[0] = cloner.apply(undefined, args); + func.apply(undefined, args); + return result; + }; +} + +/** + * The base implementation of `convert` which accepts a `util` object of methods + * required to perform conversions. + * + * @param {Object} util The util object. + * @param {string} name The name of the function to convert. + * @param {Function} func The function to convert. + * @param {Object} [options] The options object. + * @param {boolean} [options.cap=true] Specify capping iteratee arguments. + * @param {boolean} [options.curry=true] Specify currying. + * @param {boolean} [options.fixed=true] Specify fixed arity. + * @param {boolean} [options.immutable=true] Specify immutable operations. + * @param {boolean} [options.rearg=true] Specify rearranging arguments. + * @returns {Function|Object} Returns the converted function or object. + */ +function baseConvert(util, name, func, options) { + var isLib = typeof name == 'function', + isObj = name === Object(name); + + if (isObj) { + options = func; + func = name; + name = undefined; + } + if (func == null) { + throw new TypeError; + } + options || (options = {}); + + var config = { + 'cap': 'cap' in options ? options.cap : true, + 'curry': 'curry' in options ? options.curry : true, + 'fixed': 'fixed' in options ? options.fixed : true, + 'immutable': 'immutable' in options ? options.immutable : true, + 'rearg': 'rearg' in options ? options.rearg : true + }; + + var defaultHolder = isLib ? func : fallbackHolder, + forceCurry = ('curry' in options) && options.curry, + forceFixed = ('fixed' in options) && options.fixed, + forceRearg = ('rearg' in options) && options.rearg, + pristine = isLib ? func.runInContext() : undefined; + + var helpers = isLib ? func : { + 'ary': util.ary, + 'assign': util.assign, + 'clone': util.clone, + 'curry': util.curry, + 'forEach': util.forEach, + 'isArray': util.isArray, + 'isError': util.isError, + 'isFunction': util.isFunction, + 'isWeakMap': util.isWeakMap, + 'iteratee': util.iteratee, + 'keys': util.keys, + 'rearg': util.rearg, + 'toInteger': util.toInteger, + 'toPath': util.toPath + }; + + var ary = helpers.ary, + assign = helpers.assign, + clone = helpers.clone, + curry = helpers.curry, + each = helpers.forEach, + isArray = helpers.isArray, + isError = helpers.isError, + isFunction = helpers.isFunction, + isWeakMap = helpers.isWeakMap, + keys = helpers.keys, + rearg = helpers.rearg, + toInteger = helpers.toInteger, + toPath = helpers.toPath; + + var aryMethodKeys = keys(mapping.aryMethod); + + var wrappers = { + 'castArray': function(castArray) { + return function() { + var value = arguments[0]; + return isArray(value) + ? castArray(cloneArray(value)) + : castArray.apply(undefined, arguments); + }; + }, + 'iteratee': function(iteratee) { + return function() { + var func = arguments[0], + arity = arguments[1], + result = iteratee(func, arity), + length = result.length; + + if (config.cap && typeof arity == 'number') { + arity = arity > 2 ? (arity - 2) : 1; + return (length && length <= arity) ? result : baseAry(result, arity); + } + return result; + }; + }, + 'mixin': function(mixin) { + return function(source) { + var func = this; + if (!isFunction(func)) { + return mixin(func, Object(source)); + } + var pairs = []; + each(keys(source), function(key) { + if (isFunction(source[key])) { + pairs.push([key, func.prototype[key]]); + } + }); + + mixin(func, Object(source)); + + each(pairs, function(pair) { + var value = pair[1]; + if (isFunction(value)) { + func.prototype[pair[0]] = value; + } else { + delete func.prototype[pair[0]]; + } + }); + return func; + }; + }, + 'nthArg': function(nthArg) { + return function(n) { + var arity = n < 0 ? 1 : (toInteger(n) + 1); + return curry(nthArg(n), arity); + }; + }, + 'rearg': function(rearg) { + return function(func, indexes) { + var arity = indexes ? indexes.length : 0; + return curry(rearg(func, indexes), arity); + }; + }, + 'runInContext': function(runInContext) { + return function(context) { + return baseConvert(util, runInContext(context), options); + }; + } + }; + + /*--------------------------------------------------------------------------*/ + + /** + * Casts `func` to a function with an arity capped iteratee if needed. + * + * @private + * @param {string} name The name of the function to inspect. + * @param {Function} func The function to inspect. + * @returns {Function} Returns the cast function. + */ + function castCap(name, func) { + if (config.cap) { + var indexes = mapping.iterateeRearg[name]; + if (indexes) { + return iterateeRearg(func, indexes); + } + var n = !isLib && mapping.iterateeAry[name]; + if (n) { + return iterateeAry(func, n); + } + } + return func; + } + + /** + * Casts `func` to a curried function if needed. + * + * @private + * @param {string} name The name of the function to inspect. + * @param {Function} func The function to inspect. + * @param {number} n The arity of `func`. + * @returns {Function} Returns the cast function. + */ + function castCurry(name, func, n) { + return (forceCurry || (config.curry && n > 1)) + ? curry(func, n) + : func; + } + + /** + * Casts `func` to a fixed arity function if needed. + * + * @private + * @param {string} name The name of the function to inspect. + * @param {Function} func The function to inspect. + * @param {number} n The arity cap. + * @returns {Function} Returns the cast function. + */ + function castFixed(name, func, n) { + if (config.fixed && (forceFixed || !mapping.skipFixed[name])) { + var data = mapping.methodSpread[name], + start = data && data.start; + + return start === undefined ? ary(func, n) : flatSpread(func, start); + } + return func; + } + + /** + * Casts `func` to an rearged function if needed. + * + * @private + * @param {string} name The name of the function to inspect. + * @param {Function} func The function to inspect. + * @param {number} n The arity of `func`. + * @returns {Function} Returns the cast function. + */ + function castRearg(name, func, n) { + return (config.rearg && n > 1 && (forceRearg || !mapping.skipRearg[name])) + ? rearg(func, mapping.methodRearg[name] || mapping.aryRearg[n]) + : func; + } + + /** + * Creates a clone of `object` by `path`. + * + * @private + * @param {Object} object The object to clone. + * @param {Array|string} path The path to clone by. + * @returns {Object} Returns the cloned object. + */ + function cloneByPath(object, path) { + path = toPath(path); + + var index = -1, + length = path.length, + lastIndex = length - 1, + result = clone(Object(object)), + nested = result; + + while (nested != null && ++index < length) { + var key = path[index], + value = nested[key]; + + if (value != null && + !(isFunction(value) || isError(value) || isWeakMap(value))) { + nested[key] = clone(index == lastIndex ? value : Object(value)); + } + nested = nested[key]; + } + return result; + } + + /** + * Converts `lodash` to an immutable auto-curried iteratee-first data-last + * version with conversion `options` applied. + * + * @param {Object} [options] The options object. See `baseConvert` for more details. + * @returns {Function} Returns the converted `lodash`. + */ + function convertLib(options) { + return _.runInContext.convert(options)(undefined); + } + + /** + * Create a converter function for `func` of `name`. + * + * @param {string} name The name of the function to convert. + * @param {Function} func The function to convert. + * @returns {Function} Returns the new converter function. + */ + function createConverter(name, func) { + var realName = mapping.aliasToReal[name] || name, + methodName = mapping.remap[realName] || realName, + oldOptions = options; + + return function(options) { + var newUtil = isLib ? pristine : helpers, + newFunc = isLib ? pristine[methodName] : func, + newOptions = assign(assign({}, oldOptions), options); + + return baseConvert(newUtil, realName, newFunc, newOptions); + }; + } + + /** + * Creates a function that wraps `func` to invoke its iteratee, with up to `n` + * arguments, ignoring any additional arguments. + * + * @private + * @param {Function} func The function to cap iteratee arguments for. + * @param {number} n The arity cap. + * @returns {Function} Returns the new function. + */ + function iterateeAry(func, n) { + return overArg(func, function(func) { + return typeof func == 'function' ? baseAry(func, n) : func; + }); + } + + /** + * Creates a function that wraps `func` to invoke its iteratee with arguments + * arranged according to the specified `indexes` where the argument value at + * the first index is provided as the first argument, the argument value at + * the second index is provided as the second argument, and so on. + * + * @private + * @param {Function} func The function to rearrange iteratee arguments for. + * @param {number[]} indexes The arranged argument indexes. + * @returns {Function} Returns the new function. + */ + function iterateeRearg(func, indexes) { + return overArg(func, function(func) { + var n = indexes.length; + return baseArity(rearg(baseAry(func, n), indexes), n); + }); + } + + /** + * Creates a function that invokes `func` with its first argument transformed. + * + * @private + * @param {Function} func The function to wrap. + * @param {Function} transform The argument transform. + * @returns {Function} Returns the new function. + */ + function overArg(func, transform) { + return function() { + var length = arguments.length; + if (!length) { + return func(); + } + var args = Array(length); + while (length--) { + args[length] = arguments[length]; + } + var index = config.rearg ? 0 : (length - 1); + args[index] = transform(args[index]); + return func.apply(undefined, args); + }; + } + + /** + * Creates a function that wraps `func` and applys the conversions + * rules by `name`. + * + * @private + * @param {string} name The name of the function to wrap. + * @param {Function} func The function to wrap. + * @returns {Function} Returns the converted function. + */ + function wrap(name, func, placeholder) { + var result, + realName = mapping.aliasToReal[name] || name, + wrapped = func, + wrapper = wrappers[realName]; + + if (wrapper) { + wrapped = wrapper(func); + } + else if (config.immutable) { + if (mapping.mutate.array[realName]) { + wrapped = wrapImmutable(func, cloneArray); + } + else if (mapping.mutate.object[realName]) { + wrapped = wrapImmutable(func, createCloner(func)); + } + else if (mapping.mutate.set[realName]) { + wrapped = wrapImmutable(func, cloneByPath); + } + } + each(aryMethodKeys, function(aryKey) { + each(mapping.aryMethod[aryKey], function(otherName) { + if (realName == otherName) { + var data = mapping.methodSpread[realName], + afterRearg = data && data.afterRearg; + + result = afterRearg + ? castFixed(realName, castRearg(realName, wrapped, aryKey), aryKey) + : castRearg(realName, castFixed(realName, wrapped, aryKey), aryKey); + + result = castCap(realName, result); + result = castCurry(realName, result, aryKey); + return false; + } + }); + return !result; + }); + + result || (result = wrapped); + if (result == func) { + result = forceCurry ? curry(result, 1) : function() { + return func.apply(this, arguments); + }; + } + result.convert = createConverter(realName, func); + result.placeholder = func.placeholder = placeholder; + + return result; + } + + /*--------------------------------------------------------------------------*/ + + if (!isObj) { + return wrap(name, func, defaultHolder); + } + var _ = func; + + // Convert methods by ary cap. + var pairs = []; + each(aryMethodKeys, function(aryKey) { + each(mapping.aryMethod[aryKey], function(key) { + var func = _[mapping.remap[key] || key]; + if (func) { + pairs.push([key, wrap(key, func, _)]); + } + }); + }); + + // Convert remaining methods. + each(keys(_), function(key) { + var func = _[key]; + if (typeof func == 'function') { + var length = pairs.length; + while (length--) { + if (pairs[length][0] == key) { + return; + } + } + func.convert = createConverter(key, func); + pairs.push([key, func]); + } + }); + + // Assign to `_` leaving `_.prototype` unchanged to allow chaining. + each(pairs, function(pair) { + _[pair[0]] = pair[1]; + }); + + _.convert = convertLib; + _.placeholder = _; + + // Assign aliases. + each(keys(_), function(key) { + each(mapping.realToAlias[key] || [], function(alias) { + _[alias] = _[key]; + }); + }); + + return _; +} + +module.exports = baseConvert; diff --git a/node_modules/lodash/fp/_convertBrowser.js b/node_modules/lodash/fp/_convertBrowser.js new file mode 100644 index 0000000..bde030d --- /dev/null +++ b/node_modules/lodash/fp/_convertBrowser.js @@ -0,0 +1,18 @@ +var baseConvert = require('./_baseConvert'); + +/** + * Converts `lodash` to an immutable auto-curried iteratee-first data-last + * version with conversion `options` applied. + * + * @param {Function} lodash The lodash function to convert. + * @param {Object} [options] The options object. See `baseConvert` for more details. + * @returns {Function} Returns the converted `lodash`. + */ +function browserConvert(lodash, options) { + return baseConvert(lodash, lodash, options); +} + +if (typeof _ == 'function' && typeof _.runInContext == 'function') { + _ = browserConvert(_.runInContext()); +} +module.exports = browserConvert; diff --git a/node_modules/lodash/fp/_falseOptions.js b/node_modules/lodash/fp/_falseOptions.js new file mode 100644 index 0000000..773235e --- /dev/null +++ b/node_modules/lodash/fp/_falseOptions.js @@ -0,0 +1,7 @@ +module.exports = { + 'cap': false, + 'curry': false, + 'fixed': false, + 'immutable': false, + 'rearg': false +}; diff --git a/node_modules/lodash/fp/_mapping.js b/node_modules/lodash/fp/_mapping.js new file mode 100644 index 0000000..a642ec0 --- /dev/null +++ b/node_modules/lodash/fp/_mapping.js @@ -0,0 +1,358 @@ +/** Used to map aliases to their real names. */ +exports.aliasToReal = { + + // Lodash aliases. + 'each': 'forEach', + 'eachRight': 'forEachRight', + 'entries': 'toPairs', + 'entriesIn': 'toPairsIn', + 'extend': 'assignIn', + 'extendAll': 'assignInAll', + 'extendAllWith': 'assignInAllWith', + 'extendWith': 'assignInWith', + 'first': 'head', + + // Methods that are curried variants of others. + 'conforms': 'conformsTo', + 'matches': 'isMatch', + 'property': 'get', + + // Ramda aliases. + '__': 'placeholder', + 'F': 'stubFalse', + 'T': 'stubTrue', + 'all': 'every', + 'allPass': 'overEvery', + 'always': 'constant', + 'any': 'some', + 'anyPass': 'overSome', + 'apply': 'spread', + 'assoc': 'set', + 'assocPath': 'set', + 'complement': 'negate', + 'compose': 'flowRight', + 'contains': 'includes', + 'dissoc': 'unset', + 'dissocPath': 'unset', + 'dropLast': 'dropRight', + 'dropLastWhile': 'dropRightWhile', + 'equals': 'isEqual', + 'identical': 'eq', + 'indexBy': 'keyBy', + 'init': 'initial', + 'invertObj': 'invert', + 'juxt': 'over', + 'omitAll': 'omit', + 'nAry': 'ary', + 'path': 'get', + 'pathEq': 'matchesProperty', + 'pathOr': 'getOr', + 'paths': 'at', + 'pickAll': 'pick', + 'pipe': 'flow', + 'pluck': 'map', + 'prop': 'get', + 'propEq': 'matchesProperty', + 'propOr': 'getOr', + 'props': 'at', + 'symmetricDifference': 'xor', + 'symmetricDifferenceBy': 'xorBy', + 'symmetricDifferenceWith': 'xorWith', + 'takeLast': 'takeRight', + 'takeLastWhile': 'takeRightWhile', + 'unapply': 'rest', + 'unnest': 'flatten', + 'useWith': 'overArgs', + 'where': 'conformsTo', + 'whereEq': 'isMatch', + 'zipObj': 'zipObject' +}; + +/** Used to map ary to method names. */ +exports.aryMethod = { + '1': [ + 'assignAll', 'assignInAll', 'attempt', 'castArray', 'ceil', 'create', + 'curry', 'curryRight', 'defaultsAll', 'defaultsDeepAll', 'floor', 'flow', + 'flowRight', 'fromPairs', 'invert', 'iteratee', 'memoize', 'method', 'mergeAll', + 'methodOf', 'mixin', 'nthArg', 'over', 'overEvery', 'overSome','rest', 'reverse', + 'round', 'runInContext', 'spread', 'template', 'trim', 'trimEnd', 'trimStart', + 'uniqueId', 'words', 'zipAll' + ], + '2': [ + 'add', 'after', 'ary', 'assign', 'assignAllWith', 'assignIn', 'assignInAllWith', + 'at', 'before', 'bind', 'bindAll', 'bindKey', 'chunk', 'cloneDeepWith', + 'cloneWith', 'concat', 'conformsTo', 'countBy', 'curryN', 'curryRightN', + 'debounce', 'defaults', 'defaultsDeep', 'defaultTo', 'delay', 'difference', + 'divide', 'drop', 'dropRight', 'dropRightWhile', 'dropWhile', 'endsWith', 'eq', + 'every', 'filter', 'find', 'findIndex', 'findKey', 'findLast', 'findLastIndex', + 'findLastKey', 'flatMap', 'flatMapDeep', 'flattenDepth', 'forEach', + 'forEachRight', 'forIn', 'forInRight', 'forOwn', 'forOwnRight', 'get', + 'groupBy', 'gt', 'gte', 'has', 'hasIn', 'includes', 'indexOf', 'intersection', + 'invertBy', 'invoke', 'invokeMap', 'isEqual', 'isMatch', 'join', 'keyBy', + 'lastIndexOf', 'lt', 'lte', 'map', 'mapKeys', 'mapValues', 'matchesProperty', + 'maxBy', 'meanBy', 'merge', 'mergeAllWith', 'minBy', 'multiply', 'nth', 'omit', + 'omitBy', 'overArgs', 'pad', 'padEnd', 'padStart', 'parseInt', 'partial', + 'partialRight', 'partition', 'pick', 'pickBy', 'propertyOf', 'pull', 'pullAll', + 'pullAt', 'random', 'range', 'rangeRight', 'rearg', 'reject', 'remove', + 'repeat', 'restFrom', 'result', 'sampleSize', 'some', 'sortBy', 'sortedIndex', + 'sortedIndexOf', 'sortedLastIndex', 'sortedLastIndexOf', 'sortedUniqBy', + 'split', 'spreadFrom', 'startsWith', 'subtract', 'sumBy', 'take', 'takeRight', + 'takeRightWhile', 'takeWhile', 'tap', 'throttle', 'thru', 'times', 'trimChars', + 'trimCharsEnd', 'trimCharsStart', 'truncate', 'union', 'uniqBy', 'uniqWith', + 'unset', 'unzipWith', 'without', 'wrap', 'xor', 'zip', 'zipObject', + 'zipObjectDeep' + ], + '3': [ + 'assignInWith', 'assignWith', 'clamp', 'differenceBy', 'differenceWith', + 'findFrom', 'findIndexFrom', 'findLastFrom', 'findLastIndexFrom', 'getOr', + 'includesFrom', 'indexOfFrom', 'inRange', 'intersectionBy', 'intersectionWith', + 'invokeArgs', 'invokeArgsMap', 'isEqualWith', 'isMatchWith', 'flatMapDepth', + 'lastIndexOfFrom', 'mergeWith', 'orderBy', 'padChars', 'padCharsEnd', + 'padCharsStart', 'pullAllBy', 'pullAllWith', 'rangeStep', 'rangeStepRight', + 'reduce', 'reduceRight', 'replace', 'set', 'slice', 'sortedIndexBy', + 'sortedLastIndexBy', 'transform', 'unionBy', 'unionWith', 'update', 'xorBy', + 'xorWith', 'zipWith' + ], + '4': [ + 'fill', 'setWith', 'updateWith' + ] +}; + +/** Used to map ary to rearg configs. */ +exports.aryRearg = { + '2': [1, 0], + '3': [2, 0, 1], + '4': [3, 2, 0, 1] +}; + +/** Used to map method names to their iteratee ary. */ +exports.iterateeAry = { + 'dropRightWhile': 1, + 'dropWhile': 1, + 'every': 1, + 'filter': 1, + 'find': 1, + 'findFrom': 1, + 'findIndex': 1, + 'findIndexFrom': 1, + 'findKey': 1, + 'findLast': 1, + 'findLastFrom': 1, + 'findLastIndex': 1, + 'findLastIndexFrom': 1, + 'findLastKey': 1, + 'flatMap': 1, + 'flatMapDeep': 1, + 'flatMapDepth': 1, + 'forEach': 1, + 'forEachRight': 1, + 'forIn': 1, + 'forInRight': 1, + 'forOwn': 1, + 'forOwnRight': 1, + 'map': 1, + 'mapKeys': 1, + 'mapValues': 1, + 'partition': 1, + 'reduce': 2, + 'reduceRight': 2, + 'reject': 1, + 'remove': 1, + 'some': 1, + 'takeRightWhile': 1, + 'takeWhile': 1, + 'times': 1, + 'transform': 2 +}; + +/** Used to map method names to iteratee rearg configs. */ +exports.iterateeRearg = { + 'mapKeys': [1], + 'reduceRight': [1, 0] +}; + +/** Used to map method names to rearg configs. */ +exports.methodRearg = { + 'assignInAllWith': [1, 0], + 'assignInWith': [1, 2, 0], + 'assignAllWith': [1, 0], + 'assignWith': [1, 2, 0], + 'differenceBy': [1, 2, 0], + 'differenceWith': [1, 2, 0], + 'getOr': [2, 1, 0], + 'intersectionBy': [1, 2, 0], + 'intersectionWith': [1, 2, 0], + 'isEqualWith': [1, 2, 0], + 'isMatchWith': [2, 1, 0], + 'mergeAllWith': [1, 0], + 'mergeWith': [1, 2, 0], + 'padChars': [2, 1, 0], + 'padCharsEnd': [2, 1, 0], + 'padCharsStart': [2, 1, 0], + 'pullAllBy': [2, 1, 0], + 'pullAllWith': [2, 1, 0], + 'rangeStep': [1, 2, 0], + 'rangeStepRight': [1, 2, 0], + 'setWith': [3, 1, 2, 0], + 'sortedIndexBy': [2, 1, 0], + 'sortedLastIndexBy': [2, 1, 0], + 'unionBy': [1, 2, 0], + 'unionWith': [1, 2, 0], + 'updateWith': [3, 1, 2, 0], + 'xorBy': [1, 2, 0], + 'xorWith': [1, 2, 0], + 'zipWith': [1, 2, 0] +}; + +/** Used to map method names to spread configs. */ +exports.methodSpread = { + 'assignAll': { 'start': 0 }, + 'assignAllWith': { 'start': 0 }, + 'assignInAll': { 'start': 0 }, + 'assignInAllWith': { 'start': 0 }, + 'defaultsAll': { 'start': 0 }, + 'defaultsDeepAll': { 'start': 0 }, + 'invokeArgs': { 'start': 2 }, + 'invokeArgsMap': { 'start': 2 }, + 'mergeAll': { 'start': 0 }, + 'mergeAllWith': { 'start': 0 }, + 'partial': { 'start': 1 }, + 'partialRight': { 'start': 1 }, + 'without': { 'start': 1 }, + 'zipAll': { 'start': 0 } +}; + +/** Used to identify methods which mutate arrays or objects. */ +exports.mutate = { + 'array': { + 'fill': true, + 'pull': true, + 'pullAll': true, + 'pullAllBy': true, + 'pullAllWith': true, + 'pullAt': true, + 'remove': true, + 'reverse': true + }, + 'object': { + 'assign': true, + 'assignAll': true, + 'assignAllWith': true, + 'assignIn': true, + 'assignInAll': true, + 'assignInAllWith': true, + 'assignInWith': true, + 'assignWith': true, + 'defaults': true, + 'defaultsAll': true, + 'defaultsDeep': true, + 'defaultsDeepAll': true, + 'merge': true, + 'mergeAll': true, + 'mergeAllWith': true, + 'mergeWith': true, + }, + 'set': { + 'set': true, + 'setWith': true, + 'unset': true, + 'update': true, + 'updateWith': true + } +}; + +/** Used to map real names to their aliases. */ +exports.realToAlias = (function() { + var hasOwnProperty = Object.prototype.hasOwnProperty, + object = exports.aliasToReal, + result = {}; + + for (var key in object) { + var value = object[key]; + if (hasOwnProperty.call(result, value)) { + result[value].push(key); + } else { + result[value] = [key]; + } + } + return result; +}()); + +/** Used to map method names to other names. */ +exports.remap = { + 'assignAll': 'assign', + 'assignAllWith': 'assignWith', + 'assignInAll': 'assignIn', + 'assignInAllWith': 'assignInWith', + 'curryN': 'curry', + 'curryRightN': 'curryRight', + 'defaultsAll': 'defaults', + 'defaultsDeepAll': 'defaultsDeep', + 'findFrom': 'find', + 'findIndexFrom': 'findIndex', + 'findLastFrom': 'findLast', + 'findLastIndexFrom': 'findLastIndex', + 'getOr': 'get', + 'includesFrom': 'includes', + 'indexOfFrom': 'indexOf', + 'invokeArgs': 'invoke', + 'invokeArgsMap': 'invokeMap', + 'lastIndexOfFrom': 'lastIndexOf', + 'mergeAll': 'merge', + 'mergeAllWith': 'mergeWith', + 'padChars': 'pad', + 'padCharsEnd': 'padEnd', + 'padCharsStart': 'padStart', + 'propertyOf': 'get', + 'rangeStep': 'range', + 'rangeStepRight': 'rangeRight', + 'restFrom': 'rest', + 'spreadFrom': 'spread', + 'trimChars': 'trim', + 'trimCharsEnd': 'trimEnd', + 'trimCharsStart': 'trimStart', + 'zipAll': 'zip' +}; + +/** Used to track methods that skip fixing their arity. */ +exports.skipFixed = { + 'castArray': true, + 'flow': true, + 'flowRight': true, + 'iteratee': true, + 'mixin': true, + 'rearg': true, + 'runInContext': true +}; + +/** Used to track methods that skip rearranging arguments. */ +exports.skipRearg = { + 'add': true, + 'assign': true, + 'assignIn': true, + 'bind': true, + 'bindKey': true, + 'concat': true, + 'difference': true, + 'divide': true, + 'eq': true, + 'gt': true, + 'gte': true, + 'isEqual': true, + 'lt': true, + 'lte': true, + 'matchesProperty': true, + 'merge': true, + 'multiply': true, + 'overArgs': true, + 'partial': true, + 'partialRight': true, + 'propertyOf': true, + 'random': true, + 'range': true, + 'rangeRight': true, + 'subtract': true, + 'zip': true, + 'zipObject': true, + 'zipObjectDeep': true +}; diff --git a/node_modules/lodash/fp/_util.js b/node_modules/lodash/fp/_util.js new file mode 100644 index 0000000..1dbf36f --- /dev/null +++ b/node_modules/lodash/fp/_util.js @@ -0,0 +1,16 @@ +module.exports = { + 'ary': require('../ary'), + 'assign': require('../_baseAssign'), + 'clone': require('../clone'), + 'curry': require('../curry'), + 'forEach': require('../_arrayEach'), + 'isArray': require('../isArray'), + 'isError': require('../isError'), + 'isFunction': require('../isFunction'), + 'isWeakMap': require('../isWeakMap'), + 'iteratee': require('../iteratee'), + 'keys': require('../_baseKeys'), + 'rearg': require('../rearg'), + 'toInteger': require('../toInteger'), + 'toPath': require('../toPath') +}; diff --git a/node_modules/lodash/fp/add.js b/node_modules/lodash/fp/add.js new file mode 100644 index 0000000..816eeec --- /dev/null +++ b/node_modules/lodash/fp/add.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('add', require('../add')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/after.js b/node_modules/lodash/fp/after.js new file mode 100644 index 0000000..21a0167 --- /dev/null +++ b/node_modules/lodash/fp/after.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('after', require('../after')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/all.js b/node_modules/lodash/fp/all.js new file mode 100644 index 0000000..d0839f7 --- /dev/null +++ b/node_modules/lodash/fp/all.js @@ -0,0 +1 @@ +module.exports = require('./every'); diff --git a/node_modules/lodash/fp/allPass.js b/node_modules/lodash/fp/allPass.js new file mode 100644 index 0000000..79b73ef --- /dev/null +++ b/node_modules/lodash/fp/allPass.js @@ -0,0 +1 @@ +module.exports = require('./overEvery'); diff --git a/node_modules/lodash/fp/always.js b/node_modules/lodash/fp/always.js new file mode 100644 index 0000000..9887703 --- /dev/null +++ b/node_modules/lodash/fp/always.js @@ -0,0 +1 @@ +module.exports = require('./constant'); diff --git a/node_modules/lodash/fp/any.js b/node_modules/lodash/fp/any.js new file mode 100644 index 0000000..900ac25 --- /dev/null +++ b/node_modules/lodash/fp/any.js @@ -0,0 +1 @@ +module.exports = require('./some'); diff --git a/node_modules/lodash/fp/anyPass.js b/node_modules/lodash/fp/anyPass.js new file mode 100644 index 0000000..2774ab3 --- /dev/null +++ b/node_modules/lodash/fp/anyPass.js @@ -0,0 +1 @@ +module.exports = require('./overSome'); diff --git a/node_modules/lodash/fp/apply.js b/node_modules/lodash/fp/apply.js new file mode 100644 index 0000000..2b75712 --- /dev/null +++ b/node_modules/lodash/fp/apply.js @@ -0,0 +1 @@ +module.exports = require('./spread'); diff --git a/node_modules/lodash/fp/array.js b/node_modules/lodash/fp/array.js new file mode 100644 index 0000000..fe939c2 --- /dev/null +++ b/node_modules/lodash/fp/array.js @@ -0,0 +1,2 @@ +var convert = require('./convert'); +module.exports = convert(require('../array')); diff --git a/node_modules/lodash/fp/ary.js b/node_modules/lodash/fp/ary.js new file mode 100644 index 0000000..8edf187 --- /dev/null +++ b/node_modules/lodash/fp/ary.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('ary', require('../ary')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/assign.js b/node_modules/lodash/fp/assign.js new file mode 100644 index 0000000..23f47af --- /dev/null +++ b/node_modules/lodash/fp/assign.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('assign', require('../assign')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/assignAll.js b/node_modules/lodash/fp/assignAll.js new file mode 100644 index 0000000..b1d36c7 --- /dev/null +++ b/node_modules/lodash/fp/assignAll.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('assignAll', require('../assign')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/assignAllWith.js b/node_modules/lodash/fp/assignAllWith.js new file mode 100644 index 0000000..21e836e --- /dev/null +++ b/node_modules/lodash/fp/assignAllWith.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('assignAllWith', require('../assignWith')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/assignIn.js b/node_modules/lodash/fp/assignIn.js new file mode 100644 index 0000000..6e7c65f --- /dev/null +++ b/node_modules/lodash/fp/assignIn.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('assignIn', require('../assignIn')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/assignInAll.js b/node_modules/lodash/fp/assignInAll.js new file mode 100644 index 0000000..7ba75db --- /dev/null +++ b/node_modules/lodash/fp/assignInAll.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('assignInAll', require('../assignIn')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/assignInAllWith.js b/node_modules/lodash/fp/assignInAllWith.js new file mode 100644 index 0000000..e766903 --- /dev/null +++ b/node_modules/lodash/fp/assignInAllWith.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('assignInAllWith', require('../assignInWith')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/assignInWith.js b/node_modules/lodash/fp/assignInWith.js new file mode 100644 index 0000000..acb5923 --- /dev/null +++ b/node_modules/lodash/fp/assignInWith.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('assignInWith', require('../assignInWith')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/assignWith.js b/node_modules/lodash/fp/assignWith.js new file mode 100644 index 0000000..eb92521 --- /dev/null +++ b/node_modules/lodash/fp/assignWith.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('assignWith', require('../assignWith')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/assoc.js b/node_modules/lodash/fp/assoc.js new file mode 100644 index 0000000..7648820 --- /dev/null +++ b/node_modules/lodash/fp/assoc.js @@ -0,0 +1 @@ +module.exports = require('./set'); diff --git a/node_modules/lodash/fp/assocPath.js b/node_modules/lodash/fp/assocPath.js new file mode 100644 index 0000000..7648820 --- /dev/null +++ b/node_modules/lodash/fp/assocPath.js @@ -0,0 +1 @@ +module.exports = require('./set'); diff --git a/node_modules/lodash/fp/at.js b/node_modules/lodash/fp/at.js new file mode 100644 index 0000000..cc39d25 --- /dev/null +++ b/node_modules/lodash/fp/at.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('at', require('../at')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/attempt.js b/node_modules/lodash/fp/attempt.js new file mode 100644 index 0000000..26ca42e --- /dev/null +++ b/node_modules/lodash/fp/attempt.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('attempt', require('../attempt')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/before.js b/node_modules/lodash/fp/before.js new file mode 100644 index 0000000..7a2de65 --- /dev/null +++ b/node_modules/lodash/fp/before.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('before', require('../before')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/bind.js b/node_modules/lodash/fp/bind.js new file mode 100644 index 0000000..5cbe4f3 --- /dev/null +++ b/node_modules/lodash/fp/bind.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('bind', require('../bind')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/bindAll.js b/node_modules/lodash/fp/bindAll.js new file mode 100644 index 0000000..6b4a4a0 --- /dev/null +++ b/node_modules/lodash/fp/bindAll.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('bindAll', require('../bindAll')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/bindKey.js b/node_modules/lodash/fp/bindKey.js new file mode 100644 index 0000000..6a46c6b --- /dev/null +++ b/node_modules/lodash/fp/bindKey.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('bindKey', require('../bindKey')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/camelCase.js b/node_modules/lodash/fp/camelCase.js new file mode 100644 index 0000000..87b77b4 --- /dev/null +++ b/node_modules/lodash/fp/camelCase.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('camelCase', require('../camelCase'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/capitalize.js b/node_modules/lodash/fp/capitalize.js new file mode 100644 index 0000000..cac74e1 --- /dev/null +++ b/node_modules/lodash/fp/capitalize.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('capitalize', require('../capitalize'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/castArray.js b/node_modules/lodash/fp/castArray.js new file mode 100644 index 0000000..8681c09 --- /dev/null +++ b/node_modules/lodash/fp/castArray.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('castArray', require('../castArray')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/ceil.js b/node_modules/lodash/fp/ceil.js new file mode 100644 index 0000000..f416b72 --- /dev/null +++ b/node_modules/lodash/fp/ceil.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('ceil', require('../ceil')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/chain.js b/node_modules/lodash/fp/chain.js new file mode 100644 index 0000000..604fe39 --- /dev/null +++ b/node_modules/lodash/fp/chain.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('chain', require('../chain'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/chunk.js b/node_modules/lodash/fp/chunk.js new file mode 100644 index 0000000..871ab08 --- /dev/null +++ b/node_modules/lodash/fp/chunk.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('chunk', require('../chunk')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/clamp.js b/node_modules/lodash/fp/clamp.js new file mode 100644 index 0000000..3b06c01 --- /dev/null +++ b/node_modules/lodash/fp/clamp.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('clamp', require('../clamp')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/clone.js b/node_modules/lodash/fp/clone.js new file mode 100644 index 0000000..cadb59c --- /dev/null +++ b/node_modules/lodash/fp/clone.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('clone', require('../clone'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/cloneDeep.js b/node_modules/lodash/fp/cloneDeep.js new file mode 100644 index 0000000..a6107aa --- /dev/null +++ b/node_modules/lodash/fp/cloneDeep.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('cloneDeep', require('../cloneDeep'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/cloneDeepWith.js b/node_modules/lodash/fp/cloneDeepWith.js new file mode 100644 index 0000000..6f01e44 --- /dev/null +++ b/node_modules/lodash/fp/cloneDeepWith.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('cloneDeepWith', require('../cloneDeepWith')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/cloneWith.js b/node_modules/lodash/fp/cloneWith.js new file mode 100644 index 0000000..aa88578 --- /dev/null +++ b/node_modules/lodash/fp/cloneWith.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('cloneWith', require('../cloneWith')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/collection.js b/node_modules/lodash/fp/collection.js new file mode 100644 index 0000000..fc8b328 --- /dev/null +++ b/node_modules/lodash/fp/collection.js @@ -0,0 +1,2 @@ +var convert = require('./convert'); +module.exports = convert(require('../collection')); diff --git a/node_modules/lodash/fp/commit.js b/node_modules/lodash/fp/commit.js new file mode 100644 index 0000000..130a894 --- /dev/null +++ b/node_modules/lodash/fp/commit.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('commit', require('../commit'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/compact.js b/node_modules/lodash/fp/compact.js new file mode 100644 index 0000000..ce8f7a1 --- /dev/null +++ b/node_modules/lodash/fp/compact.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('compact', require('../compact'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/complement.js b/node_modules/lodash/fp/complement.js new file mode 100644 index 0000000..93eb462 --- /dev/null +++ b/node_modules/lodash/fp/complement.js @@ -0,0 +1 @@ +module.exports = require('./negate'); diff --git a/node_modules/lodash/fp/compose.js b/node_modules/lodash/fp/compose.js new file mode 100644 index 0000000..1954e94 --- /dev/null +++ b/node_modules/lodash/fp/compose.js @@ -0,0 +1 @@ +module.exports = require('./flowRight'); diff --git a/node_modules/lodash/fp/concat.js b/node_modules/lodash/fp/concat.js new file mode 100644 index 0000000..e59346a --- /dev/null +++ b/node_modules/lodash/fp/concat.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('concat', require('../concat')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/cond.js b/node_modules/lodash/fp/cond.js new file mode 100644 index 0000000..6a0120e --- /dev/null +++ b/node_modules/lodash/fp/cond.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('cond', require('../cond'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/conforms.js b/node_modules/lodash/fp/conforms.js new file mode 100644 index 0000000..3247f64 --- /dev/null +++ b/node_modules/lodash/fp/conforms.js @@ -0,0 +1 @@ +module.exports = require('./conformsTo'); diff --git a/node_modules/lodash/fp/conformsTo.js b/node_modules/lodash/fp/conformsTo.js new file mode 100644 index 0000000..aa7f41e --- /dev/null +++ b/node_modules/lodash/fp/conformsTo.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('conformsTo', require('../conformsTo')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/constant.js b/node_modules/lodash/fp/constant.js new file mode 100644 index 0000000..9e406fc --- /dev/null +++ b/node_modules/lodash/fp/constant.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('constant', require('../constant'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/contains.js b/node_modules/lodash/fp/contains.js new file mode 100644 index 0000000..594722a --- /dev/null +++ b/node_modules/lodash/fp/contains.js @@ -0,0 +1 @@ +module.exports = require('./includes'); diff --git a/node_modules/lodash/fp/convert.js b/node_modules/lodash/fp/convert.js new file mode 100644 index 0000000..4795dc4 --- /dev/null +++ b/node_modules/lodash/fp/convert.js @@ -0,0 +1,18 @@ +var baseConvert = require('./_baseConvert'), + util = require('./_util'); + +/** + * Converts `func` of `name` to an immutable auto-curried iteratee-first data-last + * version with conversion `options` applied. If `name` is an object its methods + * will be converted. + * + * @param {string} name The name of the function to wrap. + * @param {Function} [func] The function to wrap. + * @param {Object} [options] The options object. See `baseConvert` for more details. + * @returns {Function|Object} Returns the converted function or object. + */ +function convert(name, func, options) { + return baseConvert(util, name, func, options); +} + +module.exports = convert; diff --git a/node_modules/lodash/fp/countBy.js b/node_modules/lodash/fp/countBy.js new file mode 100644 index 0000000..dfa4643 --- /dev/null +++ b/node_modules/lodash/fp/countBy.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('countBy', require('../countBy')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/create.js b/node_modules/lodash/fp/create.js new file mode 100644 index 0000000..752025f --- /dev/null +++ b/node_modules/lodash/fp/create.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('create', require('../create')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/curry.js b/node_modules/lodash/fp/curry.js new file mode 100644 index 0000000..b0b4168 --- /dev/null +++ b/node_modules/lodash/fp/curry.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('curry', require('../curry')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/curryN.js b/node_modules/lodash/fp/curryN.js new file mode 100644 index 0000000..2ae7d00 --- /dev/null +++ b/node_modules/lodash/fp/curryN.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('curryN', require('../curry')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/curryRight.js b/node_modules/lodash/fp/curryRight.js new file mode 100644 index 0000000..cb619eb --- /dev/null +++ b/node_modules/lodash/fp/curryRight.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('curryRight', require('../curryRight')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/curryRightN.js b/node_modules/lodash/fp/curryRightN.js new file mode 100644 index 0000000..2495afc --- /dev/null +++ b/node_modules/lodash/fp/curryRightN.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('curryRightN', require('../curryRight')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/date.js b/node_modules/lodash/fp/date.js new file mode 100644 index 0000000..82cb952 --- /dev/null +++ b/node_modules/lodash/fp/date.js @@ -0,0 +1,2 @@ +var convert = require('./convert'); +module.exports = convert(require('../date')); diff --git a/node_modules/lodash/fp/debounce.js b/node_modules/lodash/fp/debounce.js new file mode 100644 index 0000000..2612229 --- /dev/null +++ b/node_modules/lodash/fp/debounce.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('debounce', require('../debounce')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/deburr.js b/node_modules/lodash/fp/deburr.js new file mode 100644 index 0000000..96463ab --- /dev/null +++ b/node_modules/lodash/fp/deburr.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('deburr', require('../deburr'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/defaultTo.js b/node_modules/lodash/fp/defaultTo.js new file mode 100644 index 0000000..d6b52a4 --- /dev/null +++ b/node_modules/lodash/fp/defaultTo.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('defaultTo', require('../defaultTo')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/defaults.js b/node_modules/lodash/fp/defaults.js new file mode 100644 index 0000000..e1a8e6e --- /dev/null +++ b/node_modules/lodash/fp/defaults.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('defaults', require('../defaults')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/defaultsAll.js b/node_modules/lodash/fp/defaultsAll.js new file mode 100644 index 0000000..238fcc3 --- /dev/null +++ b/node_modules/lodash/fp/defaultsAll.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('defaultsAll', require('../defaults')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/defaultsDeep.js b/node_modules/lodash/fp/defaultsDeep.js new file mode 100644 index 0000000..1f172ff --- /dev/null +++ b/node_modules/lodash/fp/defaultsDeep.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('defaultsDeep', require('../defaultsDeep')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/defaultsDeepAll.js b/node_modules/lodash/fp/defaultsDeepAll.js new file mode 100644 index 0000000..6835f2f --- /dev/null +++ b/node_modules/lodash/fp/defaultsDeepAll.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('defaultsDeepAll', require('../defaultsDeep')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/defer.js b/node_modules/lodash/fp/defer.js new file mode 100644 index 0000000..ec7990f --- /dev/null +++ b/node_modules/lodash/fp/defer.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('defer', require('../defer'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/delay.js b/node_modules/lodash/fp/delay.js new file mode 100644 index 0000000..556dbd5 --- /dev/null +++ b/node_modules/lodash/fp/delay.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('delay', require('../delay')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/difference.js b/node_modules/lodash/fp/difference.js new file mode 100644 index 0000000..2d03765 --- /dev/null +++ b/node_modules/lodash/fp/difference.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('difference', require('../difference')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/differenceBy.js b/node_modules/lodash/fp/differenceBy.js new file mode 100644 index 0000000..2f91491 --- /dev/null +++ b/node_modules/lodash/fp/differenceBy.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('differenceBy', require('../differenceBy')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/differenceWith.js b/node_modules/lodash/fp/differenceWith.js new file mode 100644 index 0000000..bcf5ad2 --- /dev/null +++ b/node_modules/lodash/fp/differenceWith.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('differenceWith', require('../differenceWith')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/dissoc.js b/node_modules/lodash/fp/dissoc.js new file mode 100644 index 0000000..7ec7be1 --- /dev/null +++ b/node_modules/lodash/fp/dissoc.js @@ -0,0 +1 @@ +module.exports = require('./unset'); diff --git a/node_modules/lodash/fp/dissocPath.js b/node_modules/lodash/fp/dissocPath.js new file mode 100644 index 0000000..7ec7be1 --- /dev/null +++ b/node_modules/lodash/fp/dissocPath.js @@ -0,0 +1 @@ +module.exports = require('./unset'); diff --git a/node_modules/lodash/fp/divide.js b/node_modules/lodash/fp/divide.js new file mode 100644 index 0000000..82048c5 --- /dev/null +++ b/node_modules/lodash/fp/divide.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('divide', require('../divide')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/drop.js b/node_modules/lodash/fp/drop.js new file mode 100644 index 0000000..2fa9b4f --- /dev/null +++ b/node_modules/lodash/fp/drop.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('drop', require('../drop')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/dropLast.js b/node_modules/lodash/fp/dropLast.js new file mode 100644 index 0000000..174e525 --- /dev/null +++ b/node_modules/lodash/fp/dropLast.js @@ -0,0 +1 @@ +module.exports = require('./dropRight'); diff --git a/node_modules/lodash/fp/dropLastWhile.js b/node_modules/lodash/fp/dropLastWhile.js new file mode 100644 index 0000000..be2a9d2 --- /dev/null +++ b/node_modules/lodash/fp/dropLastWhile.js @@ -0,0 +1 @@ +module.exports = require('./dropRightWhile'); diff --git a/node_modules/lodash/fp/dropRight.js b/node_modules/lodash/fp/dropRight.js new file mode 100644 index 0000000..e98881f --- /dev/null +++ b/node_modules/lodash/fp/dropRight.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('dropRight', require('../dropRight')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/dropRightWhile.js b/node_modules/lodash/fp/dropRightWhile.js new file mode 100644 index 0000000..cacaa70 --- /dev/null +++ b/node_modules/lodash/fp/dropRightWhile.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('dropRightWhile', require('../dropRightWhile')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/dropWhile.js b/node_modules/lodash/fp/dropWhile.js new file mode 100644 index 0000000..285f864 --- /dev/null +++ b/node_modules/lodash/fp/dropWhile.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('dropWhile', require('../dropWhile')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/each.js b/node_modules/lodash/fp/each.js new file mode 100644 index 0000000..8800f42 --- /dev/null +++ b/node_modules/lodash/fp/each.js @@ -0,0 +1 @@ +module.exports = require('./forEach'); diff --git a/node_modules/lodash/fp/eachRight.js b/node_modules/lodash/fp/eachRight.js new file mode 100644 index 0000000..3252b2a --- /dev/null +++ b/node_modules/lodash/fp/eachRight.js @@ -0,0 +1 @@ +module.exports = require('./forEachRight'); diff --git a/node_modules/lodash/fp/endsWith.js b/node_modules/lodash/fp/endsWith.js new file mode 100644 index 0000000..17dc2a4 --- /dev/null +++ b/node_modules/lodash/fp/endsWith.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('endsWith', require('../endsWith')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/entries.js b/node_modules/lodash/fp/entries.js new file mode 100644 index 0000000..7a88df2 --- /dev/null +++ b/node_modules/lodash/fp/entries.js @@ -0,0 +1 @@ +module.exports = require('./toPairs'); diff --git a/node_modules/lodash/fp/entriesIn.js b/node_modules/lodash/fp/entriesIn.js new file mode 100644 index 0000000..f6c6331 --- /dev/null +++ b/node_modules/lodash/fp/entriesIn.js @@ -0,0 +1 @@ +module.exports = require('./toPairsIn'); diff --git a/node_modules/lodash/fp/eq.js b/node_modules/lodash/fp/eq.js new file mode 100644 index 0000000..9a3d21b --- /dev/null +++ b/node_modules/lodash/fp/eq.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('eq', require('../eq')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/equals.js b/node_modules/lodash/fp/equals.js new file mode 100644 index 0000000..e6a5ce0 --- /dev/null +++ b/node_modules/lodash/fp/equals.js @@ -0,0 +1 @@ +module.exports = require('./isEqual'); diff --git a/node_modules/lodash/fp/escape.js b/node_modules/lodash/fp/escape.js new file mode 100644 index 0000000..52c1fbb --- /dev/null +++ b/node_modules/lodash/fp/escape.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('escape', require('../escape'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/escapeRegExp.js b/node_modules/lodash/fp/escapeRegExp.js new file mode 100644 index 0000000..369b2ef --- /dev/null +++ b/node_modules/lodash/fp/escapeRegExp.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('escapeRegExp', require('../escapeRegExp'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/every.js b/node_modules/lodash/fp/every.js new file mode 100644 index 0000000..95c2776 --- /dev/null +++ b/node_modules/lodash/fp/every.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('every', require('../every')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/extend.js b/node_modules/lodash/fp/extend.js new file mode 100644 index 0000000..e00166c --- /dev/null +++ b/node_modules/lodash/fp/extend.js @@ -0,0 +1 @@ +module.exports = require('./assignIn'); diff --git a/node_modules/lodash/fp/extendAll.js b/node_modules/lodash/fp/extendAll.js new file mode 100644 index 0000000..cc55b64 --- /dev/null +++ b/node_modules/lodash/fp/extendAll.js @@ -0,0 +1 @@ +module.exports = require('./assignInAll'); diff --git a/node_modules/lodash/fp/extendAllWith.js b/node_modules/lodash/fp/extendAllWith.js new file mode 100644 index 0000000..6679d20 --- /dev/null +++ b/node_modules/lodash/fp/extendAllWith.js @@ -0,0 +1 @@ +module.exports = require('./assignInAllWith'); diff --git a/node_modules/lodash/fp/extendWith.js b/node_modules/lodash/fp/extendWith.js new file mode 100644 index 0000000..dbdcb3b --- /dev/null +++ b/node_modules/lodash/fp/extendWith.js @@ -0,0 +1 @@ +module.exports = require('./assignInWith'); diff --git a/node_modules/lodash/fp/fill.js b/node_modules/lodash/fp/fill.js new file mode 100644 index 0000000..b2d47e8 --- /dev/null +++ b/node_modules/lodash/fp/fill.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('fill', require('../fill')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/filter.js b/node_modules/lodash/fp/filter.js new file mode 100644 index 0000000..796d501 --- /dev/null +++ b/node_modules/lodash/fp/filter.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('filter', require('../filter')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/find.js b/node_modules/lodash/fp/find.js new file mode 100644 index 0000000..f805d33 --- /dev/null +++ b/node_modules/lodash/fp/find.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('find', require('../find')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/findFrom.js b/node_modules/lodash/fp/findFrom.js new file mode 100644 index 0000000..da8275e --- /dev/null +++ b/node_modules/lodash/fp/findFrom.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('findFrom', require('../find')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/findIndex.js b/node_modules/lodash/fp/findIndex.js new file mode 100644 index 0000000..8c15fd1 --- /dev/null +++ b/node_modules/lodash/fp/findIndex.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('findIndex', require('../findIndex')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/findIndexFrom.js b/node_modules/lodash/fp/findIndexFrom.js new file mode 100644 index 0000000..32e98cb --- /dev/null +++ b/node_modules/lodash/fp/findIndexFrom.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('findIndexFrom', require('../findIndex')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/findKey.js b/node_modules/lodash/fp/findKey.js new file mode 100644 index 0000000..475bcfa --- /dev/null +++ b/node_modules/lodash/fp/findKey.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('findKey', require('../findKey')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/findLast.js b/node_modules/lodash/fp/findLast.js new file mode 100644 index 0000000..093fe94 --- /dev/null +++ b/node_modules/lodash/fp/findLast.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('findLast', require('../findLast')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/findLastFrom.js b/node_modules/lodash/fp/findLastFrom.js new file mode 100644 index 0000000..76c38fb --- /dev/null +++ b/node_modules/lodash/fp/findLastFrom.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('findLastFrom', require('../findLast')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/findLastIndex.js b/node_modules/lodash/fp/findLastIndex.js new file mode 100644 index 0000000..36986df --- /dev/null +++ b/node_modules/lodash/fp/findLastIndex.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('findLastIndex', require('../findLastIndex')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/findLastIndexFrom.js b/node_modules/lodash/fp/findLastIndexFrom.js new file mode 100644 index 0000000..34c8176 --- /dev/null +++ b/node_modules/lodash/fp/findLastIndexFrom.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('findLastIndexFrom', require('../findLastIndex')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/findLastKey.js b/node_modules/lodash/fp/findLastKey.js new file mode 100644 index 0000000..5f81b60 --- /dev/null +++ b/node_modules/lodash/fp/findLastKey.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('findLastKey', require('../findLastKey')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/first.js b/node_modules/lodash/fp/first.js new file mode 100644 index 0000000..53f4ad1 --- /dev/null +++ b/node_modules/lodash/fp/first.js @@ -0,0 +1 @@ +module.exports = require('./head'); diff --git a/node_modules/lodash/fp/flatMap.js b/node_modules/lodash/fp/flatMap.js new file mode 100644 index 0000000..d01dc4d --- /dev/null +++ b/node_modules/lodash/fp/flatMap.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('flatMap', require('../flatMap')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/flatMapDeep.js b/node_modules/lodash/fp/flatMapDeep.js new file mode 100644 index 0000000..569c42e --- /dev/null +++ b/node_modules/lodash/fp/flatMapDeep.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('flatMapDeep', require('../flatMapDeep')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/flatMapDepth.js b/node_modules/lodash/fp/flatMapDepth.js new file mode 100644 index 0000000..6eb68fd --- /dev/null +++ b/node_modules/lodash/fp/flatMapDepth.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('flatMapDepth', require('../flatMapDepth')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/flatten.js b/node_modules/lodash/fp/flatten.js new file mode 100644 index 0000000..30425d8 --- /dev/null +++ b/node_modules/lodash/fp/flatten.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('flatten', require('../flatten'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/flattenDeep.js b/node_modules/lodash/fp/flattenDeep.js new file mode 100644 index 0000000..aed5db2 --- /dev/null +++ b/node_modules/lodash/fp/flattenDeep.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('flattenDeep', require('../flattenDeep'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/flattenDepth.js b/node_modules/lodash/fp/flattenDepth.js new file mode 100644 index 0000000..ad65e37 --- /dev/null +++ b/node_modules/lodash/fp/flattenDepth.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('flattenDepth', require('../flattenDepth')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/flip.js b/node_modules/lodash/fp/flip.js new file mode 100644 index 0000000..0547e7b --- /dev/null +++ b/node_modules/lodash/fp/flip.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('flip', require('../flip'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/floor.js b/node_modules/lodash/fp/floor.js new file mode 100644 index 0000000..a6cf335 --- /dev/null +++ b/node_modules/lodash/fp/floor.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('floor', require('../floor')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/flow.js b/node_modules/lodash/fp/flow.js new file mode 100644 index 0000000..cd83677 --- /dev/null +++ b/node_modules/lodash/fp/flow.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('flow', require('../flow')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/flowRight.js b/node_modules/lodash/fp/flowRight.js new file mode 100644 index 0000000..972a5b9 --- /dev/null +++ b/node_modules/lodash/fp/flowRight.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('flowRight', require('../flowRight')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/forEach.js b/node_modules/lodash/fp/forEach.js new file mode 100644 index 0000000..2f49452 --- /dev/null +++ b/node_modules/lodash/fp/forEach.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('forEach', require('../forEach')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/forEachRight.js b/node_modules/lodash/fp/forEachRight.js new file mode 100644 index 0000000..3ff9733 --- /dev/null +++ b/node_modules/lodash/fp/forEachRight.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('forEachRight', require('../forEachRight')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/forIn.js b/node_modules/lodash/fp/forIn.js new file mode 100644 index 0000000..9341749 --- /dev/null +++ b/node_modules/lodash/fp/forIn.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('forIn', require('../forIn')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/forInRight.js b/node_modules/lodash/fp/forInRight.js new file mode 100644 index 0000000..cecf8bb --- /dev/null +++ b/node_modules/lodash/fp/forInRight.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('forInRight', require('../forInRight')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/forOwn.js b/node_modules/lodash/fp/forOwn.js new file mode 100644 index 0000000..246449e --- /dev/null +++ b/node_modules/lodash/fp/forOwn.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('forOwn', require('../forOwn')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/forOwnRight.js b/node_modules/lodash/fp/forOwnRight.js new file mode 100644 index 0000000..c5e826e --- /dev/null +++ b/node_modules/lodash/fp/forOwnRight.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('forOwnRight', require('../forOwnRight')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/fromPairs.js b/node_modules/lodash/fp/fromPairs.js new file mode 100644 index 0000000..f8cc596 --- /dev/null +++ b/node_modules/lodash/fp/fromPairs.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('fromPairs', require('../fromPairs')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/function.js b/node_modules/lodash/fp/function.js new file mode 100644 index 0000000..dfe69b1 --- /dev/null +++ b/node_modules/lodash/fp/function.js @@ -0,0 +1,2 @@ +var convert = require('./convert'); +module.exports = convert(require('../function')); diff --git a/node_modules/lodash/fp/functions.js b/node_modules/lodash/fp/functions.js new file mode 100644 index 0000000..09d1bb1 --- /dev/null +++ b/node_modules/lodash/fp/functions.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('functions', require('../functions'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/functionsIn.js b/node_modules/lodash/fp/functionsIn.js new file mode 100644 index 0000000..2cfeb83 --- /dev/null +++ b/node_modules/lodash/fp/functionsIn.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('functionsIn', require('../functionsIn'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/get.js b/node_modules/lodash/fp/get.js new file mode 100644 index 0000000..6d3a328 --- /dev/null +++ b/node_modules/lodash/fp/get.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('get', require('../get')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/getOr.js b/node_modules/lodash/fp/getOr.js new file mode 100644 index 0000000..7dbf771 --- /dev/null +++ b/node_modules/lodash/fp/getOr.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('getOr', require('../get')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/groupBy.js b/node_modules/lodash/fp/groupBy.js new file mode 100644 index 0000000..fc0bc78 --- /dev/null +++ b/node_modules/lodash/fp/groupBy.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('groupBy', require('../groupBy')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/gt.js b/node_modules/lodash/fp/gt.js new file mode 100644 index 0000000..9e57c80 --- /dev/null +++ b/node_modules/lodash/fp/gt.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('gt', require('../gt')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/gte.js b/node_modules/lodash/fp/gte.js new file mode 100644 index 0000000..4584786 --- /dev/null +++ b/node_modules/lodash/fp/gte.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('gte', require('../gte')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/has.js b/node_modules/lodash/fp/has.js new file mode 100644 index 0000000..b901298 --- /dev/null +++ b/node_modules/lodash/fp/has.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('has', require('../has')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/hasIn.js b/node_modules/lodash/fp/hasIn.js new file mode 100644 index 0000000..b3c3d1a --- /dev/null +++ b/node_modules/lodash/fp/hasIn.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('hasIn', require('../hasIn')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/head.js b/node_modules/lodash/fp/head.js new file mode 100644 index 0000000..2694f0a --- /dev/null +++ b/node_modules/lodash/fp/head.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('head', require('../head'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/identical.js b/node_modules/lodash/fp/identical.js new file mode 100644 index 0000000..85563f4 --- /dev/null +++ b/node_modules/lodash/fp/identical.js @@ -0,0 +1 @@ +module.exports = require('./eq'); diff --git a/node_modules/lodash/fp/identity.js b/node_modules/lodash/fp/identity.js new file mode 100644 index 0000000..096415a --- /dev/null +++ b/node_modules/lodash/fp/identity.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('identity', require('../identity'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/inRange.js b/node_modules/lodash/fp/inRange.js new file mode 100644 index 0000000..202d940 --- /dev/null +++ b/node_modules/lodash/fp/inRange.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('inRange', require('../inRange')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/includes.js b/node_modules/lodash/fp/includes.js new file mode 100644 index 0000000..1146780 --- /dev/null +++ b/node_modules/lodash/fp/includes.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('includes', require('../includes')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/includesFrom.js b/node_modules/lodash/fp/includesFrom.js new file mode 100644 index 0000000..683afdb --- /dev/null +++ b/node_modules/lodash/fp/includesFrom.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('includesFrom', require('../includes')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/indexBy.js b/node_modules/lodash/fp/indexBy.js new file mode 100644 index 0000000..7e64bc0 --- /dev/null +++ b/node_modules/lodash/fp/indexBy.js @@ -0,0 +1 @@ +module.exports = require('./keyBy'); diff --git a/node_modules/lodash/fp/indexOf.js b/node_modules/lodash/fp/indexOf.js new file mode 100644 index 0000000..524658e --- /dev/null +++ b/node_modules/lodash/fp/indexOf.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('indexOf', require('../indexOf')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/indexOfFrom.js b/node_modules/lodash/fp/indexOfFrom.js new file mode 100644 index 0000000..d99c822 --- /dev/null +++ b/node_modules/lodash/fp/indexOfFrom.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('indexOfFrom', require('../indexOf')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/init.js b/node_modules/lodash/fp/init.js new file mode 100644 index 0000000..2f88d8b --- /dev/null +++ b/node_modules/lodash/fp/init.js @@ -0,0 +1 @@ +module.exports = require('./initial'); diff --git a/node_modules/lodash/fp/initial.js b/node_modules/lodash/fp/initial.js new file mode 100644 index 0000000..b732ba0 --- /dev/null +++ b/node_modules/lodash/fp/initial.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('initial', require('../initial'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/intersection.js b/node_modules/lodash/fp/intersection.js new file mode 100644 index 0000000..52936d5 --- /dev/null +++ b/node_modules/lodash/fp/intersection.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('intersection', require('../intersection')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/intersectionBy.js b/node_modules/lodash/fp/intersectionBy.js new file mode 100644 index 0000000..72629f2 --- /dev/null +++ b/node_modules/lodash/fp/intersectionBy.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('intersectionBy', require('../intersectionBy')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/intersectionWith.js b/node_modules/lodash/fp/intersectionWith.js new file mode 100644 index 0000000..e064f40 --- /dev/null +++ b/node_modules/lodash/fp/intersectionWith.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('intersectionWith', require('../intersectionWith')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/invert.js b/node_modules/lodash/fp/invert.js new file mode 100644 index 0000000..2d5d1f0 --- /dev/null +++ b/node_modules/lodash/fp/invert.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('invert', require('../invert')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/invertBy.js b/node_modules/lodash/fp/invertBy.js new file mode 100644 index 0000000..63ca97e --- /dev/null +++ b/node_modules/lodash/fp/invertBy.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('invertBy', require('../invertBy')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/invertObj.js b/node_modules/lodash/fp/invertObj.js new file mode 100644 index 0000000..f1d842e --- /dev/null +++ b/node_modules/lodash/fp/invertObj.js @@ -0,0 +1 @@ +module.exports = require('./invert'); diff --git a/node_modules/lodash/fp/invoke.js b/node_modules/lodash/fp/invoke.js new file mode 100644 index 0000000..fcf17f0 --- /dev/null +++ b/node_modules/lodash/fp/invoke.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('invoke', require('../invoke')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/invokeArgs.js b/node_modules/lodash/fp/invokeArgs.js new file mode 100644 index 0000000..d3f2953 --- /dev/null +++ b/node_modules/lodash/fp/invokeArgs.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('invokeArgs', require('../invoke')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/invokeArgsMap.js b/node_modules/lodash/fp/invokeArgsMap.js new file mode 100644 index 0000000..eaa9f84 --- /dev/null +++ b/node_modules/lodash/fp/invokeArgsMap.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('invokeArgsMap', require('../invokeMap')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/invokeMap.js b/node_modules/lodash/fp/invokeMap.js new file mode 100644 index 0000000..6515fd7 --- /dev/null +++ b/node_modules/lodash/fp/invokeMap.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('invokeMap', require('../invokeMap')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isArguments.js b/node_modules/lodash/fp/isArguments.js new file mode 100644 index 0000000..1d93c9e --- /dev/null +++ b/node_modules/lodash/fp/isArguments.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isArguments', require('../isArguments'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isArray.js b/node_modules/lodash/fp/isArray.js new file mode 100644 index 0000000..ba7ade8 --- /dev/null +++ b/node_modules/lodash/fp/isArray.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isArray', require('../isArray'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isArrayBuffer.js b/node_modules/lodash/fp/isArrayBuffer.js new file mode 100644 index 0000000..5088513 --- /dev/null +++ b/node_modules/lodash/fp/isArrayBuffer.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isArrayBuffer', require('../isArrayBuffer'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isArrayLike.js b/node_modules/lodash/fp/isArrayLike.js new file mode 100644 index 0000000..8f1856b --- /dev/null +++ b/node_modules/lodash/fp/isArrayLike.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isArrayLike', require('../isArrayLike'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isArrayLikeObject.js b/node_modules/lodash/fp/isArrayLikeObject.js new file mode 100644 index 0000000..2108498 --- /dev/null +++ b/node_modules/lodash/fp/isArrayLikeObject.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isArrayLikeObject', require('../isArrayLikeObject'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isBoolean.js b/node_modules/lodash/fp/isBoolean.js new file mode 100644 index 0000000..9339f75 --- /dev/null +++ b/node_modules/lodash/fp/isBoolean.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isBoolean', require('../isBoolean'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isBuffer.js b/node_modules/lodash/fp/isBuffer.js new file mode 100644 index 0000000..e60b123 --- /dev/null +++ b/node_modules/lodash/fp/isBuffer.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isBuffer', require('../isBuffer'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isDate.js b/node_modules/lodash/fp/isDate.js new file mode 100644 index 0000000..dc41d08 --- /dev/null +++ b/node_modules/lodash/fp/isDate.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isDate', require('../isDate'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isElement.js b/node_modules/lodash/fp/isElement.js new file mode 100644 index 0000000..18ee039 --- /dev/null +++ b/node_modules/lodash/fp/isElement.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isElement', require('../isElement'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isEmpty.js b/node_modules/lodash/fp/isEmpty.js new file mode 100644 index 0000000..0f4ae84 --- /dev/null +++ b/node_modules/lodash/fp/isEmpty.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isEmpty', require('../isEmpty'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isEqual.js b/node_modules/lodash/fp/isEqual.js new file mode 100644 index 0000000..4138386 --- /dev/null +++ b/node_modules/lodash/fp/isEqual.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isEqual', require('../isEqual')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isEqualWith.js b/node_modules/lodash/fp/isEqualWith.js new file mode 100644 index 0000000..029ff5c --- /dev/null +++ b/node_modules/lodash/fp/isEqualWith.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isEqualWith', require('../isEqualWith')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isError.js b/node_modules/lodash/fp/isError.js new file mode 100644 index 0000000..3dfd81c --- /dev/null +++ b/node_modules/lodash/fp/isError.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isError', require('../isError'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isFinite.js b/node_modules/lodash/fp/isFinite.js new file mode 100644 index 0000000..0b647b8 --- /dev/null +++ b/node_modules/lodash/fp/isFinite.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isFinite', require('../isFinite'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isFunction.js b/node_modules/lodash/fp/isFunction.js new file mode 100644 index 0000000..ff8e5c4 --- /dev/null +++ b/node_modules/lodash/fp/isFunction.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isFunction', require('../isFunction'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isInteger.js b/node_modules/lodash/fp/isInteger.js new file mode 100644 index 0000000..67af4ff --- /dev/null +++ b/node_modules/lodash/fp/isInteger.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isInteger', require('../isInteger'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isLength.js b/node_modules/lodash/fp/isLength.js new file mode 100644 index 0000000..fc101c5 --- /dev/null +++ b/node_modules/lodash/fp/isLength.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isLength', require('../isLength'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isMap.js b/node_modules/lodash/fp/isMap.js new file mode 100644 index 0000000..a209aa6 --- /dev/null +++ b/node_modules/lodash/fp/isMap.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isMap', require('../isMap'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isMatch.js b/node_modules/lodash/fp/isMatch.js new file mode 100644 index 0000000..6264ca1 --- /dev/null +++ b/node_modules/lodash/fp/isMatch.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isMatch', require('../isMatch')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isMatchWith.js b/node_modules/lodash/fp/isMatchWith.js new file mode 100644 index 0000000..d95f319 --- /dev/null +++ b/node_modules/lodash/fp/isMatchWith.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isMatchWith', require('../isMatchWith')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isNaN.js b/node_modules/lodash/fp/isNaN.js new file mode 100644 index 0000000..66a978f --- /dev/null +++ b/node_modules/lodash/fp/isNaN.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isNaN', require('../isNaN'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isNative.js b/node_modules/lodash/fp/isNative.js new file mode 100644 index 0000000..3d775ba --- /dev/null +++ b/node_modules/lodash/fp/isNative.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isNative', require('../isNative'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isNil.js b/node_modules/lodash/fp/isNil.js new file mode 100644 index 0000000..5952c02 --- /dev/null +++ b/node_modules/lodash/fp/isNil.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isNil', require('../isNil'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isNull.js b/node_modules/lodash/fp/isNull.js new file mode 100644 index 0000000..f201a35 --- /dev/null +++ b/node_modules/lodash/fp/isNull.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isNull', require('../isNull'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isNumber.js b/node_modules/lodash/fp/isNumber.js new file mode 100644 index 0000000..a2b5fa0 --- /dev/null +++ b/node_modules/lodash/fp/isNumber.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isNumber', require('../isNumber'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isObject.js b/node_modules/lodash/fp/isObject.js new file mode 100644 index 0000000..231ace0 --- /dev/null +++ b/node_modules/lodash/fp/isObject.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isObject', require('../isObject'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isObjectLike.js b/node_modules/lodash/fp/isObjectLike.js new file mode 100644 index 0000000..f16082e --- /dev/null +++ b/node_modules/lodash/fp/isObjectLike.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isObjectLike', require('../isObjectLike'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isPlainObject.js b/node_modules/lodash/fp/isPlainObject.js new file mode 100644 index 0000000..b5bea90 --- /dev/null +++ b/node_modules/lodash/fp/isPlainObject.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isPlainObject', require('../isPlainObject'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isRegExp.js b/node_modules/lodash/fp/isRegExp.js new file mode 100644 index 0000000..12a1a3d --- /dev/null +++ b/node_modules/lodash/fp/isRegExp.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isRegExp', require('../isRegExp'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isSafeInteger.js b/node_modules/lodash/fp/isSafeInteger.js new file mode 100644 index 0000000..7230f55 --- /dev/null +++ b/node_modules/lodash/fp/isSafeInteger.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isSafeInteger', require('../isSafeInteger'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isSet.js b/node_modules/lodash/fp/isSet.js new file mode 100644 index 0000000..35c01f6 --- /dev/null +++ b/node_modules/lodash/fp/isSet.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isSet', require('../isSet'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isString.js b/node_modules/lodash/fp/isString.js new file mode 100644 index 0000000..1fd0679 --- /dev/null +++ b/node_modules/lodash/fp/isString.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isString', require('../isString'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isSymbol.js b/node_modules/lodash/fp/isSymbol.js new file mode 100644 index 0000000..3867695 --- /dev/null +++ b/node_modules/lodash/fp/isSymbol.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isSymbol', require('../isSymbol'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isTypedArray.js b/node_modules/lodash/fp/isTypedArray.js new file mode 100644 index 0000000..8567953 --- /dev/null +++ b/node_modules/lodash/fp/isTypedArray.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isTypedArray', require('../isTypedArray'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isUndefined.js b/node_modules/lodash/fp/isUndefined.js new file mode 100644 index 0000000..ddbca31 --- /dev/null +++ b/node_modules/lodash/fp/isUndefined.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isUndefined', require('../isUndefined'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isWeakMap.js b/node_modules/lodash/fp/isWeakMap.js new file mode 100644 index 0000000..ef60c61 --- /dev/null +++ b/node_modules/lodash/fp/isWeakMap.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isWeakMap', require('../isWeakMap'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/isWeakSet.js b/node_modules/lodash/fp/isWeakSet.js new file mode 100644 index 0000000..c99bfaa --- /dev/null +++ b/node_modules/lodash/fp/isWeakSet.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('isWeakSet', require('../isWeakSet'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/iteratee.js b/node_modules/lodash/fp/iteratee.js new file mode 100644 index 0000000..9f0f717 --- /dev/null +++ b/node_modules/lodash/fp/iteratee.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('iteratee', require('../iteratee')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/join.js b/node_modules/lodash/fp/join.js new file mode 100644 index 0000000..a220e00 --- /dev/null +++ b/node_modules/lodash/fp/join.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('join', require('../join')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/juxt.js b/node_modules/lodash/fp/juxt.js new file mode 100644 index 0000000..f71e04e --- /dev/null +++ b/node_modules/lodash/fp/juxt.js @@ -0,0 +1 @@ +module.exports = require('./over'); diff --git a/node_modules/lodash/fp/kebabCase.js b/node_modules/lodash/fp/kebabCase.js new file mode 100644 index 0000000..60737f1 --- /dev/null +++ b/node_modules/lodash/fp/kebabCase.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('kebabCase', require('../kebabCase'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/keyBy.js b/node_modules/lodash/fp/keyBy.js new file mode 100644 index 0000000..9a6a85d --- /dev/null +++ b/node_modules/lodash/fp/keyBy.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('keyBy', require('../keyBy')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/keys.js b/node_modules/lodash/fp/keys.js new file mode 100644 index 0000000..e12bb07 --- /dev/null +++ b/node_modules/lodash/fp/keys.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('keys', require('../keys'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/keysIn.js b/node_modules/lodash/fp/keysIn.js new file mode 100644 index 0000000..f3eb36a --- /dev/null +++ b/node_modules/lodash/fp/keysIn.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('keysIn', require('../keysIn'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/lang.js b/node_modules/lodash/fp/lang.js new file mode 100644 index 0000000..08cc9c1 --- /dev/null +++ b/node_modules/lodash/fp/lang.js @@ -0,0 +1,2 @@ +var convert = require('./convert'); +module.exports = convert(require('../lang')); diff --git a/node_modules/lodash/fp/last.js b/node_modules/lodash/fp/last.js new file mode 100644 index 0000000..0f71699 --- /dev/null +++ b/node_modules/lodash/fp/last.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('last', require('../last'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/lastIndexOf.js b/node_modules/lodash/fp/lastIndexOf.js new file mode 100644 index 0000000..ddf39c3 --- /dev/null +++ b/node_modules/lodash/fp/lastIndexOf.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('lastIndexOf', require('../lastIndexOf')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/lastIndexOfFrom.js b/node_modules/lodash/fp/lastIndexOfFrom.js new file mode 100644 index 0000000..1ff6a0b --- /dev/null +++ b/node_modules/lodash/fp/lastIndexOfFrom.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('lastIndexOfFrom', require('../lastIndexOf')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/lowerCase.js b/node_modules/lodash/fp/lowerCase.js new file mode 100644 index 0000000..ea64bc1 --- /dev/null +++ b/node_modules/lodash/fp/lowerCase.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('lowerCase', require('../lowerCase'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/lowerFirst.js b/node_modules/lodash/fp/lowerFirst.js new file mode 100644 index 0000000..539720a --- /dev/null +++ b/node_modules/lodash/fp/lowerFirst.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('lowerFirst', require('../lowerFirst'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/lt.js b/node_modules/lodash/fp/lt.js new file mode 100644 index 0000000..a31d21e --- /dev/null +++ b/node_modules/lodash/fp/lt.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('lt', require('../lt')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/lte.js b/node_modules/lodash/fp/lte.js new file mode 100644 index 0000000..d795d10 --- /dev/null +++ b/node_modules/lodash/fp/lte.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('lte', require('../lte')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/map.js b/node_modules/lodash/fp/map.js new file mode 100644 index 0000000..cf98794 --- /dev/null +++ b/node_modules/lodash/fp/map.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('map', require('../map')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/mapKeys.js b/node_modules/lodash/fp/mapKeys.js new file mode 100644 index 0000000..1684587 --- /dev/null +++ b/node_modules/lodash/fp/mapKeys.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('mapKeys', require('../mapKeys')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/mapValues.js b/node_modules/lodash/fp/mapValues.js new file mode 100644 index 0000000..4004972 --- /dev/null +++ b/node_modules/lodash/fp/mapValues.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('mapValues', require('../mapValues')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/matches.js b/node_modules/lodash/fp/matches.js new file mode 100644 index 0000000..29d1e1e --- /dev/null +++ b/node_modules/lodash/fp/matches.js @@ -0,0 +1 @@ +module.exports = require('./isMatch'); diff --git a/node_modules/lodash/fp/matchesProperty.js b/node_modules/lodash/fp/matchesProperty.js new file mode 100644 index 0000000..4575bd2 --- /dev/null +++ b/node_modules/lodash/fp/matchesProperty.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('matchesProperty', require('../matchesProperty')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/math.js b/node_modules/lodash/fp/math.js new file mode 100644 index 0000000..e8f50f7 --- /dev/null +++ b/node_modules/lodash/fp/math.js @@ -0,0 +1,2 @@ +var convert = require('./convert'); +module.exports = convert(require('../math')); diff --git a/node_modules/lodash/fp/max.js b/node_modules/lodash/fp/max.js new file mode 100644 index 0000000..a66acac --- /dev/null +++ b/node_modules/lodash/fp/max.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('max', require('../max'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/maxBy.js b/node_modules/lodash/fp/maxBy.js new file mode 100644 index 0000000..d083fd6 --- /dev/null +++ b/node_modules/lodash/fp/maxBy.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('maxBy', require('../maxBy')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/mean.js b/node_modules/lodash/fp/mean.js new file mode 100644 index 0000000..3117246 --- /dev/null +++ b/node_modules/lodash/fp/mean.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('mean', require('../mean'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/meanBy.js b/node_modules/lodash/fp/meanBy.js new file mode 100644 index 0000000..556f25e --- /dev/null +++ b/node_modules/lodash/fp/meanBy.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('meanBy', require('../meanBy')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/memoize.js b/node_modules/lodash/fp/memoize.js new file mode 100644 index 0000000..638eec6 --- /dev/null +++ b/node_modules/lodash/fp/memoize.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('memoize', require('../memoize')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/merge.js b/node_modules/lodash/fp/merge.js new file mode 100644 index 0000000..ac66add --- /dev/null +++ b/node_modules/lodash/fp/merge.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('merge', require('../merge')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/mergeAll.js b/node_modules/lodash/fp/mergeAll.js new file mode 100644 index 0000000..a3674d6 --- /dev/null +++ b/node_modules/lodash/fp/mergeAll.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('mergeAll', require('../merge')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/mergeAllWith.js b/node_modules/lodash/fp/mergeAllWith.js new file mode 100644 index 0000000..4bd4206 --- /dev/null +++ b/node_modules/lodash/fp/mergeAllWith.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('mergeAllWith', require('../mergeWith')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/mergeWith.js b/node_modules/lodash/fp/mergeWith.js new file mode 100644 index 0000000..00d44d5 --- /dev/null +++ b/node_modules/lodash/fp/mergeWith.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('mergeWith', require('../mergeWith')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/method.js b/node_modules/lodash/fp/method.js new file mode 100644 index 0000000..f4060c6 --- /dev/null +++ b/node_modules/lodash/fp/method.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('method', require('../method')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/methodOf.js b/node_modules/lodash/fp/methodOf.js new file mode 100644 index 0000000..6139905 --- /dev/null +++ b/node_modules/lodash/fp/methodOf.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('methodOf', require('../methodOf')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/min.js b/node_modules/lodash/fp/min.js new file mode 100644 index 0000000..d12c6b4 --- /dev/null +++ b/node_modules/lodash/fp/min.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('min', require('../min'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/minBy.js b/node_modules/lodash/fp/minBy.js new file mode 100644 index 0000000..fdb9e24 --- /dev/null +++ b/node_modules/lodash/fp/minBy.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('minBy', require('../minBy')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/mixin.js b/node_modules/lodash/fp/mixin.js new file mode 100644 index 0000000..332e6fb --- /dev/null +++ b/node_modules/lodash/fp/mixin.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('mixin', require('../mixin')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/multiply.js b/node_modules/lodash/fp/multiply.js new file mode 100644 index 0000000..4dcf0b0 --- /dev/null +++ b/node_modules/lodash/fp/multiply.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('multiply', require('../multiply')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/nAry.js b/node_modules/lodash/fp/nAry.js new file mode 100644 index 0000000..f262a76 --- /dev/null +++ b/node_modules/lodash/fp/nAry.js @@ -0,0 +1 @@ +module.exports = require('./ary'); diff --git a/node_modules/lodash/fp/negate.js b/node_modules/lodash/fp/negate.js new file mode 100644 index 0000000..8b6dc7c --- /dev/null +++ b/node_modules/lodash/fp/negate.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('negate', require('../negate'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/next.js b/node_modules/lodash/fp/next.js new file mode 100644 index 0000000..140155e --- /dev/null +++ b/node_modules/lodash/fp/next.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('next', require('../next'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/noop.js b/node_modules/lodash/fp/noop.js new file mode 100644 index 0000000..b9e32cc --- /dev/null +++ b/node_modules/lodash/fp/noop.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('noop', require('../noop'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/now.js b/node_modules/lodash/fp/now.js new file mode 100644 index 0000000..6de2068 --- /dev/null +++ b/node_modules/lodash/fp/now.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('now', require('../now'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/nth.js b/node_modules/lodash/fp/nth.js new file mode 100644 index 0000000..da4fda7 --- /dev/null +++ b/node_modules/lodash/fp/nth.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('nth', require('../nth')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/nthArg.js b/node_modules/lodash/fp/nthArg.js new file mode 100644 index 0000000..fce3165 --- /dev/null +++ b/node_modules/lodash/fp/nthArg.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('nthArg', require('../nthArg')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/number.js b/node_modules/lodash/fp/number.js new file mode 100644 index 0000000..5c10b88 --- /dev/null +++ b/node_modules/lodash/fp/number.js @@ -0,0 +1,2 @@ +var convert = require('./convert'); +module.exports = convert(require('../number')); diff --git a/node_modules/lodash/fp/object.js b/node_modules/lodash/fp/object.js new file mode 100644 index 0000000..ae39a13 --- /dev/null +++ b/node_modules/lodash/fp/object.js @@ -0,0 +1,2 @@ +var convert = require('./convert'); +module.exports = convert(require('../object')); diff --git a/node_modules/lodash/fp/omit.js b/node_modules/lodash/fp/omit.js new file mode 100644 index 0000000..fd68529 --- /dev/null +++ b/node_modules/lodash/fp/omit.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('omit', require('../omit')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/omitAll.js b/node_modules/lodash/fp/omitAll.js new file mode 100644 index 0000000..144cf4b --- /dev/null +++ b/node_modules/lodash/fp/omitAll.js @@ -0,0 +1 @@ +module.exports = require('./omit'); diff --git a/node_modules/lodash/fp/omitBy.js b/node_modules/lodash/fp/omitBy.js new file mode 100644 index 0000000..90df738 --- /dev/null +++ b/node_modules/lodash/fp/omitBy.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('omitBy', require('../omitBy')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/once.js b/node_modules/lodash/fp/once.js new file mode 100644 index 0000000..f8f0a5c --- /dev/null +++ b/node_modules/lodash/fp/once.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('once', require('../once'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/orderBy.js b/node_modules/lodash/fp/orderBy.js new file mode 100644 index 0000000..848e210 --- /dev/null +++ b/node_modules/lodash/fp/orderBy.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('orderBy', require('../orderBy')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/over.js b/node_modules/lodash/fp/over.js new file mode 100644 index 0000000..01eba7b --- /dev/null +++ b/node_modules/lodash/fp/over.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('over', require('../over')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/overArgs.js b/node_modules/lodash/fp/overArgs.js new file mode 100644 index 0000000..738556f --- /dev/null +++ b/node_modules/lodash/fp/overArgs.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('overArgs', require('../overArgs')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/overEvery.js b/node_modules/lodash/fp/overEvery.js new file mode 100644 index 0000000..9f5a032 --- /dev/null +++ b/node_modules/lodash/fp/overEvery.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('overEvery', require('../overEvery')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/overSome.js b/node_modules/lodash/fp/overSome.js new file mode 100644 index 0000000..15939d5 --- /dev/null +++ b/node_modules/lodash/fp/overSome.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('overSome', require('../overSome')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/pad.js b/node_modules/lodash/fp/pad.js new file mode 100644 index 0000000..f1dea4a --- /dev/null +++ b/node_modules/lodash/fp/pad.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('pad', require('../pad')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/padChars.js b/node_modules/lodash/fp/padChars.js new file mode 100644 index 0000000..d6e0804 --- /dev/null +++ b/node_modules/lodash/fp/padChars.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('padChars', require('../pad')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/padCharsEnd.js b/node_modules/lodash/fp/padCharsEnd.js new file mode 100644 index 0000000..d4ab79a --- /dev/null +++ b/node_modules/lodash/fp/padCharsEnd.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('padCharsEnd', require('../padEnd')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/padCharsStart.js b/node_modules/lodash/fp/padCharsStart.js new file mode 100644 index 0000000..a08a300 --- /dev/null +++ b/node_modules/lodash/fp/padCharsStart.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('padCharsStart', require('../padStart')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/padEnd.js b/node_modules/lodash/fp/padEnd.js new file mode 100644 index 0000000..a8522ec --- /dev/null +++ b/node_modules/lodash/fp/padEnd.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('padEnd', require('../padEnd')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/padStart.js b/node_modules/lodash/fp/padStart.js new file mode 100644 index 0000000..f4ca79d --- /dev/null +++ b/node_modules/lodash/fp/padStart.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('padStart', require('../padStart')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/parseInt.js b/node_modules/lodash/fp/parseInt.js new file mode 100644 index 0000000..27314cc --- /dev/null +++ b/node_modules/lodash/fp/parseInt.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('parseInt', require('../parseInt')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/partial.js b/node_modules/lodash/fp/partial.js new file mode 100644 index 0000000..5d46015 --- /dev/null +++ b/node_modules/lodash/fp/partial.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('partial', require('../partial')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/partialRight.js b/node_modules/lodash/fp/partialRight.js new file mode 100644 index 0000000..7f05fed --- /dev/null +++ b/node_modules/lodash/fp/partialRight.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('partialRight', require('../partialRight')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/partition.js b/node_modules/lodash/fp/partition.js new file mode 100644 index 0000000..2ebcacc --- /dev/null +++ b/node_modules/lodash/fp/partition.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('partition', require('../partition')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/path.js b/node_modules/lodash/fp/path.js new file mode 100644 index 0000000..b29cfb2 --- /dev/null +++ b/node_modules/lodash/fp/path.js @@ -0,0 +1 @@ +module.exports = require('./get'); diff --git a/node_modules/lodash/fp/pathEq.js b/node_modules/lodash/fp/pathEq.js new file mode 100644 index 0000000..36c027a --- /dev/null +++ b/node_modules/lodash/fp/pathEq.js @@ -0,0 +1 @@ +module.exports = require('./matchesProperty'); diff --git a/node_modules/lodash/fp/pathOr.js b/node_modules/lodash/fp/pathOr.js new file mode 100644 index 0000000..4ab5820 --- /dev/null +++ b/node_modules/lodash/fp/pathOr.js @@ -0,0 +1 @@ +module.exports = require('./getOr'); diff --git a/node_modules/lodash/fp/paths.js b/node_modules/lodash/fp/paths.js new file mode 100644 index 0000000..1eb7950 --- /dev/null +++ b/node_modules/lodash/fp/paths.js @@ -0,0 +1 @@ +module.exports = require('./at'); diff --git a/node_modules/lodash/fp/pick.js b/node_modules/lodash/fp/pick.js new file mode 100644 index 0000000..197393d --- /dev/null +++ b/node_modules/lodash/fp/pick.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('pick', require('../pick')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/pickAll.js b/node_modules/lodash/fp/pickAll.js new file mode 100644 index 0000000..a8ecd46 --- /dev/null +++ b/node_modules/lodash/fp/pickAll.js @@ -0,0 +1 @@ +module.exports = require('./pick'); diff --git a/node_modules/lodash/fp/pickBy.js b/node_modules/lodash/fp/pickBy.js new file mode 100644 index 0000000..d832d16 --- /dev/null +++ b/node_modules/lodash/fp/pickBy.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('pickBy', require('../pickBy')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/pipe.js b/node_modules/lodash/fp/pipe.js new file mode 100644 index 0000000..b2e1e2c --- /dev/null +++ b/node_modules/lodash/fp/pipe.js @@ -0,0 +1 @@ +module.exports = require('./flow'); diff --git a/node_modules/lodash/fp/placeholder.js b/node_modules/lodash/fp/placeholder.js new file mode 100644 index 0000000..1ce1739 --- /dev/null +++ b/node_modules/lodash/fp/placeholder.js @@ -0,0 +1,6 @@ +/** + * The default argument placeholder value for methods. + * + * @type {Object} + */ +module.exports = {}; diff --git a/node_modules/lodash/fp/plant.js b/node_modules/lodash/fp/plant.js new file mode 100644 index 0000000..eca8f32 --- /dev/null +++ b/node_modules/lodash/fp/plant.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('plant', require('../plant'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/pluck.js b/node_modules/lodash/fp/pluck.js new file mode 100644 index 0000000..0d1e1ab --- /dev/null +++ b/node_modules/lodash/fp/pluck.js @@ -0,0 +1 @@ +module.exports = require('./map'); diff --git a/node_modules/lodash/fp/prop.js b/node_modules/lodash/fp/prop.js new file mode 100644 index 0000000..b29cfb2 --- /dev/null +++ b/node_modules/lodash/fp/prop.js @@ -0,0 +1 @@ +module.exports = require('./get'); diff --git a/node_modules/lodash/fp/propEq.js b/node_modules/lodash/fp/propEq.js new file mode 100644 index 0000000..36c027a --- /dev/null +++ b/node_modules/lodash/fp/propEq.js @@ -0,0 +1 @@ +module.exports = require('./matchesProperty'); diff --git a/node_modules/lodash/fp/propOr.js b/node_modules/lodash/fp/propOr.js new file mode 100644 index 0000000..4ab5820 --- /dev/null +++ b/node_modules/lodash/fp/propOr.js @@ -0,0 +1 @@ +module.exports = require('./getOr'); diff --git a/node_modules/lodash/fp/property.js b/node_modules/lodash/fp/property.js new file mode 100644 index 0000000..b29cfb2 --- /dev/null +++ b/node_modules/lodash/fp/property.js @@ -0,0 +1 @@ +module.exports = require('./get'); diff --git a/node_modules/lodash/fp/propertyOf.js b/node_modules/lodash/fp/propertyOf.js new file mode 100644 index 0000000..f6273ee --- /dev/null +++ b/node_modules/lodash/fp/propertyOf.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('propertyOf', require('../get')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/props.js b/node_modules/lodash/fp/props.js new file mode 100644 index 0000000..1eb7950 --- /dev/null +++ b/node_modules/lodash/fp/props.js @@ -0,0 +1 @@ +module.exports = require('./at'); diff --git a/node_modules/lodash/fp/pull.js b/node_modules/lodash/fp/pull.js new file mode 100644 index 0000000..8d7084f --- /dev/null +++ b/node_modules/lodash/fp/pull.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('pull', require('../pull')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/pullAll.js b/node_modules/lodash/fp/pullAll.js new file mode 100644 index 0000000..98d5c9a --- /dev/null +++ b/node_modules/lodash/fp/pullAll.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('pullAll', require('../pullAll')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/pullAllBy.js b/node_modules/lodash/fp/pullAllBy.js new file mode 100644 index 0000000..876bc3b --- /dev/null +++ b/node_modules/lodash/fp/pullAllBy.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('pullAllBy', require('../pullAllBy')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/pullAllWith.js b/node_modules/lodash/fp/pullAllWith.js new file mode 100644 index 0000000..f71ba4d --- /dev/null +++ b/node_modules/lodash/fp/pullAllWith.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('pullAllWith', require('../pullAllWith')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/pullAt.js b/node_modules/lodash/fp/pullAt.js new file mode 100644 index 0000000..e8b3bb6 --- /dev/null +++ b/node_modules/lodash/fp/pullAt.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('pullAt', require('../pullAt')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/random.js b/node_modules/lodash/fp/random.js new file mode 100644 index 0000000..99d852e --- /dev/null +++ b/node_modules/lodash/fp/random.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('random', require('../random')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/range.js b/node_modules/lodash/fp/range.js new file mode 100644 index 0000000..a6bb591 --- /dev/null +++ b/node_modules/lodash/fp/range.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('range', require('../range')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/rangeRight.js b/node_modules/lodash/fp/rangeRight.js new file mode 100644 index 0000000..fdb712f --- /dev/null +++ b/node_modules/lodash/fp/rangeRight.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('rangeRight', require('../rangeRight')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/rangeStep.js b/node_modules/lodash/fp/rangeStep.js new file mode 100644 index 0000000..d72dfc2 --- /dev/null +++ b/node_modules/lodash/fp/rangeStep.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('rangeStep', require('../range')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/rangeStepRight.js b/node_modules/lodash/fp/rangeStepRight.js new file mode 100644 index 0000000..8b2a67b --- /dev/null +++ b/node_modules/lodash/fp/rangeStepRight.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('rangeStepRight', require('../rangeRight')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/rearg.js b/node_modules/lodash/fp/rearg.js new file mode 100644 index 0000000..678e02a --- /dev/null +++ b/node_modules/lodash/fp/rearg.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('rearg', require('../rearg')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/reduce.js b/node_modules/lodash/fp/reduce.js new file mode 100644 index 0000000..4cef0a0 --- /dev/null +++ b/node_modules/lodash/fp/reduce.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('reduce', require('../reduce')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/reduceRight.js b/node_modules/lodash/fp/reduceRight.js new file mode 100644 index 0000000..caf5bb5 --- /dev/null +++ b/node_modules/lodash/fp/reduceRight.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('reduceRight', require('../reduceRight')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/reject.js b/node_modules/lodash/fp/reject.js new file mode 100644 index 0000000..c163273 --- /dev/null +++ b/node_modules/lodash/fp/reject.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('reject', require('../reject')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/remove.js b/node_modules/lodash/fp/remove.js new file mode 100644 index 0000000..e9d1327 --- /dev/null +++ b/node_modules/lodash/fp/remove.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('remove', require('../remove')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/repeat.js b/node_modules/lodash/fp/repeat.js new file mode 100644 index 0000000..08470f2 --- /dev/null +++ b/node_modules/lodash/fp/repeat.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('repeat', require('../repeat')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/replace.js b/node_modules/lodash/fp/replace.js new file mode 100644 index 0000000..2227db6 --- /dev/null +++ b/node_modules/lodash/fp/replace.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('replace', require('../replace')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/rest.js b/node_modules/lodash/fp/rest.js new file mode 100644 index 0000000..c1f3d64 --- /dev/null +++ b/node_modules/lodash/fp/rest.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('rest', require('../rest')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/restFrom.js b/node_modules/lodash/fp/restFrom.js new file mode 100644 index 0000000..714e42b --- /dev/null +++ b/node_modules/lodash/fp/restFrom.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('restFrom', require('../rest')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/result.js b/node_modules/lodash/fp/result.js new file mode 100644 index 0000000..f86ce07 --- /dev/null +++ b/node_modules/lodash/fp/result.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('result', require('../result')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/reverse.js b/node_modules/lodash/fp/reverse.js new file mode 100644 index 0000000..07c9f5e --- /dev/null +++ b/node_modules/lodash/fp/reverse.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('reverse', require('../reverse')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/round.js b/node_modules/lodash/fp/round.js new file mode 100644 index 0000000..4c0e5c8 --- /dev/null +++ b/node_modules/lodash/fp/round.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('round', require('../round')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/sample.js b/node_modules/lodash/fp/sample.js new file mode 100644 index 0000000..6bea125 --- /dev/null +++ b/node_modules/lodash/fp/sample.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('sample', require('../sample'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/sampleSize.js b/node_modules/lodash/fp/sampleSize.js new file mode 100644 index 0000000..359ed6f --- /dev/null +++ b/node_modules/lodash/fp/sampleSize.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('sampleSize', require('../sampleSize')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/seq.js b/node_modules/lodash/fp/seq.js new file mode 100644 index 0000000..d8f42b0 --- /dev/null +++ b/node_modules/lodash/fp/seq.js @@ -0,0 +1,2 @@ +var convert = require('./convert'); +module.exports = convert(require('../seq')); diff --git a/node_modules/lodash/fp/set.js b/node_modules/lodash/fp/set.js new file mode 100644 index 0000000..0b56a56 --- /dev/null +++ b/node_modules/lodash/fp/set.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('set', require('../set')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/setWith.js b/node_modules/lodash/fp/setWith.js new file mode 100644 index 0000000..0b58495 --- /dev/null +++ b/node_modules/lodash/fp/setWith.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('setWith', require('../setWith')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/shuffle.js b/node_modules/lodash/fp/shuffle.js new file mode 100644 index 0000000..aa3a1ca --- /dev/null +++ b/node_modules/lodash/fp/shuffle.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('shuffle', require('../shuffle'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/size.js b/node_modules/lodash/fp/size.js new file mode 100644 index 0000000..7490136 --- /dev/null +++ b/node_modules/lodash/fp/size.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('size', require('../size'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/slice.js b/node_modules/lodash/fp/slice.js new file mode 100644 index 0000000..15945d3 --- /dev/null +++ b/node_modules/lodash/fp/slice.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('slice', require('../slice')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/snakeCase.js b/node_modules/lodash/fp/snakeCase.js new file mode 100644 index 0000000..a0ff780 --- /dev/null +++ b/node_modules/lodash/fp/snakeCase.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('snakeCase', require('../snakeCase'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/some.js b/node_modules/lodash/fp/some.js new file mode 100644 index 0000000..a4fa2d0 --- /dev/null +++ b/node_modules/lodash/fp/some.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('some', require('../some')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/sortBy.js b/node_modules/lodash/fp/sortBy.js new file mode 100644 index 0000000..e0790ad --- /dev/null +++ b/node_modules/lodash/fp/sortBy.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('sortBy', require('../sortBy')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/sortedIndex.js b/node_modules/lodash/fp/sortedIndex.js new file mode 100644 index 0000000..364a054 --- /dev/null +++ b/node_modules/lodash/fp/sortedIndex.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('sortedIndex', require('../sortedIndex')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/sortedIndexBy.js b/node_modules/lodash/fp/sortedIndexBy.js new file mode 100644 index 0000000..9593dbd --- /dev/null +++ b/node_modules/lodash/fp/sortedIndexBy.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('sortedIndexBy', require('../sortedIndexBy')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/sortedIndexOf.js b/node_modules/lodash/fp/sortedIndexOf.js new file mode 100644 index 0000000..c9084ca --- /dev/null +++ b/node_modules/lodash/fp/sortedIndexOf.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('sortedIndexOf', require('../sortedIndexOf')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/sortedLastIndex.js b/node_modules/lodash/fp/sortedLastIndex.js new file mode 100644 index 0000000..47fe241 --- /dev/null +++ b/node_modules/lodash/fp/sortedLastIndex.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('sortedLastIndex', require('../sortedLastIndex')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/sortedLastIndexBy.js b/node_modules/lodash/fp/sortedLastIndexBy.js new file mode 100644 index 0000000..0f9a347 --- /dev/null +++ b/node_modules/lodash/fp/sortedLastIndexBy.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('sortedLastIndexBy', require('../sortedLastIndexBy')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/sortedLastIndexOf.js b/node_modules/lodash/fp/sortedLastIndexOf.js new file mode 100644 index 0000000..0d4d932 --- /dev/null +++ b/node_modules/lodash/fp/sortedLastIndexOf.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('sortedLastIndexOf', require('../sortedLastIndexOf')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/sortedUniq.js b/node_modules/lodash/fp/sortedUniq.js new file mode 100644 index 0000000..882d283 --- /dev/null +++ b/node_modules/lodash/fp/sortedUniq.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('sortedUniq', require('../sortedUniq'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/sortedUniqBy.js b/node_modules/lodash/fp/sortedUniqBy.js new file mode 100644 index 0000000..033db91 --- /dev/null +++ b/node_modules/lodash/fp/sortedUniqBy.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('sortedUniqBy', require('../sortedUniqBy')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/split.js b/node_modules/lodash/fp/split.js new file mode 100644 index 0000000..14de1a7 --- /dev/null +++ b/node_modules/lodash/fp/split.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('split', require('../split')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/spread.js b/node_modules/lodash/fp/spread.js new file mode 100644 index 0000000..2d11b70 --- /dev/null +++ b/node_modules/lodash/fp/spread.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('spread', require('../spread')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/spreadFrom.js b/node_modules/lodash/fp/spreadFrom.js new file mode 100644 index 0000000..0b630df --- /dev/null +++ b/node_modules/lodash/fp/spreadFrom.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('spreadFrom', require('../spread')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/startCase.js b/node_modules/lodash/fp/startCase.js new file mode 100644 index 0000000..ada98c9 --- /dev/null +++ b/node_modules/lodash/fp/startCase.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('startCase', require('../startCase'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/startsWith.js b/node_modules/lodash/fp/startsWith.js new file mode 100644 index 0000000..985e2f2 --- /dev/null +++ b/node_modules/lodash/fp/startsWith.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('startsWith', require('../startsWith')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/string.js b/node_modules/lodash/fp/string.js new file mode 100644 index 0000000..773b037 --- /dev/null +++ b/node_modules/lodash/fp/string.js @@ -0,0 +1,2 @@ +var convert = require('./convert'); +module.exports = convert(require('../string')); diff --git a/node_modules/lodash/fp/stubArray.js b/node_modules/lodash/fp/stubArray.js new file mode 100644 index 0000000..cd604cb --- /dev/null +++ b/node_modules/lodash/fp/stubArray.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('stubArray', require('../stubArray'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/stubFalse.js b/node_modules/lodash/fp/stubFalse.js new file mode 100644 index 0000000..3296664 --- /dev/null +++ b/node_modules/lodash/fp/stubFalse.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('stubFalse', require('../stubFalse'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/stubObject.js b/node_modules/lodash/fp/stubObject.js new file mode 100644 index 0000000..c6c8ec4 --- /dev/null +++ b/node_modules/lodash/fp/stubObject.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('stubObject', require('../stubObject'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/stubString.js b/node_modules/lodash/fp/stubString.js new file mode 100644 index 0000000..701051e --- /dev/null +++ b/node_modules/lodash/fp/stubString.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('stubString', require('../stubString'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/stubTrue.js b/node_modules/lodash/fp/stubTrue.js new file mode 100644 index 0000000..9249082 --- /dev/null +++ b/node_modules/lodash/fp/stubTrue.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('stubTrue', require('../stubTrue'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/subtract.js b/node_modules/lodash/fp/subtract.js new file mode 100644 index 0000000..d32b16d --- /dev/null +++ b/node_modules/lodash/fp/subtract.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('subtract', require('../subtract')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/sum.js b/node_modules/lodash/fp/sum.js new file mode 100644 index 0000000..5cce12b --- /dev/null +++ b/node_modules/lodash/fp/sum.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('sum', require('../sum'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/sumBy.js b/node_modules/lodash/fp/sumBy.js new file mode 100644 index 0000000..c882656 --- /dev/null +++ b/node_modules/lodash/fp/sumBy.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('sumBy', require('../sumBy')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/symmetricDifference.js b/node_modules/lodash/fp/symmetricDifference.js new file mode 100644 index 0000000..78c16ad --- /dev/null +++ b/node_modules/lodash/fp/symmetricDifference.js @@ -0,0 +1 @@ +module.exports = require('./xor'); diff --git a/node_modules/lodash/fp/symmetricDifferenceBy.js b/node_modules/lodash/fp/symmetricDifferenceBy.js new file mode 100644 index 0000000..298fc7f --- /dev/null +++ b/node_modules/lodash/fp/symmetricDifferenceBy.js @@ -0,0 +1 @@ +module.exports = require('./xorBy'); diff --git a/node_modules/lodash/fp/symmetricDifferenceWith.js b/node_modules/lodash/fp/symmetricDifferenceWith.js new file mode 100644 index 0000000..70bc6fa --- /dev/null +++ b/node_modules/lodash/fp/symmetricDifferenceWith.js @@ -0,0 +1 @@ +module.exports = require('./xorWith'); diff --git a/node_modules/lodash/fp/tail.js b/node_modules/lodash/fp/tail.js new file mode 100644 index 0000000..f122f0a --- /dev/null +++ b/node_modules/lodash/fp/tail.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('tail', require('../tail'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/take.js b/node_modules/lodash/fp/take.js new file mode 100644 index 0000000..9af98a7 --- /dev/null +++ b/node_modules/lodash/fp/take.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('take', require('../take')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/takeLast.js b/node_modules/lodash/fp/takeLast.js new file mode 100644 index 0000000..e98c84a --- /dev/null +++ b/node_modules/lodash/fp/takeLast.js @@ -0,0 +1 @@ +module.exports = require('./takeRight'); diff --git a/node_modules/lodash/fp/takeLastWhile.js b/node_modules/lodash/fp/takeLastWhile.js new file mode 100644 index 0000000..5367968 --- /dev/null +++ b/node_modules/lodash/fp/takeLastWhile.js @@ -0,0 +1 @@ +module.exports = require('./takeRightWhile'); diff --git a/node_modules/lodash/fp/takeRight.js b/node_modules/lodash/fp/takeRight.js new file mode 100644 index 0000000..b82950a --- /dev/null +++ b/node_modules/lodash/fp/takeRight.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('takeRight', require('../takeRight')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/takeRightWhile.js b/node_modules/lodash/fp/takeRightWhile.js new file mode 100644 index 0000000..8ffb0a2 --- /dev/null +++ b/node_modules/lodash/fp/takeRightWhile.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('takeRightWhile', require('../takeRightWhile')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/takeWhile.js b/node_modules/lodash/fp/takeWhile.js new file mode 100644 index 0000000..2813664 --- /dev/null +++ b/node_modules/lodash/fp/takeWhile.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('takeWhile', require('../takeWhile')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/tap.js b/node_modules/lodash/fp/tap.js new file mode 100644 index 0000000..d33ad6e --- /dev/null +++ b/node_modules/lodash/fp/tap.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('tap', require('../tap')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/template.js b/node_modules/lodash/fp/template.js new file mode 100644 index 0000000..74857e1 --- /dev/null +++ b/node_modules/lodash/fp/template.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('template', require('../template')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/templateSettings.js b/node_modules/lodash/fp/templateSettings.js new file mode 100644 index 0000000..7bcc0a8 --- /dev/null +++ b/node_modules/lodash/fp/templateSettings.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('templateSettings', require('../templateSettings'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/throttle.js b/node_modules/lodash/fp/throttle.js new file mode 100644 index 0000000..77fff14 --- /dev/null +++ b/node_modules/lodash/fp/throttle.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('throttle', require('../throttle')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/thru.js b/node_modules/lodash/fp/thru.js new file mode 100644 index 0000000..d42b3b1 --- /dev/null +++ b/node_modules/lodash/fp/thru.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('thru', require('../thru')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/times.js b/node_modules/lodash/fp/times.js new file mode 100644 index 0000000..0dab06d --- /dev/null +++ b/node_modules/lodash/fp/times.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('times', require('../times')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/toArray.js b/node_modules/lodash/fp/toArray.js new file mode 100644 index 0000000..f0c360a --- /dev/null +++ b/node_modules/lodash/fp/toArray.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('toArray', require('../toArray'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/toFinite.js b/node_modules/lodash/fp/toFinite.js new file mode 100644 index 0000000..3a47687 --- /dev/null +++ b/node_modules/lodash/fp/toFinite.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('toFinite', require('../toFinite'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/toInteger.js b/node_modules/lodash/fp/toInteger.js new file mode 100644 index 0000000..e0af6a7 --- /dev/null +++ b/node_modules/lodash/fp/toInteger.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('toInteger', require('../toInteger'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/toIterator.js b/node_modules/lodash/fp/toIterator.js new file mode 100644 index 0000000..65e6baa --- /dev/null +++ b/node_modules/lodash/fp/toIterator.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('toIterator', require('../toIterator'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/toJSON.js b/node_modules/lodash/fp/toJSON.js new file mode 100644 index 0000000..2d718d0 --- /dev/null +++ b/node_modules/lodash/fp/toJSON.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('toJSON', require('../toJSON'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/toLength.js b/node_modules/lodash/fp/toLength.js new file mode 100644 index 0000000..b97cdd9 --- /dev/null +++ b/node_modules/lodash/fp/toLength.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('toLength', require('../toLength'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/toLower.js b/node_modules/lodash/fp/toLower.js new file mode 100644 index 0000000..616ef36 --- /dev/null +++ b/node_modules/lodash/fp/toLower.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('toLower', require('../toLower'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/toNumber.js b/node_modules/lodash/fp/toNumber.js new file mode 100644 index 0000000..d0c6f4d --- /dev/null +++ b/node_modules/lodash/fp/toNumber.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('toNumber', require('../toNumber'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/toPairs.js b/node_modules/lodash/fp/toPairs.js new file mode 100644 index 0000000..af78378 --- /dev/null +++ b/node_modules/lodash/fp/toPairs.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('toPairs', require('../toPairs'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/toPairsIn.js b/node_modules/lodash/fp/toPairsIn.js new file mode 100644 index 0000000..66504ab --- /dev/null +++ b/node_modules/lodash/fp/toPairsIn.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('toPairsIn', require('../toPairsIn'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/toPath.js b/node_modules/lodash/fp/toPath.js new file mode 100644 index 0000000..b4d5e50 --- /dev/null +++ b/node_modules/lodash/fp/toPath.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('toPath', require('../toPath'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/toPlainObject.js b/node_modules/lodash/fp/toPlainObject.js new file mode 100644 index 0000000..278bb86 --- /dev/null +++ b/node_modules/lodash/fp/toPlainObject.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('toPlainObject', require('../toPlainObject'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/toSafeInteger.js b/node_modules/lodash/fp/toSafeInteger.js new file mode 100644 index 0000000..367a26f --- /dev/null +++ b/node_modules/lodash/fp/toSafeInteger.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('toSafeInteger', require('../toSafeInteger'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/toString.js b/node_modules/lodash/fp/toString.js new file mode 100644 index 0000000..cec4f8e --- /dev/null +++ b/node_modules/lodash/fp/toString.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('toString', require('../toString'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/toUpper.js b/node_modules/lodash/fp/toUpper.js new file mode 100644 index 0000000..54f9a56 --- /dev/null +++ b/node_modules/lodash/fp/toUpper.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('toUpper', require('../toUpper'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/transform.js b/node_modules/lodash/fp/transform.js new file mode 100644 index 0000000..759d088 --- /dev/null +++ b/node_modules/lodash/fp/transform.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('transform', require('../transform')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/trim.js b/node_modules/lodash/fp/trim.js new file mode 100644 index 0000000..e6319a7 --- /dev/null +++ b/node_modules/lodash/fp/trim.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('trim', require('../trim')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/trimChars.js b/node_modules/lodash/fp/trimChars.js new file mode 100644 index 0000000..c9294de --- /dev/null +++ b/node_modules/lodash/fp/trimChars.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('trimChars', require('../trim')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/trimCharsEnd.js b/node_modules/lodash/fp/trimCharsEnd.js new file mode 100644 index 0000000..284bc2f --- /dev/null +++ b/node_modules/lodash/fp/trimCharsEnd.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('trimCharsEnd', require('../trimEnd')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/trimCharsStart.js b/node_modules/lodash/fp/trimCharsStart.js new file mode 100644 index 0000000..ff0ee65 --- /dev/null +++ b/node_modules/lodash/fp/trimCharsStart.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('trimCharsStart', require('../trimStart')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/trimEnd.js b/node_modules/lodash/fp/trimEnd.js new file mode 100644 index 0000000..7190880 --- /dev/null +++ b/node_modules/lodash/fp/trimEnd.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('trimEnd', require('../trimEnd')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/trimStart.js b/node_modules/lodash/fp/trimStart.js new file mode 100644 index 0000000..fda902c --- /dev/null +++ b/node_modules/lodash/fp/trimStart.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('trimStart', require('../trimStart')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/truncate.js b/node_modules/lodash/fp/truncate.js new file mode 100644 index 0000000..d265c1d --- /dev/null +++ b/node_modules/lodash/fp/truncate.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('truncate', require('../truncate')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/unapply.js b/node_modules/lodash/fp/unapply.js new file mode 100644 index 0000000..c5dfe77 --- /dev/null +++ b/node_modules/lodash/fp/unapply.js @@ -0,0 +1 @@ +module.exports = require('./rest'); diff --git a/node_modules/lodash/fp/unary.js b/node_modules/lodash/fp/unary.js new file mode 100644 index 0000000..286c945 --- /dev/null +++ b/node_modules/lodash/fp/unary.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('unary', require('../unary'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/unescape.js b/node_modules/lodash/fp/unescape.js new file mode 100644 index 0000000..fddcb46 --- /dev/null +++ b/node_modules/lodash/fp/unescape.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('unescape', require('../unescape'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/union.js b/node_modules/lodash/fp/union.js new file mode 100644 index 0000000..ef8228d --- /dev/null +++ b/node_modules/lodash/fp/union.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('union', require('../union')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/unionBy.js b/node_modules/lodash/fp/unionBy.js new file mode 100644 index 0000000..603687a --- /dev/null +++ b/node_modules/lodash/fp/unionBy.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('unionBy', require('../unionBy')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/unionWith.js b/node_modules/lodash/fp/unionWith.js new file mode 100644 index 0000000..65bb3a7 --- /dev/null +++ b/node_modules/lodash/fp/unionWith.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('unionWith', require('../unionWith')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/uniq.js b/node_modules/lodash/fp/uniq.js new file mode 100644 index 0000000..bc18524 --- /dev/null +++ b/node_modules/lodash/fp/uniq.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('uniq', require('../uniq'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/uniqBy.js b/node_modules/lodash/fp/uniqBy.js new file mode 100644 index 0000000..634c6a8 --- /dev/null +++ b/node_modules/lodash/fp/uniqBy.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('uniqBy', require('../uniqBy')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/uniqWith.js b/node_modules/lodash/fp/uniqWith.js new file mode 100644 index 0000000..0ec601a --- /dev/null +++ b/node_modules/lodash/fp/uniqWith.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('uniqWith', require('../uniqWith')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/uniqueId.js b/node_modules/lodash/fp/uniqueId.js new file mode 100644 index 0000000..aa8fc2f --- /dev/null +++ b/node_modules/lodash/fp/uniqueId.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('uniqueId', require('../uniqueId')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/unnest.js b/node_modules/lodash/fp/unnest.js new file mode 100644 index 0000000..5d34060 --- /dev/null +++ b/node_modules/lodash/fp/unnest.js @@ -0,0 +1 @@ +module.exports = require('./flatten'); diff --git a/node_modules/lodash/fp/unset.js b/node_modules/lodash/fp/unset.js new file mode 100644 index 0000000..ea203a0 --- /dev/null +++ b/node_modules/lodash/fp/unset.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('unset', require('../unset')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/unzip.js b/node_modules/lodash/fp/unzip.js new file mode 100644 index 0000000..cc364b3 --- /dev/null +++ b/node_modules/lodash/fp/unzip.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('unzip', require('../unzip'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/unzipWith.js b/node_modules/lodash/fp/unzipWith.js new file mode 100644 index 0000000..182eaa1 --- /dev/null +++ b/node_modules/lodash/fp/unzipWith.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('unzipWith', require('../unzipWith')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/update.js b/node_modules/lodash/fp/update.js new file mode 100644 index 0000000..b8ce2cc --- /dev/null +++ b/node_modules/lodash/fp/update.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('update', require('../update')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/updateWith.js b/node_modules/lodash/fp/updateWith.js new file mode 100644 index 0000000..d5e8282 --- /dev/null +++ b/node_modules/lodash/fp/updateWith.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('updateWith', require('../updateWith')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/upperCase.js b/node_modules/lodash/fp/upperCase.js new file mode 100644 index 0000000..c886f20 --- /dev/null +++ b/node_modules/lodash/fp/upperCase.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('upperCase', require('../upperCase'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/upperFirst.js b/node_modules/lodash/fp/upperFirst.js new file mode 100644 index 0000000..d8c04df --- /dev/null +++ b/node_modules/lodash/fp/upperFirst.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('upperFirst', require('../upperFirst'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/useWith.js b/node_modules/lodash/fp/useWith.js new file mode 100644 index 0000000..d8b3df5 --- /dev/null +++ b/node_modules/lodash/fp/useWith.js @@ -0,0 +1 @@ +module.exports = require('./overArgs'); diff --git a/node_modules/lodash/fp/util.js b/node_modules/lodash/fp/util.js new file mode 100644 index 0000000..18c00ba --- /dev/null +++ b/node_modules/lodash/fp/util.js @@ -0,0 +1,2 @@ +var convert = require('./convert'); +module.exports = convert(require('../util')); diff --git a/node_modules/lodash/fp/value.js b/node_modules/lodash/fp/value.js new file mode 100644 index 0000000..555eec7 --- /dev/null +++ b/node_modules/lodash/fp/value.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('value', require('../value'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/valueOf.js b/node_modules/lodash/fp/valueOf.js new file mode 100644 index 0000000..f968807 --- /dev/null +++ b/node_modules/lodash/fp/valueOf.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('valueOf', require('../valueOf'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/values.js b/node_modules/lodash/fp/values.js new file mode 100644 index 0000000..2dfc561 --- /dev/null +++ b/node_modules/lodash/fp/values.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('values', require('../values'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/valuesIn.js b/node_modules/lodash/fp/valuesIn.js new file mode 100644 index 0000000..a1b2bb8 --- /dev/null +++ b/node_modules/lodash/fp/valuesIn.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('valuesIn', require('../valuesIn'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/where.js b/node_modules/lodash/fp/where.js new file mode 100644 index 0000000..3247f64 --- /dev/null +++ b/node_modules/lodash/fp/where.js @@ -0,0 +1 @@ +module.exports = require('./conformsTo'); diff --git a/node_modules/lodash/fp/whereEq.js b/node_modules/lodash/fp/whereEq.js new file mode 100644 index 0000000..29d1e1e --- /dev/null +++ b/node_modules/lodash/fp/whereEq.js @@ -0,0 +1 @@ +module.exports = require('./isMatch'); diff --git a/node_modules/lodash/fp/without.js b/node_modules/lodash/fp/without.js new file mode 100644 index 0000000..bad9e12 --- /dev/null +++ b/node_modules/lodash/fp/without.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('without', require('../without')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/words.js b/node_modules/lodash/fp/words.js new file mode 100644 index 0000000..4a90141 --- /dev/null +++ b/node_modules/lodash/fp/words.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('words', require('../words')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/wrap.js b/node_modules/lodash/fp/wrap.js new file mode 100644 index 0000000..e93bd8a --- /dev/null +++ b/node_modules/lodash/fp/wrap.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('wrap', require('../wrap')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/wrapperAt.js b/node_modules/lodash/fp/wrapperAt.js new file mode 100644 index 0000000..8f0a310 --- /dev/null +++ b/node_modules/lodash/fp/wrapperAt.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('wrapperAt', require('../wrapperAt'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/wrapperChain.js b/node_modules/lodash/fp/wrapperChain.js new file mode 100644 index 0000000..2a48ea2 --- /dev/null +++ b/node_modules/lodash/fp/wrapperChain.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('wrapperChain', require('../wrapperChain'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/wrapperLodash.js b/node_modules/lodash/fp/wrapperLodash.js new file mode 100644 index 0000000..a7162d0 --- /dev/null +++ b/node_modules/lodash/fp/wrapperLodash.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('wrapperLodash', require('../wrapperLodash'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/wrapperReverse.js b/node_modules/lodash/fp/wrapperReverse.js new file mode 100644 index 0000000..e1481aa --- /dev/null +++ b/node_modules/lodash/fp/wrapperReverse.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('wrapperReverse', require('../wrapperReverse'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/wrapperValue.js b/node_modules/lodash/fp/wrapperValue.js new file mode 100644 index 0000000..8eb9112 --- /dev/null +++ b/node_modules/lodash/fp/wrapperValue.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('wrapperValue', require('../wrapperValue'), require('./_falseOptions')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/xor.js b/node_modules/lodash/fp/xor.js new file mode 100644 index 0000000..29e2819 --- /dev/null +++ b/node_modules/lodash/fp/xor.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('xor', require('../xor')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/xorBy.js b/node_modules/lodash/fp/xorBy.js new file mode 100644 index 0000000..b355686 --- /dev/null +++ b/node_modules/lodash/fp/xorBy.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('xorBy', require('../xorBy')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/xorWith.js b/node_modules/lodash/fp/xorWith.js new file mode 100644 index 0000000..8e05739 --- /dev/null +++ b/node_modules/lodash/fp/xorWith.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('xorWith', require('../xorWith')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/zip.js b/node_modules/lodash/fp/zip.js new file mode 100644 index 0000000..69e147a --- /dev/null +++ b/node_modules/lodash/fp/zip.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('zip', require('../zip')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/zipAll.js b/node_modules/lodash/fp/zipAll.js new file mode 100644 index 0000000..efa8ccb --- /dev/null +++ b/node_modules/lodash/fp/zipAll.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('zipAll', require('../zip')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/zipObj.js b/node_modules/lodash/fp/zipObj.js new file mode 100644 index 0000000..f4a3453 --- /dev/null +++ b/node_modules/lodash/fp/zipObj.js @@ -0,0 +1 @@ +module.exports = require('./zipObject'); diff --git a/node_modules/lodash/fp/zipObject.js b/node_modules/lodash/fp/zipObject.js new file mode 100644 index 0000000..462dbb6 --- /dev/null +++ b/node_modules/lodash/fp/zipObject.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('zipObject', require('../zipObject')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/zipObjectDeep.js b/node_modules/lodash/fp/zipObjectDeep.js new file mode 100644 index 0000000..53a5d33 --- /dev/null +++ b/node_modules/lodash/fp/zipObjectDeep.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('zipObjectDeep', require('../zipObjectDeep')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fp/zipWith.js b/node_modules/lodash/fp/zipWith.js new file mode 100644 index 0000000..c5cf9e2 --- /dev/null +++ b/node_modules/lodash/fp/zipWith.js @@ -0,0 +1,5 @@ +var convert = require('./convert'), + func = convert('zipWith', require('../zipWith')); + +func.placeholder = require('./placeholder'); +module.exports = func; diff --git a/node_modules/lodash/fromPairs.js b/node_modules/lodash/fromPairs.js new file mode 100644 index 0000000..ee7940d --- /dev/null +++ b/node_modules/lodash/fromPairs.js @@ -0,0 +1,28 @@ +/** + * The inverse of `_.toPairs`; this method returns an object composed + * from key-value `pairs`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} pairs The key-value pairs. + * @returns {Object} Returns the new object. + * @example + * + * _.fromPairs([['a', 1], ['b', 2]]); + * // => { 'a': 1, 'b': 2 } + */ +function fromPairs(pairs) { + var index = -1, + length = pairs == null ? 0 : pairs.length, + result = {}; + + while (++index < length) { + var pair = pairs[index]; + result[pair[0]] = pair[1]; + } + return result; +} + +module.exports = fromPairs; diff --git a/node_modules/lodash/function.js b/node_modules/lodash/function.js new file mode 100644 index 0000000..b0fc6d9 --- /dev/null +++ b/node_modules/lodash/function.js @@ -0,0 +1,25 @@ +module.exports = { + 'after': require('./after'), + 'ary': require('./ary'), + 'before': require('./before'), + 'bind': require('./bind'), + 'bindKey': require('./bindKey'), + 'curry': require('./curry'), + 'curryRight': require('./curryRight'), + 'debounce': require('./debounce'), + 'defer': require('./defer'), + 'delay': require('./delay'), + 'flip': require('./flip'), + 'memoize': require('./memoize'), + 'negate': require('./negate'), + 'once': require('./once'), + 'overArgs': require('./overArgs'), + 'partial': require('./partial'), + 'partialRight': require('./partialRight'), + 'rearg': require('./rearg'), + 'rest': require('./rest'), + 'spread': require('./spread'), + 'throttle': require('./throttle'), + 'unary': require('./unary'), + 'wrap': require('./wrap') +}; diff --git a/node_modules/lodash/functions.js b/node_modules/lodash/functions.js new file mode 100644 index 0000000..9722928 --- /dev/null +++ b/node_modules/lodash/functions.js @@ -0,0 +1,31 @@ +var baseFunctions = require('./_baseFunctions'), + keys = require('./keys'); + +/** + * Creates an array of function property names from own enumerable properties + * of `object`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to inspect. + * @returns {Array} Returns the function names. + * @see _.functionsIn + * @example + * + * function Foo() { + * this.a = _.constant('a'); + * this.b = _.constant('b'); + * } + * + * Foo.prototype.c = _.constant('c'); + * + * _.functions(new Foo); + * // => ['a', 'b'] + */ +function functions(object) { + return object == null ? [] : baseFunctions(object, keys(object)); +} + +module.exports = functions; diff --git a/node_modules/lodash/functionsIn.js b/node_modules/lodash/functionsIn.js new file mode 100644 index 0000000..f00345d --- /dev/null +++ b/node_modules/lodash/functionsIn.js @@ -0,0 +1,31 @@ +var baseFunctions = require('./_baseFunctions'), + keysIn = require('./keysIn'); + +/** + * Creates an array of function property names from own and inherited + * enumerable properties of `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The object to inspect. + * @returns {Array} Returns the function names. + * @see _.functions + * @example + * + * function Foo() { + * this.a = _.constant('a'); + * this.b = _.constant('b'); + * } + * + * Foo.prototype.c = _.constant('c'); + * + * _.functionsIn(new Foo); + * // => ['a', 'b', 'c'] + */ +function functionsIn(object) { + return object == null ? [] : baseFunctions(object, keysIn(object)); +} + +module.exports = functionsIn; diff --git a/node_modules/lodash/get.js b/node_modules/lodash/get.js new file mode 100644 index 0000000..8805ff9 --- /dev/null +++ b/node_modules/lodash/get.js @@ -0,0 +1,33 @@ +var baseGet = require('./_baseGet'); + +/** + * Gets the value at `path` of `object`. If the resolved value is + * `undefined`, the `defaultValue` is returned in its place. + * + * @static + * @memberOf _ + * @since 3.7.0 + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path of the property to get. + * @param {*} [defaultValue] The value returned for `undefined` resolved values. + * @returns {*} Returns the resolved value. + * @example + * + * var object = { 'a': [{ 'b': { 'c': 3 } }] }; + * + * _.get(object, 'a[0].b.c'); + * // => 3 + * + * _.get(object, ['a', '0', 'b', 'c']); + * // => 3 + * + * _.get(object, 'a.b.c', 'default'); + * // => 'default' + */ +function get(object, path, defaultValue) { + var result = object == null ? undefined : baseGet(object, path); + return result === undefined ? defaultValue : result; +} + +module.exports = get; diff --git a/node_modules/lodash/groupBy.js b/node_modules/lodash/groupBy.js new file mode 100644 index 0000000..babf4f6 --- /dev/null +++ b/node_modules/lodash/groupBy.js @@ -0,0 +1,41 @@ +var baseAssignValue = require('./_baseAssignValue'), + createAggregator = require('./_createAggregator'); + +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var hasOwnProperty = objectProto.hasOwnProperty; + +/** + * Creates an object composed of keys generated from the results of running + * each element of `collection` thru `iteratee`. The order of grouped values + * is determined by the order they occur in `collection`. The corresponding + * value of each key is an array of elements responsible for generating the + * key. The iteratee is invoked with one argument: (value). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The iteratee to transform keys. + * @returns {Object} Returns the composed aggregate object. + * @example + * + * _.groupBy([6.1, 4.2, 6.3], Math.floor); + * // => { '4': [4.2], '6': [6.1, 6.3] } + * + * // The `_.property` iteratee shorthand. + * _.groupBy(['one', 'two', 'three'], 'length'); + * // => { '3': ['one', 'two'], '5': ['three'] } + */ +var groupBy = createAggregator(function(result, value, key) { + if (hasOwnProperty.call(result, key)) { + result[key].push(value); + } else { + baseAssignValue(result, key, [value]); + } +}); + +module.exports = groupBy; diff --git a/node_modules/lodash/gt.js b/node_modules/lodash/gt.js new file mode 100644 index 0000000..3a66282 --- /dev/null +++ b/node_modules/lodash/gt.js @@ -0,0 +1,29 @@ +var baseGt = require('./_baseGt'), + createRelationalOperation = require('./_createRelationalOperation'); + +/** + * Checks if `value` is greater than `other`. + * + * @static + * @memberOf _ + * @since 3.9.0 + * @category Lang + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if `value` is greater than `other`, + * else `false`. + * @see _.lt + * @example + * + * _.gt(3, 1); + * // => true + * + * _.gt(3, 3); + * // => false + * + * _.gt(1, 3); + * // => false + */ +var gt = createRelationalOperation(baseGt); + +module.exports = gt; diff --git a/node_modules/lodash/gte.js b/node_modules/lodash/gte.js new file mode 100644 index 0000000..4180a68 --- /dev/null +++ b/node_modules/lodash/gte.js @@ -0,0 +1,30 @@ +var createRelationalOperation = require('./_createRelationalOperation'); + +/** + * Checks if `value` is greater than or equal to `other`. + * + * @static + * @memberOf _ + * @since 3.9.0 + * @category Lang + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if `value` is greater than or equal to + * `other`, else `false`. + * @see _.lte + * @example + * + * _.gte(3, 1); + * // => true + * + * _.gte(3, 3); + * // => true + * + * _.gte(1, 3); + * // => false + */ +var gte = createRelationalOperation(function(value, other) { + return value >= other; +}); + +module.exports = gte; diff --git a/node_modules/lodash/has.js b/node_modules/lodash/has.js new file mode 100644 index 0000000..34df55e --- /dev/null +++ b/node_modules/lodash/has.js @@ -0,0 +1,35 @@ +var baseHas = require('./_baseHas'), + hasPath = require('./_hasPath'); + +/** + * Checks if `path` is a direct property of `object`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path to check. + * @returns {boolean} Returns `true` if `path` exists, else `false`. + * @example + * + * var object = { 'a': { 'b': 2 } }; + * var other = _.create({ 'a': _.create({ 'b': 2 }) }); + * + * _.has(object, 'a'); + * // => true + * + * _.has(object, 'a.b'); + * // => true + * + * _.has(object, ['a', 'b']); + * // => true + * + * _.has(other, 'a'); + * // => false + */ +function has(object, path) { + return object != null && hasPath(object, path, baseHas); +} + +module.exports = has; diff --git a/node_modules/lodash/hasIn.js b/node_modules/lodash/hasIn.js new file mode 100644 index 0000000..06a3686 --- /dev/null +++ b/node_modules/lodash/hasIn.js @@ -0,0 +1,34 @@ +var baseHasIn = require('./_baseHasIn'), + hasPath = require('./_hasPath'); + +/** + * Checks if `path` is a direct or inherited property of `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path to check. + * @returns {boolean} Returns `true` if `path` exists, else `false`. + * @example + * + * var object = _.create({ 'a': _.create({ 'b': 2 }) }); + * + * _.hasIn(object, 'a'); + * // => true + * + * _.hasIn(object, 'a.b'); + * // => true + * + * _.hasIn(object, ['a', 'b']); + * // => true + * + * _.hasIn(object, 'b'); + * // => false + */ +function hasIn(object, path) { + return object != null && hasPath(object, path, baseHasIn); +} + +module.exports = hasIn; diff --git a/node_modules/lodash/head.js b/node_modules/lodash/head.js new file mode 100644 index 0000000..dee9d1f --- /dev/null +++ b/node_modules/lodash/head.js @@ -0,0 +1,23 @@ +/** + * Gets the first element of `array`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @alias first + * @category Array + * @param {Array} array The array to query. + * @returns {*} Returns the first element of `array`. + * @example + * + * _.head([1, 2, 3]); + * // => 1 + * + * _.head([]); + * // => undefined + */ +function head(array) { + return (array && array.length) ? array[0] : undefined; +} + +module.exports = head; diff --git a/node_modules/lodash/identity.js b/node_modules/lodash/identity.js new file mode 100644 index 0000000..2d5d963 --- /dev/null +++ b/node_modules/lodash/identity.js @@ -0,0 +1,21 @@ +/** + * This method returns the first argument it receives. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Util + * @param {*} value Any value. + * @returns {*} Returns `value`. + * @example + * + * var object = { 'a': 1 }; + * + * console.log(_.identity(object) === object); + * // => true + */ +function identity(value) { + return value; +} + +module.exports = identity; diff --git a/node_modules/lodash/inRange.js b/node_modules/lodash/inRange.js new file mode 100644 index 0000000..f20728d --- /dev/null +++ b/node_modules/lodash/inRange.js @@ -0,0 +1,55 @@ +var baseInRange = require('./_baseInRange'), + toFinite = require('./toFinite'), + toNumber = require('./toNumber'); + +/** + * Checks if `n` is between `start` and up to, but not including, `end`. If + * `end` is not specified, it's set to `start` with `start` then set to `0`. + * If `start` is greater than `end` the params are swapped to support + * negative ranges. + * + * @static + * @memberOf _ + * @since 3.3.0 + * @category Number + * @param {number} number The number to check. + * @param {number} [start=0] The start of the range. + * @param {number} end The end of the range. + * @returns {boolean} Returns `true` if `number` is in the range, else `false`. + * @see _.range, _.rangeRight + * @example + * + * _.inRange(3, 2, 4); + * // => true + * + * _.inRange(4, 8); + * // => true + * + * _.inRange(4, 2); + * // => false + * + * _.inRange(2, 2); + * // => false + * + * _.inRange(1.2, 2); + * // => true + * + * _.inRange(5.2, 4); + * // => false + * + * _.inRange(-3, -2, -6); + * // => true + */ +function inRange(number, start, end) { + start = toFinite(start); + if (end === undefined) { + end = start; + start = 0; + } else { + end = toFinite(end); + } + number = toNumber(number); + return baseInRange(number, start, end); +} + +module.exports = inRange; diff --git a/node_modules/lodash/includes.js b/node_modules/lodash/includes.js new file mode 100644 index 0000000..ae0deed --- /dev/null +++ b/node_modules/lodash/includes.js @@ -0,0 +1,53 @@ +var baseIndexOf = require('./_baseIndexOf'), + isArrayLike = require('./isArrayLike'), + isString = require('./isString'), + toInteger = require('./toInteger'), + values = require('./values'); + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeMax = Math.max; + +/** + * Checks if `value` is in `collection`. If `collection` is a string, it's + * checked for a substring of `value`, otherwise + * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * is used for equality comparisons. If `fromIndex` is negative, it's used as + * the offset from the end of `collection`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object|string} collection The collection to inspect. + * @param {*} value The value to search for. + * @param {number} [fromIndex=0] The index to search from. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`. + * @returns {boolean} Returns `true` if `value` is found, else `false`. + * @example + * + * _.includes([1, 2, 3], 1); + * // => true + * + * _.includes([1, 2, 3], 1, 2); + * // => false + * + * _.includes({ 'a': 1, 'b': 2 }, 1); + * // => true + * + * _.includes('abcd', 'bc'); + * // => true + */ +function includes(collection, value, fromIndex, guard) { + collection = isArrayLike(collection) ? collection : values(collection); + fromIndex = (fromIndex && !guard) ? toInteger(fromIndex) : 0; + + var length = collection.length; + if (fromIndex < 0) { + fromIndex = nativeMax(length + fromIndex, 0); + } + return isString(collection) + ? (fromIndex <= length && collection.indexOf(value, fromIndex) > -1) + : (!!length && baseIndexOf(collection, value, fromIndex) > -1); +} + +module.exports = includes; diff --git a/node_modules/lodash/index.js b/node_modules/lodash/index.js new file mode 100644 index 0000000..5d063e2 --- /dev/null +++ b/node_modules/lodash/index.js @@ -0,0 +1 @@ +module.exports = require('./lodash'); \ No newline at end of file diff --git a/node_modules/lodash/indexOf.js b/node_modules/lodash/indexOf.js new file mode 100644 index 0000000..3c644af --- /dev/null +++ b/node_modules/lodash/indexOf.js @@ -0,0 +1,42 @@ +var baseIndexOf = require('./_baseIndexOf'), + toInteger = require('./toInteger'); + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeMax = Math.max; + +/** + * Gets the index at which the first occurrence of `value` is found in `array` + * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. If `fromIndex` is negative, it's used as the + * offset from the end of `array`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} [fromIndex=0] The index to search from. + * @returns {number} Returns the index of the matched value, else `-1`. + * @example + * + * _.indexOf([1, 2, 1, 2], 2); + * // => 1 + * + * // Search from the `fromIndex`. + * _.indexOf([1, 2, 1, 2], 2, 2); + * // => 3 + */ +function indexOf(array, value, fromIndex) { + var length = array == null ? 0 : array.length; + if (!length) { + return -1; + } + var index = fromIndex == null ? 0 : toInteger(fromIndex); + if (index < 0) { + index = nativeMax(length + index, 0); + } + return baseIndexOf(array, value, index); +} + +module.exports = indexOf; diff --git a/node_modules/lodash/initial.js b/node_modules/lodash/initial.js new file mode 100644 index 0000000..f47fc50 --- /dev/null +++ b/node_modules/lodash/initial.js @@ -0,0 +1,22 @@ +var baseSlice = require('./_baseSlice'); + +/** + * Gets all but the last element of `array`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to query. + * @returns {Array} Returns the slice of `array`. + * @example + * + * _.initial([1, 2, 3]); + * // => [1, 2] + */ +function initial(array) { + var length = array == null ? 0 : array.length; + return length ? baseSlice(array, 0, -1) : []; +} + +module.exports = initial; diff --git a/node_modules/lodash/intersection.js b/node_modules/lodash/intersection.js new file mode 100644 index 0000000..a94c135 --- /dev/null +++ b/node_modules/lodash/intersection.js @@ -0,0 +1,30 @@ +var arrayMap = require('./_arrayMap'), + baseIntersection = require('./_baseIntersection'), + baseRest = require('./_baseRest'), + castArrayLikeObject = require('./_castArrayLikeObject'); + +/** + * Creates an array of unique values that are included in all given arrays + * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. The order and references of result values are + * determined by the first array. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @returns {Array} Returns the new array of intersecting values. + * @example + * + * _.intersection([2, 1], [2, 3]); + * // => [2] + */ +var intersection = baseRest(function(arrays) { + var mapped = arrayMap(arrays, castArrayLikeObject); + return (mapped.length && mapped[0] === arrays[0]) + ? baseIntersection(mapped) + : []; +}); + +module.exports = intersection; diff --git a/node_modules/lodash/intersectionBy.js b/node_modules/lodash/intersectionBy.js new file mode 100644 index 0000000..31461aa --- /dev/null +++ b/node_modules/lodash/intersectionBy.js @@ -0,0 +1,45 @@ +var arrayMap = require('./_arrayMap'), + baseIntersection = require('./_baseIntersection'), + baseIteratee = require('./_baseIteratee'), + baseRest = require('./_baseRest'), + castArrayLikeObject = require('./_castArrayLikeObject'), + last = require('./last'); + +/** + * This method is like `_.intersection` except that it accepts `iteratee` + * which is invoked for each element of each `arrays` to generate the criterion + * by which they're compared. The order and references of result values are + * determined by the first array. The iteratee is invoked with one argument: + * (value). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {Array} Returns the new array of intersecting values. + * @example + * + * _.intersectionBy([2.1, 1.2], [2.3, 3.4], Math.floor); + * // => [2.1] + * + * // The `_.property` iteratee shorthand. + * _.intersectionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x'); + * // => [{ 'x': 1 }] + */ +var intersectionBy = baseRest(function(arrays) { + var iteratee = last(arrays), + mapped = arrayMap(arrays, castArrayLikeObject); + + if (iteratee === last(mapped)) { + iteratee = undefined; + } else { + mapped.pop(); + } + return (mapped.length && mapped[0] === arrays[0]) + ? baseIntersection(mapped, baseIteratee(iteratee, 2)) + : []; +}); + +module.exports = intersectionBy; diff --git a/node_modules/lodash/intersectionWith.js b/node_modules/lodash/intersectionWith.js new file mode 100644 index 0000000..63cabfa --- /dev/null +++ b/node_modules/lodash/intersectionWith.js @@ -0,0 +1,41 @@ +var arrayMap = require('./_arrayMap'), + baseIntersection = require('./_baseIntersection'), + baseRest = require('./_baseRest'), + castArrayLikeObject = require('./_castArrayLikeObject'), + last = require('./last'); + +/** + * This method is like `_.intersection` except that it accepts `comparator` + * which is invoked to compare elements of `arrays`. The order and references + * of result values are determined by the first array. The comparator is + * invoked with two arguments: (arrVal, othVal). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new array of intersecting values. + * @example + * + * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]; + * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }]; + * + * _.intersectionWith(objects, others, _.isEqual); + * // => [{ 'x': 1, 'y': 2 }] + */ +var intersectionWith = baseRest(function(arrays) { + var comparator = last(arrays), + mapped = arrayMap(arrays, castArrayLikeObject); + + comparator = typeof comparator == 'function' ? comparator : undefined; + if (comparator) { + mapped.pop(); + } + return (mapped.length && mapped[0] === arrays[0]) + ? baseIntersection(mapped, undefined, comparator) + : []; +}); + +module.exports = intersectionWith; diff --git a/node_modules/lodash/invert.js b/node_modules/lodash/invert.js new file mode 100644 index 0000000..8c47950 --- /dev/null +++ b/node_modules/lodash/invert.js @@ -0,0 +1,42 @@ +var constant = require('./constant'), + createInverter = require('./_createInverter'), + identity = require('./identity'); + +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** + * Used to resolve the + * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring) + * of values. + */ +var nativeObjectToString = objectProto.toString; + +/** + * Creates an object composed of the inverted keys and values of `object`. + * If `object` contains duplicate values, subsequent values overwrite + * property assignments of previous values. + * + * @static + * @memberOf _ + * @since 0.7.0 + * @category Object + * @param {Object} object The object to invert. + * @returns {Object} Returns the new inverted object. + * @example + * + * var object = { 'a': 1, 'b': 2, 'c': 1 }; + * + * _.invert(object); + * // => { '1': 'c', '2': 'b' } + */ +var invert = createInverter(function(result, value, key) { + if (value != null && + typeof value.toString != 'function') { + value = nativeObjectToString.call(value); + } + + result[value] = key; +}, constant(identity)); + +module.exports = invert; diff --git a/node_modules/lodash/invertBy.js b/node_modules/lodash/invertBy.js new file mode 100644 index 0000000..3f4f7e5 --- /dev/null +++ b/node_modules/lodash/invertBy.js @@ -0,0 +1,56 @@ +var baseIteratee = require('./_baseIteratee'), + createInverter = require('./_createInverter'); + +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var hasOwnProperty = objectProto.hasOwnProperty; + +/** + * Used to resolve the + * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring) + * of values. + */ +var nativeObjectToString = objectProto.toString; + +/** + * This method is like `_.invert` except that the inverted object is generated + * from the results of running each element of `object` thru `iteratee`. The + * corresponding inverted value of each inverted key is an array of keys + * responsible for generating the inverted value. The iteratee is invoked + * with one argument: (value). + * + * @static + * @memberOf _ + * @since 4.1.0 + * @category Object + * @param {Object} object The object to invert. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {Object} Returns the new inverted object. + * @example + * + * var object = { 'a': 1, 'b': 2, 'c': 1 }; + * + * _.invertBy(object); + * // => { '1': ['a', 'c'], '2': ['b'] } + * + * _.invertBy(object, function(value) { + * return 'group' + value; + * }); + * // => { 'group1': ['a', 'c'], 'group2': ['b'] } + */ +var invertBy = createInverter(function(result, value, key) { + if (value != null && + typeof value.toString != 'function') { + value = nativeObjectToString.call(value); + } + + if (hasOwnProperty.call(result, value)) { + result[value].push(key); + } else { + result[value] = [key]; + } +}, baseIteratee); + +module.exports = invertBy; diff --git a/node_modules/lodash/invoke.js b/node_modules/lodash/invoke.js new file mode 100644 index 0000000..97d51eb --- /dev/null +++ b/node_modules/lodash/invoke.js @@ -0,0 +1,24 @@ +var baseInvoke = require('./_baseInvoke'), + baseRest = require('./_baseRest'); + +/** + * Invokes the method at `path` of `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path of the method to invoke. + * @param {...*} [args] The arguments to invoke the method with. + * @returns {*} Returns the result of the invoked method. + * @example + * + * var object = { 'a': [{ 'b': { 'c': [1, 2, 3, 4] } }] }; + * + * _.invoke(object, 'a[0].b.c.slice', 1, 3); + * // => [2, 3] + */ +var invoke = baseRest(baseInvoke); + +module.exports = invoke; diff --git a/node_modules/lodash/invokeMap.js b/node_modules/lodash/invokeMap.js new file mode 100644 index 0000000..8da5126 --- /dev/null +++ b/node_modules/lodash/invokeMap.js @@ -0,0 +1,41 @@ +var apply = require('./_apply'), + baseEach = require('./_baseEach'), + baseInvoke = require('./_baseInvoke'), + baseRest = require('./_baseRest'), + isArrayLike = require('./isArrayLike'); + +/** + * Invokes the method at `path` of each element in `collection`, returning + * an array of the results of each invoked method. Any additional arguments + * are provided to each invoked method. If `path` is a function, it's invoked + * for, and `this` bound to, each element in `collection`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Array|Function|string} path The path of the method to invoke or + * the function invoked per iteration. + * @param {...*} [args] The arguments to invoke each method with. + * @returns {Array} Returns the array of results. + * @example + * + * _.invokeMap([[5, 1, 7], [3, 2, 1]], 'sort'); + * // => [[1, 5, 7], [1, 2, 3]] + * + * _.invokeMap([123, 456], String.prototype.split, ''); + * // => [['1', '2', '3'], ['4', '5', '6']] + */ +var invokeMap = baseRest(function(collection, path, args) { + var index = -1, + isFunc = typeof path == 'function', + result = isArrayLike(collection) ? Array(collection.length) : []; + + baseEach(collection, function(value) { + result[++index] = isFunc ? apply(path, value, args) : baseInvoke(value, path, args); + }); + return result; +}); + +module.exports = invokeMap; diff --git a/node_modules/lodash/isArguments.js b/node_modules/lodash/isArguments.js new file mode 100644 index 0000000..8b9ed66 --- /dev/null +++ b/node_modules/lodash/isArguments.js @@ -0,0 +1,36 @@ +var baseIsArguments = require('./_baseIsArguments'), + isObjectLike = require('./isObjectLike'); + +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var hasOwnProperty = objectProto.hasOwnProperty; + +/** Built-in value references. */ +var propertyIsEnumerable = objectProto.propertyIsEnumerable; + +/** + * Checks if `value` is likely an `arguments` object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an `arguments` object, + * else `false`. + * @example + * + * _.isArguments(function() { return arguments; }()); + * // => true + * + * _.isArguments([1, 2, 3]); + * // => false + */ +var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) { + return isObjectLike(value) && hasOwnProperty.call(value, 'callee') && + !propertyIsEnumerable.call(value, 'callee'); +}; + +module.exports = isArguments; diff --git a/node_modules/lodash/isArray.js b/node_modules/lodash/isArray.js new file mode 100644 index 0000000..88ab55f --- /dev/null +++ b/node_modules/lodash/isArray.js @@ -0,0 +1,26 @@ +/** + * Checks if `value` is classified as an `Array` object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an array, else `false`. + * @example + * + * _.isArray([1, 2, 3]); + * // => true + * + * _.isArray(document.body.children); + * // => false + * + * _.isArray('abc'); + * // => false + * + * _.isArray(_.noop); + * // => false + */ +var isArray = Array.isArray; + +module.exports = isArray; diff --git a/node_modules/lodash/isArrayBuffer.js b/node_modules/lodash/isArrayBuffer.js new file mode 100644 index 0000000..12904a6 --- /dev/null +++ b/node_modules/lodash/isArrayBuffer.js @@ -0,0 +1,27 @@ +var baseIsArrayBuffer = require('./_baseIsArrayBuffer'), + baseUnary = require('./_baseUnary'), + nodeUtil = require('./_nodeUtil'); + +/* Node.js helper references. */ +var nodeIsArrayBuffer = nodeUtil && nodeUtil.isArrayBuffer; + +/** + * Checks if `value` is classified as an `ArrayBuffer` object. + * + * @static + * @memberOf _ + * @since 4.3.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an array buffer, else `false`. + * @example + * + * _.isArrayBuffer(new ArrayBuffer(2)); + * // => true + * + * _.isArrayBuffer(new Array(2)); + * // => false + */ +var isArrayBuffer = nodeIsArrayBuffer ? baseUnary(nodeIsArrayBuffer) : baseIsArrayBuffer; + +module.exports = isArrayBuffer; diff --git a/node_modules/lodash/isArrayLike.js b/node_modules/lodash/isArrayLike.js new file mode 100644 index 0000000..0f96680 --- /dev/null +++ b/node_modules/lodash/isArrayLike.js @@ -0,0 +1,33 @@ +var isFunction = require('./isFunction'), + isLength = require('./isLength'); + +/** + * Checks if `value` is array-like. A value is considered array-like if it's + * not a function and has a `value.length` that's an integer greater than or + * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is array-like, else `false`. + * @example + * + * _.isArrayLike([1, 2, 3]); + * // => true + * + * _.isArrayLike(document.body.children); + * // => true + * + * _.isArrayLike('abc'); + * // => true + * + * _.isArrayLike(_.noop); + * // => false + */ +function isArrayLike(value) { + return value != null && isLength(value.length) && !isFunction(value); +} + +module.exports = isArrayLike; diff --git a/node_modules/lodash/isArrayLikeObject.js b/node_modules/lodash/isArrayLikeObject.js new file mode 100644 index 0000000..6c4812a --- /dev/null +++ b/node_modules/lodash/isArrayLikeObject.js @@ -0,0 +1,33 @@ +var isArrayLike = require('./isArrayLike'), + isObjectLike = require('./isObjectLike'); + +/** + * This method is like `_.isArrayLike` except that it also checks if `value` + * is an object. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an array-like object, + * else `false`. + * @example + * + * _.isArrayLikeObject([1, 2, 3]); + * // => true + * + * _.isArrayLikeObject(document.body.children); + * // => true + * + * _.isArrayLikeObject('abc'); + * // => false + * + * _.isArrayLikeObject(_.noop); + * // => false + */ +function isArrayLikeObject(value) { + return isObjectLike(value) && isArrayLike(value); +} + +module.exports = isArrayLikeObject; diff --git a/node_modules/lodash/isBoolean.js b/node_modules/lodash/isBoolean.js new file mode 100644 index 0000000..a43ed4b --- /dev/null +++ b/node_modules/lodash/isBoolean.js @@ -0,0 +1,29 @@ +var baseGetTag = require('./_baseGetTag'), + isObjectLike = require('./isObjectLike'); + +/** `Object#toString` result references. */ +var boolTag = '[object Boolean]'; + +/** + * Checks if `value` is classified as a boolean primitive or object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a boolean, else `false`. + * @example + * + * _.isBoolean(false); + * // => true + * + * _.isBoolean(null); + * // => false + */ +function isBoolean(value) { + return value === true || value === false || + (isObjectLike(value) && baseGetTag(value) == boolTag); +} + +module.exports = isBoolean; diff --git a/node_modules/lodash/isBuffer.js b/node_modules/lodash/isBuffer.js new file mode 100644 index 0000000..c103cc7 --- /dev/null +++ b/node_modules/lodash/isBuffer.js @@ -0,0 +1,38 @@ +var root = require('./_root'), + stubFalse = require('./stubFalse'); + +/** Detect free variable `exports`. */ +var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports; + +/** Detect free variable `module`. */ +var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module; + +/** Detect the popular CommonJS extension `module.exports`. */ +var moduleExports = freeModule && freeModule.exports === freeExports; + +/** Built-in value references. */ +var Buffer = moduleExports ? root.Buffer : undefined; + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined; + +/** + * Checks if `value` is a buffer. + * + * @static + * @memberOf _ + * @since 4.3.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a buffer, else `false`. + * @example + * + * _.isBuffer(new Buffer(2)); + * // => true + * + * _.isBuffer(new Uint8Array(2)); + * // => false + */ +var isBuffer = nativeIsBuffer || stubFalse; + +module.exports = isBuffer; diff --git a/node_modules/lodash/isDate.js b/node_modules/lodash/isDate.js new file mode 100644 index 0000000..7f0209f --- /dev/null +++ b/node_modules/lodash/isDate.js @@ -0,0 +1,27 @@ +var baseIsDate = require('./_baseIsDate'), + baseUnary = require('./_baseUnary'), + nodeUtil = require('./_nodeUtil'); + +/* Node.js helper references. */ +var nodeIsDate = nodeUtil && nodeUtil.isDate; + +/** + * Checks if `value` is classified as a `Date` object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a date object, else `false`. + * @example + * + * _.isDate(new Date); + * // => true + * + * _.isDate('Mon April 23 2012'); + * // => false + */ +var isDate = nodeIsDate ? baseUnary(nodeIsDate) : baseIsDate; + +module.exports = isDate; diff --git a/node_modules/lodash/isElement.js b/node_modules/lodash/isElement.js new file mode 100644 index 0000000..76ae29c --- /dev/null +++ b/node_modules/lodash/isElement.js @@ -0,0 +1,25 @@ +var isObjectLike = require('./isObjectLike'), + isPlainObject = require('./isPlainObject'); + +/** + * Checks if `value` is likely a DOM element. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a DOM element, else `false`. + * @example + * + * _.isElement(document.body); + * // => true + * + * _.isElement(''); + * // => false + */ +function isElement(value) { + return isObjectLike(value) && value.nodeType === 1 && !isPlainObject(value); +} + +module.exports = isElement; diff --git a/node_modules/lodash/isEmpty.js b/node_modules/lodash/isEmpty.js new file mode 100644 index 0000000..3597294 --- /dev/null +++ b/node_modules/lodash/isEmpty.js @@ -0,0 +1,77 @@ +var baseKeys = require('./_baseKeys'), + getTag = require('./_getTag'), + isArguments = require('./isArguments'), + isArray = require('./isArray'), + isArrayLike = require('./isArrayLike'), + isBuffer = require('./isBuffer'), + isPrototype = require('./_isPrototype'), + isTypedArray = require('./isTypedArray'); + +/** `Object#toString` result references. */ +var mapTag = '[object Map]', + setTag = '[object Set]'; + +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var hasOwnProperty = objectProto.hasOwnProperty; + +/** + * Checks if `value` is an empty object, collection, map, or set. + * + * Objects are considered empty if they have no own enumerable string keyed + * properties. + * + * Array-like values such as `arguments` objects, arrays, buffers, strings, or + * jQuery-like collections are considered empty if they have a `length` of `0`. + * Similarly, maps and sets are considered empty if they have a `size` of `0`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is empty, else `false`. + * @example + * + * _.isEmpty(null); + * // => true + * + * _.isEmpty(true); + * // => true + * + * _.isEmpty(1); + * // => true + * + * _.isEmpty([1, 2, 3]); + * // => false + * + * _.isEmpty({ 'a': 1 }); + * // => false + */ +function isEmpty(value) { + if (value == null) { + return true; + } + if (isArrayLike(value) && + (isArray(value) || typeof value == 'string' || typeof value.splice == 'function' || + isBuffer(value) || isTypedArray(value) || isArguments(value))) { + return !value.length; + } + var tag = getTag(value); + if (tag == mapTag || tag == setTag) { + return !value.size; + } + if (isPrototype(value)) { + return !baseKeys(value).length; + } + for (var key in value) { + if (hasOwnProperty.call(value, key)) { + return false; + } + } + return true; +} + +module.exports = isEmpty; diff --git a/node_modules/lodash/isEqual.js b/node_modules/lodash/isEqual.js new file mode 100644 index 0000000..5e23e76 --- /dev/null +++ b/node_modules/lodash/isEqual.js @@ -0,0 +1,35 @@ +var baseIsEqual = require('./_baseIsEqual'); + +/** + * Performs a deep comparison between two values to determine if they are + * equivalent. + * + * **Note:** This method supports comparing arrays, array buffers, booleans, + * date objects, error objects, maps, numbers, `Object` objects, regexes, + * sets, strings, symbols, and typed arrays. `Object` objects are compared + * by their own, not inherited, enumerable properties. Functions and DOM + * nodes are compared by strict equality, i.e. `===`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if the values are equivalent, else `false`. + * @example + * + * var object = { 'a': 1 }; + * var other = { 'a': 1 }; + * + * _.isEqual(object, other); + * // => true + * + * object === other; + * // => false + */ +function isEqual(value, other) { + return baseIsEqual(value, other); +} + +module.exports = isEqual; diff --git a/node_modules/lodash/isEqualWith.js b/node_modules/lodash/isEqualWith.js new file mode 100644 index 0000000..21bdc7f --- /dev/null +++ b/node_modules/lodash/isEqualWith.js @@ -0,0 +1,41 @@ +var baseIsEqual = require('./_baseIsEqual'); + +/** + * This method is like `_.isEqual` except that it accepts `customizer` which + * is invoked to compare values. If `customizer` returns `undefined`, comparisons + * are handled by the method instead. The `customizer` is invoked with up to + * six arguments: (objValue, othValue [, index|key, object, other, stack]). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @param {Function} [customizer] The function to customize comparisons. + * @returns {boolean} Returns `true` if the values are equivalent, else `false`. + * @example + * + * function isGreeting(value) { + * return /^h(?:i|ello)$/.test(value); + * } + * + * function customizer(objValue, othValue) { + * if (isGreeting(objValue) && isGreeting(othValue)) { + * return true; + * } + * } + * + * var array = ['hello', 'goodbye']; + * var other = ['hi', 'goodbye']; + * + * _.isEqualWith(array, other, customizer); + * // => true + */ +function isEqualWith(value, other, customizer) { + customizer = typeof customizer == 'function' ? customizer : undefined; + var result = customizer ? customizer(value, other) : undefined; + return result === undefined ? baseIsEqual(value, other, undefined, customizer) : !!result; +} + +module.exports = isEqualWith; diff --git a/node_modules/lodash/isError.js b/node_modules/lodash/isError.js new file mode 100644 index 0000000..b4f41e0 --- /dev/null +++ b/node_modules/lodash/isError.js @@ -0,0 +1,36 @@ +var baseGetTag = require('./_baseGetTag'), + isObjectLike = require('./isObjectLike'), + isPlainObject = require('./isPlainObject'); + +/** `Object#toString` result references. */ +var domExcTag = '[object DOMException]', + errorTag = '[object Error]'; + +/** + * Checks if `value` is an `Error`, `EvalError`, `RangeError`, `ReferenceError`, + * `SyntaxError`, `TypeError`, or `URIError` object. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an error object, else `false`. + * @example + * + * _.isError(new Error); + * // => true + * + * _.isError(Error); + * // => false + */ +function isError(value) { + if (!isObjectLike(value)) { + return false; + } + var tag = baseGetTag(value); + return tag == errorTag || tag == domExcTag || + (typeof value.message == 'string' && typeof value.name == 'string' && !isPlainObject(value)); +} + +module.exports = isError; diff --git a/node_modules/lodash/isFinite.js b/node_modules/lodash/isFinite.js new file mode 100644 index 0000000..601842b --- /dev/null +++ b/node_modules/lodash/isFinite.js @@ -0,0 +1,36 @@ +var root = require('./_root'); + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeIsFinite = root.isFinite; + +/** + * Checks if `value` is a finite primitive number. + * + * **Note:** This method is based on + * [`Number.isFinite`](https://mdn.io/Number/isFinite). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a finite number, else `false`. + * @example + * + * _.isFinite(3); + * // => true + * + * _.isFinite(Number.MIN_VALUE); + * // => true + * + * _.isFinite(Infinity); + * // => false + * + * _.isFinite('3'); + * // => false + */ +function isFinite(value) { + return typeof value == 'number' && nativeIsFinite(value); +} + +module.exports = isFinite; diff --git a/node_modules/lodash/isFunction.js b/node_modules/lodash/isFunction.js new file mode 100644 index 0000000..907a8cd --- /dev/null +++ b/node_modules/lodash/isFunction.js @@ -0,0 +1,37 @@ +var baseGetTag = require('./_baseGetTag'), + isObject = require('./isObject'); + +/** `Object#toString` result references. */ +var asyncTag = '[object AsyncFunction]', + funcTag = '[object Function]', + genTag = '[object GeneratorFunction]', + proxyTag = '[object Proxy]'; + +/** + * Checks if `value` is classified as a `Function` object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a function, else `false`. + * @example + * + * _.isFunction(_); + * // => true + * + * _.isFunction(/abc/); + * // => false + */ +function isFunction(value) { + if (!isObject(value)) { + return false; + } + // The use of `Object#toString` avoids issues with the `typeof` operator + // in Safari 9 which returns 'object' for typed arrays and other constructors. + var tag = baseGetTag(value); + return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag; +} + +module.exports = isFunction; diff --git a/node_modules/lodash/isInteger.js b/node_modules/lodash/isInteger.js new file mode 100644 index 0000000..66aa87d --- /dev/null +++ b/node_modules/lodash/isInteger.js @@ -0,0 +1,33 @@ +var toInteger = require('./toInteger'); + +/** + * Checks if `value` is an integer. + * + * **Note:** This method is based on + * [`Number.isInteger`](https://mdn.io/Number/isInteger). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an integer, else `false`. + * @example + * + * _.isInteger(3); + * // => true + * + * _.isInteger(Number.MIN_VALUE); + * // => false + * + * _.isInteger(Infinity); + * // => false + * + * _.isInteger('3'); + * // => false + */ +function isInteger(value) { + return typeof value == 'number' && value == toInteger(value); +} + +module.exports = isInteger; diff --git a/node_modules/lodash/isLength.js b/node_modules/lodash/isLength.js new file mode 100644 index 0000000..3a95caa --- /dev/null +++ b/node_modules/lodash/isLength.js @@ -0,0 +1,35 @@ +/** Used as references for various `Number` constants. */ +var MAX_SAFE_INTEGER = 9007199254740991; + +/** + * Checks if `value` is a valid array-like length. + * + * **Note:** This method is loosely based on + * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a valid length, else `false`. + * @example + * + * _.isLength(3); + * // => true + * + * _.isLength(Number.MIN_VALUE); + * // => false + * + * _.isLength(Infinity); + * // => false + * + * _.isLength('3'); + * // => false + */ +function isLength(value) { + return typeof value == 'number' && + value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER; +} + +module.exports = isLength; diff --git a/node_modules/lodash/isMap.js b/node_modules/lodash/isMap.js new file mode 100644 index 0000000..44f8517 --- /dev/null +++ b/node_modules/lodash/isMap.js @@ -0,0 +1,27 @@ +var baseIsMap = require('./_baseIsMap'), + baseUnary = require('./_baseUnary'), + nodeUtil = require('./_nodeUtil'); + +/* Node.js helper references. */ +var nodeIsMap = nodeUtil && nodeUtil.isMap; + +/** + * Checks if `value` is classified as a `Map` object. + * + * @static + * @memberOf _ + * @since 4.3.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a map, else `false`. + * @example + * + * _.isMap(new Map); + * // => true + * + * _.isMap(new WeakMap); + * // => false + */ +var isMap = nodeIsMap ? baseUnary(nodeIsMap) : baseIsMap; + +module.exports = isMap; diff --git a/node_modules/lodash/isMatch.js b/node_modules/lodash/isMatch.js new file mode 100644 index 0000000..9773a18 --- /dev/null +++ b/node_modules/lodash/isMatch.js @@ -0,0 +1,36 @@ +var baseIsMatch = require('./_baseIsMatch'), + getMatchData = require('./_getMatchData'); + +/** + * Performs a partial deep comparison between `object` and `source` to + * determine if `object` contains equivalent property values. + * + * **Note:** This method is equivalent to `_.matches` when `source` is + * partially applied. + * + * Partial comparisons will match empty array and empty object `source` + * values against any array or object value, respectively. See `_.isEqual` + * for a list of supported value comparisons. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Lang + * @param {Object} object The object to inspect. + * @param {Object} source The object of property values to match. + * @returns {boolean} Returns `true` if `object` is a match, else `false`. + * @example + * + * var object = { 'a': 1, 'b': 2 }; + * + * _.isMatch(object, { 'b': 2 }); + * // => true + * + * _.isMatch(object, { 'b': 1 }); + * // => false + */ +function isMatch(object, source) { + return object === source || baseIsMatch(object, source, getMatchData(source)); +} + +module.exports = isMatch; diff --git a/node_modules/lodash/isMatchWith.js b/node_modules/lodash/isMatchWith.js new file mode 100644 index 0000000..187b6a6 --- /dev/null +++ b/node_modules/lodash/isMatchWith.js @@ -0,0 +1,41 @@ +var baseIsMatch = require('./_baseIsMatch'), + getMatchData = require('./_getMatchData'); + +/** + * This method is like `_.isMatch` except that it accepts `customizer` which + * is invoked to compare values. If `customizer` returns `undefined`, comparisons + * are handled by the method instead. The `customizer` is invoked with five + * arguments: (objValue, srcValue, index|key, object, source). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {Object} object The object to inspect. + * @param {Object} source The object of property values to match. + * @param {Function} [customizer] The function to customize comparisons. + * @returns {boolean} Returns `true` if `object` is a match, else `false`. + * @example + * + * function isGreeting(value) { + * return /^h(?:i|ello)$/.test(value); + * } + * + * function customizer(objValue, srcValue) { + * if (isGreeting(objValue) && isGreeting(srcValue)) { + * return true; + * } + * } + * + * var object = { 'greeting': 'hello' }; + * var source = { 'greeting': 'hi' }; + * + * _.isMatchWith(object, source, customizer); + * // => true + */ +function isMatchWith(object, source, customizer) { + customizer = typeof customizer == 'function' ? customizer : undefined; + return baseIsMatch(object, source, getMatchData(source), customizer); +} + +module.exports = isMatchWith; diff --git a/node_modules/lodash/isNaN.js b/node_modules/lodash/isNaN.js new file mode 100644 index 0000000..7d0d783 --- /dev/null +++ b/node_modules/lodash/isNaN.js @@ -0,0 +1,38 @@ +var isNumber = require('./isNumber'); + +/** + * Checks if `value` is `NaN`. + * + * **Note:** This method is based on + * [`Number.isNaN`](https://mdn.io/Number/isNaN) and is not the same as + * global [`isNaN`](https://mdn.io/isNaN) which returns `true` for + * `undefined` and other non-number values. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`. + * @example + * + * _.isNaN(NaN); + * // => true + * + * _.isNaN(new Number(NaN)); + * // => true + * + * isNaN(undefined); + * // => true + * + * _.isNaN(undefined); + * // => false + */ +function isNaN(value) { + // An `NaN` primitive is the only value that is not equal to itself. + // Perform the `toStringTag` check first to avoid errors with some + // ActiveX objects in IE. + return isNumber(value) && value != +value; +} + +module.exports = isNaN; diff --git a/node_modules/lodash/isNative.js b/node_modules/lodash/isNative.js new file mode 100644 index 0000000..f0cb8d5 --- /dev/null +++ b/node_modules/lodash/isNative.js @@ -0,0 +1,40 @@ +var baseIsNative = require('./_baseIsNative'), + isMaskable = require('./_isMaskable'); + +/** Error message constants. */ +var CORE_ERROR_TEXT = 'Unsupported core-js use. Try https://npms.io/search?q=ponyfill.'; + +/** + * Checks if `value` is a pristine native function. + * + * **Note:** This method can't reliably detect native functions in the presence + * of the core-js package because core-js circumvents this kind of detection. + * Despite multiple requests, the core-js maintainer has made it clear: any + * attempt to fix the detection will be obstructed. As a result, we're left + * with little choice but to throw an error. Unfortunately, this also affects + * packages, like [babel-polyfill](https://www.npmjs.com/package/babel-polyfill), + * which rely on core-js. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a native function, + * else `false`. + * @example + * + * _.isNative(Array.prototype.push); + * // => true + * + * _.isNative(_); + * // => false + */ +function isNative(value) { + if (isMaskable(value)) { + throw new Error(CORE_ERROR_TEXT); + } + return baseIsNative(value); +} + +module.exports = isNative; diff --git a/node_modules/lodash/isNil.js b/node_modules/lodash/isNil.js new file mode 100644 index 0000000..79f0505 --- /dev/null +++ b/node_modules/lodash/isNil.js @@ -0,0 +1,25 @@ +/** + * Checks if `value` is `null` or `undefined`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is nullish, else `false`. + * @example + * + * _.isNil(null); + * // => true + * + * _.isNil(void 0); + * // => true + * + * _.isNil(NaN); + * // => false + */ +function isNil(value) { + return value == null; +} + +module.exports = isNil; diff --git a/node_modules/lodash/isNull.js b/node_modules/lodash/isNull.js new file mode 100644 index 0000000..c0a374d --- /dev/null +++ b/node_modules/lodash/isNull.js @@ -0,0 +1,22 @@ +/** + * Checks if `value` is `null`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is `null`, else `false`. + * @example + * + * _.isNull(null); + * // => true + * + * _.isNull(void 0); + * // => false + */ +function isNull(value) { + return value === null; +} + +module.exports = isNull; diff --git a/node_modules/lodash/isNumber.js b/node_modules/lodash/isNumber.js new file mode 100644 index 0000000..cd34ee4 --- /dev/null +++ b/node_modules/lodash/isNumber.js @@ -0,0 +1,38 @@ +var baseGetTag = require('./_baseGetTag'), + isObjectLike = require('./isObjectLike'); + +/** `Object#toString` result references. */ +var numberTag = '[object Number]'; + +/** + * Checks if `value` is classified as a `Number` primitive or object. + * + * **Note:** To exclude `Infinity`, `-Infinity`, and `NaN`, which are + * classified as numbers, use the `_.isFinite` method. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a number, else `false`. + * @example + * + * _.isNumber(3); + * // => true + * + * _.isNumber(Number.MIN_VALUE); + * // => true + * + * _.isNumber(Infinity); + * // => true + * + * _.isNumber('3'); + * // => false + */ +function isNumber(value) { + return typeof value == 'number' || + (isObjectLike(value) && baseGetTag(value) == numberTag); +} + +module.exports = isNumber; diff --git a/node_modules/lodash/isObject.js b/node_modules/lodash/isObject.js new file mode 100644 index 0000000..1dc8939 --- /dev/null +++ b/node_modules/lodash/isObject.js @@ -0,0 +1,31 @@ +/** + * Checks if `value` is the + * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types) + * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`) + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an object, else `false`. + * @example + * + * _.isObject({}); + * // => true + * + * _.isObject([1, 2, 3]); + * // => true + * + * _.isObject(_.noop); + * // => true + * + * _.isObject(null); + * // => false + */ +function isObject(value) { + var type = typeof value; + return value != null && (type == 'object' || type == 'function'); +} + +module.exports = isObject; diff --git a/node_modules/lodash/isObjectLike.js b/node_modules/lodash/isObjectLike.js new file mode 100644 index 0000000..301716b --- /dev/null +++ b/node_modules/lodash/isObjectLike.js @@ -0,0 +1,29 @@ +/** + * Checks if `value` is object-like. A value is object-like if it's not `null` + * and has a `typeof` result of "object". + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is object-like, else `false`. + * @example + * + * _.isObjectLike({}); + * // => true + * + * _.isObjectLike([1, 2, 3]); + * // => true + * + * _.isObjectLike(_.noop); + * // => false + * + * _.isObjectLike(null); + * // => false + */ +function isObjectLike(value) { + return value != null && typeof value == 'object'; +} + +module.exports = isObjectLike; diff --git a/node_modules/lodash/isPlainObject.js b/node_modules/lodash/isPlainObject.js new file mode 100644 index 0000000..2387373 --- /dev/null +++ b/node_modules/lodash/isPlainObject.js @@ -0,0 +1,62 @@ +var baseGetTag = require('./_baseGetTag'), + getPrototype = require('./_getPrototype'), + isObjectLike = require('./isObjectLike'); + +/** `Object#toString` result references. */ +var objectTag = '[object Object]'; + +/** Used for built-in method references. */ +var funcProto = Function.prototype, + objectProto = Object.prototype; + +/** Used to resolve the decompiled source of functions. */ +var funcToString = funcProto.toString; + +/** Used to check objects for own properties. */ +var hasOwnProperty = objectProto.hasOwnProperty; + +/** Used to infer the `Object` constructor. */ +var objectCtorString = funcToString.call(Object); + +/** + * Checks if `value` is a plain object, that is, an object created by the + * `Object` constructor or one with a `[[Prototype]]` of `null`. + * + * @static + * @memberOf _ + * @since 0.8.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a plain object, else `false`. + * @example + * + * function Foo() { + * this.a = 1; + * } + * + * _.isPlainObject(new Foo); + * // => false + * + * _.isPlainObject([1, 2, 3]); + * // => false + * + * _.isPlainObject({ 'x': 0, 'y': 0 }); + * // => true + * + * _.isPlainObject(Object.create(null)); + * // => true + */ +function isPlainObject(value) { + if (!isObjectLike(value) || baseGetTag(value) != objectTag) { + return false; + } + var proto = getPrototype(value); + if (proto === null) { + return true; + } + var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor; + return typeof Ctor == 'function' && Ctor instanceof Ctor && + funcToString.call(Ctor) == objectCtorString; +} + +module.exports = isPlainObject; diff --git a/node_modules/lodash/isRegExp.js b/node_modules/lodash/isRegExp.js new file mode 100644 index 0000000..76c9b6e --- /dev/null +++ b/node_modules/lodash/isRegExp.js @@ -0,0 +1,27 @@ +var baseIsRegExp = require('./_baseIsRegExp'), + baseUnary = require('./_baseUnary'), + nodeUtil = require('./_nodeUtil'); + +/* Node.js helper references. */ +var nodeIsRegExp = nodeUtil && nodeUtil.isRegExp; + +/** + * Checks if `value` is classified as a `RegExp` object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a regexp, else `false`. + * @example + * + * _.isRegExp(/abc/); + * // => true + * + * _.isRegExp('/abc/'); + * // => false + */ +var isRegExp = nodeIsRegExp ? baseUnary(nodeIsRegExp) : baseIsRegExp; + +module.exports = isRegExp; diff --git a/node_modules/lodash/isSafeInteger.js b/node_modules/lodash/isSafeInteger.js new file mode 100644 index 0000000..2a48526 --- /dev/null +++ b/node_modules/lodash/isSafeInteger.js @@ -0,0 +1,37 @@ +var isInteger = require('./isInteger'); + +/** Used as references for various `Number` constants. */ +var MAX_SAFE_INTEGER = 9007199254740991; + +/** + * Checks if `value` is a safe integer. An integer is safe if it's an IEEE-754 + * double precision number which isn't the result of a rounded unsafe integer. + * + * **Note:** This method is based on + * [`Number.isSafeInteger`](https://mdn.io/Number/isSafeInteger). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a safe integer, else `false`. + * @example + * + * _.isSafeInteger(3); + * // => true + * + * _.isSafeInteger(Number.MIN_VALUE); + * // => false + * + * _.isSafeInteger(Infinity); + * // => false + * + * _.isSafeInteger('3'); + * // => false + */ +function isSafeInteger(value) { + return isInteger(value) && value >= -MAX_SAFE_INTEGER && value <= MAX_SAFE_INTEGER; +} + +module.exports = isSafeInteger; diff --git a/node_modules/lodash/isSet.js b/node_modules/lodash/isSet.js new file mode 100644 index 0000000..ab88bdf --- /dev/null +++ b/node_modules/lodash/isSet.js @@ -0,0 +1,27 @@ +var baseIsSet = require('./_baseIsSet'), + baseUnary = require('./_baseUnary'), + nodeUtil = require('./_nodeUtil'); + +/* Node.js helper references. */ +var nodeIsSet = nodeUtil && nodeUtil.isSet; + +/** + * Checks if `value` is classified as a `Set` object. + * + * @static + * @memberOf _ + * @since 4.3.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a set, else `false`. + * @example + * + * _.isSet(new Set); + * // => true + * + * _.isSet(new WeakSet); + * // => false + */ +var isSet = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet; + +module.exports = isSet; diff --git a/node_modules/lodash/isString.js b/node_modules/lodash/isString.js new file mode 100644 index 0000000..627eb9c --- /dev/null +++ b/node_modules/lodash/isString.js @@ -0,0 +1,30 @@ +var baseGetTag = require('./_baseGetTag'), + isArray = require('./isArray'), + isObjectLike = require('./isObjectLike'); + +/** `Object#toString` result references. */ +var stringTag = '[object String]'; + +/** + * Checks if `value` is classified as a `String` primitive or object. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a string, else `false`. + * @example + * + * _.isString('abc'); + * // => true + * + * _.isString(1); + * // => false + */ +function isString(value) { + return typeof value == 'string' || + (!isArray(value) && isObjectLike(value) && baseGetTag(value) == stringTag); +} + +module.exports = isString; diff --git a/node_modules/lodash/isSymbol.js b/node_modules/lodash/isSymbol.js new file mode 100644 index 0000000..dfb60b9 --- /dev/null +++ b/node_modules/lodash/isSymbol.js @@ -0,0 +1,29 @@ +var baseGetTag = require('./_baseGetTag'), + isObjectLike = require('./isObjectLike'); + +/** `Object#toString` result references. */ +var symbolTag = '[object Symbol]'; + +/** + * Checks if `value` is classified as a `Symbol` primitive or object. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a symbol, else `false`. + * @example + * + * _.isSymbol(Symbol.iterator); + * // => true + * + * _.isSymbol('abc'); + * // => false + */ +function isSymbol(value) { + return typeof value == 'symbol' || + (isObjectLike(value) && baseGetTag(value) == symbolTag); +} + +module.exports = isSymbol; diff --git a/node_modules/lodash/isTypedArray.js b/node_modules/lodash/isTypedArray.js new file mode 100644 index 0000000..da3f8dd --- /dev/null +++ b/node_modules/lodash/isTypedArray.js @@ -0,0 +1,27 @@ +var baseIsTypedArray = require('./_baseIsTypedArray'), + baseUnary = require('./_baseUnary'), + nodeUtil = require('./_nodeUtil'); + +/* Node.js helper references. */ +var nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray; + +/** + * Checks if `value` is classified as a typed array. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a typed array, else `false`. + * @example + * + * _.isTypedArray(new Uint8Array); + * // => true + * + * _.isTypedArray([]); + * // => false + */ +var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray; + +module.exports = isTypedArray; diff --git a/node_modules/lodash/isUndefined.js b/node_modules/lodash/isUndefined.js new file mode 100644 index 0000000..377d121 --- /dev/null +++ b/node_modules/lodash/isUndefined.js @@ -0,0 +1,22 @@ +/** + * Checks if `value` is `undefined`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is `undefined`, else `false`. + * @example + * + * _.isUndefined(void 0); + * // => true + * + * _.isUndefined(null); + * // => false + */ +function isUndefined(value) { + return value === undefined; +} + +module.exports = isUndefined; diff --git a/node_modules/lodash/isWeakMap.js b/node_modules/lodash/isWeakMap.js new file mode 100644 index 0000000..8d36f66 --- /dev/null +++ b/node_modules/lodash/isWeakMap.js @@ -0,0 +1,28 @@ +var getTag = require('./_getTag'), + isObjectLike = require('./isObjectLike'); + +/** `Object#toString` result references. */ +var weakMapTag = '[object WeakMap]'; + +/** + * Checks if `value` is classified as a `WeakMap` object. + * + * @static + * @memberOf _ + * @since 4.3.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a weak map, else `false`. + * @example + * + * _.isWeakMap(new WeakMap); + * // => true + * + * _.isWeakMap(new Map); + * // => false + */ +function isWeakMap(value) { + return isObjectLike(value) && getTag(value) == weakMapTag; +} + +module.exports = isWeakMap; diff --git a/node_modules/lodash/isWeakSet.js b/node_modules/lodash/isWeakSet.js new file mode 100644 index 0000000..e628b26 --- /dev/null +++ b/node_modules/lodash/isWeakSet.js @@ -0,0 +1,28 @@ +var baseGetTag = require('./_baseGetTag'), + isObjectLike = require('./isObjectLike'); + +/** `Object#toString` result references. */ +var weakSetTag = '[object WeakSet]'; + +/** + * Checks if `value` is classified as a `WeakSet` object. + * + * @static + * @memberOf _ + * @since 4.3.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a weak set, else `false`. + * @example + * + * _.isWeakSet(new WeakSet); + * // => true + * + * _.isWeakSet(new Set); + * // => false + */ +function isWeakSet(value) { + return isObjectLike(value) && baseGetTag(value) == weakSetTag; +} + +module.exports = isWeakSet; diff --git a/node_modules/lodash/iteratee.js b/node_modules/lodash/iteratee.js new file mode 100644 index 0000000..61b73a8 --- /dev/null +++ b/node_modules/lodash/iteratee.js @@ -0,0 +1,53 @@ +var baseClone = require('./_baseClone'), + baseIteratee = require('./_baseIteratee'); + +/** Used to compose bitmasks for cloning. */ +var CLONE_DEEP_FLAG = 1; + +/** + * Creates a function that invokes `func` with the arguments of the created + * function. If `func` is a property name, the created function returns the + * property value for a given element. If `func` is an array or object, the + * created function returns `true` for elements that contain the equivalent + * source properties, otherwise it returns `false`. + * + * @static + * @since 4.0.0 + * @memberOf _ + * @category Util + * @param {*} [func=_.identity] The value to convert to a callback. + * @returns {Function} Returns the callback. + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': true }, + * { 'user': 'fred', 'age': 40, 'active': false } + * ]; + * + * // The `_.matches` iteratee shorthand. + * _.filter(users, _.iteratee({ 'user': 'barney', 'active': true })); + * // => [{ 'user': 'barney', 'age': 36, 'active': true }] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.filter(users, _.iteratee(['user', 'fred'])); + * // => [{ 'user': 'fred', 'age': 40 }] + * + * // The `_.property` iteratee shorthand. + * _.map(users, _.iteratee('user')); + * // => ['barney', 'fred'] + * + * // Create custom iteratee shorthands. + * _.iteratee = _.wrap(_.iteratee, function(iteratee, func) { + * return !_.isRegExp(func) ? iteratee(func) : function(string) { + * return func.test(string); + * }; + * }); + * + * _.filter(['abc', 'def'], /ef/); + * // => ['def'] + */ +function iteratee(func) { + return baseIteratee(typeof func == 'function' ? func : baseClone(func, CLONE_DEEP_FLAG)); +} + +module.exports = iteratee; diff --git a/node_modules/lodash/join.js b/node_modules/lodash/join.js new file mode 100644 index 0000000..45de079 --- /dev/null +++ b/node_modules/lodash/join.js @@ -0,0 +1,26 @@ +/** Used for built-in method references. */ +var arrayProto = Array.prototype; + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeJoin = arrayProto.join; + +/** + * Converts all elements in `array` into a string separated by `separator`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to convert. + * @param {string} [separator=','] The element separator. + * @returns {string} Returns the joined string. + * @example + * + * _.join(['a', 'b', 'c'], '~'); + * // => 'a~b~c' + */ +function join(array, separator) { + return array == null ? '' : nativeJoin.call(array, separator); +} + +module.exports = join; diff --git a/node_modules/lodash/kebabCase.js b/node_modules/lodash/kebabCase.js new file mode 100644 index 0000000..8a52be6 --- /dev/null +++ b/node_modules/lodash/kebabCase.js @@ -0,0 +1,28 @@ +var createCompounder = require('./_createCompounder'); + +/** + * Converts `string` to + * [kebab case](https://en.wikipedia.org/wiki/Letter_case#Special_case_styles). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to convert. + * @returns {string} Returns the kebab cased string. + * @example + * + * _.kebabCase('Foo Bar'); + * // => 'foo-bar' + * + * _.kebabCase('fooBar'); + * // => 'foo-bar' + * + * _.kebabCase('__FOO_BAR__'); + * // => 'foo-bar' + */ +var kebabCase = createCompounder(function(result, word, index) { + return result + (index ? '-' : '') + word.toLowerCase(); +}); + +module.exports = kebabCase; diff --git a/node_modules/lodash/keyBy.js b/node_modules/lodash/keyBy.js new file mode 100644 index 0000000..acc007a --- /dev/null +++ b/node_modules/lodash/keyBy.js @@ -0,0 +1,36 @@ +var baseAssignValue = require('./_baseAssignValue'), + createAggregator = require('./_createAggregator'); + +/** + * Creates an object composed of keys generated from the results of running + * each element of `collection` thru `iteratee`. The corresponding value of + * each key is the last element responsible for generating the key. The + * iteratee is invoked with one argument: (value). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The iteratee to transform keys. + * @returns {Object} Returns the composed aggregate object. + * @example + * + * var array = [ + * { 'dir': 'left', 'code': 97 }, + * { 'dir': 'right', 'code': 100 } + * ]; + * + * _.keyBy(array, function(o) { + * return String.fromCharCode(o.code); + * }); + * // => { 'a': { 'dir': 'left', 'code': 97 }, 'd': { 'dir': 'right', 'code': 100 } } + * + * _.keyBy(array, 'dir'); + * // => { 'left': { 'dir': 'left', 'code': 97 }, 'right': { 'dir': 'right', 'code': 100 } } + */ +var keyBy = createAggregator(function(result, value, key) { + baseAssignValue(result, key, value); +}); + +module.exports = keyBy; diff --git a/node_modules/lodash/keys.js b/node_modules/lodash/keys.js new file mode 100644 index 0000000..d143c71 --- /dev/null +++ b/node_modules/lodash/keys.js @@ -0,0 +1,37 @@ +var arrayLikeKeys = require('./_arrayLikeKeys'), + baseKeys = require('./_baseKeys'), + isArrayLike = require('./isArrayLike'); + +/** + * Creates an array of the own enumerable property names of `object`. + * + * **Note:** Non-object values are coerced to objects. See the + * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys) + * for more details. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names. + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.keys(new Foo); + * // => ['a', 'b'] (iteration order is not guaranteed) + * + * _.keys('hi'); + * // => ['0', '1'] + */ +function keys(object) { + return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object); +} + +module.exports = keys; diff --git a/node_modules/lodash/keysIn.js b/node_modules/lodash/keysIn.js new file mode 100644 index 0000000..a62308f --- /dev/null +++ b/node_modules/lodash/keysIn.js @@ -0,0 +1,32 @@ +var arrayLikeKeys = require('./_arrayLikeKeys'), + baseKeysIn = require('./_baseKeysIn'), + isArrayLike = require('./isArrayLike'); + +/** + * Creates an array of the own and inherited enumerable property names of `object`. + * + * **Note:** Non-object values are coerced to objects. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Object + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names. + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.keysIn(new Foo); + * // => ['a', 'b', 'c'] (iteration order is not guaranteed) + */ +function keysIn(object) { + return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object); +} + +module.exports = keysIn; diff --git a/node_modules/lodash/lang.js b/node_modules/lodash/lang.js new file mode 100644 index 0000000..a396216 --- /dev/null +++ b/node_modules/lodash/lang.js @@ -0,0 +1,58 @@ +module.exports = { + 'castArray': require('./castArray'), + 'clone': require('./clone'), + 'cloneDeep': require('./cloneDeep'), + 'cloneDeepWith': require('./cloneDeepWith'), + 'cloneWith': require('./cloneWith'), + 'conformsTo': require('./conformsTo'), + 'eq': require('./eq'), + 'gt': require('./gt'), + 'gte': require('./gte'), + 'isArguments': require('./isArguments'), + 'isArray': require('./isArray'), + 'isArrayBuffer': require('./isArrayBuffer'), + 'isArrayLike': require('./isArrayLike'), + 'isArrayLikeObject': require('./isArrayLikeObject'), + 'isBoolean': require('./isBoolean'), + 'isBuffer': require('./isBuffer'), + 'isDate': require('./isDate'), + 'isElement': require('./isElement'), + 'isEmpty': require('./isEmpty'), + 'isEqual': require('./isEqual'), + 'isEqualWith': require('./isEqualWith'), + 'isError': require('./isError'), + 'isFinite': require('./isFinite'), + 'isFunction': require('./isFunction'), + 'isInteger': require('./isInteger'), + 'isLength': require('./isLength'), + 'isMap': require('./isMap'), + 'isMatch': require('./isMatch'), + 'isMatchWith': require('./isMatchWith'), + 'isNaN': require('./isNaN'), + 'isNative': require('./isNative'), + 'isNil': require('./isNil'), + 'isNull': require('./isNull'), + 'isNumber': require('./isNumber'), + 'isObject': require('./isObject'), + 'isObjectLike': require('./isObjectLike'), + 'isPlainObject': require('./isPlainObject'), + 'isRegExp': require('./isRegExp'), + 'isSafeInteger': require('./isSafeInteger'), + 'isSet': require('./isSet'), + 'isString': require('./isString'), + 'isSymbol': require('./isSymbol'), + 'isTypedArray': require('./isTypedArray'), + 'isUndefined': require('./isUndefined'), + 'isWeakMap': require('./isWeakMap'), + 'isWeakSet': require('./isWeakSet'), + 'lt': require('./lt'), + 'lte': require('./lte'), + 'toArray': require('./toArray'), + 'toFinite': require('./toFinite'), + 'toInteger': require('./toInteger'), + 'toLength': require('./toLength'), + 'toNumber': require('./toNumber'), + 'toPlainObject': require('./toPlainObject'), + 'toSafeInteger': require('./toSafeInteger'), + 'toString': require('./toString') +}; diff --git a/node_modules/lodash/last.js b/node_modules/lodash/last.js new file mode 100644 index 0000000..cad1eaf --- /dev/null +++ b/node_modules/lodash/last.js @@ -0,0 +1,20 @@ +/** + * Gets the last element of `array`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to query. + * @returns {*} Returns the last element of `array`. + * @example + * + * _.last([1, 2, 3]); + * // => 3 + */ +function last(array) { + var length = array == null ? 0 : array.length; + return length ? array[length - 1] : undefined; +} + +module.exports = last; diff --git a/node_modules/lodash/lastIndexOf.js b/node_modules/lodash/lastIndexOf.js new file mode 100644 index 0000000..dabfb61 --- /dev/null +++ b/node_modules/lodash/lastIndexOf.js @@ -0,0 +1,46 @@ +var baseFindIndex = require('./_baseFindIndex'), + baseIsNaN = require('./_baseIsNaN'), + strictLastIndexOf = require('./_strictLastIndexOf'), + toInteger = require('./toInteger'); + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeMax = Math.max, + nativeMin = Math.min; + +/** + * This method is like `_.indexOf` except that it iterates over elements of + * `array` from right to left. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} [fromIndex=array.length-1] The index to search from. + * @returns {number} Returns the index of the matched value, else `-1`. + * @example + * + * _.lastIndexOf([1, 2, 1, 2], 2); + * // => 3 + * + * // Search from the `fromIndex`. + * _.lastIndexOf([1, 2, 1, 2], 2, 2); + * // => 1 + */ +function lastIndexOf(array, value, fromIndex) { + var length = array == null ? 0 : array.length; + if (!length) { + return -1; + } + var index = length; + if (fromIndex !== undefined) { + index = toInteger(fromIndex); + index = index < 0 ? nativeMax(length + index, 0) : nativeMin(index, length - 1); + } + return value === value + ? strictLastIndexOf(array, value, index) + : baseFindIndex(array, baseIsNaN, index, true); +} + +module.exports = lastIndexOf; diff --git a/node_modules/lodash/lodash.js b/node_modules/lodash/lodash.js new file mode 100644 index 0000000..4131e93 --- /dev/null +++ b/node_modules/lodash/lodash.js @@ -0,0 +1,17209 @@ +/** + * @license + * Lodash + * Copyright OpenJS Foundation and other contributors + * Released under MIT license + * Based on Underscore.js 1.8.3 + * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors + */ +;(function() { + + /** Used as a safe reference for `undefined` in pre-ES5 environments. */ + var undefined; + + /** Used as the semantic version number. */ + var VERSION = '4.17.21'; + + /** Used as the size to enable large array optimizations. */ + var LARGE_ARRAY_SIZE = 200; + + /** Error message constants. */ + var CORE_ERROR_TEXT = 'Unsupported core-js use. Try https://npms.io/search?q=ponyfill.', + FUNC_ERROR_TEXT = 'Expected a function', + INVALID_TEMPL_VAR_ERROR_TEXT = 'Invalid `variable` option passed into `_.template`'; + + /** Used to stand-in for `undefined` hash values. */ + var HASH_UNDEFINED = '__lodash_hash_undefined__'; + + /** Used as the maximum memoize cache size. */ + var MAX_MEMOIZE_SIZE = 500; + + /** Used as the internal argument placeholder. */ + var PLACEHOLDER = '__lodash_placeholder__'; + + /** Used to compose bitmasks for cloning. */ + var CLONE_DEEP_FLAG = 1, + CLONE_FLAT_FLAG = 2, + CLONE_SYMBOLS_FLAG = 4; + + /** Used to compose bitmasks for value comparisons. */ + var COMPARE_PARTIAL_FLAG = 1, + COMPARE_UNORDERED_FLAG = 2; + + /** Used to compose bitmasks for function metadata. */ + var WRAP_BIND_FLAG = 1, + WRAP_BIND_KEY_FLAG = 2, + WRAP_CURRY_BOUND_FLAG = 4, + WRAP_CURRY_FLAG = 8, + WRAP_CURRY_RIGHT_FLAG = 16, + WRAP_PARTIAL_FLAG = 32, + WRAP_PARTIAL_RIGHT_FLAG = 64, + WRAP_ARY_FLAG = 128, + WRAP_REARG_FLAG = 256, + WRAP_FLIP_FLAG = 512; + + /** Used as default options for `_.truncate`. */ + var DEFAULT_TRUNC_LENGTH = 30, + DEFAULT_TRUNC_OMISSION = '...'; + + /** Used to detect hot functions by number of calls within a span of milliseconds. */ + var HOT_COUNT = 800, + HOT_SPAN = 16; + + /** Used to indicate the type of lazy iteratees. */ + var LAZY_FILTER_FLAG = 1, + LAZY_MAP_FLAG = 2, + LAZY_WHILE_FLAG = 3; + + /** Used as references for various `Number` constants. */ + var INFINITY = 1 / 0, + MAX_SAFE_INTEGER = 9007199254740991, + MAX_INTEGER = 1.7976931348623157e+308, + NAN = 0 / 0; + + /** Used as references for the maximum length and index of an array. */ + var MAX_ARRAY_LENGTH = 4294967295, + MAX_ARRAY_INDEX = MAX_ARRAY_LENGTH - 1, + HALF_MAX_ARRAY_LENGTH = MAX_ARRAY_LENGTH >>> 1; + + /** Used to associate wrap methods with their bit flags. */ + var wrapFlags = [ + ['ary', WRAP_ARY_FLAG], + ['bind', WRAP_BIND_FLAG], + ['bindKey', WRAP_BIND_KEY_FLAG], + ['curry', WRAP_CURRY_FLAG], + ['curryRight', WRAP_CURRY_RIGHT_FLAG], + ['flip', WRAP_FLIP_FLAG], + ['partial', WRAP_PARTIAL_FLAG], + ['partialRight', WRAP_PARTIAL_RIGHT_FLAG], + ['rearg', WRAP_REARG_FLAG] + ]; + + /** `Object#toString` result references. */ + var argsTag = '[object Arguments]', + arrayTag = '[object Array]', + asyncTag = '[object AsyncFunction]', + boolTag = '[object Boolean]', + dateTag = '[object Date]', + domExcTag = '[object DOMException]', + errorTag = '[object Error]', + funcTag = '[object Function]', + genTag = '[object GeneratorFunction]', + mapTag = '[object Map]', + numberTag = '[object Number]', + nullTag = '[object Null]', + objectTag = '[object Object]', + promiseTag = '[object Promise]', + proxyTag = '[object Proxy]', + regexpTag = '[object RegExp]', + setTag = '[object Set]', + stringTag = '[object String]', + symbolTag = '[object Symbol]', + undefinedTag = '[object Undefined]', + weakMapTag = '[object WeakMap]', + weakSetTag = '[object WeakSet]'; + + var arrayBufferTag = '[object ArrayBuffer]', + dataViewTag = '[object DataView]', + float32Tag = '[object Float32Array]', + float64Tag = '[object Float64Array]', + int8Tag = '[object Int8Array]', + int16Tag = '[object Int16Array]', + int32Tag = '[object Int32Array]', + uint8Tag = '[object Uint8Array]', + uint8ClampedTag = '[object Uint8ClampedArray]', + uint16Tag = '[object Uint16Array]', + uint32Tag = '[object Uint32Array]'; + + /** Used to match empty string literals in compiled template source. */ + var reEmptyStringLeading = /\b__p \+= '';/g, + reEmptyStringMiddle = /\b(__p \+=) '' \+/g, + reEmptyStringTrailing = /(__e\(.*?\)|\b__t\)) \+\n'';/g; + + /** Used to match HTML entities and HTML characters. */ + var reEscapedHtml = /&(?:amp|lt|gt|quot|#39);/g, + reUnescapedHtml = /[&<>"']/g, + reHasEscapedHtml = RegExp(reEscapedHtml.source), + reHasUnescapedHtml = RegExp(reUnescapedHtml.source); + + /** Used to match template delimiters. */ + var reEscape = /<%-([\s\S]+?)%>/g, + reEvaluate = /<%([\s\S]+?)%>/g, + reInterpolate = /<%=([\s\S]+?)%>/g; + + /** Used to match property names within property paths. */ + var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, + reIsPlainProp = /^\w*$/, + rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g; + + /** + * Used to match `RegExp` + * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns). + */ + var reRegExpChar = /[\\^$.*+?()[\]{}|]/g, + reHasRegExpChar = RegExp(reRegExpChar.source); + + /** Used to match leading whitespace. */ + var reTrimStart = /^\s+/; + + /** Used to match a single whitespace character. */ + var reWhitespace = /\s/; + + /** Used to match wrap detail comments. */ + var reWrapComment = /\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/, + reWrapDetails = /\{\n\/\* \[wrapped with (.+)\] \*/, + reSplitDetails = /,? & /; + + /** Used to match words composed of alphanumeric characters. */ + var reAsciiWord = /[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g; + + /** + * Used to validate the `validate` option in `_.template` variable. + * + * Forbids characters which could potentially change the meaning of the function argument definition: + * - "()," (modification of function parameters) + * - "=" (default value) + * - "[]{}" (destructuring of function parameters) + * - "/" (beginning of a comment) + * - whitespace + */ + var reForbiddenIdentifierChars = /[()=,{}\[\]\/\s]/; + + /** Used to match backslashes in property paths. */ + var reEscapeChar = /\\(\\)?/g; + + /** + * Used to match + * [ES template delimiters](http://ecma-international.org/ecma-262/7.0/#sec-template-literal-lexical-components). + */ + var reEsTemplate = /\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g; + + /** Used to match `RegExp` flags from their coerced string values. */ + var reFlags = /\w*$/; + + /** Used to detect bad signed hexadecimal string values. */ + var reIsBadHex = /^[-+]0x[0-9a-f]+$/i; + + /** Used to detect binary string values. */ + var reIsBinary = /^0b[01]+$/i; + + /** Used to detect host constructors (Safari). */ + var reIsHostCtor = /^\[object .+?Constructor\]$/; + + /** Used to detect octal string values. */ + var reIsOctal = /^0o[0-7]+$/i; + + /** Used to detect unsigned integer values. */ + var reIsUint = /^(?:0|[1-9]\d*)$/; + + /** Used to match Latin Unicode letters (excluding mathematical operators). */ + var reLatin = /[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g; + + /** Used to ensure capturing order of template delimiters. */ + var reNoMatch = /($^)/; + + /** Used to match unescaped characters in compiled string literals. */ + var reUnescapedString = /['\n\r\u2028\u2029\\]/g; + + /** Used to compose unicode character classes. */ + var rsAstralRange = '\\ud800-\\udfff', + rsComboMarksRange = '\\u0300-\\u036f', + reComboHalfMarksRange = '\\ufe20-\\ufe2f', + rsComboSymbolsRange = '\\u20d0-\\u20ff', + rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange, + rsDingbatRange = '\\u2700-\\u27bf', + rsLowerRange = 'a-z\\xdf-\\xf6\\xf8-\\xff', + rsMathOpRange = '\\xac\\xb1\\xd7\\xf7', + rsNonCharRange = '\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf', + rsPunctuationRange = '\\u2000-\\u206f', + rsSpaceRange = ' \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000', + rsUpperRange = 'A-Z\\xc0-\\xd6\\xd8-\\xde', + rsVarRange = '\\ufe0e\\ufe0f', + rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange; + + /** Used to compose unicode capture groups. */ + var rsApos = "['\u2019]", + rsAstral = '[' + rsAstralRange + ']', + rsBreak = '[' + rsBreakRange + ']', + rsCombo = '[' + rsComboRange + ']', + rsDigits = '\\d+', + rsDingbat = '[' + rsDingbatRange + ']', + rsLower = '[' + rsLowerRange + ']', + rsMisc = '[^' + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + ']', + rsFitz = '\\ud83c[\\udffb-\\udfff]', + rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')', + rsNonAstral = '[^' + rsAstralRange + ']', + rsRegional = '(?:\\ud83c[\\udde6-\\uddff]){2}', + rsSurrPair = '[\\ud800-\\udbff][\\udc00-\\udfff]', + rsUpper = '[' + rsUpperRange + ']', + rsZWJ = '\\u200d'; + + /** Used to compose unicode regexes. */ + var rsMiscLower = '(?:' + rsLower + '|' + rsMisc + ')', + rsMiscUpper = '(?:' + rsUpper + '|' + rsMisc + ')', + rsOptContrLower = '(?:' + rsApos + '(?:d|ll|m|re|s|t|ve))?', + rsOptContrUpper = '(?:' + rsApos + '(?:D|LL|M|RE|S|T|VE))?', + reOptMod = rsModifier + '?', + rsOptVar = '[' + rsVarRange + ']?', + rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*', + rsOrdLower = '\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])', + rsOrdUpper = '\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])', + rsSeq = rsOptVar + reOptMod + rsOptJoin, + rsEmoji = '(?:' + [rsDingbat, rsRegional, rsSurrPair].join('|') + ')' + rsSeq, + rsSymbol = '(?:' + [rsNonAstral + rsCombo + '?', rsCombo, rsRegional, rsSurrPair, rsAstral].join('|') + ')'; + + /** Used to match apostrophes. */ + var reApos = RegExp(rsApos, 'g'); + + /** + * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and + * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols). + */ + var reComboMark = RegExp(rsCombo, 'g'); + + /** Used to match [string symbols](https://mathiasbynens.be/notes/javascript-unicode). */ + var reUnicode = RegExp(rsFitz + '(?=' + rsFitz + ')|' + rsSymbol + rsSeq, 'g'); + + /** Used to match complex or compound words. */ + var reUnicodeWord = RegExp([ + rsUpper + '?' + rsLower + '+' + rsOptContrLower + '(?=' + [rsBreak, rsUpper, '$'].join('|') + ')', + rsMiscUpper + '+' + rsOptContrUpper + '(?=' + [rsBreak, rsUpper + rsMiscLower, '$'].join('|') + ')', + rsUpper + '?' + rsMiscLower + '+' + rsOptContrLower, + rsUpper + '+' + rsOptContrUpper, + rsOrdUpper, + rsOrdLower, + rsDigits, + rsEmoji + ].join('|'), 'g'); + + /** Used to detect strings with [zero-width joiners or code points from the astral planes](http://eev.ee/blog/2015/09/12/dark-corners-of-unicode/). */ + var reHasUnicode = RegExp('[' + rsZWJ + rsAstralRange + rsComboRange + rsVarRange + ']'); + + /** Used to detect strings that need a more robust regexp to match words. */ + var reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/; + + /** Used to assign default `context` object properties. */ + var contextProps = [ + 'Array', 'Buffer', 'DataView', 'Date', 'Error', 'Float32Array', 'Float64Array', + 'Function', 'Int8Array', 'Int16Array', 'Int32Array', 'Map', 'Math', 'Object', + 'Promise', 'RegExp', 'Set', 'String', 'Symbol', 'TypeError', 'Uint8Array', + 'Uint8ClampedArray', 'Uint16Array', 'Uint32Array', 'WeakMap', + '_', 'clearTimeout', 'isFinite', 'parseInt', 'setTimeout' + ]; + + /** Used to make template sourceURLs easier to identify. */ + var templateCounter = -1; + + /** Used to identify `toStringTag` values of typed arrays. */ + var typedArrayTags = {}; + typedArrayTags[float32Tag] = typedArrayTags[float64Tag] = + typedArrayTags[int8Tag] = typedArrayTags[int16Tag] = + typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] = + typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] = + typedArrayTags[uint32Tag] = true; + typedArrayTags[argsTag] = typedArrayTags[arrayTag] = + typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] = + typedArrayTags[dataViewTag] = typedArrayTags[dateTag] = + typedArrayTags[errorTag] = typedArrayTags[funcTag] = + typedArrayTags[mapTag] = typedArrayTags[numberTag] = + typedArrayTags[objectTag] = typedArrayTags[regexpTag] = + typedArrayTags[setTag] = typedArrayTags[stringTag] = + typedArrayTags[weakMapTag] = false; + + /** Used to identify `toStringTag` values supported by `_.clone`. */ + var cloneableTags = {}; + cloneableTags[argsTag] = cloneableTags[arrayTag] = + cloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] = + cloneableTags[boolTag] = cloneableTags[dateTag] = + cloneableTags[float32Tag] = cloneableTags[float64Tag] = + cloneableTags[int8Tag] = cloneableTags[int16Tag] = + cloneableTags[int32Tag] = cloneableTags[mapTag] = + cloneableTags[numberTag] = cloneableTags[objectTag] = + cloneableTags[regexpTag] = cloneableTags[setTag] = + cloneableTags[stringTag] = cloneableTags[symbolTag] = + cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] = + cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true; + cloneableTags[errorTag] = cloneableTags[funcTag] = + cloneableTags[weakMapTag] = false; + + /** Used to map Latin Unicode letters to basic Latin letters. */ + var deburredLetters = { + // Latin-1 Supplement block. + '\xc0': 'A', '\xc1': 'A', '\xc2': 'A', '\xc3': 'A', '\xc4': 'A', '\xc5': 'A', + '\xe0': 'a', '\xe1': 'a', '\xe2': 'a', '\xe3': 'a', '\xe4': 'a', '\xe5': 'a', + '\xc7': 'C', '\xe7': 'c', + '\xd0': 'D', '\xf0': 'd', + '\xc8': 'E', '\xc9': 'E', '\xca': 'E', '\xcb': 'E', + '\xe8': 'e', '\xe9': 'e', '\xea': 'e', '\xeb': 'e', + '\xcc': 'I', '\xcd': 'I', '\xce': 'I', '\xcf': 'I', + '\xec': 'i', '\xed': 'i', '\xee': 'i', '\xef': 'i', + '\xd1': 'N', '\xf1': 'n', + '\xd2': 'O', '\xd3': 'O', '\xd4': 'O', '\xd5': 'O', '\xd6': 'O', '\xd8': 'O', + '\xf2': 'o', '\xf3': 'o', '\xf4': 'o', '\xf5': 'o', '\xf6': 'o', '\xf8': 'o', + '\xd9': 'U', '\xda': 'U', '\xdb': 'U', '\xdc': 'U', + '\xf9': 'u', '\xfa': 'u', '\xfb': 'u', '\xfc': 'u', + '\xdd': 'Y', '\xfd': 'y', '\xff': 'y', + '\xc6': 'Ae', '\xe6': 'ae', + '\xde': 'Th', '\xfe': 'th', + '\xdf': 'ss', + // Latin Extended-A block. + '\u0100': 'A', '\u0102': 'A', '\u0104': 'A', + '\u0101': 'a', '\u0103': 'a', '\u0105': 'a', + '\u0106': 'C', '\u0108': 'C', '\u010a': 'C', '\u010c': 'C', + '\u0107': 'c', '\u0109': 'c', '\u010b': 'c', '\u010d': 'c', + '\u010e': 'D', '\u0110': 'D', '\u010f': 'd', '\u0111': 'd', + '\u0112': 'E', '\u0114': 'E', '\u0116': 'E', '\u0118': 'E', '\u011a': 'E', + '\u0113': 'e', '\u0115': 'e', '\u0117': 'e', '\u0119': 'e', '\u011b': 'e', + '\u011c': 'G', '\u011e': 'G', '\u0120': 'G', '\u0122': 'G', + '\u011d': 'g', '\u011f': 'g', '\u0121': 'g', '\u0123': 'g', + '\u0124': 'H', '\u0126': 'H', '\u0125': 'h', '\u0127': 'h', + '\u0128': 'I', '\u012a': 'I', '\u012c': 'I', '\u012e': 'I', '\u0130': 'I', + '\u0129': 'i', '\u012b': 'i', '\u012d': 'i', '\u012f': 'i', '\u0131': 'i', + '\u0134': 'J', '\u0135': 'j', + '\u0136': 'K', '\u0137': 'k', '\u0138': 'k', + '\u0139': 'L', '\u013b': 'L', '\u013d': 'L', '\u013f': 'L', '\u0141': 'L', + '\u013a': 'l', '\u013c': 'l', '\u013e': 'l', '\u0140': 'l', '\u0142': 'l', + '\u0143': 'N', '\u0145': 'N', '\u0147': 'N', '\u014a': 'N', + '\u0144': 'n', '\u0146': 'n', '\u0148': 'n', '\u014b': 'n', + '\u014c': 'O', '\u014e': 'O', '\u0150': 'O', + '\u014d': 'o', '\u014f': 'o', '\u0151': 'o', + '\u0154': 'R', '\u0156': 'R', '\u0158': 'R', + '\u0155': 'r', '\u0157': 'r', '\u0159': 'r', + '\u015a': 'S', '\u015c': 'S', '\u015e': 'S', '\u0160': 'S', + '\u015b': 's', '\u015d': 's', '\u015f': 's', '\u0161': 's', + '\u0162': 'T', '\u0164': 'T', '\u0166': 'T', + '\u0163': 't', '\u0165': 't', '\u0167': 't', + '\u0168': 'U', '\u016a': 'U', '\u016c': 'U', '\u016e': 'U', '\u0170': 'U', '\u0172': 'U', + '\u0169': 'u', '\u016b': 'u', '\u016d': 'u', '\u016f': 'u', '\u0171': 'u', '\u0173': 'u', + '\u0174': 'W', '\u0175': 'w', + '\u0176': 'Y', '\u0177': 'y', '\u0178': 'Y', + '\u0179': 'Z', '\u017b': 'Z', '\u017d': 'Z', + '\u017a': 'z', '\u017c': 'z', '\u017e': 'z', + '\u0132': 'IJ', '\u0133': 'ij', + '\u0152': 'Oe', '\u0153': 'oe', + '\u0149': "'n", '\u017f': 's' + }; + + /** Used to map characters to HTML entities. */ + var htmlEscapes = { + '&': '&', + '<': '<', + '>': '>', + '"': '"', + "'": ''' + }; + + /** Used to map HTML entities to characters. */ + var htmlUnescapes = { + '&': '&', + '<': '<', + '>': '>', + '"': '"', + ''': "'" + }; + + /** Used to escape characters for inclusion in compiled string literals. */ + var stringEscapes = { + '\\': '\\', + "'": "'", + '\n': 'n', + '\r': 'r', + '\u2028': 'u2028', + '\u2029': 'u2029' + }; + + /** Built-in method references without a dependency on `root`. */ + var freeParseFloat = parseFloat, + freeParseInt = parseInt; + + /** Detect free variable `global` from Node.js. */ + var freeGlobal = typeof global == 'object' && global && global.Object === Object && global; + + /** Detect free variable `self`. */ + var freeSelf = typeof self == 'object' && self && self.Object === Object && self; + + /** Used as a reference to the global object. */ + var root = freeGlobal || freeSelf || Function('return this')(); + + /** Detect free variable `exports`. */ + var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports; + + /** Detect free variable `module`. */ + var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module; + + /** Detect the popular CommonJS extension `module.exports`. */ + var moduleExports = freeModule && freeModule.exports === freeExports; + + /** Detect free variable `process` from Node.js. */ + var freeProcess = moduleExports && freeGlobal.process; + + /** Used to access faster Node.js helpers. */ + var nodeUtil = (function() { + try { + // Use `util.types` for Node.js 10+. + var types = freeModule && freeModule.require && freeModule.require('util').types; + + if (types) { + return types; + } + + // Legacy `process.binding('util')` for Node.js < 10. + return freeProcess && freeProcess.binding && freeProcess.binding('util'); + } catch (e) {} + }()); + + /* Node.js helper references. */ + var nodeIsArrayBuffer = nodeUtil && nodeUtil.isArrayBuffer, + nodeIsDate = nodeUtil && nodeUtil.isDate, + nodeIsMap = nodeUtil && nodeUtil.isMap, + nodeIsRegExp = nodeUtil && nodeUtil.isRegExp, + nodeIsSet = nodeUtil && nodeUtil.isSet, + nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray; + + /*--------------------------------------------------------------------------*/ + + /** + * A faster alternative to `Function#apply`, this function invokes `func` + * with the `this` binding of `thisArg` and the arguments of `args`. + * + * @private + * @param {Function} func The function to invoke. + * @param {*} thisArg The `this` binding of `func`. + * @param {Array} args The arguments to invoke `func` with. + * @returns {*} Returns the result of `func`. + */ + function apply(func, thisArg, args) { + switch (args.length) { + case 0: return func.call(thisArg); + case 1: return func.call(thisArg, args[0]); + case 2: return func.call(thisArg, args[0], args[1]); + case 3: return func.call(thisArg, args[0], args[1], args[2]); + } + return func.apply(thisArg, args); + } + + /** + * A specialized version of `baseAggregator` for arrays. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} setter The function to set `accumulator` values. + * @param {Function} iteratee The iteratee to transform keys. + * @param {Object} accumulator The initial aggregated object. + * @returns {Function} Returns `accumulator`. + */ + function arrayAggregator(array, setter, iteratee, accumulator) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + var value = array[index]; + setter(accumulator, value, iteratee(value), array); + } + return accumulator; + } + + /** + * A specialized version of `_.forEach` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns `array`. + */ + function arrayEach(array, iteratee) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + if (iteratee(array[index], index, array) === false) { + break; + } + } + return array; + } + + /** + * A specialized version of `_.forEachRight` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns `array`. + */ + function arrayEachRight(array, iteratee) { + var length = array == null ? 0 : array.length; + + while (length--) { + if (iteratee(array[length], length, array) === false) { + break; + } + } + return array; + } + + /** + * A specialized version of `_.every` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {boolean} Returns `true` if all elements pass the predicate check, + * else `false`. + */ + function arrayEvery(array, predicate) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + if (!predicate(array[index], index, array)) { + return false; + } + } + return true; + } + + /** + * A specialized version of `_.filter` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {Array} Returns the new filtered array. + */ + function arrayFilter(array, predicate) { + var index = -1, + length = array == null ? 0 : array.length, + resIndex = 0, + result = []; + + while (++index < length) { + var value = array[index]; + if (predicate(value, index, array)) { + result[resIndex++] = value; + } + } + return result; + } + + /** + * A specialized version of `_.includes` for arrays without support for + * specifying an index to search from. + * + * @private + * @param {Array} [array] The array to inspect. + * @param {*} target The value to search for. + * @returns {boolean} Returns `true` if `target` is found, else `false`. + */ + function arrayIncludes(array, value) { + var length = array == null ? 0 : array.length; + return !!length && baseIndexOf(array, value, 0) > -1; + } + + /** + * This function is like `arrayIncludes` except that it accepts a comparator. + * + * @private + * @param {Array} [array] The array to inspect. + * @param {*} target The value to search for. + * @param {Function} comparator The comparator invoked per element. + * @returns {boolean} Returns `true` if `target` is found, else `false`. + */ + function arrayIncludesWith(array, value, comparator) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + if (comparator(value, array[index])) { + return true; + } + } + return false; + } + + /** + * A specialized version of `_.map` for arrays without support for iteratee + * shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns the new mapped array. + */ + function arrayMap(array, iteratee) { + var index = -1, + length = array == null ? 0 : array.length, + result = Array(length); + + while (++index < length) { + result[index] = iteratee(array[index], index, array); + } + return result; + } + + /** + * Appends the elements of `values` to `array`. + * + * @private + * @param {Array} array The array to modify. + * @param {Array} values The values to append. + * @returns {Array} Returns `array`. + */ + function arrayPush(array, values) { + var index = -1, + length = values.length, + offset = array.length; + + while (++index < length) { + array[offset + index] = values[index]; + } + return array; + } + + /** + * A specialized version of `_.reduce` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @param {*} [accumulator] The initial value. + * @param {boolean} [initAccum] Specify using the first element of `array` as + * the initial value. + * @returns {*} Returns the accumulated value. + */ + function arrayReduce(array, iteratee, accumulator, initAccum) { + var index = -1, + length = array == null ? 0 : array.length; + + if (initAccum && length) { + accumulator = array[++index]; + } + while (++index < length) { + accumulator = iteratee(accumulator, array[index], index, array); + } + return accumulator; + } + + /** + * A specialized version of `_.reduceRight` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @param {*} [accumulator] The initial value. + * @param {boolean} [initAccum] Specify using the last element of `array` as + * the initial value. + * @returns {*} Returns the accumulated value. + */ + function arrayReduceRight(array, iteratee, accumulator, initAccum) { + var length = array == null ? 0 : array.length; + if (initAccum && length) { + accumulator = array[--length]; + } + while (length--) { + accumulator = iteratee(accumulator, array[length], length, array); + } + return accumulator; + } + + /** + * A specialized version of `_.some` for arrays without support for iteratee + * shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {boolean} Returns `true` if any element passes the predicate check, + * else `false`. + */ + function arraySome(array, predicate) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + if (predicate(array[index], index, array)) { + return true; + } + } + return false; + } + + /** + * Gets the size of an ASCII `string`. + * + * @private + * @param {string} string The string inspect. + * @returns {number} Returns the string size. + */ + var asciiSize = baseProperty('length'); + + /** + * Converts an ASCII `string` to an array. + * + * @private + * @param {string} string The string to convert. + * @returns {Array} Returns the converted array. + */ + function asciiToArray(string) { + return string.split(''); + } + + /** + * Splits an ASCII `string` into an array of its words. + * + * @private + * @param {string} The string to inspect. + * @returns {Array} Returns the words of `string`. + */ + function asciiWords(string) { + return string.match(reAsciiWord) || []; + } + + /** + * The base implementation of methods like `_.findKey` and `_.findLastKey`, + * without support for iteratee shorthands, which iterates over `collection` + * using `eachFunc`. + * + * @private + * @param {Array|Object} collection The collection to inspect. + * @param {Function} predicate The function invoked per iteration. + * @param {Function} eachFunc The function to iterate over `collection`. + * @returns {*} Returns the found element or its key, else `undefined`. + */ + function baseFindKey(collection, predicate, eachFunc) { + var result; + eachFunc(collection, function(value, key, collection) { + if (predicate(value, key, collection)) { + result = key; + return false; + } + }); + return result; + } + + /** + * The base implementation of `_.findIndex` and `_.findLastIndex` without + * support for iteratee shorthands. + * + * @private + * @param {Array} array The array to inspect. + * @param {Function} predicate The function invoked per iteration. + * @param {number} fromIndex The index to search from. + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {number} Returns the index of the matched value, else `-1`. + */ + function baseFindIndex(array, predicate, fromIndex, fromRight) { + var length = array.length, + index = fromIndex + (fromRight ? 1 : -1); + + while ((fromRight ? index-- : ++index < length)) { + if (predicate(array[index], index, array)) { + return index; + } + } + return -1; + } + + /** + * The base implementation of `_.indexOf` without `fromIndex` bounds checks. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} fromIndex The index to search from. + * @returns {number} Returns the index of the matched value, else `-1`. + */ + function baseIndexOf(array, value, fromIndex) { + return value === value + ? strictIndexOf(array, value, fromIndex) + : baseFindIndex(array, baseIsNaN, fromIndex); + } + + /** + * This function is like `baseIndexOf` except that it accepts a comparator. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} fromIndex The index to search from. + * @param {Function} comparator The comparator invoked per element. + * @returns {number} Returns the index of the matched value, else `-1`. + */ + function baseIndexOfWith(array, value, fromIndex, comparator) { + var index = fromIndex - 1, + length = array.length; + + while (++index < length) { + if (comparator(array[index], value)) { + return index; + } + } + return -1; + } + + /** + * The base implementation of `_.isNaN` without support for number objects. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`. + */ + function baseIsNaN(value) { + return value !== value; + } + + /** + * The base implementation of `_.mean` and `_.meanBy` without support for + * iteratee shorthands. + * + * @private + * @param {Array} array The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {number} Returns the mean. + */ + function baseMean(array, iteratee) { + var length = array == null ? 0 : array.length; + return length ? (baseSum(array, iteratee) / length) : NAN; + } + + /** + * The base implementation of `_.property` without support for deep paths. + * + * @private + * @param {string} key The key of the property to get. + * @returns {Function} Returns the new accessor function. + */ + function baseProperty(key) { + return function(object) { + return object == null ? undefined : object[key]; + }; + } + + /** + * The base implementation of `_.propertyOf` without support for deep paths. + * + * @private + * @param {Object} object The object to query. + * @returns {Function} Returns the new accessor function. + */ + function basePropertyOf(object) { + return function(key) { + return object == null ? undefined : object[key]; + }; + } + + /** + * The base implementation of `_.reduce` and `_.reduceRight`, without support + * for iteratee shorthands, which iterates over `collection` using `eachFunc`. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @param {*} accumulator The initial value. + * @param {boolean} initAccum Specify using the first or last element of + * `collection` as the initial value. + * @param {Function} eachFunc The function to iterate over `collection`. + * @returns {*} Returns the accumulated value. + */ + function baseReduce(collection, iteratee, accumulator, initAccum, eachFunc) { + eachFunc(collection, function(value, index, collection) { + accumulator = initAccum + ? (initAccum = false, value) + : iteratee(accumulator, value, index, collection); + }); + return accumulator; + } + + /** + * The base implementation of `_.sortBy` which uses `comparer` to define the + * sort order of `array` and replaces criteria objects with their corresponding + * values. + * + * @private + * @param {Array} array The array to sort. + * @param {Function} comparer The function to define sort order. + * @returns {Array} Returns `array`. + */ + function baseSortBy(array, comparer) { + var length = array.length; + + array.sort(comparer); + while (length--) { + array[length] = array[length].value; + } + return array; + } + + /** + * The base implementation of `_.sum` and `_.sumBy` without support for + * iteratee shorthands. + * + * @private + * @param {Array} array The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {number} Returns the sum. + */ + function baseSum(array, iteratee) { + var result, + index = -1, + length = array.length; + + while (++index < length) { + var current = iteratee(array[index]); + if (current !== undefined) { + result = result === undefined ? current : (result + current); + } + } + return result; + } + + /** + * The base implementation of `_.times` without support for iteratee shorthands + * or max array length checks. + * + * @private + * @param {number} n The number of times to invoke `iteratee`. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns the array of results. + */ + function baseTimes(n, iteratee) { + var index = -1, + result = Array(n); + + while (++index < n) { + result[index] = iteratee(index); + } + return result; + } + + /** + * The base implementation of `_.toPairs` and `_.toPairsIn` which creates an array + * of key-value pairs for `object` corresponding to the property names of `props`. + * + * @private + * @param {Object} object The object to query. + * @param {Array} props The property names to get values for. + * @returns {Object} Returns the key-value pairs. + */ + function baseToPairs(object, props) { + return arrayMap(props, function(key) { + return [key, object[key]]; + }); + } + + /** + * The base implementation of `_.trim`. + * + * @private + * @param {string} string The string to trim. + * @returns {string} Returns the trimmed string. + */ + function baseTrim(string) { + return string + ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, '') + : string; + } + + /** + * The base implementation of `_.unary` without support for storing metadata. + * + * @private + * @param {Function} func The function to cap arguments for. + * @returns {Function} Returns the new capped function. + */ + function baseUnary(func) { + return function(value) { + return func(value); + }; + } + + /** + * The base implementation of `_.values` and `_.valuesIn` which creates an + * array of `object` property values corresponding to the property names + * of `props`. + * + * @private + * @param {Object} object The object to query. + * @param {Array} props The property names to get values for. + * @returns {Object} Returns the array of property values. + */ + function baseValues(object, props) { + return arrayMap(props, function(key) { + return object[key]; + }); + } + + /** + * Checks if a `cache` value for `key` exists. + * + * @private + * @param {Object} cache The cache to query. + * @param {string} key The key of the entry to check. + * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. + */ + function cacheHas(cache, key) { + return cache.has(key); + } + + /** + * Used by `_.trim` and `_.trimStart` to get the index of the first string symbol + * that is not found in the character symbols. + * + * @private + * @param {Array} strSymbols The string symbols to inspect. + * @param {Array} chrSymbols The character symbols to find. + * @returns {number} Returns the index of the first unmatched string symbol. + */ + function charsStartIndex(strSymbols, chrSymbols) { + var index = -1, + length = strSymbols.length; + + while (++index < length && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {} + return index; + } + + /** + * Used by `_.trim` and `_.trimEnd` to get the index of the last string symbol + * that is not found in the character symbols. + * + * @private + * @param {Array} strSymbols The string symbols to inspect. + * @param {Array} chrSymbols The character symbols to find. + * @returns {number} Returns the index of the last unmatched string symbol. + */ + function charsEndIndex(strSymbols, chrSymbols) { + var index = strSymbols.length; + + while (index-- && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {} + return index; + } + + /** + * Gets the number of `placeholder` occurrences in `array`. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} placeholder The placeholder to search for. + * @returns {number} Returns the placeholder count. + */ + function countHolders(array, placeholder) { + var length = array.length, + result = 0; + + while (length--) { + if (array[length] === placeholder) { + ++result; + } + } + return result; + } + + /** + * Used by `_.deburr` to convert Latin-1 Supplement and Latin Extended-A + * letters to basic Latin letters. + * + * @private + * @param {string} letter The matched letter to deburr. + * @returns {string} Returns the deburred letter. + */ + var deburrLetter = basePropertyOf(deburredLetters); + + /** + * Used by `_.escape` to convert characters to HTML entities. + * + * @private + * @param {string} chr The matched character to escape. + * @returns {string} Returns the escaped character. + */ + var escapeHtmlChar = basePropertyOf(htmlEscapes); + + /** + * Used by `_.template` to escape characters for inclusion in compiled string literals. + * + * @private + * @param {string} chr The matched character to escape. + * @returns {string} Returns the escaped character. + */ + function escapeStringChar(chr) { + return '\\' + stringEscapes[chr]; + } + + /** + * Gets the value at `key` of `object`. + * + * @private + * @param {Object} [object] The object to query. + * @param {string} key The key of the property to get. + * @returns {*} Returns the property value. + */ + function getValue(object, key) { + return object == null ? undefined : object[key]; + } + + /** + * Checks if `string` contains Unicode symbols. + * + * @private + * @param {string} string The string to inspect. + * @returns {boolean} Returns `true` if a symbol is found, else `false`. + */ + function hasUnicode(string) { + return reHasUnicode.test(string); + } + + /** + * Checks if `string` contains a word composed of Unicode symbols. + * + * @private + * @param {string} string The string to inspect. + * @returns {boolean} Returns `true` if a word is found, else `false`. + */ + function hasUnicodeWord(string) { + return reHasUnicodeWord.test(string); + } + + /** + * Converts `iterator` to an array. + * + * @private + * @param {Object} iterator The iterator to convert. + * @returns {Array} Returns the converted array. + */ + function iteratorToArray(iterator) { + var data, + result = []; + + while (!(data = iterator.next()).done) { + result.push(data.value); + } + return result; + } + + /** + * Converts `map` to its key-value pairs. + * + * @private + * @param {Object} map The map to convert. + * @returns {Array} Returns the key-value pairs. + */ + function mapToArray(map) { + var index = -1, + result = Array(map.size); + + map.forEach(function(value, key) { + result[++index] = [key, value]; + }); + return result; + } + + /** + * Creates a unary function that invokes `func` with its argument transformed. + * + * @private + * @param {Function} func The function to wrap. + * @param {Function} transform The argument transform. + * @returns {Function} Returns the new function. + */ + function overArg(func, transform) { + return function(arg) { + return func(transform(arg)); + }; + } + + /** + * Replaces all `placeholder` elements in `array` with an internal placeholder + * and returns an array of their indexes. + * + * @private + * @param {Array} array The array to modify. + * @param {*} placeholder The placeholder to replace. + * @returns {Array} Returns the new array of placeholder indexes. + */ + function replaceHolders(array, placeholder) { + var index = -1, + length = array.length, + resIndex = 0, + result = []; + + while (++index < length) { + var value = array[index]; + if (value === placeholder || value === PLACEHOLDER) { + array[index] = PLACEHOLDER; + result[resIndex++] = index; + } + } + return result; + } + + /** + * Converts `set` to an array of its values. + * + * @private + * @param {Object} set The set to convert. + * @returns {Array} Returns the values. + */ + function setToArray(set) { + var index = -1, + result = Array(set.size); + + set.forEach(function(value) { + result[++index] = value; + }); + return result; + } + + /** + * Converts `set` to its value-value pairs. + * + * @private + * @param {Object} set The set to convert. + * @returns {Array} Returns the value-value pairs. + */ + function setToPairs(set) { + var index = -1, + result = Array(set.size); + + set.forEach(function(value) { + result[++index] = [value, value]; + }); + return result; + } + + /** + * A specialized version of `_.indexOf` which performs strict equality + * comparisons of values, i.e. `===`. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} fromIndex The index to search from. + * @returns {number} Returns the index of the matched value, else `-1`. + */ + function strictIndexOf(array, value, fromIndex) { + var index = fromIndex - 1, + length = array.length; + + while (++index < length) { + if (array[index] === value) { + return index; + } + } + return -1; + } + + /** + * A specialized version of `_.lastIndexOf` which performs strict equality + * comparisons of values, i.e. `===`. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} fromIndex The index to search from. + * @returns {number} Returns the index of the matched value, else `-1`. + */ + function strictLastIndexOf(array, value, fromIndex) { + var index = fromIndex + 1; + while (index--) { + if (array[index] === value) { + return index; + } + } + return index; + } + + /** + * Gets the number of symbols in `string`. + * + * @private + * @param {string} string The string to inspect. + * @returns {number} Returns the string size. + */ + function stringSize(string) { + return hasUnicode(string) + ? unicodeSize(string) + : asciiSize(string); + } + + /** + * Converts `string` to an array. + * + * @private + * @param {string} string The string to convert. + * @returns {Array} Returns the converted array. + */ + function stringToArray(string) { + return hasUnicode(string) + ? unicodeToArray(string) + : asciiToArray(string); + } + + /** + * Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace + * character of `string`. + * + * @private + * @param {string} string The string to inspect. + * @returns {number} Returns the index of the last non-whitespace character. + */ + function trimmedEndIndex(string) { + var index = string.length; + + while (index-- && reWhitespace.test(string.charAt(index))) {} + return index; + } + + /** + * Used by `_.unescape` to convert HTML entities to characters. + * + * @private + * @param {string} chr The matched character to unescape. + * @returns {string} Returns the unescaped character. + */ + var unescapeHtmlChar = basePropertyOf(htmlUnescapes); + + /** + * Gets the size of a Unicode `string`. + * + * @private + * @param {string} string The string inspect. + * @returns {number} Returns the string size. + */ + function unicodeSize(string) { + var result = reUnicode.lastIndex = 0; + while (reUnicode.test(string)) { + ++result; + } + return result; + } + + /** + * Converts a Unicode `string` to an array. + * + * @private + * @param {string} string The string to convert. + * @returns {Array} Returns the converted array. + */ + function unicodeToArray(string) { + return string.match(reUnicode) || []; + } + + /** + * Splits a Unicode `string` into an array of its words. + * + * @private + * @param {string} The string to inspect. + * @returns {Array} Returns the words of `string`. + */ + function unicodeWords(string) { + return string.match(reUnicodeWord) || []; + } + + /*--------------------------------------------------------------------------*/ + + /** + * Create a new pristine `lodash` function using the `context` object. + * + * @static + * @memberOf _ + * @since 1.1.0 + * @category Util + * @param {Object} [context=root] The context object. + * @returns {Function} Returns a new `lodash` function. + * @example + * + * _.mixin({ 'foo': _.constant('foo') }); + * + * var lodash = _.runInContext(); + * lodash.mixin({ 'bar': lodash.constant('bar') }); + * + * _.isFunction(_.foo); + * // => true + * _.isFunction(_.bar); + * // => false + * + * lodash.isFunction(lodash.foo); + * // => false + * lodash.isFunction(lodash.bar); + * // => true + * + * // Create a suped-up `defer` in Node.js. + * var defer = _.runInContext({ 'setTimeout': setImmediate }).defer; + */ + var runInContext = (function runInContext(context) { + context = context == null ? root : _.defaults(root.Object(), context, _.pick(root, contextProps)); + + /** Built-in constructor references. */ + var Array = context.Array, + Date = context.Date, + Error = context.Error, + Function = context.Function, + Math = context.Math, + Object = context.Object, + RegExp = context.RegExp, + String = context.String, + TypeError = context.TypeError; + + /** Used for built-in method references. */ + var arrayProto = Array.prototype, + funcProto = Function.prototype, + objectProto = Object.prototype; + + /** Used to detect overreaching core-js shims. */ + var coreJsData = context['__core-js_shared__']; + + /** Used to resolve the decompiled source of functions. */ + var funcToString = funcProto.toString; + + /** Used to check objects for own properties. */ + var hasOwnProperty = objectProto.hasOwnProperty; + + /** Used to generate unique IDs. */ + var idCounter = 0; + + /** Used to detect methods masquerading as native. */ + var maskSrcKey = (function() { + var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || ''); + return uid ? ('Symbol(src)_1.' + uid) : ''; + }()); + + /** + * Used to resolve the + * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring) + * of values. + */ + var nativeObjectToString = objectProto.toString; + + /** Used to infer the `Object` constructor. */ + var objectCtorString = funcToString.call(Object); + + /** Used to restore the original `_` reference in `_.noConflict`. */ + var oldDash = root._; + + /** Used to detect if a method is native. */ + var reIsNative = RegExp('^' + + funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\$&') + .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$' + ); + + /** Built-in value references. */ + var Buffer = moduleExports ? context.Buffer : undefined, + Symbol = context.Symbol, + Uint8Array = context.Uint8Array, + allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined, + getPrototype = overArg(Object.getPrototypeOf, Object), + objectCreate = Object.create, + propertyIsEnumerable = objectProto.propertyIsEnumerable, + splice = arrayProto.splice, + spreadableSymbol = Symbol ? Symbol.isConcatSpreadable : undefined, + symIterator = Symbol ? Symbol.iterator : undefined, + symToStringTag = Symbol ? Symbol.toStringTag : undefined; + + var defineProperty = (function() { + try { + var func = getNative(Object, 'defineProperty'); + func({}, '', {}); + return func; + } catch (e) {} + }()); + + /** Mocked built-ins. */ + var ctxClearTimeout = context.clearTimeout !== root.clearTimeout && context.clearTimeout, + ctxNow = Date && Date.now !== root.Date.now && Date.now, + ctxSetTimeout = context.setTimeout !== root.setTimeout && context.setTimeout; + + /* Built-in method references for those with the same name as other `lodash` methods. */ + var nativeCeil = Math.ceil, + nativeFloor = Math.floor, + nativeGetSymbols = Object.getOwnPropertySymbols, + nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined, + nativeIsFinite = context.isFinite, + nativeJoin = arrayProto.join, + nativeKeys = overArg(Object.keys, Object), + nativeMax = Math.max, + nativeMin = Math.min, + nativeNow = Date.now, + nativeParseInt = context.parseInt, + nativeRandom = Math.random, + nativeReverse = arrayProto.reverse; + + /* Built-in method references that are verified to be native. */ + var DataView = getNative(context, 'DataView'), + Map = getNative(context, 'Map'), + Promise = getNative(context, 'Promise'), + Set = getNative(context, 'Set'), + WeakMap = getNative(context, 'WeakMap'), + nativeCreate = getNative(Object, 'create'); + + /** Used to store function metadata. */ + var metaMap = WeakMap && new WeakMap; + + /** Used to lookup unminified function names. */ + var realNames = {}; + + /** Used to detect maps, sets, and weakmaps. */ + var dataViewCtorString = toSource(DataView), + mapCtorString = toSource(Map), + promiseCtorString = toSource(Promise), + setCtorString = toSource(Set), + weakMapCtorString = toSource(WeakMap); + + /** Used to convert symbols to primitives and strings. */ + var symbolProto = Symbol ? Symbol.prototype : undefined, + symbolValueOf = symbolProto ? symbolProto.valueOf : undefined, + symbolToString = symbolProto ? symbolProto.toString : undefined; + + /*------------------------------------------------------------------------*/ + + /** + * Creates a `lodash` object which wraps `value` to enable implicit method + * chain sequences. Methods that operate on and return arrays, collections, + * and functions can be chained together. Methods that retrieve a single value + * or may return a primitive value will automatically end the chain sequence + * and return the unwrapped value. Otherwise, the value must be unwrapped + * with `_#value`. + * + * Explicit chain sequences, which must be unwrapped with `_#value`, may be + * enabled using `_.chain`. + * + * The execution of chained methods is lazy, that is, it's deferred until + * `_#value` is implicitly or explicitly called. + * + * Lazy evaluation allows several methods to support shortcut fusion. + * Shortcut fusion is an optimization to merge iteratee calls; this avoids + * the creation of intermediate arrays and can greatly reduce the number of + * iteratee executions. Sections of a chain sequence qualify for shortcut + * fusion if the section is applied to an array and iteratees accept only + * one argument. The heuristic for whether a section qualifies for shortcut + * fusion is subject to change. + * + * Chaining is supported in custom builds as long as the `_#value` method is + * directly or indirectly included in the build. + * + * In addition to lodash methods, wrappers have `Array` and `String` methods. + * + * The wrapper `Array` methods are: + * `concat`, `join`, `pop`, `push`, `shift`, `sort`, `splice`, and `unshift` + * + * The wrapper `String` methods are: + * `replace` and `split` + * + * The wrapper methods that support shortcut fusion are: + * `at`, `compact`, `drop`, `dropRight`, `dropWhile`, `filter`, `find`, + * `findLast`, `head`, `initial`, `last`, `map`, `reject`, `reverse`, `slice`, + * `tail`, `take`, `takeRight`, `takeRightWhile`, `takeWhile`, and `toArray` + * + * The chainable wrapper methods are: + * `after`, `ary`, `assign`, `assignIn`, `assignInWith`, `assignWith`, `at`, + * `before`, `bind`, `bindAll`, `bindKey`, `castArray`, `chain`, `chunk`, + * `commit`, `compact`, `concat`, `conforms`, `constant`, `countBy`, `create`, + * `curry`, `debounce`, `defaults`, `defaultsDeep`, `defer`, `delay`, + * `difference`, `differenceBy`, `differenceWith`, `drop`, `dropRight`, + * `dropRightWhile`, `dropWhile`, `extend`, `extendWith`, `fill`, `filter`, + * `flatMap`, `flatMapDeep`, `flatMapDepth`, `flatten`, `flattenDeep`, + * `flattenDepth`, `flip`, `flow`, `flowRight`, `fromPairs`, `functions`, + * `functionsIn`, `groupBy`, `initial`, `intersection`, `intersectionBy`, + * `intersectionWith`, `invert`, `invertBy`, `invokeMap`, `iteratee`, `keyBy`, + * `keys`, `keysIn`, `map`, `mapKeys`, `mapValues`, `matches`, `matchesProperty`, + * `memoize`, `merge`, `mergeWith`, `method`, `methodOf`, `mixin`, `negate`, + * `nthArg`, `omit`, `omitBy`, `once`, `orderBy`, `over`, `overArgs`, + * `overEvery`, `overSome`, `partial`, `partialRight`, `partition`, `pick`, + * `pickBy`, `plant`, `property`, `propertyOf`, `pull`, `pullAll`, `pullAllBy`, + * `pullAllWith`, `pullAt`, `push`, `range`, `rangeRight`, `rearg`, `reject`, + * `remove`, `rest`, `reverse`, `sampleSize`, `set`, `setWith`, `shuffle`, + * `slice`, `sort`, `sortBy`, `splice`, `spread`, `tail`, `take`, `takeRight`, + * `takeRightWhile`, `takeWhile`, `tap`, `throttle`, `thru`, `toArray`, + * `toPairs`, `toPairsIn`, `toPath`, `toPlainObject`, `transform`, `unary`, + * `union`, `unionBy`, `unionWith`, `uniq`, `uniqBy`, `uniqWith`, `unset`, + * `unshift`, `unzip`, `unzipWith`, `update`, `updateWith`, `values`, + * `valuesIn`, `without`, `wrap`, `xor`, `xorBy`, `xorWith`, `zip`, + * `zipObject`, `zipObjectDeep`, and `zipWith` + * + * The wrapper methods that are **not** chainable by default are: + * `add`, `attempt`, `camelCase`, `capitalize`, `ceil`, `clamp`, `clone`, + * `cloneDeep`, `cloneDeepWith`, `cloneWith`, `conformsTo`, `deburr`, + * `defaultTo`, `divide`, `each`, `eachRight`, `endsWith`, `eq`, `escape`, + * `escapeRegExp`, `every`, `find`, `findIndex`, `findKey`, `findLast`, + * `findLastIndex`, `findLastKey`, `first`, `floor`, `forEach`, `forEachRight`, + * `forIn`, `forInRight`, `forOwn`, `forOwnRight`, `get`, `gt`, `gte`, `has`, + * `hasIn`, `head`, `identity`, `includes`, `indexOf`, `inRange`, `invoke`, + * `isArguments`, `isArray`, `isArrayBuffer`, `isArrayLike`, `isArrayLikeObject`, + * `isBoolean`, `isBuffer`, `isDate`, `isElement`, `isEmpty`, `isEqual`, + * `isEqualWith`, `isError`, `isFinite`, `isFunction`, `isInteger`, `isLength`, + * `isMap`, `isMatch`, `isMatchWith`, `isNaN`, `isNative`, `isNil`, `isNull`, + * `isNumber`, `isObject`, `isObjectLike`, `isPlainObject`, `isRegExp`, + * `isSafeInteger`, `isSet`, `isString`, `isUndefined`, `isTypedArray`, + * `isWeakMap`, `isWeakSet`, `join`, `kebabCase`, `last`, `lastIndexOf`, + * `lowerCase`, `lowerFirst`, `lt`, `lte`, `max`, `maxBy`, `mean`, `meanBy`, + * `min`, `minBy`, `multiply`, `noConflict`, `noop`, `now`, `nth`, `pad`, + * `padEnd`, `padStart`, `parseInt`, `pop`, `random`, `reduce`, `reduceRight`, + * `repeat`, `result`, `round`, `runInContext`, `sample`, `shift`, `size`, + * `snakeCase`, `some`, `sortedIndex`, `sortedIndexBy`, `sortedLastIndex`, + * `sortedLastIndexBy`, `startCase`, `startsWith`, `stubArray`, `stubFalse`, + * `stubObject`, `stubString`, `stubTrue`, `subtract`, `sum`, `sumBy`, + * `template`, `times`, `toFinite`, `toInteger`, `toJSON`, `toLength`, + * `toLower`, `toNumber`, `toSafeInteger`, `toString`, `toUpper`, `trim`, + * `trimEnd`, `trimStart`, `truncate`, `unescape`, `uniqueId`, `upperCase`, + * `upperFirst`, `value`, and `words` + * + * @name _ + * @constructor + * @category Seq + * @param {*} value The value to wrap in a `lodash` instance. + * @returns {Object} Returns the new `lodash` wrapper instance. + * @example + * + * function square(n) { + * return n * n; + * } + * + * var wrapped = _([1, 2, 3]); + * + * // Returns an unwrapped value. + * wrapped.reduce(_.add); + * // => 6 + * + * // Returns a wrapped value. + * var squares = wrapped.map(square); + * + * _.isArray(squares); + * // => false + * + * _.isArray(squares.value()); + * // => true + */ + function lodash(value) { + if (isObjectLike(value) && !isArray(value) && !(value instanceof LazyWrapper)) { + if (value instanceof LodashWrapper) { + return value; + } + if (hasOwnProperty.call(value, '__wrapped__')) { + return wrapperClone(value); + } + } + return new LodashWrapper(value); + } + + /** + * The base implementation of `_.create` without support for assigning + * properties to the created object. + * + * @private + * @param {Object} proto The object to inherit from. + * @returns {Object} Returns the new object. + */ + var baseCreate = (function() { + function object() {} + return function(proto) { + if (!isObject(proto)) { + return {}; + } + if (objectCreate) { + return objectCreate(proto); + } + object.prototype = proto; + var result = new object; + object.prototype = undefined; + return result; + }; + }()); + + /** + * The function whose prototype chain sequence wrappers inherit from. + * + * @private + */ + function baseLodash() { + // No operation performed. + } + + /** + * The base constructor for creating `lodash` wrapper objects. + * + * @private + * @param {*} value The value to wrap. + * @param {boolean} [chainAll] Enable explicit method chain sequences. + */ + function LodashWrapper(value, chainAll) { + this.__wrapped__ = value; + this.__actions__ = []; + this.__chain__ = !!chainAll; + this.__index__ = 0; + this.__values__ = undefined; + } + + /** + * By default, the template delimiters used by lodash are like those in + * embedded Ruby (ERB) as well as ES2015 template strings. Change the + * following template settings to use alternative delimiters. + * + * @static + * @memberOf _ + * @type {Object} + */ + lodash.templateSettings = { + + /** + * Used to detect `data` property values to be HTML-escaped. + * + * @memberOf _.templateSettings + * @type {RegExp} + */ + 'escape': reEscape, + + /** + * Used to detect code to be evaluated. + * + * @memberOf _.templateSettings + * @type {RegExp} + */ + 'evaluate': reEvaluate, + + /** + * Used to detect `data` property values to inject. + * + * @memberOf _.templateSettings + * @type {RegExp} + */ + 'interpolate': reInterpolate, + + /** + * Used to reference the data object in the template text. + * + * @memberOf _.templateSettings + * @type {string} + */ + 'variable': '', + + /** + * Used to import variables into the compiled template. + * + * @memberOf _.templateSettings + * @type {Object} + */ + 'imports': { + + /** + * A reference to the `lodash` function. + * + * @memberOf _.templateSettings.imports + * @type {Function} + */ + '_': lodash + } + }; + + // Ensure wrappers are instances of `baseLodash`. + lodash.prototype = baseLodash.prototype; + lodash.prototype.constructor = lodash; + + LodashWrapper.prototype = baseCreate(baseLodash.prototype); + LodashWrapper.prototype.constructor = LodashWrapper; + + /*------------------------------------------------------------------------*/ + + /** + * Creates a lazy wrapper object which wraps `value` to enable lazy evaluation. + * + * @private + * @constructor + * @param {*} value The value to wrap. + */ + function LazyWrapper(value) { + this.__wrapped__ = value; + this.__actions__ = []; + this.__dir__ = 1; + this.__filtered__ = false; + this.__iteratees__ = []; + this.__takeCount__ = MAX_ARRAY_LENGTH; + this.__views__ = []; + } + + /** + * Creates a clone of the lazy wrapper object. + * + * @private + * @name clone + * @memberOf LazyWrapper + * @returns {Object} Returns the cloned `LazyWrapper` object. + */ + function lazyClone() { + var result = new LazyWrapper(this.__wrapped__); + result.__actions__ = copyArray(this.__actions__); + result.__dir__ = this.__dir__; + result.__filtered__ = this.__filtered__; + result.__iteratees__ = copyArray(this.__iteratees__); + result.__takeCount__ = this.__takeCount__; + result.__views__ = copyArray(this.__views__); + return result; + } + + /** + * Reverses the direction of lazy iteration. + * + * @private + * @name reverse + * @memberOf LazyWrapper + * @returns {Object} Returns the new reversed `LazyWrapper` object. + */ + function lazyReverse() { + if (this.__filtered__) { + var result = new LazyWrapper(this); + result.__dir__ = -1; + result.__filtered__ = true; + } else { + result = this.clone(); + result.__dir__ *= -1; + } + return result; + } + + /** + * Extracts the unwrapped value from its lazy wrapper. + * + * @private + * @name value + * @memberOf LazyWrapper + * @returns {*} Returns the unwrapped value. + */ + function lazyValue() { + var array = this.__wrapped__.value(), + dir = this.__dir__, + isArr = isArray(array), + isRight = dir < 0, + arrLength = isArr ? array.length : 0, + view = getView(0, arrLength, this.__views__), + start = view.start, + end = view.end, + length = end - start, + index = isRight ? end : (start - 1), + iteratees = this.__iteratees__, + iterLength = iteratees.length, + resIndex = 0, + takeCount = nativeMin(length, this.__takeCount__); + + if (!isArr || (!isRight && arrLength == length && takeCount == length)) { + return baseWrapperValue(array, this.__actions__); + } + var result = []; + + outer: + while (length-- && resIndex < takeCount) { + index += dir; + + var iterIndex = -1, + value = array[index]; + + while (++iterIndex < iterLength) { + var data = iteratees[iterIndex], + iteratee = data.iteratee, + type = data.type, + computed = iteratee(value); + + if (type == LAZY_MAP_FLAG) { + value = computed; + } else if (!computed) { + if (type == LAZY_FILTER_FLAG) { + continue outer; + } else { + break outer; + } + } + } + result[resIndex++] = value; + } + return result; + } + + // Ensure `LazyWrapper` is an instance of `baseLodash`. + LazyWrapper.prototype = baseCreate(baseLodash.prototype); + LazyWrapper.prototype.constructor = LazyWrapper; + + /*------------------------------------------------------------------------*/ + + /** + * Creates a hash object. + * + * @private + * @constructor + * @param {Array} [entries] The key-value pairs to cache. + */ + function Hash(entries) { + var index = -1, + length = entries == null ? 0 : entries.length; + + this.clear(); + while (++index < length) { + var entry = entries[index]; + this.set(entry[0], entry[1]); + } + } + + /** + * Removes all key-value entries from the hash. + * + * @private + * @name clear + * @memberOf Hash + */ + function hashClear() { + this.__data__ = nativeCreate ? nativeCreate(null) : {}; + this.size = 0; + } + + /** + * Removes `key` and its value from the hash. + * + * @private + * @name delete + * @memberOf Hash + * @param {Object} hash The hash to modify. + * @param {string} key The key of the value to remove. + * @returns {boolean} Returns `true` if the entry was removed, else `false`. + */ + function hashDelete(key) { + var result = this.has(key) && delete this.__data__[key]; + this.size -= result ? 1 : 0; + return result; + } + + /** + * Gets the hash value for `key`. + * + * @private + * @name get + * @memberOf Hash + * @param {string} key The key of the value to get. + * @returns {*} Returns the entry value. + */ + function hashGet(key) { + var data = this.__data__; + if (nativeCreate) { + var result = data[key]; + return result === HASH_UNDEFINED ? undefined : result; + } + return hasOwnProperty.call(data, key) ? data[key] : undefined; + } + + /** + * Checks if a hash value for `key` exists. + * + * @private + * @name has + * @memberOf Hash + * @param {string} key The key of the entry to check. + * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. + */ + function hashHas(key) { + var data = this.__data__; + return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key); + } + + /** + * Sets the hash `key` to `value`. + * + * @private + * @name set + * @memberOf Hash + * @param {string} key The key of the value to set. + * @param {*} value The value to set. + * @returns {Object} Returns the hash instance. + */ + function hashSet(key, value) { + var data = this.__data__; + this.size += this.has(key) ? 0 : 1; + data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value; + return this; + } + + // Add methods to `Hash`. + Hash.prototype.clear = hashClear; + Hash.prototype['delete'] = hashDelete; + Hash.prototype.get = hashGet; + Hash.prototype.has = hashHas; + Hash.prototype.set = hashSet; + + /*------------------------------------------------------------------------*/ + + /** + * Creates an list cache object. + * + * @private + * @constructor + * @param {Array} [entries] The key-value pairs to cache. + */ + function ListCache(entries) { + var index = -1, + length = entries == null ? 0 : entries.length; + + this.clear(); + while (++index < length) { + var entry = entries[index]; + this.set(entry[0], entry[1]); + } + } + + /** + * Removes all key-value entries from the list cache. + * + * @private + * @name clear + * @memberOf ListCache + */ + function listCacheClear() { + this.__data__ = []; + this.size = 0; + } + + /** + * Removes `key` and its value from the list cache. + * + * @private + * @name delete + * @memberOf ListCache + * @param {string} key The key of the value to remove. + * @returns {boolean} Returns `true` if the entry was removed, else `false`. + */ + function listCacheDelete(key) { + var data = this.__data__, + index = assocIndexOf(data, key); + + if (index < 0) { + return false; + } + var lastIndex = data.length - 1; + if (index == lastIndex) { + data.pop(); + } else { + splice.call(data, index, 1); + } + --this.size; + return true; + } + + /** + * Gets the list cache value for `key`. + * + * @private + * @name get + * @memberOf ListCache + * @param {string} key The key of the value to get. + * @returns {*} Returns the entry value. + */ + function listCacheGet(key) { + var data = this.__data__, + index = assocIndexOf(data, key); + + return index < 0 ? undefined : data[index][1]; + } + + /** + * Checks if a list cache value for `key` exists. + * + * @private + * @name has + * @memberOf ListCache + * @param {string} key The key of the entry to check. + * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. + */ + function listCacheHas(key) { + return assocIndexOf(this.__data__, key) > -1; + } + + /** + * Sets the list cache `key` to `value`. + * + * @private + * @name set + * @memberOf ListCache + * @param {string} key The key of the value to set. + * @param {*} value The value to set. + * @returns {Object} Returns the list cache instance. + */ + function listCacheSet(key, value) { + var data = this.__data__, + index = assocIndexOf(data, key); + + if (index < 0) { + ++this.size; + data.push([key, value]); + } else { + data[index][1] = value; + } + return this; + } + + // Add methods to `ListCache`. + ListCache.prototype.clear = listCacheClear; + ListCache.prototype['delete'] = listCacheDelete; + ListCache.prototype.get = listCacheGet; + ListCache.prototype.has = listCacheHas; + ListCache.prototype.set = listCacheSet; + + /*------------------------------------------------------------------------*/ + + /** + * Creates a map cache object to store key-value pairs. + * + * @private + * @constructor + * @param {Array} [entries] The key-value pairs to cache. + */ + function MapCache(entries) { + var index = -1, + length = entries == null ? 0 : entries.length; + + this.clear(); + while (++index < length) { + var entry = entries[index]; + this.set(entry[0], entry[1]); + } + } + + /** + * Removes all key-value entries from the map. + * + * @private + * @name clear + * @memberOf MapCache + */ + function mapCacheClear() { + this.size = 0; + this.__data__ = { + 'hash': new Hash, + 'map': new (Map || ListCache), + 'string': new Hash + }; + } + + /** + * Removes `key` and its value from the map. + * + * @private + * @name delete + * @memberOf MapCache + * @param {string} key The key of the value to remove. + * @returns {boolean} Returns `true` if the entry was removed, else `false`. + */ + function mapCacheDelete(key) { + var result = getMapData(this, key)['delete'](key); + this.size -= result ? 1 : 0; + return result; + } + + /** + * Gets the map value for `key`. + * + * @private + * @name get + * @memberOf MapCache + * @param {string} key The key of the value to get. + * @returns {*} Returns the entry value. + */ + function mapCacheGet(key) { + return getMapData(this, key).get(key); + } + + /** + * Checks if a map value for `key` exists. + * + * @private + * @name has + * @memberOf MapCache + * @param {string} key The key of the entry to check. + * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. + */ + function mapCacheHas(key) { + return getMapData(this, key).has(key); + } + + /** + * Sets the map `key` to `value`. + * + * @private + * @name set + * @memberOf MapCache + * @param {string} key The key of the value to set. + * @param {*} value The value to set. + * @returns {Object} Returns the map cache instance. + */ + function mapCacheSet(key, value) { + var data = getMapData(this, key), + size = data.size; + + data.set(key, value); + this.size += data.size == size ? 0 : 1; + return this; + } + + // Add methods to `MapCache`. + MapCache.prototype.clear = mapCacheClear; + MapCache.prototype['delete'] = mapCacheDelete; + MapCache.prototype.get = mapCacheGet; + MapCache.prototype.has = mapCacheHas; + MapCache.prototype.set = mapCacheSet; + + /*------------------------------------------------------------------------*/ + + /** + * + * Creates an array cache object to store unique values. + * + * @private + * @constructor + * @param {Array} [values] The values to cache. + */ + function SetCache(values) { + var index = -1, + length = values == null ? 0 : values.length; + + this.__data__ = new MapCache; + while (++index < length) { + this.add(values[index]); + } + } + + /** + * Adds `value` to the array cache. + * + * @private + * @name add + * @memberOf SetCache + * @alias push + * @param {*} value The value to cache. + * @returns {Object} Returns the cache instance. + */ + function setCacheAdd(value) { + this.__data__.set(value, HASH_UNDEFINED); + return this; + } + + /** + * Checks if `value` is in the array cache. + * + * @private + * @name has + * @memberOf SetCache + * @param {*} value The value to search for. + * @returns {number} Returns `true` if `value` is found, else `false`. + */ + function setCacheHas(value) { + return this.__data__.has(value); + } + + // Add methods to `SetCache`. + SetCache.prototype.add = SetCache.prototype.push = setCacheAdd; + SetCache.prototype.has = setCacheHas; + + /*------------------------------------------------------------------------*/ + + /** + * Creates a stack cache object to store key-value pairs. + * + * @private + * @constructor + * @param {Array} [entries] The key-value pairs to cache. + */ + function Stack(entries) { + var data = this.__data__ = new ListCache(entries); + this.size = data.size; + } + + /** + * Removes all key-value entries from the stack. + * + * @private + * @name clear + * @memberOf Stack + */ + function stackClear() { + this.__data__ = new ListCache; + this.size = 0; + } + + /** + * Removes `key` and its value from the stack. + * + * @private + * @name delete + * @memberOf Stack + * @param {string} key The key of the value to remove. + * @returns {boolean} Returns `true` if the entry was removed, else `false`. + */ + function stackDelete(key) { + var data = this.__data__, + result = data['delete'](key); + + this.size = data.size; + return result; + } + + /** + * Gets the stack value for `key`. + * + * @private + * @name get + * @memberOf Stack + * @param {string} key The key of the value to get. + * @returns {*} Returns the entry value. + */ + function stackGet(key) { + return this.__data__.get(key); + } + + /** + * Checks if a stack value for `key` exists. + * + * @private + * @name has + * @memberOf Stack + * @param {string} key The key of the entry to check. + * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. + */ + function stackHas(key) { + return this.__data__.has(key); + } + + /** + * Sets the stack `key` to `value`. + * + * @private + * @name set + * @memberOf Stack + * @param {string} key The key of the value to set. + * @param {*} value The value to set. + * @returns {Object} Returns the stack cache instance. + */ + function stackSet(key, value) { + var data = this.__data__; + if (data instanceof ListCache) { + var pairs = data.__data__; + if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) { + pairs.push([key, value]); + this.size = ++data.size; + return this; + } + data = this.__data__ = new MapCache(pairs); + } + data.set(key, value); + this.size = data.size; + return this; + } + + // Add methods to `Stack`. + Stack.prototype.clear = stackClear; + Stack.prototype['delete'] = stackDelete; + Stack.prototype.get = stackGet; + Stack.prototype.has = stackHas; + Stack.prototype.set = stackSet; + + /*------------------------------------------------------------------------*/ + + /** + * Creates an array of the enumerable property names of the array-like `value`. + * + * @private + * @param {*} value The value to query. + * @param {boolean} inherited Specify returning inherited property names. + * @returns {Array} Returns the array of property names. + */ + function arrayLikeKeys(value, inherited) { + var isArr = isArray(value), + isArg = !isArr && isArguments(value), + isBuff = !isArr && !isArg && isBuffer(value), + isType = !isArr && !isArg && !isBuff && isTypedArray(value), + skipIndexes = isArr || isArg || isBuff || isType, + result = skipIndexes ? baseTimes(value.length, String) : [], + length = result.length; + + for (var key in value) { + if ((inherited || hasOwnProperty.call(value, key)) && + !(skipIndexes && ( + // Safari 9 has enumerable `arguments.length` in strict mode. + key == 'length' || + // Node.js 0.10 has enumerable non-index properties on buffers. + (isBuff && (key == 'offset' || key == 'parent')) || + // PhantomJS 2 has enumerable non-index properties on typed arrays. + (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) || + // Skip index properties. + isIndex(key, length) + ))) { + result.push(key); + } + } + return result; + } + + /** + * A specialized version of `_.sample` for arrays. + * + * @private + * @param {Array} array The array to sample. + * @returns {*} Returns the random element. + */ + function arraySample(array) { + var length = array.length; + return length ? array[baseRandom(0, length - 1)] : undefined; + } + + /** + * A specialized version of `_.sampleSize` for arrays. + * + * @private + * @param {Array} array The array to sample. + * @param {number} n The number of elements to sample. + * @returns {Array} Returns the random elements. + */ + function arraySampleSize(array, n) { + return shuffleSelf(copyArray(array), baseClamp(n, 0, array.length)); + } + + /** + * A specialized version of `_.shuffle` for arrays. + * + * @private + * @param {Array} array The array to shuffle. + * @returns {Array} Returns the new shuffled array. + */ + function arrayShuffle(array) { + return shuffleSelf(copyArray(array)); + } + + /** + * This function is like `assignValue` except that it doesn't assign + * `undefined` values. + * + * @private + * @param {Object} object The object to modify. + * @param {string} key The key of the property to assign. + * @param {*} value The value to assign. + */ + function assignMergeValue(object, key, value) { + if ((value !== undefined && !eq(object[key], value)) || + (value === undefined && !(key in object))) { + baseAssignValue(object, key, value); + } + } + + /** + * Assigns `value` to `key` of `object` if the existing value is not equivalent + * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. + * + * @private + * @param {Object} object The object to modify. + * @param {string} key The key of the property to assign. + * @param {*} value The value to assign. + */ + function assignValue(object, key, value) { + var objValue = object[key]; + if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) || + (value === undefined && !(key in object))) { + baseAssignValue(object, key, value); + } + } + + /** + * Gets the index at which the `key` is found in `array` of key-value pairs. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} key The key to search for. + * @returns {number} Returns the index of the matched value, else `-1`. + */ + function assocIndexOf(array, key) { + var length = array.length; + while (length--) { + if (eq(array[length][0], key)) { + return length; + } + } + return -1; + } + + /** + * Aggregates elements of `collection` on `accumulator` with keys transformed + * by `iteratee` and values set by `setter`. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} setter The function to set `accumulator` values. + * @param {Function} iteratee The iteratee to transform keys. + * @param {Object} accumulator The initial aggregated object. + * @returns {Function} Returns `accumulator`. + */ + function baseAggregator(collection, setter, iteratee, accumulator) { + baseEach(collection, function(value, key, collection) { + setter(accumulator, value, iteratee(value), collection); + }); + return accumulator; + } + + /** + * The base implementation of `_.assign` without support for multiple sources + * or `customizer` functions. + * + * @private + * @param {Object} object The destination object. + * @param {Object} source The source object. + * @returns {Object} Returns `object`. + */ + function baseAssign(object, source) { + return object && copyObject(source, keys(source), object); + } + + /** + * The base implementation of `_.assignIn` without support for multiple sources + * or `customizer` functions. + * + * @private + * @param {Object} object The destination object. + * @param {Object} source The source object. + * @returns {Object} Returns `object`. + */ + function baseAssignIn(object, source) { + return object && copyObject(source, keysIn(source), object); + } + + /** + * The base implementation of `assignValue` and `assignMergeValue` without + * value checks. + * + * @private + * @param {Object} object The object to modify. + * @param {string} key The key of the property to assign. + * @param {*} value The value to assign. + */ + function baseAssignValue(object, key, value) { + if (key == '__proto__' && defineProperty) { + defineProperty(object, key, { + 'configurable': true, + 'enumerable': true, + 'value': value, + 'writable': true + }); + } else { + object[key] = value; + } + } + + /** + * The base implementation of `_.at` without support for individual paths. + * + * @private + * @param {Object} object The object to iterate over. + * @param {string[]} paths The property paths to pick. + * @returns {Array} Returns the picked elements. + */ + function baseAt(object, paths) { + var index = -1, + length = paths.length, + result = Array(length), + skip = object == null; + + while (++index < length) { + result[index] = skip ? undefined : get(object, paths[index]); + } + return result; + } + + /** + * The base implementation of `_.clamp` which doesn't coerce arguments. + * + * @private + * @param {number} number The number to clamp. + * @param {number} [lower] The lower bound. + * @param {number} upper The upper bound. + * @returns {number} Returns the clamped number. + */ + function baseClamp(number, lower, upper) { + if (number === number) { + if (upper !== undefined) { + number = number <= upper ? number : upper; + } + if (lower !== undefined) { + number = number >= lower ? number : lower; + } + } + return number; + } + + /** + * The base implementation of `_.clone` and `_.cloneDeep` which tracks + * traversed objects. + * + * @private + * @param {*} value The value to clone. + * @param {boolean} bitmask The bitmask flags. + * 1 - Deep clone + * 2 - Flatten inherited properties + * 4 - Clone symbols + * @param {Function} [customizer] The function to customize cloning. + * @param {string} [key] The key of `value`. + * @param {Object} [object] The parent object of `value`. + * @param {Object} [stack] Tracks traversed objects and their clone counterparts. + * @returns {*} Returns the cloned value. + */ + function baseClone(value, bitmask, customizer, key, object, stack) { + var result, + isDeep = bitmask & CLONE_DEEP_FLAG, + isFlat = bitmask & CLONE_FLAT_FLAG, + isFull = bitmask & CLONE_SYMBOLS_FLAG; + + if (customizer) { + result = object ? customizer(value, key, object, stack) : customizer(value); + } + if (result !== undefined) { + return result; + } + if (!isObject(value)) { + return value; + } + var isArr = isArray(value); + if (isArr) { + result = initCloneArray(value); + if (!isDeep) { + return copyArray(value, result); + } + } else { + var tag = getTag(value), + isFunc = tag == funcTag || tag == genTag; + + if (isBuffer(value)) { + return cloneBuffer(value, isDeep); + } + if (tag == objectTag || tag == argsTag || (isFunc && !object)) { + result = (isFlat || isFunc) ? {} : initCloneObject(value); + if (!isDeep) { + return isFlat + ? copySymbolsIn(value, baseAssignIn(result, value)) + : copySymbols(value, baseAssign(result, value)); + } + } else { + if (!cloneableTags[tag]) { + return object ? value : {}; + } + result = initCloneByTag(value, tag, isDeep); + } + } + // Check for circular references and return its corresponding clone. + stack || (stack = new Stack); + var stacked = stack.get(value); + if (stacked) { + return stacked; + } + stack.set(value, result); + + if (isSet(value)) { + value.forEach(function(subValue) { + result.add(baseClone(subValue, bitmask, customizer, subValue, value, stack)); + }); + } else if (isMap(value)) { + value.forEach(function(subValue, key) { + result.set(key, baseClone(subValue, bitmask, customizer, key, value, stack)); + }); + } + + var keysFunc = isFull + ? (isFlat ? getAllKeysIn : getAllKeys) + : (isFlat ? keysIn : keys); + + var props = isArr ? undefined : keysFunc(value); + arrayEach(props || value, function(subValue, key) { + if (props) { + key = subValue; + subValue = value[key]; + } + // Recursively populate clone (susceptible to call stack limits). + assignValue(result, key, baseClone(subValue, bitmask, customizer, key, value, stack)); + }); + return result; + } + + /** + * The base implementation of `_.conforms` which doesn't clone `source`. + * + * @private + * @param {Object} source The object of property predicates to conform to. + * @returns {Function} Returns the new spec function. + */ + function baseConforms(source) { + var props = keys(source); + return function(object) { + return baseConformsTo(object, source, props); + }; + } + + /** + * The base implementation of `_.conformsTo` which accepts `props` to check. + * + * @private + * @param {Object} object The object to inspect. + * @param {Object} source The object of property predicates to conform to. + * @returns {boolean} Returns `true` if `object` conforms, else `false`. + */ + function baseConformsTo(object, source, props) { + var length = props.length; + if (object == null) { + return !length; + } + object = Object(object); + while (length--) { + var key = props[length], + predicate = source[key], + value = object[key]; + + if ((value === undefined && !(key in object)) || !predicate(value)) { + return false; + } + } + return true; + } + + /** + * The base implementation of `_.delay` and `_.defer` which accepts `args` + * to provide to `func`. + * + * @private + * @param {Function} func The function to delay. + * @param {number} wait The number of milliseconds to delay invocation. + * @param {Array} args The arguments to provide to `func`. + * @returns {number|Object} Returns the timer id or timeout object. + */ + function baseDelay(func, wait, args) { + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + return setTimeout(function() { func.apply(undefined, args); }, wait); + } + + /** + * The base implementation of methods like `_.difference` without support + * for excluding multiple arrays or iteratee shorthands. + * + * @private + * @param {Array} array The array to inspect. + * @param {Array} values The values to exclude. + * @param {Function} [iteratee] The iteratee invoked per element. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new array of filtered values. + */ + function baseDifference(array, values, iteratee, comparator) { + var index = -1, + includes = arrayIncludes, + isCommon = true, + length = array.length, + result = [], + valuesLength = values.length; + + if (!length) { + return result; + } + if (iteratee) { + values = arrayMap(values, baseUnary(iteratee)); + } + if (comparator) { + includes = arrayIncludesWith; + isCommon = false; + } + else if (values.length >= LARGE_ARRAY_SIZE) { + includes = cacheHas; + isCommon = false; + values = new SetCache(values); + } + outer: + while (++index < length) { + var value = array[index], + computed = iteratee == null ? value : iteratee(value); + + value = (comparator || value !== 0) ? value : 0; + if (isCommon && computed === computed) { + var valuesIndex = valuesLength; + while (valuesIndex--) { + if (values[valuesIndex] === computed) { + continue outer; + } + } + result.push(value); + } + else if (!includes(values, computed, comparator)) { + result.push(value); + } + } + return result; + } + + /** + * The base implementation of `_.forEach` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array|Object} Returns `collection`. + */ + var baseEach = createBaseEach(baseForOwn); + + /** + * The base implementation of `_.forEachRight` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array|Object} Returns `collection`. + */ + var baseEachRight = createBaseEach(baseForOwnRight, true); + + /** + * The base implementation of `_.every` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {boolean} Returns `true` if all elements pass the predicate check, + * else `false` + */ + function baseEvery(collection, predicate) { + var result = true; + baseEach(collection, function(value, index, collection) { + result = !!predicate(value, index, collection); + return result; + }); + return result; + } + + /** + * The base implementation of methods like `_.max` and `_.min` which accepts a + * `comparator` to determine the extremum value. + * + * @private + * @param {Array} array The array to iterate over. + * @param {Function} iteratee The iteratee invoked per iteration. + * @param {Function} comparator The comparator used to compare values. + * @returns {*} Returns the extremum value. + */ + function baseExtremum(array, iteratee, comparator) { + var index = -1, + length = array.length; + + while (++index < length) { + var value = array[index], + current = iteratee(value); + + if (current != null && (computed === undefined + ? (current === current && !isSymbol(current)) + : comparator(current, computed) + )) { + var computed = current, + result = value; + } + } + return result; + } + + /** + * The base implementation of `_.fill` without an iteratee call guard. + * + * @private + * @param {Array} array The array to fill. + * @param {*} value The value to fill `array` with. + * @param {number} [start=0] The start position. + * @param {number} [end=array.length] The end position. + * @returns {Array} Returns `array`. + */ + function baseFill(array, value, start, end) { + var length = array.length; + + start = toInteger(start); + if (start < 0) { + start = -start > length ? 0 : (length + start); + } + end = (end === undefined || end > length) ? length : toInteger(end); + if (end < 0) { + end += length; + } + end = start > end ? 0 : toLength(end); + while (start < end) { + array[start++] = value; + } + return array; + } + + /** + * The base implementation of `_.filter` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {Array} Returns the new filtered array. + */ + function baseFilter(collection, predicate) { + var result = []; + baseEach(collection, function(value, index, collection) { + if (predicate(value, index, collection)) { + result.push(value); + } + }); + return result; + } + + /** + * The base implementation of `_.flatten` with support for restricting flattening. + * + * @private + * @param {Array} array The array to flatten. + * @param {number} depth The maximum recursion depth. + * @param {boolean} [predicate=isFlattenable] The function invoked per iteration. + * @param {boolean} [isStrict] Restrict to values that pass `predicate` checks. + * @param {Array} [result=[]] The initial result value. + * @returns {Array} Returns the new flattened array. + */ + function baseFlatten(array, depth, predicate, isStrict, result) { + var index = -1, + length = array.length; + + predicate || (predicate = isFlattenable); + result || (result = []); + + while (++index < length) { + var value = array[index]; + if (depth > 0 && predicate(value)) { + if (depth > 1) { + // Recursively flatten arrays (susceptible to call stack limits). + baseFlatten(value, depth - 1, predicate, isStrict, result); + } else { + arrayPush(result, value); + } + } else if (!isStrict) { + result[result.length] = value; + } + } + return result; + } + + /** + * The base implementation of `baseForOwn` which iterates over `object` + * properties returned by `keysFunc` and invokes `iteratee` for each property. + * Iteratee functions may exit iteration early by explicitly returning `false`. + * + * @private + * @param {Object} object The object to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @param {Function} keysFunc The function to get the keys of `object`. + * @returns {Object} Returns `object`. + */ + var baseFor = createBaseFor(); + + /** + * This function is like `baseFor` except that it iterates over properties + * in the opposite order. + * + * @private + * @param {Object} object The object to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @param {Function} keysFunc The function to get the keys of `object`. + * @returns {Object} Returns `object`. + */ + var baseForRight = createBaseFor(true); + + /** + * The base implementation of `_.forOwn` without support for iteratee shorthands. + * + * @private + * @param {Object} object The object to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Object} Returns `object`. + */ + function baseForOwn(object, iteratee) { + return object && baseFor(object, iteratee, keys); + } + + /** + * The base implementation of `_.forOwnRight` without support for iteratee shorthands. + * + * @private + * @param {Object} object The object to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Object} Returns `object`. + */ + function baseForOwnRight(object, iteratee) { + return object && baseForRight(object, iteratee, keys); + } + + /** + * The base implementation of `_.functions` which creates an array of + * `object` function property names filtered from `props`. + * + * @private + * @param {Object} object The object to inspect. + * @param {Array} props The property names to filter. + * @returns {Array} Returns the function names. + */ + function baseFunctions(object, props) { + return arrayFilter(props, function(key) { + return isFunction(object[key]); + }); + } + + /** + * The base implementation of `_.get` without support for default values. + * + * @private + * @param {Object} object The object to query. + * @param {Array|string} path The path of the property to get. + * @returns {*} Returns the resolved value. + */ + function baseGet(object, path) { + path = castPath(path, object); + + var index = 0, + length = path.length; + + while (object != null && index < length) { + object = object[toKey(path[index++])]; + } + return (index && index == length) ? object : undefined; + } + + /** + * The base implementation of `getAllKeys` and `getAllKeysIn` which uses + * `keysFunc` and `symbolsFunc` to get the enumerable property names and + * symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @param {Function} keysFunc The function to get the keys of `object`. + * @param {Function} symbolsFunc The function to get the symbols of `object`. + * @returns {Array} Returns the array of property names and symbols. + */ + function baseGetAllKeys(object, keysFunc, symbolsFunc) { + var result = keysFunc(object); + return isArray(object) ? result : arrayPush(result, symbolsFunc(object)); + } + + /** + * The base implementation of `getTag` without fallbacks for buggy environments. + * + * @private + * @param {*} value The value to query. + * @returns {string} Returns the `toStringTag`. + */ + function baseGetTag(value) { + if (value == null) { + return value === undefined ? undefinedTag : nullTag; + } + return (symToStringTag && symToStringTag in Object(value)) + ? getRawTag(value) + : objectToString(value); + } + + /** + * The base implementation of `_.gt` which doesn't coerce arguments. + * + * @private + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if `value` is greater than `other`, + * else `false`. + */ + function baseGt(value, other) { + return value > other; + } + + /** + * The base implementation of `_.has` without support for deep paths. + * + * @private + * @param {Object} [object] The object to query. + * @param {Array|string} key The key to check. + * @returns {boolean} Returns `true` if `key` exists, else `false`. + */ + function baseHas(object, key) { + return object != null && hasOwnProperty.call(object, key); + } + + /** + * The base implementation of `_.hasIn` without support for deep paths. + * + * @private + * @param {Object} [object] The object to query. + * @param {Array|string} key The key to check. + * @returns {boolean} Returns `true` if `key` exists, else `false`. + */ + function baseHasIn(object, key) { + return object != null && key in Object(object); + } + + /** + * The base implementation of `_.inRange` which doesn't coerce arguments. + * + * @private + * @param {number} number The number to check. + * @param {number} start The start of the range. + * @param {number} end The end of the range. + * @returns {boolean} Returns `true` if `number` is in the range, else `false`. + */ + function baseInRange(number, start, end) { + return number >= nativeMin(start, end) && number < nativeMax(start, end); + } + + /** + * The base implementation of methods like `_.intersection`, without support + * for iteratee shorthands, that accepts an array of arrays to inspect. + * + * @private + * @param {Array} arrays The arrays to inspect. + * @param {Function} [iteratee] The iteratee invoked per element. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new array of shared values. + */ + function baseIntersection(arrays, iteratee, comparator) { + var includes = comparator ? arrayIncludesWith : arrayIncludes, + length = arrays[0].length, + othLength = arrays.length, + othIndex = othLength, + caches = Array(othLength), + maxLength = Infinity, + result = []; + + while (othIndex--) { + var array = arrays[othIndex]; + if (othIndex && iteratee) { + array = arrayMap(array, baseUnary(iteratee)); + } + maxLength = nativeMin(array.length, maxLength); + caches[othIndex] = !comparator && (iteratee || (length >= 120 && array.length >= 120)) + ? new SetCache(othIndex && array) + : undefined; + } + array = arrays[0]; + + var index = -1, + seen = caches[0]; + + outer: + while (++index < length && result.length < maxLength) { + var value = array[index], + computed = iteratee ? iteratee(value) : value; + + value = (comparator || value !== 0) ? value : 0; + if (!(seen + ? cacheHas(seen, computed) + : includes(result, computed, comparator) + )) { + othIndex = othLength; + while (--othIndex) { + var cache = caches[othIndex]; + if (!(cache + ? cacheHas(cache, computed) + : includes(arrays[othIndex], computed, comparator)) + ) { + continue outer; + } + } + if (seen) { + seen.push(computed); + } + result.push(value); + } + } + return result; + } + + /** + * The base implementation of `_.invert` and `_.invertBy` which inverts + * `object` with values transformed by `iteratee` and set by `setter`. + * + * @private + * @param {Object} object The object to iterate over. + * @param {Function} setter The function to set `accumulator` values. + * @param {Function} iteratee The iteratee to transform values. + * @param {Object} accumulator The initial inverted object. + * @returns {Function} Returns `accumulator`. + */ + function baseInverter(object, setter, iteratee, accumulator) { + baseForOwn(object, function(value, key, object) { + setter(accumulator, iteratee(value), key, object); + }); + return accumulator; + } + + /** + * The base implementation of `_.invoke` without support for individual + * method arguments. + * + * @private + * @param {Object} object The object to query. + * @param {Array|string} path The path of the method to invoke. + * @param {Array} args The arguments to invoke the method with. + * @returns {*} Returns the result of the invoked method. + */ + function baseInvoke(object, path, args) { + path = castPath(path, object); + object = parent(object, path); + var func = object == null ? object : object[toKey(last(path))]; + return func == null ? undefined : apply(func, object, args); + } + + /** + * The base implementation of `_.isArguments`. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an `arguments` object, + */ + function baseIsArguments(value) { + return isObjectLike(value) && baseGetTag(value) == argsTag; + } + + /** + * The base implementation of `_.isArrayBuffer` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an array buffer, else `false`. + */ + function baseIsArrayBuffer(value) { + return isObjectLike(value) && baseGetTag(value) == arrayBufferTag; + } + + /** + * The base implementation of `_.isDate` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a date object, else `false`. + */ + function baseIsDate(value) { + return isObjectLike(value) && baseGetTag(value) == dateTag; + } + + /** + * The base implementation of `_.isEqual` which supports partial comparisons + * and tracks traversed objects. + * + * @private + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @param {boolean} bitmask The bitmask flags. + * 1 - Unordered comparison + * 2 - Partial comparison + * @param {Function} [customizer] The function to customize comparisons. + * @param {Object} [stack] Tracks traversed `value` and `other` objects. + * @returns {boolean} Returns `true` if the values are equivalent, else `false`. + */ + function baseIsEqual(value, other, bitmask, customizer, stack) { + if (value === other) { + return true; + } + if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) { + return value !== value && other !== other; + } + return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack); + } + + /** + * A specialized version of `baseIsEqual` for arrays and objects which performs + * deep comparisons and tracks traversed objects enabling objects with circular + * references to be compared. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} [stack] Tracks traversed `object` and `other` objects. + * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. + */ + function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) { + var objIsArr = isArray(object), + othIsArr = isArray(other), + objTag = objIsArr ? arrayTag : getTag(object), + othTag = othIsArr ? arrayTag : getTag(other); + + objTag = objTag == argsTag ? objectTag : objTag; + othTag = othTag == argsTag ? objectTag : othTag; + + var objIsObj = objTag == objectTag, + othIsObj = othTag == objectTag, + isSameTag = objTag == othTag; + + if (isSameTag && isBuffer(object)) { + if (!isBuffer(other)) { + return false; + } + objIsArr = true; + objIsObj = false; + } + if (isSameTag && !objIsObj) { + stack || (stack = new Stack); + return (objIsArr || isTypedArray(object)) + ? equalArrays(object, other, bitmask, customizer, equalFunc, stack) + : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack); + } + if (!(bitmask & COMPARE_PARTIAL_FLAG)) { + var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'), + othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__'); + + if (objIsWrapped || othIsWrapped) { + var objUnwrapped = objIsWrapped ? object.value() : object, + othUnwrapped = othIsWrapped ? other.value() : other; + + stack || (stack = new Stack); + return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack); + } + } + if (!isSameTag) { + return false; + } + stack || (stack = new Stack); + return equalObjects(object, other, bitmask, customizer, equalFunc, stack); + } + + /** + * The base implementation of `_.isMap` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a map, else `false`. + */ + function baseIsMap(value) { + return isObjectLike(value) && getTag(value) == mapTag; + } + + /** + * The base implementation of `_.isMatch` without support for iteratee shorthands. + * + * @private + * @param {Object} object The object to inspect. + * @param {Object} source The object of property values to match. + * @param {Array} matchData The property names, values, and compare flags to match. + * @param {Function} [customizer] The function to customize comparisons. + * @returns {boolean} Returns `true` if `object` is a match, else `false`. + */ + function baseIsMatch(object, source, matchData, customizer) { + var index = matchData.length, + length = index, + noCustomizer = !customizer; + + if (object == null) { + return !length; + } + object = Object(object); + while (index--) { + var data = matchData[index]; + if ((noCustomizer && data[2]) + ? data[1] !== object[data[0]] + : !(data[0] in object) + ) { + return false; + } + } + while (++index < length) { + data = matchData[index]; + var key = data[0], + objValue = object[key], + srcValue = data[1]; + + if (noCustomizer && data[2]) { + if (objValue === undefined && !(key in object)) { + return false; + } + } else { + var stack = new Stack; + if (customizer) { + var result = customizer(objValue, srcValue, key, object, source, stack); + } + if (!(result === undefined + ? baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG, customizer, stack) + : result + )) { + return false; + } + } + } + return true; + } + + /** + * The base implementation of `_.isNative` without bad shim checks. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a native function, + * else `false`. + */ + function baseIsNative(value) { + if (!isObject(value) || isMasked(value)) { + return false; + } + var pattern = isFunction(value) ? reIsNative : reIsHostCtor; + return pattern.test(toSource(value)); + } + + /** + * The base implementation of `_.isRegExp` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a regexp, else `false`. + */ + function baseIsRegExp(value) { + return isObjectLike(value) && baseGetTag(value) == regexpTag; + } + + /** + * The base implementation of `_.isSet` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a set, else `false`. + */ + function baseIsSet(value) { + return isObjectLike(value) && getTag(value) == setTag; + } + + /** + * The base implementation of `_.isTypedArray` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a typed array, else `false`. + */ + function baseIsTypedArray(value) { + return isObjectLike(value) && + isLength(value.length) && !!typedArrayTags[baseGetTag(value)]; + } + + /** + * The base implementation of `_.iteratee`. + * + * @private + * @param {*} [value=_.identity] The value to convert to an iteratee. + * @returns {Function} Returns the iteratee. + */ + function baseIteratee(value) { + // Don't store the `typeof` result in a variable to avoid a JIT bug in Safari 9. + // See https://bugs.webkit.org/show_bug.cgi?id=156034 for more details. + if (typeof value == 'function') { + return value; + } + if (value == null) { + return identity; + } + if (typeof value == 'object') { + return isArray(value) + ? baseMatchesProperty(value[0], value[1]) + : baseMatches(value); + } + return property(value); + } + + /** + * The base implementation of `_.keys` which doesn't treat sparse arrays as dense. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names. + */ + function baseKeys(object) { + if (!isPrototype(object)) { + return nativeKeys(object); + } + var result = []; + for (var key in Object(object)) { + if (hasOwnProperty.call(object, key) && key != 'constructor') { + result.push(key); + } + } + return result; + } + + /** + * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names. + */ + function baseKeysIn(object) { + if (!isObject(object)) { + return nativeKeysIn(object); + } + var isProto = isPrototype(object), + result = []; + + for (var key in object) { + if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) { + result.push(key); + } + } + return result; + } + + /** + * The base implementation of `_.lt` which doesn't coerce arguments. + * + * @private + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if `value` is less than `other`, + * else `false`. + */ + function baseLt(value, other) { + return value < other; + } + + /** + * The base implementation of `_.map` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns the new mapped array. + */ + function baseMap(collection, iteratee) { + var index = -1, + result = isArrayLike(collection) ? Array(collection.length) : []; + + baseEach(collection, function(value, key, collection) { + result[++index] = iteratee(value, key, collection); + }); + return result; + } + + /** + * The base implementation of `_.matches` which doesn't clone `source`. + * + * @private + * @param {Object} source The object of property values to match. + * @returns {Function} Returns the new spec function. + */ + function baseMatches(source) { + var matchData = getMatchData(source); + if (matchData.length == 1 && matchData[0][2]) { + return matchesStrictComparable(matchData[0][0], matchData[0][1]); + } + return function(object) { + return object === source || baseIsMatch(object, source, matchData); + }; + } + + /** + * The base implementation of `_.matchesProperty` which doesn't clone `srcValue`. + * + * @private + * @param {string} path The path of the property to get. + * @param {*} srcValue The value to match. + * @returns {Function} Returns the new spec function. + */ + function baseMatchesProperty(path, srcValue) { + if (isKey(path) && isStrictComparable(srcValue)) { + return matchesStrictComparable(toKey(path), srcValue); + } + return function(object) { + var objValue = get(object, path); + return (objValue === undefined && objValue === srcValue) + ? hasIn(object, path) + : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG); + }; + } + + /** + * The base implementation of `_.merge` without support for multiple sources. + * + * @private + * @param {Object} object The destination object. + * @param {Object} source The source object. + * @param {number} srcIndex The index of `source`. + * @param {Function} [customizer] The function to customize merged values. + * @param {Object} [stack] Tracks traversed source values and their merged + * counterparts. + */ + function baseMerge(object, source, srcIndex, customizer, stack) { + if (object === source) { + return; + } + baseFor(source, function(srcValue, key) { + stack || (stack = new Stack); + if (isObject(srcValue)) { + baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack); + } + else { + var newValue = customizer + ? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack) + : undefined; + + if (newValue === undefined) { + newValue = srcValue; + } + assignMergeValue(object, key, newValue); + } + }, keysIn); + } + + /** + * A specialized version of `baseMerge` for arrays and objects which performs + * deep merges and tracks traversed objects enabling objects with circular + * references to be merged. + * + * @private + * @param {Object} object The destination object. + * @param {Object} source The source object. + * @param {string} key The key of the value to merge. + * @param {number} srcIndex The index of `source`. + * @param {Function} mergeFunc The function to merge values. + * @param {Function} [customizer] The function to customize assigned values. + * @param {Object} [stack] Tracks traversed source values and their merged + * counterparts. + */ + function baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) { + var objValue = safeGet(object, key), + srcValue = safeGet(source, key), + stacked = stack.get(srcValue); + + if (stacked) { + assignMergeValue(object, key, stacked); + return; + } + var newValue = customizer + ? customizer(objValue, srcValue, (key + ''), object, source, stack) + : undefined; + + var isCommon = newValue === undefined; + + if (isCommon) { + var isArr = isArray(srcValue), + isBuff = !isArr && isBuffer(srcValue), + isTyped = !isArr && !isBuff && isTypedArray(srcValue); + + newValue = srcValue; + if (isArr || isBuff || isTyped) { + if (isArray(objValue)) { + newValue = objValue; + } + else if (isArrayLikeObject(objValue)) { + newValue = copyArray(objValue); + } + else if (isBuff) { + isCommon = false; + newValue = cloneBuffer(srcValue, true); + } + else if (isTyped) { + isCommon = false; + newValue = cloneTypedArray(srcValue, true); + } + else { + newValue = []; + } + } + else if (isPlainObject(srcValue) || isArguments(srcValue)) { + newValue = objValue; + if (isArguments(objValue)) { + newValue = toPlainObject(objValue); + } + else if (!isObject(objValue) || isFunction(objValue)) { + newValue = initCloneObject(srcValue); + } + } + else { + isCommon = false; + } + } + if (isCommon) { + // Recursively merge objects and arrays (susceptible to call stack limits). + stack.set(srcValue, newValue); + mergeFunc(newValue, srcValue, srcIndex, customizer, stack); + stack['delete'](srcValue); + } + assignMergeValue(object, key, newValue); + } + + /** + * The base implementation of `_.nth` which doesn't coerce arguments. + * + * @private + * @param {Array} array The array to query. + * @param {number} n The index of the element to return. + * @returns {*} Returns the nth element of `array`. + */ + function baseNth(array, n) { + var length = array.length; + if (!length) { + return; + } + n += n < 0 ? length : 0; + return isIndex(n, length) ? array[n] : undefined; + } + + /** + * The base implementation of `_.orderBy` without param guards. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function[]|Object[]|string[]} iteratees The iteratees to sort by. + * @param {string[]} orders The sort orders of `iteratees`. + * @returns {Array} Returns the new sorted array. + */ + function baseOrderBy(collection, iteratees, orders) { + if (iteratees.length) { + iteratees = arrayMap(iteratees, function(iteratee) { + if (isArray(iteratee)) { + return function(value) { + return baseGet(value, iteratee.length === 1 ? iteratee[0] : iteratee); + } + } + return iteratee; + }); + } else { + iteratees = [identity]; + } + + var index = -1; + iteratees = arrayMap(iteratees, baseUnary(getIteratee())); + + var result = baseMap(collection, function(value, key, collection) { + var criteria = arrayMap(iteratees, function(iteratee) { + return iteratee(value); + }); + return { 'criteria': criteria, 'index': ++index, 'value': value }; + }); + + return baseSortBy(result, function(object, other) { + return compareMultiple(object, other, orders); + }); + } + + /** + * The base implementation of `_.pick` without support for individual + * property identifiers. + * + * @private + * @param {Object} object The source object. + * @param {string[]} paths The property paths to pick. + * @returns {Object} Returns the new object. + */ + function basePick(object, paths) { + return basePickBy(object, paths, function(value, path) { + return hasIn(object, path); + }); + } + + /** + * The base implementation of `_.pickBy` without support for iteratee shorthands. + * + * @private + * @param {Object} object The source object. + * @param {string[]} paths The property paths to pick. + * @param {Function} predicate The function invoked per property. + * @returns {Object} Returns the new object. + */ + function basePickBy(object, paths, predicate) { + var index = -1, + length = paths.length, + result = {}; + + while (++index < length) { + var path = paths[index], + value = baseGet(object, path); + + if (predicate(value, path)) { + baseSet(result, castPath(path, object), value); + } + } + return result; + } + + /** + * A specialized version of `baseProperty` which supports deep paths. + * + * @private + * @param {Array|string} path The path of the property to get. + * @returns {Function} Returns the new accessor function. + */ + function basePropertyDeep(path) { + return function(object) { + return baseGet(object, path); + }; + } + + /** + * The base implementation of `_.pullAllBy` without support for iteratee + * shorthands. + * + * @private + * @param {Array} array The array to modify. + * @param {Array} values The values to remove. + * @param {Function} [iteratee] The iteratee invoked per element. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns `array`. + */ + function basePullAll(array, values, iteratee, comparator) { + var indexOf = comparator ? baseIndexOfWith : baseIndexOf, + index = -1, + length = values.length, + seen = array; + + if (array === values) { + values = copyArray(values); + } + if (iteratee) { + seen = arrayMap(array, baseUnary(iteratee)); + } + while (++index < length) { + var fromIndex = 0, + value = values[index], + computed = iteratee ? iteratee(value) : value; + + while ((fromIndex = indexOf(seen, computed, fromIndex, comparator)) > -1) { + if (seen !== array) { + splice.call(seen, fromIndex, 1); + } + splice.call(array, fromIndex, 1); + } + } + return array; + } + + /** + * The base implementation of `_.pullAt` without support for individual + * indexes or capturing the removed elements. + * + * @private + * @param {Array} array The array to modify. + * @param {number[]} indexes The indexes of elements to remove. + * @returns {Array} Returns `array`. + */ + function basePullAt(array, indexes) { + var length = array ? indexes.length : 0, + lastIndex = length - 1; + + while (length--) { + var index = indexes[length]; + if (length == lastIndex || index !== previous) { + var previous = index; + if (isIndex(index)) { + splice.call(array, index, 1); + } else { + baseUnset(array, index); + } + } + } + return array; + } + + /** + * The base implementation of `_.random` without support for returning + * floating-point numbers. + * + * @private + * @param {number} lower The lower bound. + * @param {number} upper The upper bound. + * @returns {number} Returns the random number. + */ + function baseRandom(lower, upper) { + return lower + nativeFloor(nativeRandom() * (upper - lower + 1)); + } + + /** + * The base implementation of `_.range` and `_.rangeRight` which doesn't + * coerce arguments. + * + * @private + * @param {number} start The start of the range. + * @param {number} end The end of the range. + * @param {number} step The value to increment or decrement by. + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Array} Returns the range of numbers. + */ + function baseRange(start, end, step, fromRight) { + var index = -1, + length = nativeMax(nativeCeil((end - start) / (step || 1)), 0), + result = Array(length); + + while (length--) { + result[fromRight ? length : ++index] = start; + start += step; + } + return result; + } + + /** + * The base implementation of `_.repeat` which doesn't coerce arguments. + * + * @private + * @param {string} string The string to repeat. + * @param {number} n The number of times to repeat the string. + * @returns {string} Returns the repeated string. + */ + function baseRepeat(string, n) { + var result = ''; + if (!string || n < 1 || n > MAX_SAFE_INTEGER) { + return result; + } + // Leverage the exponentiation by squaring algorithm for a faster repeat. + // See https://en.wikipedia.org/wiki/Exponentiation_by_squaring for more details. + do { + if (n % 2) { + result += string; + } + n = nativeFloor(n / 2); + if (n) { + string += string; + } + } while (n); + + return result; + } + + /** + * The base implementation of `_.rest` which doesn't validate or coerce arguments. + * + * @private + * @param {Function} func The function to apply a rest parameter to. + * @param {number} [start=func.length-1] The start position of the rest parameter. + * @returns {Function} Returns the new function. + */ + function baseRest(func, start) { + return setToString(overRest(func, start, identity), func + ''); + } + + /** + * The base implementation of `_.sample`. + * + * @private + * @param {Array|Object} collection The collection to sample. + * @returns {*} Returns the random element. + */ + function baseSample(collection) { + return arraySample(values(collection)); + } + + /** + * The base implementation of `_.sampleSize` without param guards. + * + * @private + * @param {Array|Object} collection The collection to sample. + * @param {number} n The number of elements to sample. + * @returns {Array} Returns the random elements. + */ + function baseSampleSize(collection, n) { + var array = values(collection); + return shuffleSelf(array, baseClamp(n, 0, array.length)); + } + + /** + * The base implementation of `_.set`. + * + * @private + * @param {Object} object The object to modify. + * @param {Array|string} path The path of the property to set. + * @param {*} value The value to set. + * @param {Function} [customizer] The function to customize path creation. + * @returns {Object} Returns `object`. + */ + function baseSet(object, path, value, customizer) { + if (!isObject(object)) { + return object; + } + path = castPath(path, object); + + var index = -1, + length = path.length, + lastIndex = length - 1, + nested = object; + + while (nested != null && ++index < length) { + var key = toKey(path[index]), + newValue = value; + + if (key === '__proto__' || key === 'constructor' || key === 'prototype') { + return object; + } + + if (index != lastIndex) { + var objValue = nested[key]; + newValue = customizer ? customizer(objValue, key, nested) : undefined; + if (newValue === undefined) { + newValue = isObject(objValue) + ? objValue + : (isIndex(path[index + 1]) ? [] : {}); + } + } + assignValue(nested, key, newValue); + nested = nested[key]; + } + return object; + } + + /** + * The base implementation of `setData` without support for hot loop shorting. + * + * @private + * @param {Function} func The function to associate metadata with. + * @param {*} data The metadata. + * @returns {Function} Returns `func`. + */ + var baseSetData = !metaMap ? identity : function(func, data) { + metaMap.set(func, data); + return func; + }; + + /** + * The base implementation of `setToString` without support for hot loop shorting. + * + * @private + * @param {Function} func The function to modify. + * @param {Function} string The `toString` result. + * @returns {Function} Returns `func`. + */ + var baseSetToString = !defineProperty ? identity : function(func, string) { + return defineProperty(func, 'toString', { + 'configurable': true, + 'enumerable': false, + 'value': constant(string), + 'writable': true + }); + }; + + /** + * The base implementation of `_.shuffle`. + * + * @private + * @param {Array|Object} collection The collection to shuffle. + * @returns {Array} Returns the new shuffled array. + */ + function baseShuffle(collection) { + return shuffleSelf(values(collection)); + } + + /** + * The base implementation of `_.slice` without an iteratee call guard. + * + * @private + * @param {Array} array The array to slice. + * @param {number} [start=0] The start position. + * @param {number} [end=array.length] The end position. + * @returns {Array} Returns the slice of `array`. + */ + function baseSlice(array, start, end) { + var index = -1, + length = array.length; + + if (start < 0) { + start = -start > length ? 0 : (length + start); + } + end = end > length ? length : end; + if (end < 0) { + end += length; + } + length = start > end ? 0 : ((end - start) >>> 0); + start >>>= 0; + + var result = Array(length); + while (++index < length) { + result[index] = array[index + start]; + } + return result; + } + + /** + * The base implementation of `_.some` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {boolean} Returns `true` if any element passes the predicate check, + * else `false`. + */ + function baseSome(collection, predicate) { + var result; + + baseEach(collection, function(value, index, collection) { + result = predicate(value, index, collection); + return !result; + }); + return !!result; + } + + /** + * The base implementation of `_.sortedIndex` and `_.sortedLastIndex` which + * performs a binary search of `array` to determine the index at which `value` + * should be inserted into `array` in order to maintain its sort order. + * + * @private + * @param {Array} array The sorted array to inspect. + * @param {*} value The value to evaluate. + * @param {boolean} [retHighest] Specify returning the highest qualified index. + * @returns {number} Returns the index at which `value` should be inserted + * into `array`. + */ + function baseSortedIndex(array, value, retHighest) { + var low = 0, + high = array == null ? low : array.length; + + if (typeof value == 'number' && value === value && high <= HALF_MAX_ARRAY_LENGTH) { + while (low < high) { + var mid = (low + high) >>> 1, + computed = array[mid]; + + if (computed !== null && !isSymbol(computed) && + (retHighest ? (computed <= value) : (computed < value))) { + low = mid + 1; + } else { + high = mid; + } + } + return high; + } + return baseSortedIndexBy(array, value, identity, retHighest); + } + + /** + * The base implementation of `_.sortedIndexBy` and `_.sortedLastIndexBy` + * which invokes `iteratee` for `value` and each element of `array` to compute + * their sort ranking. The iteratee is invoked with one argument; (value). + * + * @private + * @param {Array} array The sorted array to inspect. + * @param {*} value The value to evaluate. + * @param {Function} iteratee The iteratee invoked per element. + * @param {boolean} [retHighest] Specify returning the highest qualified index. + * @returns {number} Returns the index at which `value` should be inserted + * into `array`. + */ + function baseSortedIndexBy(array, value, iteratee, retHighest) { + var low = 0, + high = array == null ? 0 : array.length; + if (high === 0) { + return 0; + } + + value = iteratee(value); + var valIsNaN = value !== value, + valIsNull = value === null, + valIsSymbol = isSymbol(value), + valIsUndefined = value === undefined; + + while (low < high) { + var mid = nativeFloor((low + high) / 2), + computed = iteratee(array[mid]), + othIsDefined = computed !== undefined, + othIsNull = computed === null, + othIsReflexive = computed === computed, + othIsSymbol = isSymbol(computed); + + if (valIsNaN) { + var setLow = retHighest || othIsReflexive; + } else if (valIsUndefined) { + setLow = othIsReflexive && (retHighest || othIsDefined); + } else if (valIsNull) { + setLow = othIsReflexive && othIsDefined && (retHighest || !othIsNull); + } else if (valIsSymbol) { + setLow = othIsReflexive && othIsDefined && !othIsNull && (retHighest || !othIsSymbol); + } else if (othIsNull || othIsSymbol) { + setLow = false; + } else { + setLow = retHighest ? (computed <= value) : (computed < value); + } + if (setLow) { + low = mid + 1; + } else { + high = mid; + } + } + return nativeMin(high, MAX_ARRAY_INDEX); + } + + /** + * The base implementation of `_.sortedUniq` and `_.sortedUniqBy` without + * support for iteratee shorthands. + * + * @private + * @param {Array} array The array to inspect. + * @param {Function} [iteratee] The iteratee invoked per element. + * @returns {Array} Returns the new duplicate free array. + */ + function baseSortedUniq(array, iteratee) { + var index = -1, + length = array.length, + resIndex = 0, + result = []; + + while (++index < length) { + var value = array[index], + computed = iteratee ? iteratee(value) : value; + + if (!index || !eq(computed, seen)) { + var seen = computed; + result[resIndex++] = value === 0 ? 0 : value; + } + } + return result; + } + + /** + * The base implementation of `_.toNumber` which doesn't ensure correct + * conversions of binary, hexadecimal, or octal string values. + * + * @private + * @param {*} value The value to process. + * @returns {number} Returns the number. + */ + function baseToNumber(value) { + if (typeof value == 'number') { + return value; + } + if (isSymbol(value)) { + return NAN; + } + return +value; + } + + /** + * The base implementation of `_.toString` which doesn't convert nullish + * values to empty strings. + * + * @private + * @param {*} value The value to process. + * @returns {string} Returns the string. + */ + function baseToString(value) { + // Exit early for strings to avoid a performance hit in some environments. + if (typeof value == 'string') { + return value; + } + if (isArray(value)) { + // Recursively convert values (susceptible to call stack limits). + return arrayMap(value, baseToString) + ''; + } + if (isSymbol(value)) { + return symbolToString ? symbolToString.call(value) : ''; + } + var result = (value + ''); + return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result; + } + + /** + * The base implementation of `_.uniqBy` without support for iteratee shorthands. + * + * @private + * @param {Array} array The array to inspect. + * @param {Function} [iteratee] The iteratee invoked per element. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new duplicate free array. + */ + function baseUniq(array, iteratee, comparator) { + var index = -1, + includes = arrayIncludes, + length = array.length, + isCommon = true, + result = [], + seen = result; + + if (comparator) { + isCommon = false; + includes = arrayIncludesWith; + } + else if (length >= LARGE_ARRAY_SIZE) { + var set = iteratee ? null : createSet(array); + if (set) { + return setToArray(set); + } + isCommon = false; + includes = cacheHas; + seen = new SetCache; + } + else { + seen = iteratee ? [] : result; + } + outer: + while (++index < length) { + var value = array[index], + computed = iteratee ? iteratee(value) : value; + + value = (comparator || value !== 0) ? value : 0; + if (isCommon && computed === computed) { + var seenIndex = seen.length; + while (seenIndex--) { + if (seen[seenIndex] === computed) { + continue outer; + } + } + if (iteratee) { + seen.push(computed); + } + result.push(value); + } + else if (!includes(seen, computed, comparator)) { + if (seen !== result) { + seen.push(computed); + } + result.push(value); + } + } + return result; + } + + /** + * The base implementation of `_.unset`. + * + * @private + * @param {Object} object The object to modify. + * @param {Array|string} path The property path to unset. + * @returns {boolean} Returns `true` if the property is deleted, else `false`. + */ + function baseUnset(object, path) { + path = castPath(path, object); + object = parent(object, path); + return object == null || delete object[toKey(last(path))]; + } + + /** + * The base implementation of `_.update`. + * + * @private + * @param {Object} object The object to modify. + * @param {Array|string} path The path of the property to update. + * @param {Function} updater The function to produce the updated value. + * @param {Function} [customizer] The function to customize path creation. + * @returns {Object} Returns `object`. + */ + function baseUpdate(object, path, updater, customizer) { + return baseSet(object, path, updater(baseGet(object, path)), customizer); + } + + /** + * The base implementation of methods like `_.dropWhile` and `_.takeWhile` + * without support for iteratee shorthands. + * + * @private + * @param {Array} array The array to query. + * @param {Function} predicate The function invoked per iteration. + * @param {boolean} [isDrop] Specify dropping elements instead of taking them. + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Array} Returns the slice of `array`. + */ + function baseWhile(array, predicate, isDrop, fromRight) { + var length = array.length, + index = fromRight ? length : -1; + + while ((fromRight ? index-- : ++index < length) && + predicate(array[index], index, array)) {} + + return isDrop + ? baseSlice(array, (fromRight ? 0 : index), (fromRight ? index + 1 : length)) + : baseSlice(array, (fromRight ? index + 1 : 0), (fromRight ? length : index)); + } + + /** + * The base implementation of `wrapperValue` which returns the result of + * performing a sequence of actions on the unwrapped `value`, where each + * successive action is supplied the return value of the previous. + * + * @private + * @param {*} value The unwrapped value. + * @param {Array} actions Actions to perform to resolve the unwrapped value. + * @returns {*} Returns the resolved value. + */ + function baseWrapperValue(value, actions) { + var result = value; + if (result instanceof LazyWrapper) { + result = result.value(); + } + return arrayReduce(actions, function(result, action) { + return action.func.apply(action.thisArg, arrayPush([result], action.args)); + }, result); + } + + /** + * The base implementation of methods like `_.xor`, without support for + * iteratee shorthands, that accepts an array of arrays to inspect. + * + * @private + * @param {Array} arrays The arrays to inspect. + * @param {Function} [iteratee] The iteratee invoked per element. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new array of values. + */ + function baseXor(arrays, iteratee, comparator) { + var length = arrays.length; + if (length < 2) { + return length ? baseUniq(arrays[0]) : []; + } + var index = -1, + result = Array(length); + + while (++index < length) { + var array = arrays[index], + othIndex = -1; + + while (++othIndex < length) { + if (othIndex != index) { + result[index] = baseDifference(result[index] || array, arrays[othIndex], iteratee, comparator); + } + } + } + return baseUniq(baseFlatten(result, 1), iteratee, comparator); + } + + /** + * This base implementation of `_.zipObject` which assigns values using `assignFunc`. + * + * @private + * @param {Array} props The property identifiers. + * @param {Array} values The property values. + * @param {Function} assignFunc The function to assign values. + * @returns {Object} Returns the new object. + */ + function baseZipObject(props, values, assignFunc) { + var index = -1, + length = props.length, + valsLength = values.length, + result = {}; + + while (++index < length) { + var value = index < valsLength ? values[index] : undefined; + assignFunc(result, props[index], value); + } + return result; + } + + /** + * Casts `value` to an empty array if it's not an array like object. + * + * @private + * @param {*} value The value to inspect. + * @returns {Array|Object} Returns the cast array-like object. + */ + function castArrayLikeObject(value) { + return isArrayLikeObject(value) ? value : []; + } + + /** + * Casts `value` to `identity` if it's not a function. + * + * @private + * @param {*} value The value to inspect. + * @returns {Function} Returns cast function. + */ + function castFunction(value) { + return typeof value == 'function' ? value : identity; + } + + /** + * Casts `value` to a path array if it's not one. + * + * @private + * @param {*} value The value to inspect. + * @param {Object} [object] The object to query keys on. + * @returns {Array} Returns the cast property path array. + */ + function castPath(value, object) { + if (isArray(value)) { + return value; + } + return isKey(value, object) ? [value] : stringToPath(toString(value)); + } + + /** + * A `baseRest` alias which can be replaced with `identity` by module + * replacement plugins. + * + * @private + * @type {Function} + * @param {Function} func The function to apply a rest parameter to. + * @returns {Function} Returns the new function. + */ + var castRest = baseRest; + + /** + * Casts `array` to a slice if it's needed. + * + * @private + * @param {Array} array The array to inspect. + * @param {number} start The start position. + * @param {number} [end=array.length] The end position. + * @returns {Array} Returns the cast slice. + */ + function castSlice(array, start, end) { + var length = array.length; + end = end === undefined ? length : end; + return (!start && end >= length) ? array : baseSlice(array, start, end); + } + + /** + * A simple wrapper around the global [`clearTimeout`](https://mdn.io/clearTimeout). + * + * @private + * @param {number|Object} id The timer id or timeout object of the timer to clear. + */ + var clearTimeout = ctxClearTimeout || function(id) { + return root.clearTimeout(id); + }; + + /** + * Creates a clone of `buffer`. + * + * @private + * @param {Buffer} buffer The buffer to clone. + * @param {boolean} [isDeep] Specify a deep clone. + * @returns {Buffer} Returns the cloned buffer. + */ + function cloneBuffer(buffer, isDeep) { + if (isDeep) { + return buffer.slice(); + } + var length = buffer.length, + result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length); + + buffer.copy(result); + return result; + } + + /** + * Creates a clone of `arrayBuffer`. + * + * @private + * @param {ArrayBuffer} arrayBuffer The array buffer to clone. + * @returns {ArrayBuffer} Returns the cloned array buffer. + */ + function cloneArrayBuffer(arrayBuffer) { + var result = new arrayBuffer.constructor(arrayBuffer.byteLength); + new Uint8Array(result).set(new Uint8Array(arrayBuffer)); + return result; + } + + /** + * Creates a clone of `dataView`. + * + * @private + * @param {Object} dataView The data view to clone. + * @param {boolean} [isDeep] Specify a deep clone. + * @returns {Object} Returns the cloned data view. + */ + function cloneDataView(dataView, isDeep) { + var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer; + return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength); + } + + /** + * Creates a clone of `regexp`. + * + * @private + * @param {Object} regexp The regexp to clone. + * @returns {Object} Returns the cloned regexp. + */ + function cloneRegExp(regexp) { + var result = new regexp.constructor(regexp.source, reFlags.exec(regexp)); + result.lastIndex = regexp.lastIndex; + return result; + } + + /** + * Creates a clone of the `symbol` object. + * + * @private + * @param {Object} symbol The symbol object to clone. + * @returns {Object} Returns the cloned symbol object. + */ + function cloneSymbol(symbol) { + return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {}; + } + + /** + * Creates a clone of `typedArray`. + * + * @private + * @param {Object} typedArray The typed array to clone. + * @param {boolean} [isDeep] Specify a deep clone. + * @returns {Object} Returns the cloned typed array. + */ + function cloneTypedArray(typedArray, isDeep) { + var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer; + return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length); + } + + /** + * Compares values to sort them in ascending order. + * + * @private + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {number} Returns the sort order indicator for `value`. + */ + function compareAscending(value, other) { + if (value !== other) { + var valIsDefined = value !== undefined, + valIsNull = value === null, + valIsReflexive = value === value, + valIsSymbol = isSymbol(value); + + var othIsDefined = other !== undefined, + othIsNull = other === null, + othIsReflexive = other === other, + othIsSymbol = isSymbol(other); + + if ((!othIsNull && !othIsSymbol && !valIsSymbol && value > other) || + (valIsSymbol && othIsDefined && othIsReflexive && !othIsNull && !othIsSymbol) || + (valIsNull && othIsDefined && othIsReflexive) || + (!valIsDefined && othIsReflexive) || + !valIsReflexive) { + return 1; + } + if ((!valIsNull && !valIsSymbol && !othIsSymbol && value < other) || + (othIsSymbol && valIsDefined && valIsReflexive && !valIsNull && !valIsSymbol) || + (othIsNull && valIsDefined && valIsReflexive) || + (!othIsDefined && valIsReflexive) || + !othIsReflexive) { + return -1; + } + } + return 0; + } + + /** + * Used by `_.orderBy` to compare multiple properties of a value to another + * and stable sort them. + * + * If `orders` is unspecified, all values are sorted in ascending order. Otherwise, + * specify an order of "desc" for descending or "asc" for ascending sort order + * of corresponding values. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {boolean[]|string[]} orders The order to sort by for each property. + * @returns {number} Returns the sort order indicator for `object`. + */ + function compareMultiple(object, other, orders) { + var index = -1, + objCriteria = object.criteria, + othCriteria = other.criteria, + length = objCriteria.length, + ordersLength = orders.length; + + while (++index < length) { + var result = compareAscending(objCriteria[index], othCriteria[index]); + if (result) { + if (index >= ordersLength) { + return result; + } + var order = orders[index]; + return result * (order == 'desc' ? -1 : 1); + } + } + // Fixes an `Array#sort` bug in the JS engine embedded in Adobe applications + // that causes it, under certain circumstances, to provide the same value for + // `object` and `other`. See https://github.com/jashkenas/underscore/pull/1247 + // for more details. + // + // This also ensures a stable sort in V8 and other engines. + // See https://bugs.chromium.org/p/v8/issues/detail?id=90 for more details. + return object.index - other.index; + } + + /** + * Creates an array that is the composition of partially applied arguments, + * placeholders, and provided arguments into a single array of arguments. + * + * @private + * @param {Array} args The provided arguments. + * @param {Array} partials The arguments to prepend to those provided. + * @param {Array} holders The `partials` placeholder indexes. + * @params {boolean} [isCurried] Specify composing for a curried function. + * @returns {Array} Returns the new array of composed arguments. + */ + function composeArgs(args, partials, holders, isCurried) { + var argsIndex = -1, + argsLength = args.length, + holdersLength = holders.length, + leftIndex = -1, + leftLength = partials.length, + rangeLength = nativeMax(argsLength - holdersLength, 0), + result = Array(leftLength + rangeLength), + isUncurried = !isCurried; + + while (++leftIndex < leftLength) { + result[leftIndex] = partials[leftIndex]; + } + while (++argsIndex < holdersLength) { + if (isUncurried || argsIndex < argsLength) { + result[holders[argsIndex]] = args[argsIndex]; + } + } + while (rangeLength--) { + result[leftIndex++] = args[argsIndex++]; + } + return result; + } + + /** + * This function is like `composeArgs` except that the arguments composition + * is tailored for `_.partialRight`. + * + * @private + * @param {Array} args The provided arguments. + * @param {Array} partials The arguments to append to those provided. + * @param {Array} holders The `partials` placeholder indexes. + * @params {boolean} [isCurried] Specify composing for a curried function. + * @returns {Array} Returns the new array of composed arguments. + */ + function composeArgsRight(args, partials, holders, isCurried) { + var argsIndex = -1, + argsLength = args.length, + holdersIndex = -1, + holdersLength = holders.length, + rightIndex = -1, + rightLength = partials.length, + rangeLength = nativeMax(argsLength - holdersLength, 0), + result = Array(rangeLength + rightLength), + isUncurried = !isCurried; + + while (++argsIndex < rangeLength) { + result[argsIndex] = args[argsIndex]; + } + var offset = argsIndex; + while (++rightIndex < rightLength) { + result[offset + rightIndex] = partials[rightIndex]; + } + while (++holdersIndex < holdersLength) { + if (isUncurried || argsIndex < argsLength) { + result[offset + holders[holdersIndex]] = args[argsIndex++]; + } + } + return result; + } + + /** + * Copies the values of `source` to `array`. + * + * @private + * @param {Array} source The array to copy values from. + * @param {Array} [array=[]] The array to copy values to. + * @returns {Array} Returns `array`. + */ + function copyArray(source, array) { + var index = -1, + length = source.length; + + array || (array = Array(length)); + while (++index < length) { + array[index] = source[index]; + } + return array; + } + + /** + * Copies properties of `source` to `object`. + * + * @private + * @param {Object} source The object to copy properties from. + * @param {Array} props The property identifiers to copy. + * @param {Object} [object={}] The object to copy properties to. + * @param {Function} [customizer] The function to customize copied values. + * @returns {Object} Returns `object`. + */ + function copyObject(source, props, object, customizer) { + var isNew = !object; + object || (object = {}); + + var index = -1, + length = props.length; + + while (++index < length) { + var key = props[index]; + + var newValue = customizer + ? customizer(object[key], source[key], key, object, source) + : undefined; + + if (newValue === undefined) { + newValue = source[key]; + } + if (isNew) { + baseAssignValue(object, key, newValue); + } else { + assignValue(object, key, newValue); + } + } + return object; + } + + /** + * Copies own symbols of `source` to `object`. + * + * @private + * @param {Object} source The object to copy symbols from. + * @param {Object} [object={}] The object to copy symbols to. + * @returns {Object} Returns `object`. + */ + function copySymbols(source, object) { + return copyObject(source, getSymbols(source), object); + } + + /** + * Copies own and inherited symbols of `source` to `object`. + * + * @private + * @param {Object} source The object to copy symbols from. + * @param {Object} [object={}] The object to copy symbols to. + * @returns {Object} Returns `object`. + */ + function copySymbolsIn(source, object) { + return copyObject(source, getSymbolsIn(source), object); + } + + /** + * Creates a function like `_.groupBy`. + * + * @private + * @param {Function} setter The function to set accumulator values. + * @param {Function} [initializer] The accumulator object initializer. + * @returns {Function} Returns the new aggregator function. + */ + function createAggregator(setter, initializer) { + return function(collection, iteratee) { + var func = isArray(collection) ? arrayAggregator : baseAggregator, + accumulator = initializer ? initializer() : {}; + + return func(collection, setter, getIteratee(iteratee, 2), accumulator); + }; + } + + /** + * Creates a function like `_.assign`. + * + * @private + * @param {Function} assigner The function to assign values. + * @returns {Function} Returns the new assigner function. + */ + function createAssigner(assigner) { + return baseRest(function(object, sources) { + var index = -1, + length = sources.length, + customizer = length > 1 ? sources[length - 1] : undefined, + guard = length > 2 ? sources[2] : undefined; + + customizer = (assigner.length > 3 && typeof customizer == 'function') + ? (length--, customizer) + : undefined; + + if (guard && isIterateeCall(sources[0], sources[1], guard)) { + customizer = length < 3 ? undefined : customizer; + length = 1; + } + object = Object(object); + while (++index < length) { + var source = sources[index]; + if (source) { + assigner(object, source, index, customizer); + } + } + return object; + }); + } + + /** + * Creates a `baseEach` or `baseEachRight` function. + * + * @private + * @param {Function} eachFunc The function to iterate over a collection. + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Function} Returns the new base function. + */ + function createBaseEach(eachFunc, fromRight) { + return function(collection, iteratee) { + if (collection == null) { + return collection; + } + if (!isArrayLike(collection)) { + return eachFunc(collection, iteratee); + } + var length = collection.length, + index = fromRight ? length : -1, + iterable = Object(collection); + + while ((fromRight ? index-- : ++index < length)) { + if (iteratee(iterable[index], index, iterable) === false) { + break; + } + } + return collection; + }; + } + + /** + * Creates a base function for methods like `_.forIn` and `_.forOwn`. + * + * @private + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Function} Returns the new base function. + */ + function createBaseFor(fromRight) { + return function(object, iteratee, keysFunc) { + var index = -1, + iterable = Object(object), + props = keysFunc(object), + length = props.length; + + while (length--) { + var key = props[fromRight ? length : ++index]; + if (iteratee(iterable[key], key, iterable) === false) { + break; + } + } + return object; + }; + } + + /** + * Creates a function that wraps `func` to invoke it with the optional `this` + * binding of `thisArg`. + * + * @private + * @param {Function} func The function to wrap. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @param {*} [thisArg] The `this` binding of `func`. + * @returns {Function} Returns the new wrapped function. + */ + function createBind(func, bitmask, thisArg) { + var isBind = bitmask & WRAP_BIND_FLAG, + Ctor = createCtor(func); + + function wrapper() { + var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func; + return fn.apply(isBind ? thisArg : this, arguments); + } + return wrapper; + } + + /** + * Creates a function like `_.lowerFirst`. + * + * @private + * @param {string} methodName The name of the `String` case method to use. + * @returns {Function} Returns the new case function. + */ + function createCaseFirst(methodName) { + return function(string) { + string = toString(string); + + var strSymbols = hasUnicode(string) + ? stringToArray(string) + : undefined; + + var chr = strSymbols + ? strSymbols[0] + : string.charAt(0); + + var trailing = strSymbols + ? castSlice(strSymbols, 1).join('') + : string.slice(1); + + return chr[methodName]() + trailing; + }; + } + + /** + * Creates a function like `_.camelCase`. + * + * @private + * @param {Function} callback The function to combine each word. + * @returns {Function} Returns the new compounder function. + */ + function createCompounder(callback) { + return function(string) { + return arrayReduce(words(deburr(string).replace(reApos, '')), callback, ''); + }; + } + + /** + * Creates a function that produces an instance of `Ctor` regardless of + * whether it was invoked as part of a `new` expression or by `call` or `apply`. + * + * @private + * @param {Function} Ctor The constructor to wrap. + * @returns {Function} Returns the new wrapped function. + */ + function createCtor(Ctor) { + return function() { + // Use a `switch` statement to work with class constructors. See + // http://ecma-international.org/ecma-262/7.0/#sec-ecmascript-function-objects-call-thisargument-argumentslist + // for more details. + var args = arguments; + switch (args.length) { + case 0: return new Ctor; + case 1: return new Ctor(args[0]); + case 2: return new Ctor(args[0], args[1]); + case 3: return new Ctor(args[0], args[1], args[2]); + case 4: return new Ctor(args[0], args[1], args[2], args[3]); + case 5: return new Ctor(args[0], args[1], args[2], args[3], args[4]); + case 6: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5]); + case 7: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5], args[6]); + } + var thisBinding = baseCreate(Ctor.prototype), + result = Ctor.apply(thisBinding, args); + + // Mimic the constructor's `return` behavior. + // See https://es5.github.io/#x13.2.2 for more details. + return isObject(result) ? result : thisBinding; + }; + } + + /** + * Creates a function that wraps `func` to enable currying. + * + * @private + * @param {Function} func The function to wrap. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @param {number} arity The arity of `func`. + * @returns {Function} Returns the new wrapped function. + */ + function createCurry(func, bitmask, arity) { + var Ctor = createCtor(func); + + function wrapper() { + var length = arguments.length, + args = Array(length), + index = length, + placeholder = getHolder(wrapper); + + while (index--) { + args[index] = arguments[index]; + } + var holders = (length < 3 && args[0] !== placeholder && args[length - 1] !== placeholder) + ? [] + : replaceHolders(args, placeholder); + + length -= holders.length; + if (length < arity) { + return createRecurry( + func, bitmask, createHybrid, wrapper.placeholder, undefined, + args, holders, undefined, undefined, arity - length); + } + var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func; + return apply(fn, this, args); + } + return wrapper; + } + + /** + * Creates a `_.find` or `_.findLast` function. + * + * @private + * @param {Function} findIndexFunc The function to find the collection index. + * @returns {Function} Returns the new find function. + */ + function createFind(findIndexFunc) { + return function(collection, predicate, fromIndex) { + var iterable = Object(collection); + if (!isArrayLike(collection)) { + var iteratee = getIteratee(predicate, 3); + collection = keys(collection); + predicate = function(key) { return iteratee(iterable[key], key, iterable); }; + } + var index = findIndexFunc(collection, predicate, fromIndex); + return index > -1 ? iterable[iteratee ? collection[index] : index] : undefined; + }; + } + + /** + * Creates a `_.flow` or `_.flowRight` function. + * + * @private + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Function} Returns the new flow function. + */ + function createFlow(fromRight) { + return flatRest(function(funcs) { + var length = funcs.length, + index = length, + prereq = LodashWrapper.prototype.thru; + + if (fromRight) { + funcs.reverse(); + } + while (index--) { + var func = funcs[index]; + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + if (prereq && !wrapper && getFuncName(func) == 'wrapper') { + var wrapper = new LodashWrapper([], true); + } + } + index = wrapper ? index : length; + while (++index < length) { + func = funcs[index]; + + var funcName = getFuncName(func), + data = funcName == 'wrapper' ? getData(func) : undefined; + + if (data && isLaziable(data[0]) && + data[1] == (WRAP_ARY_FLAG | WRAP_CURRY_FLAG | WRAP_PARTIAL_FLAG | WRAP_REARG_FLAG) && + !data[4].length && data[9] == 1 + ) { + wrapper = wrapper[getFuncName(data[0])].apply(wrapper, data[3]); + } else { + wrapper = (func.length == 1 && isLaziable(func)) + ? wrapper[funcName]() + : wrapper.thru(func); + } + } + return function() { + var args = arguments, + value = args[0]; + + if (wrapper && args.length == 1 && isArray(value)) { + return wrapper.plant(value).value(); + } + var index = 0, + result = length ? funcs[index].apply(this, args) : value; + + while (++index < length) { + result = funcs[index].call(this, result); + } + return result; + }; + }); + } + + /** + * Creates a function that wraps `func` to invoke it with optional `this` + * binding of `thisArg`, partial application, and currying. + * + * @private + * @param {Function|string} func The function or method name to wrap. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @param {*} [thisArg] The `this` binding of `func`. + * @param {Array} [partials] The arguments to prepend to those provided to + * the new function. + * @param {Array} [holders] The `partials` placeholder indexes. + * @param {Array} [partialsRight] The arguments to append to those provided + * to the new function. + * @param {Array} [holdersRight] The `partialsRight` placeholder indexes. + * @param {Array} [argPos] The argument positions of the new function. + * @param {number} [ary] The arity cap of `func`. + * @param {number} [arity] The arity of `func`. + * @returns {Function} Returns the new wrapped function. + */ + function createHybrid(func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary, arity) { + var isAry = bitmask & WRAP_ARY_FLAG, + isBind = bitmask & WRAP_BIND_FLAG, + isBindKey = bitmask & WRAP_BIND_KEY_FLAG, + isCurried = bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG), + isFlip = bitmask & WRAP_FLIP_FLAG, + Ctor = isBindKey ? undefined : createCtor(func); + + function wrapper() { + var length = arguments.length, + args = Array(length), + index = length; + + while (index--) { + args[index] = arguments[index]; + } + if (isCurried) { + var placeholder = getHolder(wrapper), + holdersCount = countHolders(args, placeholder); + } + if (partials) { + args = composeArgs(args, partials, holders, isCurried); + } + if (partialsRight) { + args = composeArgsRight(args, partialsRight, holdersRight, isCurried); + } + length -= holdersCount; + if (isCurried && length < arity) { + var newHolders = replaceHolders(args, placeholder); + return createRecurry( + func, bitmask, createHybrid, wrapper.placeholder, thisArg, + args, newHolders, argPos, ary, arity - length + ); + } + var thisBinding = isBind ? thisArg : this, + fn = isBindKey ? thisBinding[func] : func; + + length = args.length; + if (argPos) { + args = reorder(args, argPos); + } else if (isFlip && length > 1) { + args.reverse(); + } + if (isAry && ary < length) { + args.length = ary; + } + if (this && this !== root && this instanceof wrapper) { + fn = Ctor || createCtor(fn); + } + return fn.apply(thisBinding, args); + } + return wrapper; + } + + /** + * Creates a function like `_.invertBy`. + * + * @private + * @param {Function} setter The function to set accumulator values. + * @param {Function} toIteratee The function to resolve iteratees. + * @returns {Function} Returns the new inverter function. + */ + function createInverter(setter, toIteratee) { + return function(object, iteratee) { + return baseInverter(object, setter, toIteratee(iteratee), {}); + }; + } + + /** + * Creates a function that performs a mathematical operation on two values. + * + * @private + * @param {Function} operator The function to perform the operation. + * @param {number} [defaultValue] The value used for `undefined` arguments. + * @returns {Function} Returns the new mathematical operation function. + */ + function createMathOperation(operator, defaultValue) { + return function(value, other) { + var result; + if (value === undefined && other === undefined) { + return defaultValue; + } + if (value !== undefined) { + result = value; + } + if (other !== undefined) { + if (result === undefined) { + return other; + } + if (typeof value == 'string' || typeof other == 'string') { + value = baseToString(value); + other = baseToString(other); + } else { + value = baseToNumber(value); + other = baseToNumber(other); + } + result = operator(value, other); + } + return result; + }; + } + + /** + * Creates a function like `_.over`. + * + * @private + * @param {Function} arrayFunc The function to iterate over iteratees. + * @returns {Function} Returns the new over function. + */ + function createOver(arrayFunc) { + return flatRest(function(iteratees) { + iteratees = arrayMap(iteratees, baseUnary(getIteratee())); + return baseRest(function(args) { + var thisArg = this; + return arrayFunc(iteratees, function(iteratee) { + return apply(iteratee, thisArg, args); + }); + }); + }); + } + + /** + * Creates the padding for `string` based on `length`. The `chars` string + * is truncated if the number of characters exceeds `length`. + * + * @private + * @param {number} length The padding length. + * @param {string} [chars=' '] The string used as padding. + * @returns {string} Returns the padding for `string`. + */ + function createPadding(length, chars) { + chars = chars === undefined ? ' ' : baseToString(chars); + + var charsLength = chars.length; + if (charsLength < 2) { + return charsLength ? baseRepeat(chars, length) : chars; + } + var result = baseRepeat(chars, nativeCeil(length / stringSize(chars))); + return hasUnicode(chars) + ? castSlice(stringToArray(result), 0, length).join('') + : result.slice(0, length); + } + + /** + * Creates a function that wraps `func` to invoke it with the `this` binding + * of `thisArg` and `partials` prepended to the arguments it receives. + * + * @private + * @param {Function} func The function to wrap. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @param {*} thisArg The `this` binding of `func`. + * @param {Array} partials The arguments to prepend to those provided to + * the new function. + * @returns {Function} Returns the new wrapped function. + */ + function createPartial(func, bitmask, thisArg, partials) { + var isBind = bitmask & WRAP_BIND_FLAG, + Ctor = createCtor(func); + + function wrapper() { + var argsIndex = -1, + argsLength = arguments.length, + leftIndex = -1, + leftLength = partials.length, + args = Array(leftLength + argsLength), + fn = (this && this !== root && this instanceof wrapper) ? Ctor : func; + + while (++leftIndex < leftLength) { + args[leftIndex] = partials[leftIndex]; + } + while (argsLength--) { + args[leftIndex++] = arguments[++argsIndex]; + } + return apply(fn, isBind ? thisArg : this, args); + } + return wrapper; + } + + /** + * Creates a `_.range` or `_.rangeRight` function. + * + * @private + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Function} Returns the new range function. + */ + function createRange(fromRight) { + return function(start, end, step) { + if (step && typeof step != 'number' && isIterateeCall(start, end, step)) { + end = step = undefined; + } + // Ensure the sign of `-0` is preserved. + start = toFinite(start); + if (end === undefined) { + end = start; + start = 0; + } else { + end = toFinite(end); + } + step = step === undefined ? (start < end ? 1 : -1) : toFinite(step); + return baseRange(start, end, step, fromRight); + }; + } + + /** + * Creates a function that performs a relational operation on two values. + * + * @private + * @param {Function} operator The function to perform the operation. + * @returns {Function} Returns the new relational operation function. + */ + function createRelationalOperation(operator) { + return function(value, other) { + if (!(typeof value == 'string' && typeof other == 'string')) { + value = toNumber(value); + other = toNumber(other); + } + return operator(value, other); + }; + } + + /** + * Creates a function that wraps `func` to continue currying. + * + * @private + * @param {Function} func The function to wrap. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @param {Function} wrapFunc The function to create the `func` wrapper. + * @param {*} placeholder The placeholder value. + * @param {*} [thisArg] The `this` binding of `func`. + * @param {Array} [partials] The arguments to prepend to those provided to + * the new function. + * @param {Array} [holders] The `partials` placeholder indexes. + * @param {Array} [argPos] The argument positions of the new function. + * @param {number} [ary] The arity cap of `func`. + * @param {number} [arity] The arity of `func`. + * @returns {Function} Returns the new wrapped function. + */ + function createRecurry(func, bitmask, wrapFunc, placeholder, thisArg, partials, holders, argPos, ary, arity) { + var isCurry = bitmask & WRAP_CURRY_FLAG, + newHolders = isCurry ? holders : undefined, + newHoldersRight = isCurry ? undefined : holders, + newPartials = isCurry ? partials : undefined, + newPartialsRight = isCurry ? undefined : partials; + + bitmask |= (isCurry ? WRAP_PARTIAL_FLAG : WRAP_PARTIAL_RIGHT_FLAG); + bitmask &= ~(isCurry ? WRAP_PARTIAL_RIGHT_FLAG : WRAP_PARTIAL_FLAG); + + if (!(bitmask & WRAP_CURRY_BOUND_FLAG)) { + bitmask &= ~(WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG); + } + var newData = [ + func, bitmask, thisArg, newPartials, newHolders, newPartialsRight, + newHoldersRight, argPos, ary, arity + ]; + + var result = wrapFunc.apply(undefined, newData); + if (isLaziable(func)) { + setData(result, newData); + } + result.placeholder = placeholder; + return setWrapToString(result, func, bitmask); + } + + /** + * Creates a function like `_.round`. + * + * @private + * @param {string} methodName The name of the `Math` method to use when rounding. + * @returns {Function} Returns the new round function. + */ + function createRound(methodName) { + var func = Math[methodName]; + return function(number, precision) { + number = toNumber(number); + precision = precision == null ? 0 : nativeMin(toInteger(precision), 292); + if (precision && nativeIsFinite(number)) { + // Shift with exponential notation to avoid floating-point issues. + // See [MDN](https://mdn.io/round#Examples) for more details. + var pair = (toString(number) + 'e').split('e'), + value = func(pair[0] + 'e' + (+pair[1] + precision)); + + pair = (toString(value) + 'e').split('e'); + return +(pair[0] + 'e' + (+pair[1] - precision)); + } + return func(number); + }; + } + + /** + * Creates a set object of `values`. + * + * @private + * @param {Array} values The values to add to the set. + * @returns {Object} Returns the new set. + */ + var createSet = !(Set && (1 / setToArray(new Set([,-0]))[1]) == INFINITY) ? noop : function(values) { + return new Set(values); + }; + + /** + * Creates a `_.toPairs` or `_.toPairsIn` function. + * + * @private + * @param {Function} keysFunc The function to get the keys of a given object. + * @returns {Function} Returns the new pairs function. + */ + function createToPairs(keysFunc) { + return function(object) { + var tag = getTag(object); + if (tag == mapTag) { + return mapToArray(object); + } + if (tag == setTag) { + return setToPairs(object); + } + return baseToPairs(object, keysFunc(object)); + }; + } + + /** + * Creates a function that either curries or invokes `func` with optional + * `this` binding and partially applied arguments. + * + * @private + * @param {Function|string} func The function or method name to wrap. + * @param {number} bitmask The bitmask flags. + * 1 - `_.bind` + * 2 - `_.bindKey` + * 4 - `_.curry` or `_.curryRight` of a bound function + * 8 - `_.curry` + * 16 - `_.curryRight` + * 32 - `_.partial` + * 64 - `_.partialRight` + * 128 - `_.rearg` + * 256 - `_.ary` + * 512 - `_.flip` + * @param {*} [thisArg] The `this` binding of `func`. + * @param {Array} [partials] The arguments to be partially applied. + * @param {Array} [holders] The `partials` placeholder indexes. + * @param {Array} [argPos] The argument positions of the new function. + * @param {number} [ary] The arity cap of `func`. + * @param {number} [arity] The arity of `func`. + * @returns {Function} Returns the new wrapped function. + */ + function createWrap(func, bitmask, thisArg, partials, holders, argPos, ary, arity) { + var isBindKey = bitmask & WRAP_BIND_KEY_FLAG; + if (!isBindKey && typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + var length = partials ? partials.length : 0; + if (!length) { + bitmask &= ~(WRAP_PARTIAL_FLAG | WRAP_PARTIAL_RIGHT_FLAG); + partials = holders = undefined; + } + ary = ary === undefined ? ary : nativeMax(toInteger(ary), 0); + arity = arity === undefined ? arity : toInteger(arity); + length -= holders ? holders.length : 0; + + if (bitmask & WRAP_PARTIAL_RIGHT_FLAG) { + var partialsRight = partials, + holdersRight = holders; + + partials = holders = undefined; + } + var data = isBindKey ? undefined : getData(func); + + var newData = [ + func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, + argPos, ary, arity + ]; + + if (data) { + mergeData(newData, data); + } + func = newData[0]; + bitmask = newData[1]; + thisArg = newData[2]; + partials = newData[3]; + holders = newData[4]; + arity = newData[9] = newData[9] === undefined + ? (isBindKey ? 0 : func.length) + : nativeMax(newData[9] - length, 0); + + if (!arity && bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG)) { + bitmask &= ~(WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG); + } + if (!bitmask || bitmask == WRAP_BIND_FLAG) { + var result = createBind(func, bitmask, thisArg); + } else if (bitmask == WRAP_CURRY_FLAG || bitmask == WRAP_CURRY_RIGHT_FLAG) { + result = createCurry(func, bitmask, arity); + } else if ((bitmask == WRAP_PARTIAL_FLAG || bitmask == (WRAP_BIND_FLAG | WRAP_PARTIAL_FLAG)) && !holders.length) { + result = createPartial(func, bitmask, thisArg, partials); + } else { + result = createHybrid.apply(undefined, newData); + } + var setter = data ? baseSetData : setData; + return setWrapToString(setter(result, newData), func, bitmask); + } + + /** + * Used by `_.defaults` to customize its `_.assignIn` use to assign properties + * of source objects to the destination object for all destination properties + * that resolve to `undefined`. + * + * @private + * @param {*} objValue The destination value. + * @param {*} srcValue The source value. + * @param {string} key The key of the property to assign. + * @param {Object} object The parent object of `objValue`. + * @returns {*} Returns the value to assign. + */ + function customDefaultsAssignIn(objValue, srcValue, key, object) { + if (objValue === undefined || + (eq(objValue, objectProto[key]) && !hasOwnProperty.call(object, key))) { + return srcValue; + } + return objValue; + } + + /** + * Used by `_.defaultsDeep` to customize its `_.merge` use to merge source + * objects into destination objects that are passed thru. + * + * @private + * @param {*} objValue The destination value. + * @param {*} srcValue The source value. + * @param {string} key The key of the property to merge. + * @param {Object} object The parent object of `objValue`. + * @param {Object} source The parent object of `srcValue`. + * @param {Object} [stack] Tracks traversed source values and their merged + * counterparts. + * @returns {*} Returns the value to assign. + */ + function customDefaultsMerge(objValue, srcValue, key, object, source, stack) { + if (isObject(objValue) && isObject(srcValue)) { + // Recursively merge objects and arrays (susceptible to call stack limits). + stack.set(srcValue, objValue); + baseMerge(objValue, srcValue, undefined, customDefaultsMerge, stack); + stack['delete'](srcValue); + } + return objValue; + } + + /** + * Used by `_.omit` to customize its `_.cloneDeep` use to only clone plain + * objects. + * + * @private + * @param {*} value The value to inspect. + * @param {string} key The key of the property to inspect. + * @returns {*} Returns the uncloned value or `undefined` to defer cloning to `_.cloneDeep`. + */ + function customOmitClone(value) { + return isPlainObject(value) ? undefined : value; + } + + /** + * A specialized version of `baseIsEqualDeep` for arrays with support for + * partial deep comparisons. + * + * @private + * @param {Array} array The array to compare. + * @param {Array} other The other array to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} stack Tracks traversed `array` and `other` objects. + * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`. + */ + function equalArrays(array, other, bitmask, customizer, equalFunc, stack) { + var isPartial = bitmask & COMPARE_PARTIAL_FLAG, + arrLength = array.length, + othLength = other.length; + + if (arrLength != othLength && !(isPartial && othLength > arrLength)) { + return false; + } + // Check that cyclic values are equal. + var arrStacked = stack.get(array); + var othStacked = stack.get(other); + if (arrStacked && othStacked) { + return arrStacked == other && othStacked == array; + } + var index = -1, + result = true, + seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined; + + stack.set(array, other); + stack.set(other, array); + + // Ignore non-index properties. + while (++index < arrLength) { + var arrValue = array[index], + othValue = other[index]; + + if (customizer) { + var compared = isPartial + ? customizer(othValue, arrValue, index, other, array, stack) + : customizer(arrValue, othValue, index, array, other, stack); + } + if (compared !== undefined) { + if (compared) { + continue; + } + result = false; + break; + } + // Recursively compare arrays (susceptible to call stack limits). + if (seen) { + if (!arraySome(other, function(othValue, othIndex) { + if (!cacheHas(seen, othIndex) && + (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) { + return seen.push(othIndex); + } + })) { + result = false; + break; + } + } else if (!( + arrValue === othValue || + equalFunc(arrValue, othValue, bitmask, customizer, stack) + )) { + result = false; + break; + } + } + stack['delete'](array); + stack['delete'](other); + return result; + } + + /** + * A specialized version of `baseIsEqualDeep` for comparing objects of + * the same `toStringTag`. + * + * **Note:** This function only supports comparing values with tags of + * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {string} tag The `toStringTag` of the objects to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} stack Tracks traversed `object` and `other` objects. + * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. + */ + function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) { + switch (tag) { + case dataViewTag: + if ((object.byteLength != other.byteLength) || + (object.byteOffset != other.byteOffset)) { + return false; + } + object = object.buffer; + other = other.buffer; + + case arrayBufferTag: + if ((object.byteLength != other.byteLength) || + !equalFunc(new Uint8Array(object), new Uint8Array(other))) { + return false; + } + return true; + + case boolTag: + case dateTag: + case numberTag: + // Coerce booleans to `1` or `0` and dates to milliseconds. + // Invalid dates are coerced to `NaN`. + return eq(+object, +other); + + case errorTag: + return object.name == other.name && object.message == other.message; + + case regexpTag: + case stringTag: + // Coerce regexes to strings and treat strings, primitives and objects, + // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring + // for more details. + return object == (other + ''); + + case mapTag: + var convert = mapToArray; + + case setTag: + var isPartial = bitmask & COMPARE_PARTIAL_FLAG; + convert || (convert = setToArray); + + if (object.size != other.size && !isPartial) { + return false; + } + // Assume cyclic values are equal. + var stacked = stack.get(object); + if (stacked) { + return stacked == other; + } + bitmask |= COMPARE_UNORDERED_FLAG; + + // Recursively compare objects (susceptible to call stack limits). + stack.set(object, other); + var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack); + stack['delete'](object); + return result; + + case symbolTag: + if (symbolValueOf) { + return symbolValueOf.call(object) == symbolValueOf.call(other); + } + } + return false; + } + + /** + * A specialized version of `baseIsEqualDeep` for objects with support for + * partial deep comparisons. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} stack Tracks traversed `object` and `other` objects. + * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. + */ + function equalObjects(object, other, bitmask, customizer, equalFunc, stack) { + var isPartial = bitmask & COMPARE_PARTIAL_FLAG, + objProps = getAllKeys(object), + objLength = objProps.length, + othProps = getAllKeys(other), + othLength = othProps.length; + + if (objLength != othLength && !isPartial) { + return false; + } + var index = objLength; + while (index--) { + var key = objProps[index]; + if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) { + return false; + } + } + // Check that cyclic values are equal. + var objStacked = stack.get(object); + var othStacked = stack.get(other); + if (objStacked && othStacked) { + return objStacked == other && othStacked == object; + } + var result = true; + stack.set(object, other); + stack.set(other, object); + + var skipCtor = isPartial; + while (++index < objLength) { + key = objProps[index]; + var objValue = object[key], + othValue = other[key]; + + if (customizer) { + var compared = isPartial + ? customizer(othValue, objValue, key, other, object, stack) + : customizer(objValue, othValue, key, object, other, stack); + } + // Recursively compare objects (susceptible to call stack limits). + if (!(compared === undefined + ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack)) + : compared + )) { + result = false; + break; + } + skipCtor || (skipCtor = key == 'constructor'); + } + if (result && !skipCtor) { + var objCtor = object.constructor, + othCtor = other.constructor; + + // Non `Object` object instances with different constructors are not equal. + if (objCtor != othCtor && + ('constructor' in object && 'constructor' in other) && + !(typeof objCtor == 'function' && objCtor instanceof objCtor && + typeof othCtor == 'function' && othCtor instanceof othCtor)) { + result = false; + } + } + stack['delete'](object); + stack['delete'](other); + return result; + } + + /** + * A specialized version of `baseRest` which flattens the rest array. + * + * @private + * @param {Function} func The function to apply a rest parameter to. + * @returns {Function} Returns the new function. + */ + function flatRest(func) { + return setToString(overRest(func, undefined, flatten), func + ''); + } + + /** + * Creates an array of own enumerable property names and symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names and symbols. + */ + function getAllKeys(object) { + return baseGetAllKeys(object, keys, getSymbols); + } + + /** + * Creates an array of own and inherited enumerable property names and + * symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names and symbols. + */ + function getAllKeysIn(object) { + return baseGetAllKeys(object, keysIn, getSymbolsIn); + } + + /** + * Gets metadata for `func`. + * + * @private + * @param {Function} func The function to query. + * @returns {*} Returns the metadata for `func`. + */ + var getData = !metaMap ? noop : function(func) { + return metaMap.get(func); + }; + + /** + * Gets the name of `func`. + * + * @private + * @param {Function} func The function to query. + * @returns {string} Returns the function name. + */ + function getFuncName(func) { + var result = (func.name + ''), + array = realNames[result], + length = hasOwnProperty.call(realNames, result) ? array.length : 0; + + while (length--) { + var data = array[length], + otherFunc = data.func; + if (otherFunc == null || otherFunc == func) { + return data.name; + } + } + return result; + } + + /** + * Gets the argument placeholder value for `func`. + * + * @private + * @param {Function} func The function to inspect. + * @returns {*} Returns the placeholder value. + */ + function getHolder(func) { + var object = hasOwnProperty.call(lodash, 'placeholder') ? lodash : func; + return object.placeholder; + } + + /** + * Gets the appropriate "iteratee" function. If `_.iteratee` is customized, + * this function returns the custom method, otherwise it returns `baseIteratee`. + * If arguments are provided, the chosen function is invoked with them and + * its result is returned. + * + * @private + * @param {*} [value] The value to convert to an iteratee. + * @param {number} [arity] The arity of the created iteratee. + * @returns {Function} Returns the chosen function or its result. + */ + function getIteratee() { + var result = lodash.iteratee || iteratee; + result = result === iteratee ? baseIteratee : result; + return arguments.length ? result(arguments[0], arguments[1]) : result; + } + + /** + * Gets the data for `map`. + * + * @private + * @param {Object} map The map to query. + * @param {string} key The reference key. + * @returns {*} Returns the map data. + */ + function getMapData(map, key) { + var data = map.__data__; + return isKeyable(key) + ? data[typeof key == 'string' ? 'string' : 'hash'] + : data.map; + } + + /** + * Gets the property names, values, and compare flags of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the match data of `object`. + */ + function getMatchData(object) { + var result = keys(object), + length = result.length; + + while (length--) { + var key = result[length], + value = object[key]; + + result[length] = [key, value, isStrictComparable(value)]; + } + return result; + } + + /** + * Gets the native function at `key` of `object`. + * + * @private + * @param {Object} object The object to query. + * @param {string} key The key of the method to get. + * @returns {*} Returns the function if it's native, else `undefined`. + */ + function getNative(object, key) { + var value = getValue(object, key); + return baseIsNative(value) ? value : undefined; + } + + /** + * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values. + * + * @private + * @param {*} value The value to query. + * @returns {string} Returns the raw `toStringTag`. + */ + function getRawTag(value) { + var isOwn = hasOwnProperty.call(value, symToStringTag), + tag = value[symToStringTag]; + + try { + value[symToStringTag] = undefined; + var unmasked = true; + } catch (e) {} + + var result = nativeObjectToString.call(value); + if (unmasked) { + if (isOwn) { + value[symToStringTag] = tag; + } else { + delete value[symToStringTag]; + } + } + return result; + } + + /** + * Creates an array of the own enumerable symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of symbols. + */ + var getSymbols = !nativeGetSymbols ? stubArray : function(object) { + if (object == null) { + return []; + } + object = Object(object); + return arrayFilter(nativeGetSymbols(object), function(symbol) { + return propertyIsEnumerable.call(object, symbol); + }); + }; + + /** + * Creates an array of the own and inherited enumerable symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of symbols. + */ + var getSymbolsIn = !nativeGetSymbols ? stubArray : function(object) { + var result = []; + while (object) { + arrayPush(result, getSymbols(object)); + object = getPrototype(object); + } + return result; + }; + + /** + * Gets the `toStringTag` of `value`. + * + * @private + * @param {*} value The value to query. + * @returns {string} Returns the `toStringTag`. + */ + var getTag = baseGetTag; + + // Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6. + if ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) || + (Map && getTag(new Map) != mapTag) || + (Promise && getTag(Promise.resolve()) != promiseTag) || + (Set && getTag(new Set) != setTag) || + (WeakMap && getTag(new WeakMap) != weakMapTag)) { + getTag = function(value) { + var result = baseGetTag(value), + Ctor = result == objectTag ? value.constructor : undefined, + ctorString = Ctor ? toSource(Ctor) : ''; + + if (ctorString) { + switch (ctorString) { + case dataViewCtorString: return dataViewTag; + case mapCtorString: return mapTag; + case promiseCtorString: return promiseTag; + case setCtorString: return setTag; + case weakMapCtorString: return weakMapTag; + } + } + return result; + }; + } + + /** + * Gets the view, applying any `transforms` to the `start` and `end` positions. + * + * @private + * @param {number} start The start of the view. + * @param {number} end The end of the view. + * @param {Array} transforms The transformations to apply to the view. + * @returns {Object} Returns an object containing the `start` and `end` + * positions of the view. + */ + function getView(start, end, transforms) { + var index = -1, + length = transforms.length; + + while (++index < length) { + var data = transforms[index], + size = data.size; + + switch (data.type) { + case 'drop': start += size; break; + case 'dropRight': end -= size; break; + case 'take': end = nativeMin(end, start + size); break; + case 'takeRight': start = nativeMax(start, end - size); break; + } + } + return { 'start': start, 'end': end }; + } + + /** + * Extracts wrapper details from the `source` body comment. + * + * @private + * @param {string} source The source to inspect. + * @returns {Array} Returns the wrapper details. + */ + function getWrapDetails(source) { + var match = source.match(reWrapDetails); + return match ? match[1].split(reSplitDetails) : []; + } + + /** + * Checks if `path` exists on `object`. + * + * @private + * @param {Object} object The object to query. + * @param {Array|string} path The path to check. + * @param {Function} hasFunc The function to check properties. + * @returns {boolean} Returns `true` if `path` exists, else `false`. + */ + function hasPath(object, path, hasFunc) { + path = castPath(path, object); + + var index = -1, + length = path.length, + result = false; + + while (++index < length) { + var key = toKey(path[index]); + if (!(result = object != null && hasFunc(object, key))) { + break; + } + object = object[key]; + } + if (result || ++index != length) { + return result; + } + length = object == null ? 0 : object.length; + return !!length && isLength(length) && isIndex(key, length) && + (isArray(object) || isArguments(object)); + } + + /** + * Initializes an array clone. + * + * @private + * @param {Array} array The array to clone. + * @returns {Array} Returns the initialized clone. + */ + function initCloneArray(array) { + var length = array.length, + result = new array.constructor(length); + + // Add properties assigned by `RegExp#exec`. + if (length && typeof array[0] == 'string' && hasOwnProperty.call(array, 'index')) { + result.index = array.index; + result.input = array.input; + } + return result; + } + + /** + * Initializes an object clone. + * + * @private + * @param {Object} object The object to clone. + * @returns {Object} Returns the initialized clone. + */ + function initCloneObject(object) { + return (typeof object.constructor == 'function' && !isPrototype(object)) + ? baseCreate(getPrototype(object)) + : {}; + } + + /** + * Initializes an object clone based on its `toStringTag`. + * + * **Note:** This function only supports cloning values with tags of + * `Boolean`, `Date`, `Error`, `Map`, `Number`, `RegExp`, `Set`, or `String`. + * + * @private + * @param {Object} object The object to clone. + * @param {string} tag The `toStringTag` of the object to clone. + * @param {boolean} [isDeep] Specify a deep clone. + * @returns {Object} Returns the initialized clone. + */ + function initCloneByTag(object, tag, isDeep) { + var Ctor = object.constructor; + switch (tag) { + case arrayBufferTag: + return cloneArrayBuffer(object); + + case boolTag: + case dateTag: + return new Ctor(+object); + + case dataViewTag: + return cloneDataView(object, isDeep); + + case float32Tag: case float64Tag: + case int8Tag: case int16Tag: case int32Tag: + case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag: + return cloneTypedArray(object, isDeep); + + case mapTag: + return new Ctor; + + case numberTag: + case stringTag: + return new Ctor(object); + + case regexpTag: + return cloneRegExp(object); + + case setTag: + return new Ctor; + + case symbolTag: + return cloneSymbol(object); + } + } + + /** + * Inserts wrapper `details` in a comment at the top of the `source` body. + * + * @private + * @param {string} source The source to modify. + * @returns {Array} details The details to insert. + * @returns {string} Returns the modified source. + */ + function insertWrapDetails(source, details) { + var length = details.length; + if (!length) { + return source; + } + var lastIndex = length - 1; + details[lastIndex] = (length > 1 ? '& ' : '') + details[lastIndex]; + details = details.join(length > 2 ? ', ' : ' '); + return source.replace(reWrapComment, '{\n/* [wrapped with ' + details + '] */\n'); + } + + /** + * Checks if `value` is a flattenable `arguments` object or array. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is flattenable, else `false`. + */ + function isFlattenable(value) { + return isArray(value) || isArguments(value) || + !!(spreadableSymbol && value && value[spreadableSymbol]); + } + + /** + * Checks if `value` is a valid array-like index. + * + * @private + * @param {*} value The value to check. + * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index. + * @returns {boolean} Returns `true` if `value` is a valid index, else `false`. + */ + function isIndex(value, length) { + var type = typeof value; + length = length == null ? MAX_SAFE_INTEGER : length; + + return !!length && + (type == 'number' || + (type != 'symbol' && reIsUint.test(value))) && + (value > -1 && value % 1 == 0 && value < length); + } + + /** + * Checks if the given arguments are from an iteratee call. + * + * @private + * @param {*} value The potential iteratee value argument. + * @param {*} index The potential iteratee index or key argument. + * @param {*} object The potential iteratee object argument. + * @returns {boolean} Returns `true` if the arguments are from an iteratee call, + * else `false`. + */ + function isIterateeCall(value, index, object) { + if (!isObject(object)) { + return false; + } + var type = typeof index; + if (type == 'number' + ? (isArrayLike(object) && isIndex(index, object.length)) + : (type == 'string' && index in object) + ) { + return eq(object[index], value); + } + return false; + } + + /** + * Checks if `value` is a property name and not a property path. + * + * @private + * @param {*} value The value to check. + * @param {Object} [object] The object to query keys on. + * @returns {boolean} Returns `true` if `value` is a property name, else `false`. + */ + function isKey(value, object) { + if (isArray(value)) { + return false; + } + var type = typeof value; + if (type == 'number' || type == 'symbol' || type == 'boolean' || + value == null || isSymbol(value)) { + return true; + } + return reIsPlainProp.test(value) || !reIsDeepProp.test(value) || + (object != null && value in Object(object)); + } + + /** + * Checks if `value` is suitable for use as unique object key. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is suitable, else `false`. + */ + function isKeyable(value) { + var type = typeof value; + return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean') + ? (value !== '__proto__') + : (value === null); + } + + /** + * Checks if `func` has a lazy counterpart. + * + * @private + * @param {Function} func The function to check. + * @returns {boolean} Returns `true` if `func` has a lazy counterpart, + * else `false`. + */ + function isLaziable(func) { + var funcName = getFuncName(func), + other = lodash[funcName]; + + if (typeof other != 'function' || !(funcName in LazyWrapper.prototype)) { + return false; + } + if (func === other) { + return true; + } + var data = getData(other); + return !!data && func === data[0]; + } + + /** + * Checks if `func` has its source masked. + * + * @private + * @param {Function} func The function to check. + * @returns {boolean} Returns `true` if `func` is masked, else `false`. + */ + function isMasked(func) { + return !!maskSrcKey && (maskSrcKey in func); + } + + /** + * Checks if `func` is capable of being masked. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `func` is maskable, else `false`. + */ + var isMaskable = coreJsData ? isFunction : stubFalse; + + /** + * Checks if `value` is likely a prototype object. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a prototype, else `false`. + */ + function isPrototype(value) { + var Ctor = value && value.constructor, + proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto; + + return value === proto; + } + + /** + * Checks if `value` is suitable for strict equality comparisons, i.e. `===`. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` if suitable for strict + * equality comparisons, else `false`. + */ + function isStrictComparable(value) { + return value === value && !isObject(value); + } + + /** + * A specialized version of `matchesProperty` for source values suitable + * for strict equality comparisons, i.e. `===`. + * + * @private + * @param {string} key The key of the property to get. + * @param {*} srcValue The value to match. + * @returns {Function} Returns the new spec function. + */ + function matchesStrictComparable(key, srcValue) { + return function(object) { + if (object == null) { + return false; + } + return object[key] === srcValue && + (srcValue !== undefined || (key in Object(object))); + }; + } + + /** + * A specialized version of `_.memoize` which clears the memoized function's + * cache when it exceeds `MAX_MEMOIZE_SIZE`. + * + * @private + * @param {Function} func The function to have its output memoized. + * @returns {Function} Returns the new memoized function. + */ + function memoizeCapped(func) { + var result = memoize(func, function(key) { + if (cache.size === MAX_MEMOIZE_SIZE) { + cache.clear(); + } + return key; + }); + + var cache = result.cache; + return result; + } + + /** + * Merges the function metadata of `source` into `data`. + * + * Merging metadata reduces the number of wrappers used to invoke a function. + * This is possible because methods like `_.bind`, `_.curry`, and `_.partial` + * may be applied regardless of execution order. Methods like `_.ary` and + * `_.rearg` modify function arguments, making the order in which they are + * executed important, preventing the merging of metadata. However, we make + * an exception for a safe combined case where curried functions have `_.ary` + * and or `_.rearg` applied. + * + * @private + * @param {Array} data The destination metadata. + * @param {Array} source The source metadata. + * @returns {Array} Returns `data`. + */ + function mergeData(data, source) { + var bitmask = data[1], + srcBitmask = source[1], + newBitmask = bitmask | srcBitmask, + isCommon = newBitmask < (WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG | WRAP_ARY_FLAG); + + var isCombo = + ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_CURRY_FLAG)) || + ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_REARG_FLAG) && (data[7].length <= source[8])) || + ((srcBitmask == (WRAP_ARY_FLAG | WRAP_REARG_FLAG)) && (source[7].length <= source[8]) && (bitmask == WRAP_CURRY_FLAG)); + + // Exit early if metadata can't be merged. + if (!(isCommon || isCombo)) { + return data; + } + // Use source `thisArg` if available. + if (srcBitmask & WRAP_BIND_FLAG) { + data[2] = source[2]; + // Set when currying a bound function. + newBitmask |= bitmask & WRAP_BIND_FLAG ? 0 : WRAP_CURRY_BOUND_FLAG; + } + // Compose partial arguments. + var value = source[3]; + if (value) { + var partials = data[3]; + data[3] = partials ? composeArgs(partials, value, source[4]) : value; + data[4] = partials ? replaceHolders(data[3], PLACEHOLDER) : source[4]; + } + // Compose partial right arguments. + value = source[5]; + if (value) { + partials = data[5]; + data[5] = partials ? composeArgsRight(partials, value, source[6]) : value; + data[6] = partials ? replaceHolders(data[5], PLACEHOLDER) : source[6]; + } + // Use source `argPos` if available. + value = source[7]; + if (value) { + data[7] = value; + } + // Use source `ary` if it's smaller. + if (srcBitmask & WRAP_ARY_FLAG) { + data[8] = data[8] == null ? source[8] : nativeMin(data[8], source[8]); + } + // Use source `arity` if one is not provided. + if (data[9] == null) { + data[9] = source[9]; + } + // Use source `func` and merge bitmasks. + data[0] = source[0]; + data[1] = newBitmask; + + return data; + } + + /** + * This function is like + * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys) + * except that it includes inherited enumerable properties. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names. + */ + function nativeKeysIn(object) { + var result = []; + if (object != null) { + for (var key in Object(object)) { + result.push(key); + } + } + return result; + } + + /** + * Converts `value` to a string using `Object.prototype.toString`. + * + * @private + * @param {*} value The value to convert. + * @returns {string} Returns the converted string. + */ + function objectToString(value) { + return nativeObjectToString.call(value); + } + + /** + * A specialized version of `baseRest` which transforms the rest array. + * + * @private + * @param {Function} func The function to apply a rest parameter to. + * @param {number} [start=func.length-1] The start position of the rest parameter. + * @param {Function} transform The rest array transform. + * @returns {Function} Returns the new function. + */ + function overRest(func, start, transform) { + start = nativeMax(start === undefined ? (func.length - 1) : start, 0); + return function() { + var args = arguments, + index = -1, + length = nativeMax(args.length - start, 0), + array = Array(length); + + while (++index < length) { + array[index] = args[start + index]; + } + index = -1; + var otherArgs = Array(start + 1); + while (++index < start) { + otherArgs[index] = args[index]; + } + otherArgs[start] = transform(array); + return apply(func, this, otherArgs); + }; + } + + /** + * Gets the parent value at `path` of `object`. + * + * @private + * @param {Object} object The object to query. + * @param {Array} path The path to get the parent value of. + * @returns {*} Returns the parent value. + */ + function parent(object, path) { + return path.length < 2 ? object : baseGet(object, baseSlice(path, 0, -1)); + } + + /** + * Reorder `array` according to the specified indexes where the element at + * the first index is assigned as the first element, the element at + * the second index is assigned as the second element, and so on. + * + * @private + * @param {Array} array The array to reorder. + * @param {Array} indexes The arranged array indexes. + * @returns {Array} Returns `array`. + */ + function reorder(array, indexes) { + var arrLength = array.length, + length = nativeMin(indexes.length, arrLength), + oldArray = copyArray(array); + + while (length--) { + var index = indexes[length]; + array[length] = isIndex(index, arrLength) ? oldArray[index] : undefined; + } + return array; + } + + /** + * Gets the value at `key`, unless `key` is "__proto__" or "constructor". + * + * @private + * @param {Object} object The object to query. + * @param {string} key The key of the property to get. + * @returns {*} Returns the property value. + */ + function safeGet(object, key) { + if (key === 'constructor' && typeof object[key] === 'function') { + return; + } + + if (key == '__proto__') { + return; + } + + return object[key]; + } + + /** + * Sets metadata for `func`. + * + * **Note:** If this function becomes hot, i.e. is invoked a lot in a short + * period of time, it will trip its breaker and transition to an identity + * function to avoid garbage collection pauses in V8. See + * [V8 issue 2070](https://bugs.chromium.org/p/v8/issues/detail?id=2070) + * for more details. + * + * @private + * @param {Function} func The function to associate metadata with. + * @param {*} data The metadata. + * @returns {Function} Returns `func`. + */ + var setData = shortOut(baseSetData); + + /** + * A simple wrapper around the global [`setTimeout`](https://mdn.io/setTimeout). + * + * @private + * @param {Function} func The function to delay. + * @param {number} wait The number of milliseconds to delay invocation. + * @returns {number|Object} Returns the timer id or timeout object. + */ + var setTimeout = ctxSetTimeout || function(func, wait) { + return root.setTimeout(func, wait); + }; + + /** + * Sets the `toString` method of `func` to return `string`. + * + * @private + * @param {Function} func The function to modify. + * @param {Function} string The `toString` result. + * @returns {Function} Returns `func`. + */ + var setToString = shortOut(baseSetToString); + + /** + * Sets the `toString` method of `wrapper` to mimic the source of `reference` + * with wrapper details in a comment at the top of the source body. + * + * @private + * @param {Function} wrapper The function to modify. + * @param {Function} reference The reference function. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @returns {Function} Returns `wrapper`. + */ + function setWrapToString(wrapper, reference, bitmask) { + var source = (reference + ''); + return setToString(wrapper, insertWrapDetails(source, updateWrapDetails(getWrapDetails(source), bitmask))); + } + + /** + * Creates a function that'll short out and invoke `identity` instead + * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN` + * milliseconds. + * + * @private + * @param {Function} func The function to restrict. + * @returns {Function} Returns the new shortable function. + */ + function shortOut(func) { + var count = 0, + lastCalled = 0; + + return function() { + var stamp = nativeNow(), + remaining = HOT_SPAN - (stamp - lastCalled); + + lastCalled = stamp; + if (remaining > 0) { + if (++count >= HOT_COUNT) { + return arguments[0]; + } + } else { + count = 0; + } + return func.apply(undefined, arguments); + }; + } + + /** + * A specialized version of `_.shuffle` which mutates and sets the size of `array`. + * + * @private + * @param {Array} array The array to shuffle. + * @param {number} [size=array.length] The size of `array`. + * @returns {Array} Returns `array`. + */ + function shuffleSelf(array, size) { + var index = -1, + length = array.length, + lastIndex = length - 1; + + size = size === undefined ? length : size; + while (++index < size) { + var rand = baseRandom(index, lastIndex), + value = array[rand]; + + array[rand] = array[index]; + array[index] = value; + } + array.length = size; + return array; + } + + /** + * Converts `string` to a property path array. + * + * @private + * @param {string} string The string to convert. + * @returns {Array} Returns the property path array. + */ + var stringToPath = memoizeCapped(function(string) { + var result = []; + if (string.charCodeAt(0) === 46 /* . */) { + result.push(''); + } + string.replace(rePropName, function(match, number, quote, subString) { + result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match)); + }); + return result; + }); + + /** + * Converts `value` to a string key if it's not a string or symbol. + * + * @private + * @param {*} value The value to inspect. + * @returns {string|symbol} Returns the key. + */ + function toKey(value) { + if (typeof value == 'string' || isSymbol(value)) { + return value; + } + var result = (value + ''); + return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result; + } + + /** + * Converts `func` to its source code. + * + * @private + * @param {Function} func The function to convert. + * @returns {string} Returns the source code. + */ + function toSource(func) { + if (func != null) { + try { + return funcToString.call(func); + } catch (e) {} + try { + return (func + ''); + } catch (e) {} + } + return ''; + } + + /** + * Updates wrapper `details` based on `bitmask` flags. + * + * @private + * @returns {Array} details The details to modify. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @returns {Array} Returns `details`. + */ + function updateWrapDetails(details, bitmask) { + arrayEach(wrapFlags, function(pair) { + var value = '_.' + pair[0]; + if ((bitmask & pair[1]) && !arrayIncludes(details, value)) { + details.push(value); + } + }); + return details.sort(); + } + + /** + * Creates a clone of `wrapper`. + * + * @private + * @param {Object} wrapper The wrapper to clone. + * @returns {Object} Returns the cloned wrapper. + */ + function wrapperClone(wrapper) { + if (wrapper instanceof LazyWrapper) { + return wrapper.clone(); + } + var result = new LodashWrapper(wrapper.__wrapped__, wrapper.__chain__); + result.__actions__ = copyArray(wrapper.__actions__); + result.__index__ = wrapper.__index__; + result.__values__ = wrapper.__values__; + return result; + } + + /*------------------------------------------------------------------------*/ + + /** + * Creates an array of elements split into groups the length of `size`. + * If `array` can't be split evenly, the final chunk will be the remaining + * elements. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to process. + * @param {number} [size=1] The length of each chunk + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Array} Returns the new array of chunks. + * @example + * + * _.chunk(['a', 'b', 'c', 'd'], 2); + * // => [['a', 'b'], ['c', 'd']] + * + * _.chunk(['a', 'b', 'c', 'd'], 3); + * // => [['a', 'b', 'c'], ['d']] + */ + function chunk(array, size, guard) { + if ((guard ? isIterateeCall(array, size, guard) : size === undefined)) { + size = 1; + } else { + size = nativeMax(toInteger(size), 0); + } + var length = array == null ? 0 : array.length; + if (!length || size < 1) { + return []; + } + var index = 0, + resIndex = 0, + result = Array(nativeCeil(length / size)); + + while (index < length) { + result[resIndex++] = baseSlice(array, index, (index += size)); + } + return result; + } + + /** + * Creates an array with all falsey values removed. The values `false`, `null`, + * `0`, `""`, `undefined`, and `NaN` are falsey. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to compact. + * @returns {Array} Returns the new array of filtered values. + * @example + * + * _.compact([0, 1, false, 2, '', 3]); + * // => [1, 2, 3] + */ + function compact(array) { + var index = -1, + length = array == null ? 0 : array.length, + resIndex = 0, + result = []; + + while (++index < length) { + var value = array[index]; + if (value) { + result[resIndex++] = value; + } + } + return result; + } + + /** + * Creates a new array concatenating `array` with any additional arrays + * and/or values. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to concatenate. + * @param {...*} [values] The values to concatenate. + * @returns {Array} Returns the new concatenated array. + * @example + * + * var array = [1]; + * var other = _.concat(array, 2, [3], [[4]]); + * + * console.log(other); + * // => [1, 2, 3, [4]] + * + * console.log(array); + * // => [1] + */ + function concat() { + var length = arguments.length; + if (!length) { + return []; + } + var args = Array(length - 1), + array = arguments[0], + index = length; + + while (index--) { + args[index - 1] = arguments[index]; + } + return arrayPush(isArray(array) ? copyArray(array) : [array], baseFlatten(args, 1)); + } + + /** + * Creates an array of `array` values not included in the other given arrays + * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. The order and references of result values are + * determined by the first array. + * + * **Note:** Unlike `_.pullAll`, this method returns a new array. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {...Array} [values] The values to exclude. + * @returns {Array} Returns the new array of filtered values. + * @see _.without, _.xor + * @example + * + * _.difference([2, 1], [2, 3]); + * // => [1] + */ + var difference = baseRest(function(array, values) { + return isArrayLikeObject(array) + ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true)) + : []; + }); + + /** + * This method is like `_.difference` except that it accepts `iteratee` which + * is invoked for each element of `array` and `values` to generate the criterion + * by which they're compared. The order and references of result values are + * determined by the first array. The iteratee is invoked with one argument: + * (value). + * + * **Note:** Unlike `_.pullAllBy`, this method returns a new array. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {...Array} [values] The values to exclude. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {Array} Returns the new array of filtered values. + * @example + * + * _.differenceBy([2.1, 1.2], [2.3, 3.4], Math.floor); + * // => [1.2] + * + * // The `_.property` iteratee shorthand. + * _.differenceBy([{ 'x': 2 }, { 'x': 1 }], [{ 'x': 1 }], 'x'); + * // => [{ 'x': 2 }] + */ + var differenceBy = baseRest(function(array, values) { + var iteratee = last(values); + if (isArrayLikeObject(iteratee)) { + iteratee = undefined; + } + return isArrayLikeObject(array) + ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true), getIteratee(iteratee, 2)) + : []; + }); + + /** + * This method is like `_.difference` except that it accepts `comparator` + * which is invoked to compare elements of `array` to `values`. The order and + * references of result values are determined by the first array. The comparator + * is invoked with two arguments: (arrVal, othVal). + * + * **Note:** Unlike `_.pullAllWith`, this method returns a new array. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {...Array} [values] The values to exclude. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new array of filtered values. + * @example + * + * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]; + * + * _.differenceWith(objects, [{ 'x': 1, 'y': 2 }], _.isEqual); + * // => [{ 'x': 2, 'y': 1 }] + */ + var differenceWith = baseRest(function(array, values) { + var comparator = last(values); + if (isArrayLikeObject(comparator)) { + comparator = undefined; + } + return isArrayLikeObject(array) + ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true), undefined, comparator) + : []; + }); + + /** + * Creates a slice of `array` with `n` elements dropped from the beginning. + * + * @static + * @memberOf _ + * @since 0.5.0 + * @category Array + * @param {Array} array The array to query. + * @param {number} [n=1] The number of elements to drop. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Array} Returns the slice of `array`. + * @example + * + * _.drop([1, 2, 3]); + * // => [2, 3] + * + * _.drop([1, 2, 3], 2); + * // => [3] + * + * _.drop([1, 2, 3], 5); + * // => [] + * + * _.drop([1, 2, 3], 0); + * // => [1, 2, 3] + */ + function drop(array, n, guard) { + var length = array == null ? 0 : array.length; + if (!length) { + return []; + } + n = (guard || n === undefined) ? 1 : toInteger(n); + return baseSlice(array, n < 0 ? 0 : n, length); + } + + /** + * Creates a slice of `array` with `n` elements dropped from the end. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to query. + * @param {number} [n=1] The number of elements to drop. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Array} Returns the slice of `array`. + * @example + * + * _.dropRight([1, 2, 3]); + * // => [1, 2] + * + * _.dropRight([1, 2, 3], 2); + * // => [1] + * + * _.dropRight([1, 2, 3], 5); + * // => [] + * + * _.dropRight([1, 2, 3], 0); + * // => [1, 2, 3] + */ + function dropRight(array, n, guard) { + var length = array == null ? 0 : array.length; + if (!length) { + return []; + } + n = (guard || n === undefined) ? 1 : toInteger(n); + n = length - n; + return baseSlice(array, 0, n < 0 ? 0 : n); + } + + /** + * Creates a slice of `array` excluding elements dropped from the end. + * Elements are dropped until `predicate` returns falsey. The predicate is + * invoked with three arguments: (value, index, array). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to query. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the slice of `array`. + * @example + * + * var users = [ + * { 'user': 'barney', 'active': true }, + * { 'user': 'fred', 'active': false }, + * { 'user': 'pebbles', 'active': false } + * ]; + * + * _.dropRightWhile(users, function(o) { return !o.active; }); + * // => objects for ['barney'] + * + * // The `_.matches` iteratee shorthand. + * _.dropRightWhile(users, { 'user': 'pebbles', 'active': false }); + * // => objects for ['barney', 'fred'] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.dropRightWhile(users, ['active', false]); + * // => objects for ['barney'] + * + * // The `_.property` iteratee shorthand. + * _.dropRightWhile(users, 'active'); + * // => objects for ['barney', 'fred', 'pebbles'] + */ + function dropRightWhile(array, predicate) { + return (array && array.length) + ? baseWhile(array, getIteratee(predicate, 3), true, true) + : []; + } + + /** + * Creates a slice of `array` excluding elements dropped from the beginning. + * Elements are dropped until `predicate` returns falsey. The predicate is + * invoked with three arguments: (value, index, array). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to query. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the slice of `array`. + * @example + * + * var users = [ + * { 'user': 'barney', 'active': false }, + * { 'user': 'fred', 'active': false }, + * { 'user': 'pebbles', 'active': true } + * ]; + * + * _.dropWhile(users, function(o) { return !o.active; }); + * // => objects for ['pebbles'] + * + * // The `_.matches` iteratee shorthand. + * _.dropWhile(users, { 'user': 'barney', 'active': false }); + * // => objects for ['fred', 'pebbles'] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.dropWhile(users, ['active', false]); + * // => objects for ['pebbles'] + * + * // The `_.property` iteratee shorthand. + * _.dropWhile(users, 'active'); + * // => objects for ['barney', 'fred', 'pebbles'] + */ + function dropWhile(array, predicate) { + return (array && array.length) + ? baseWhile(array, getIteratee(predicate, 3), true) + : []; + } + + /** + * Fills elements of `array` with `value` from `start` up to, but not + * including, `end`. + * + * **Note:** This method mutates `array`. + * + * @static + * @memberOf _ + * @since 3.2.0 + * @category Array + * @param {Array} array The array to fill. + * @param {*} value The value to fill `array` with. + * @param {number} [start=0] The start position. + * @param {number} [end=array.length] The end position. + * @returns {Array} Returns `array`. + * @example + * + * var array = [1, 2, 3]; + * + * _.fill(array, 'a'); + * console.log(array); + * // => ['a', 'a', 'a'] + * + * _.fill(Array(3), 2); + * // => [2, 2, 2] + * + * _.fill([4, 6, 8, 10], '*', 1, 3); + * // => [4, '*', '*', 10] + */ + function fill(array, value, start, end) { + var length = array == null ? 0 : array.length; + if (!length) { + return []; + } + if (start && typeof start != 'number' && isIterateeCall(array, value, start)) { + start = 0; + end = length; + } + return baseFill(array, value, start, end); + } + + /** + * This method is like `_.find` except that it returns the index of the first + * element `predicate` returns truthy for instead of the element itself. + * + * @static + * @memberOf _ + * @since 1.1.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param {number} [fromIndex=0] The index to search from. + * @returns {number} Returns the index of the found element, else `-1`. + * @example + * + * var users = [ + * { 'user': 'barney', 'active': false }, + * { 'user': 'fred', 'active': false }, + * { 'user': 'pebbles', 'active': true } + * ]; + * + * _.findIndex(users, function(o) { return o.user == 'barney'; }); + * // => 0 + * + * // The `_.matches` iteratee shorthand. + * _.findIndex(users, { 'user': 'fred', 'active': false }); + * // => 1 + * + * // The `_.matchesProperty` iteratee shorthand. + * _.findIndex(users, ['active', false]); + * // => 0 + * + * // The `_.property` iteratee shorthand. + * _.findIndex(users, 'active'); + * // => 2 + */ + function findIndex(array, predicate, fromIndex) { + var length = array == null ? 0 : array.length; + if (!length) { + return -1; + } + var index = fromIndex == null ? 0 : toInteger(fromIndex); + if (index < 0) { + index = nativeMax(length + index, 0); + } + return baseFindIndex(array, getIteratee(predicate, 3), index); + } + + /** + * This method is like `_.findIndex` except that it iterates over elements + * of `collection` from right to left. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param {number} [fromIndex=array.length-1] The index to search from. + * @returns {number} Returns the index of the found element, else `-1`. + * @example + * + * var users = [ + * { 'user': 'barney', 'active': true }, + * { 'user': 'fred', 'active': false }, + * { 'user': 'pebbles', 'active': false } + * ]; + * + * _.findLastIndex(users, function(o) { return o.user == 'pebbles'; }); + * // => 2 + * + * // The `_.matches` iteratee shorthand. + * _.findLastIndex(users, { 'user': 'barney', 'active': true }); + * // => 0 + * + * // The `_.matchesProperty` iteratee shorthand. + * _.findLastIndex(users, ['active', false]); + * // => 2 + * + * // The `_.property` iteratee shorthand. + * _.findLastIndex(users, 'active'); + * // => 0 + */ + function findLastIndex(array, predicate, fromIndex) { + var length = array == null ? 0 : array.length; + if (!length) { + return -1; + } + var index = length - 1; + if (fromIndex !== undefined) { + index = toInteger(fromIndex); + index = fromIndex < 0 + ? nativeMax(length + index, 0) + : nativeMin(index, length - 1); + } + return baseFindIndex(array, getIteratee(predicate, 3), index, true); + } + + /** + * Flattens `array` a single level deep. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to flatten. + * @returns {Array} Returns the new flattened array. + * @example + * + * _.flatten([1, [2, [3, [4]], 5]]); + * // => [1, 2, [3, [4]], 5] + */ + function flatten(array) { + var length = array == null ? 0 : array.length; + return length ? baseFlatten(array, 1) : []; + } + + /** + * Recursively flattens `array`. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to flatten. + * @returns {Array} Returns the new flattened array. + * @example + * + * _.flattenDeep([1, [2, [3, [4]], 5]]); + * // => [1, 2, 3, 4, 5] + */ + function flattenDeep(array) { + var length = array == null ? 0 : array.length; + return length ? baseFlatten(array, INFINITY) : []; + } + + /** + * Recursively flatten `array` up to `depth` times. + * + * @static + * @memberOf _ + * @since 4.4.0 + * @category Array + * @param {Array} array The array to flatten. + * @param {number} [depth=1] The maximum recursion depth. + * @returns {Array} Returns the new flattened array. + * @example + * + * var array = [1, [2, [3, [4]], 5]]; + * + * _.flattenDepth(array, 1); + * // => [1, 2, [3, [4]], 5] + * + * _.flattenDepth(array, 2); + * // => [1, 2, 3, [4], 5] + */ + function flattenDepth(array, depth) { + var length = array == null ? 0 : array.length; + if (!length) { + return []; + } + depth = depth === undefined ? 1 : toInteger(depth); + return baseFlatten(array, depth); + } + + /** + * The inverse of `_.toPairs`; this method returns an object composed + * from key-value `pairs`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} pairs The key-value pairs. + * @returns {Object} Returns the new object. + * @example + * + * _.fromPairs([['a', 1], ['b', 2]]); + * // => { 'a': 1, 'b': 2 } + */ + function fromPairs(pairs) { + var index = -1, + length = pairs == null ? 0 : pairs.length, + result = {}; + + while (++index < length) { + var pair = pairs[index]; + result[pair[0]] = pair[1]; + } + return result; + } + + /** + * Gets the first element of `array`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @alias first + * @category Array + * @param {Array} array The array to query. + * @returns {*} Returns the first element of `array`. + * @example + * + * _.head([1, 2, 3]); + * // => 1 + * + * _.head([]); + * // => undefined + */ + function head(array) { + return (array && array.length) ? array[0] : undefined; + } + + /** + * Gets the index at which the first occurrence of `value` is found in `array` + * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. If `fromIndex` is negative, it's used as the + * offset from the end of `array`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} [fromIndex=0] The index to search from. + * @returns {number} Returns the index of the matched value, else `-1`. + * @example + * + * _.indexOf([1, 2, 1, 2], 2); + * // => 1 + * + * // Search from the `fromIndex`. + * _.indexOf([1, 2, 1, 2], 2, 2); + * // => 3 + */ + function indexOf(array, value, fromIndex) { + var length = array == null ? 0 : array.length; + if (!length) { + return -1; + } + var index = fromIndex == null ? 0 : toInteger(fromIndex); + if (index < 0) { + index = nativeMax(length + index, 0); + } + return baseIndexOf(array, value, index); + } + + /** + * Gets all but the last element of `array`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to query. + * @returns {Array} Returns the slice of `array`. + * @example + * + * _.initial([1, 2, 3]); + * // => [1, 2] + */ + function initial(array) { + var length = array == null ? 0 : array.length; + return length ? baseSlice(array, 0, -1) : []; + } + + /** + * Creates an array of unique values that are included in all given arrays + * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. The order and references of result values are + * determined by the first array. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @returns {Array} Returns the new array of intersecting values. + * @example + * + * _.intersection([2, 1], [2, 3]); + * // => [2] + */ + var intersection = baseRest(function(arrays) { + var mapped = arrayMap(arrays, castArrayLikeObject); + return (mapped.length && mapped[0] === arrays[0]) + ? baseIntersection(mapped) + : []; + }); + + /** + * This method is like `_.intersection` except that it accepts `iteratee` + * which is invoked for each element of each `arrays` to generate the criterion + * by which they're compared. The order and references of result values are + * determined by the first array. The iteratee is invoked with one argument: + * (value). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {Array} Returns the new array of intersecting values. + * @example + * + * _.intersectionBy([2.1, 1.2], [2.3, 3.4], Math.floor); + * // => [2.1] + * + * // The `_.property` iteratee shorthand. + * _.intersectionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x'); + * // => [{ 'x': 1 }] + */ + var intersectionBy = baseRest(function(arrays) { + var iteratee = last(arrays), + mapped = arrayMap(arrays, castArrayLikeObject); + + if (iteratee === last(mapped)) { + iteratee = undefined; + } else { + mapped.pop(); + } + return (mapped.length && mapped[0] === arrays[0]) + ? baseIntersection(mapped, getIteratee(iteratee, 2)) + : []; + }); + + /** + * This method is like `_.intersection` except that it accepts `comparator` + * which is invoked to compare elements of `arrays`. The order and references + * of result values are determined by the first array. The comparator is + * invoked with two arguments: (arrVal, othVal). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new array of intersecting values. + * @example + * + * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]; + * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }]; + * + * _.intersectionWith(objects, others, _.isEqual); + * // => [{ 'x': 1, 'y': 2 }] + */ + var intersectionWith = baseRest(function(arrays) { + var comparator = last(arrays), + mapped = arrayMap(arrays, castArrayLikeObject); + + comparator = typeof comparator == 'function' ? comparator : undefined; + if (comparator) { + mapped.pop(); + } + return (mapped.length && mapped[0] === arrays[0]) + ? baseIntersection(mapped, undefined, comparator) + : []; + }); + + /** + * Converts all elements in `array` into a string separated by `separator`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to convert. + * @param {string} [separator=','] The element separator. + * @returns {string} Returns the joined string. + * @example + * + * _.join(['a', 'b', 'c'], '~'); + * // => 'a~b~c' + */ + function join(array, separator) { + return array == null ? '' : nativeJoin.call(array, separator); + } + + /** + * Gets the last element of `array`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to query. + * @returns {*} Returns the last element of `array`. + * @example + * + * _.last([1, 2, 3]); + * // => 3 + */ + function last(array) { + var length = array == null ? 0 : array.length; + return length ? array[length - 1] : undefined; + } + + /** + * This method is like `_.indexOf` except that it iterates over elements of + * `array` from right to left. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} [fromIndex=array.length-1] The index to search from. + * @returns {number} Returns the index of the matched value, else `-1`. + * @example + * + * _.lastIndexOf([1, 2, 1, 2], 2); + * // => 3 + * + * // Search from the `fromIndex`. + * _.lastIndexOf([1, 2, 1, 2], 2, 2); + * // => 1 + */ + function lastIndexOf(array, value, fromIndex) { + var length = array == null ? 0 : array.length; + if (!length) { + return -1; + } + var index = length; + if (fromIndex !== undefined) { + index = toInteger(fromIndex); + index = index < 0 ? nativeMax(length + index, 0) : nativeMin(index, length - 1); + } + return value === value + ? strictLastIndexOf(array, value, index) + : baseFindIndex(array, baseIsNaN, index, true); + } + + /** + * Gets the element at index `n` of `array`. If `n` is negative, the nth + * element from the end is returned. + * + * @static + * @memberOf _ + * @since 4.11.0 + * @category Array + * @param {Array} array The array to query. + * @param {number} [n=0] The index of the element to return. + * @returns {*} Returns the nth element of `array`. + * @example + * + * var array = ['a', 'b', 'c', 'd']; + * + * _.nth(array, 1); + * // => 'b' + * + * _.nth(array, -2); + * // => 'c'; + */ + function nth(array, n) { + return (array && array.length) ? baseNth(array, toInteger(n)) : undefined; + } + + /** + * Removes all given values from `array` using + * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. + * + * **Note:** Unlike `_.without`, this method mutates `array`. Use `_.remove` + * to remove elements from an array by predicate. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Array + * @param {Array} array The array to modify. + * @param {...*} [values] The values to remove. + * @returns {Array} Returns `array`. + * @example + * + * var array = ['a', 'b', 'c', 'a', 'b', 'c']; + * + * _.pull(array, 'a', 'c'); + * console.log(array); + * // => ['b', 'b'] + */ + var pull = baseRest(pullAll); + + /** + * This method is like `_.pull` except that it accepts an array of values to remove. + * + * **Note:** Unlike `_.difference`, this method mutates `array`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to modify. + * @param {Array} values The values to remove. + * @returns {Array} Returns `array`. + * @example + * + * var array = ['a', 'b', 'c', 'a', 'b', 'c']; + * + * _.pullAll(array, ['a', 'c']); + * console.log(array); + * // => ['b', 'b'] + */ + function pullAll(array, values) { + return (array && array.length && values && values.length) + ? basePullAll(array, values) + : array; + } + + /** + * This method is like `_.pullAll` except that it accepts `iteratee` which is + * invoked for each element of `array` and `values` to generate the criterion + * by which they're compared. The iteratee is invoked with one argument: (value). + * + * **Note:** Unlike `_.differenceBy`, this method mutates `array`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to modify. + * @param {Array} values The values to remove. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {Array} Returns `array`. + * @example + * + * var array = [{ 'x': 1 }, { 'x': 2 }, { 'x': 3 }, { 'x': 1 }]; + * + * _.pullAllBy(array, [{ 'x': 1 }, { 'x': 3 }], 'x'); + * console.log(array); + * // => [{ 'x': 2 }] + */ + function pullAllBy(array, values, iteratee) { + return (array && array.length && values && values.length) + ? basePullAll(array, values, getIteratee(iteratee, 2)) + : array; + } + + /** + * This method is like `_.pullAll` except that it accepts `comparator` which + * is invoked to compare elements of `array` to `values`. The comparator is + * invoked with two arguments: (arrVal, othVal). + * + * **Note:** Unlike `_.differenceWith`, this method mutates `array`. + * + * @static + * @memberOf _ + * @since 4.6.0 + * @category Array + * @param {Array} array The array to modify. + * @param {Array} values The values to remove. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns `array`. + * @example + * + * var array = [{ 'x': 1, 'y': 2 }, { 'x': 3, 'y': 4 }, { 'x': 5, 'y': 6 }]; + * + * _.pullAllWith(array, [{ 'x': 3, 'y': 4 }], _.isEqual); + * console.log(array); + * // => [{ 'x': 1, 'y': 2 }, { 'x': 5, 'y': 6 }] + */ + function pullAllWith(array, values, comparator) { + return (array && array.length && values && values.length) + ? basePullAll(array, values, undefined, comparator) + : array; + } + + /** + * Removes elements from `array` corresponding to `indexes` and returns an + * array of removed elements. + * + * **Note:** Unlike `_.at`, this method mutates `array`. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to modify. + * @param {...(number|number[])} [indexes] The indexes of elements to remove. + * @returns {Array} Returns the new array of removed elements. + * @example + * + * var array = ['a', 'b', 'c', 'd']; + * var pulled = _.pullAt(array, [1, 3]); + * + * console.log(array); + * // => ['a', 'c'] + * + * console.log(pulled); + * // => ['b', 'd'] + */ + var pullAt = flatRest(function(array, indexes) { + var length = array == null ? 0 : array.length, + result = baseAt(array, indexes); + + basePullAt(array, arrayMap(indexes, function(index) { + return isIndex(index, length) ? +index : index; + }).sort(compareAscending)); + + return result; + }); + + /** + * Removes all elements from `array` that `predicate` returns truthy for + * and returns an array of the removed elements. The predicate is invoked + * with three arguments: (value, index, array). + * + * **Note:** Unlike `_.filter`, this method mutates `array`. Use `_.pull` + * to pull elements from an array by value. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Array + * @param {Array} array The array to modify. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new array of removed elements. + * @example + * + * var array = [1, 2, 3, 4]; + * var evens = _.remove(array, function(n) { + * return n % 2 == 0; + * }); + * + * console.log(array); + * // => [1, 3] + * + * console.log(evens); + * // => [2, 4] + */ + function remove(array, predicate) { + var result = []; + if (!(array && array.length)) { + return result; + } + var index = -1, + indexes = [], + length = array.length; + + predicate = getIteratee(predicate, 3); + while (++index < length) { + var value = array[index]; + if (predicate(value, index, array)) { + result.push(value); + indexes.push(index); + } + } + basePullAt(array, indexes); + return result; + } + + /** + * Reverses `array` so that the first element becomes the last, the second + * element becomes the second to last, and so on. + * + * **Note:** This method mutates `array` and is based on + * [`Array#reverse`](https://mdn.io/Array/reverse). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to modify. + * @returns {Array} Returns `array`. + * @example + * + * var array = [1, 2, 3]; + * + * _.reverse(array); + * // => [3, 2, 1] + * + * console.log(array); + * // => [3, 2, 1] + */ + function reverse(array) { + return array == null ? array : nativeReverse.call(array); + } + + /** + * Creates a slice of `array` from `start` up to, but not including, `end`. + * + * **Note:** This method is used instead of + * [`Array#slice`](https://mdn.io/Array/slice) to ensure dense arrays are + * returned. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to slice. + * @param {number} [start=0] The start position. + * @param {number} [end=array.length] The end position. + * @returns {Array} Returns the slice of `array`. + */ + function slice(array, start, end) { + var length = array == null ? 0 : array.length; + if (!length) { + return []; + } + if (end && typeof end != 'number' && isIterateeCall(array, start, end)) { + start = 0; + end = length; + } + else { + start = start == null ? 0 : toInteger(start); + end = end === undefined ? length : toInteger(end); + } + return baseSlice(array, start, end); + } + + /** + * Uses a binary search to determine the lowest index at which `value` + * should be inserted into `array` in order to maintain its sort order. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The sorted array to inspect. + * @param {*} value The value to evaluate. + * @returns {number} Returns the index at which `value` should be inserted + * into `array`. + * @example + * + * _.sortedIndex([30, 50], 40); + * // => 1 + */ + function sortedIndex(array, value) { + return baseSortedIndex(array, value); + } + + /** + * This method is like `_.sortedIndex` except that it accepts `iteratee` + * which is invoked for `value` and each element of `array` to compute their + * sort ranking. The iteratee is invoked with one argument: (value). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The sorted array to inspect. + * @param {*} value The value to evaluate. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {number} Returns the index at which `value` should be inserted + * into `array`. + * @example + * + * var objects = [{ 'x': 4 }, { 'x': 5 }]; + * + * _.sortedIndexBy(objects, { 'x': 4 }, function(o) { return o.x; }); + * // => 0 + * + * // The `_.property` iteratee shorthand. + * _.sortedIndexBy(objects, { 'x': 4 }, 'x'); + * // => 0 + */ + function sortedIndexBy(array, value, iteratee) { + return baseSortedIndexBy(array, value, getIteratee(iteratee, 2)); + } + + /** + * This method is like `_.indexOf` except that it performs a binary + * search on a sorted `array`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @returns {number} Returns the index of the matched value, else `-1`. + * @example + * + * _.sortedIndexOf([4, 5, 5, 5, 6], 5); + * // => 1 + */ + function sortedIndexOf(array, value) { + var length = array == null ? 0 : array.length; + if (length) { + var index = baseSortedIndex(array, value); + if (index < length && eq(array[index], value)) { + return index; + } + } + return -1; + } + + /** + * This method is like `_.sortedIndex` except that it returns the highest + * index at which `value` should be inserted into `array` in order to + * maintain its sort order. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The sorted array to inspect. + * @param {*} value The value to evaluate. + * @returns {number} Returns the index at which `value` should be inserted + * into `array`. + * @example + * + * _.sortedLastIndex([4, 5, 5, 5, 6], 5); + * // => 4 + */ + function sortedLastIndex(array, value) { + return baseSortedIndex(array, value, true); + } + + /** + * This method is like `_.sortedLastIndex` except that it accepts `iteratee` + * which is invoked for `value` and each element of `array` to compute their + * sort ranking. The iteratee is invoked with one argument: (value). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The sorted array to inspect. + * @param {*} value The value to evaluate. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {number} Returns the index at which `value` should be inserted + * into `array`. + * @example + * + * var objects = [{ 'x': 4 }, { 'x': 5 }]; + * + * _.sortedLastIndexBy(objects, { 'x': 4 }, function(o) { return o.x; }); + * // => 1 + * + * // The `_.property` iteratee shorthand. + * _.sortedLastIndexBy(objects, { 'x': 4 }, 'x'); + * // => 1 + */ + function sortedLastIndexBy(array, value, iteratee) { + return baseSortedIndexBy(array, value, getIteratee(iteratee, 2), true); + } + + /** + * This method is like `_.lastIndexOf` except that it performs a binary + * search on a sorted `array`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @returns {number} Returns the index of the matched value, else `-1`. + * @example + * + * _.sortedLastIndexOf([4, 5, 5, 5, 6], 5); + * // => 3 + */ + function sortedLastIndexOf(array, value) { + var length = array == null ? 0 : array.length; + if (length) { + var index = baseSortedIndex(array, value, true) - 1; + if (eq(array[index], value)) { + return index; + } + } + return -1; + } + + /** + * This method is like `_.uniq` except that it's designed and optimized + * for sorted arrays. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to inspect. + * @returns {Array} Returns the new duplicate free array. + * @example + * + * _.sortedUniq([1, 1, 2]); + * // => [1, 2] + */ + function sortedUniq(array) { + return (array && array.length) + ? baseSortedUniq(array) + : []; + } + + /** + * This method is like `_.uniqBy` except that it's designed and optimized + * for sorted arrays. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {Function} [iteratee] The iteratee invoked per element. + * @returns {Array} Returns the new duplicate free array. + * @example + * + * _.sortedUniqBy([1.1, 1.2, 2.3, 2.4], Math.floor); + * // => [1.1, 2.3] + */ + function sortedUniqBy(array, iteratee) { + return (array && array.length) + ? baseSortedUniq(array, getIteratee(iteratee, 2)) + : []; + } + + /** + * Gets all but the first element of `array`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to query. + * @returns {Array} Returns the slice of `array`. + * @example + * + * _.tail([1, 2, 3]); + * // => [2, 3] + */ + function tail(array) { + var length = array == null ? 0 : array.length; + return length ? baseSlice(array, 1, length) : []; + } + + /** + * Creates a slice of `array` with `n` elements taken from the beginning. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to query. + * @param {number} [n=1] The number of elements to take. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Array} Returns the slice of `array`. + * @example + * + * _.take([1, 2, 3]); + * // => [1] + * + * _.take([1, 2, 3], 2); + * // => [1, 2] + * + * _.take([1, 2, 3], 5); + * // => [1, 2, 3] + * + * _.take([1, 2, 3], 0); + * // => [] + */ + function take(array, n, guard) { + if (!(array && array.length)) { + return []; + } + n = (guard || n === undefined) ? 1 : toInteger(n); + return baseSlice(array, 0, n < 0 ? 0 : n); + } + + /** + * Creates a slice of `array` with `n` elements taken from the end. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to query. + * @param {number} [n=1] The number of elements to take. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Array} Returns the slice of `array`. + * @example + * + * _.takeRight([1, 2, 3]); + * // => [3] + * + * _.takeRight([1, 2, 3], 2); + * // => [2, 3] + * + * _.takeRight([1, 2, 3], 5); + * // => [1, 2, 3] + * + * _.takeRight([1, 2, 3], 0); + * // => [] + */ + function takeRight(array, n, guard) { + var length = array == null ? 0 : array.length; + if (!length) { + return []; + } + n = (guard || n === undefined) ? 1 : toInteger(n); + n = length - n; + return baseSlice(array, n < 0 ? 0 : n, length); + } + + /** + * Creates a slice of `array` with elements taken from the end. Elements are + * taken until `predicate` returns falsey. The predicate is invoked with + * three arguments: (value, index, array). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to query. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the slice of `array`. + * @example + * + * var users = [ + * { 'user': 'barney', 'active': true }, + * { 'user': 'fred', 'active': false }, + * { 'user': 'pebbles', 'active': false } + * ]; + * + * _.takeRightWhile(users, function(o) { return !o.active; }); + * // => objects for ['fred', 'pebbles'] + * + * // The `_.matches` iteratee shorthand. + * _.takeRightWhile(users, { 'user': 'pebbles', 'active': false }); + * // => objects for ['pebbles'] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.takeRightWhile(users, ['active', false]); + * // => objects for ['fred', 'pebbles'] + * + * // The `_.property` iteratee shorthand. + * _.takeRightWhile(users, 'active'); + * // => [] + */ + function takeRightWhile(array, predicate) { + return (array && array.length) + ? baseWhile(array, getIteratee(predicate, 3), false, true) + : []; + } + + /** + * Creates a slice of `array` with elements taken from the beginning. Elements + * are taken until `predicate` returns falsey. The predicate is invoked with + * three arguments: (value, index, array). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to query. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the slice of `array`. + * @example + * + * var users = [ + * { 'user': 'barney', 'active': false }, + * { 'user': 'fred', 'active': false }, + * { 'user': 'pebbles', 'active': true } + * ]; + * + * _.takeWhile(users, function(o) { return !o.active; }); + * // => objects for ['barney', 'fred'] + * + * // The `_.matches` iteratee shorthand. + * _.takeWhile(users, { 'user': 'barney', 'active': false }); + * // => objects for ['barney'] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.takeWhile(users, ['active', false]); + * // => objects for ['barney', 'fred'] + * + * // The `_.property` iteratee shorthand. + * _.takeWhile(users, 'active'); + * // => [] + */ + function takeWhile(array, predicate) { + return (array && array.length) + ? baseWhile(array, getIteratee(predicate, 3)) + : []; + } + + /** + * Creates an array of unique values, in order, from all given arrays using + * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @returns {Array} Returns the new array of combined values. + * @example + * + * _.union([2], [1, 2]); + * // => [2, 1] + */ + var union = baseRest(function(arrays) { + return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true)); + }); + + /** + * This method is like `_.union` except that it accepts `iteratee` which is + * invoked for each element of each `arrays` to generate the criterion by + * which uniqueness is computed. Result values are chosen from the first + * array in which the value occurs. The iteratee is invoked with one argument: + * (value). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {Array} Returns the new array of combined values. + * @example + * + * _.unionBy([2.1], [1.2, 2.3], Math.floor); + * // => [2.1, 1.2] + * + * // The `_.property` iteratee shorthand. + * _.unionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x'); + * // => [{ 'x': 1 }, { 'x': 2 }] + */ + var unionBy = baseRest(function(arrays) { + var iteratee = last(arrays); + if (isArrayLikeObject(iteratee)) { + iteratee = undefined; + } + return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true), getIteratee(iteratee, 2)); + }); + + /** + * This method is like `_.union` except that it accepts `comparator` which + * is invoked to compare elements of `arrays`. Result values are chosen from + * the first array in which the value occurs. The comparator is invoked + * with two arguments: (arrVal, othVal). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new array of combined values. + * @example + * + * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]; + * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }]; + * + * _.unionWith(objects, others, _.isEqual); + * // => [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }, { 'x': 1, 'y': 1 }] + */ + var unionWith = baseRest(function(arrays) { + var comparator = last(arrays); + comparator = typeof comparator == 'function' ? comparator : undefined; + return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true), undefined, comparator); + }); + + /** + * Creates a duplicate-free version of an array, using + * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons, in which only the first occurrence of each element + * is kept. The order of result values is determined by the order they occur + * in the array. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to inspect. + * @returns {Array} Returns the new duplicate free array. + * @example + * + * _.uniq([2, 1, 2]); + * // => [2, 1] + */ + function uniq(array) { + return (array && array.length) ? baseUniq(array) : []; + } + + /** + * This method is like `_.uniq` except that it accepts `iteratee` which is + * invoked for each element in `array` to generate the criterion by which + * uniqueness is computed. The order of result values is determined by the + * order they occur in the array. The iteratee is invoked with one argument: + * (value). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {Array} Returns the new duplicate free array. + * @example + * + * _.uniqBy([2.1, 1.2, 2.3], Math.floor); + * // => [2.1, 1.2] + * + * // The `_.property` iteratee shorthand. + * _.uniqBy([{ 'x': 1 }, { 'x': 2 }, { 'x': 1 }], 'x'); + * // => [{ 'x': 1 }, { 'x': 2 }] + */ + function uniqBy(array, iteratee) { + return (array && array.length) ? baseUniq(array, getIteratee(iteratee, 2)) : []; + } + + /** + * This method is like `_.uniq` except that it accepts `comparator` which + * is invoked to compare elements of `array`. The order of result values is + * determined by the order they occur in the array.The comparator is invoked + * with two arguments: (arrVal, othVal). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new duplicate free array. + * @example + * + * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }, { 'x': 1, 'y': 2 }]; + * + * _.uniqWith(objects, _.isEqual); + * // => [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }] + */ + function uniqWith(array, comparator) { + comparator = typeof comparator == 'function' ? comparator : undefined; + return (array && array.length) ? baseUniq(array, undefined, comparator) : []; + } + + /** + * This method is like `_.zip` except that it accepts an array of grouped + * elements and creates an array regrouping the elements to their pre-zip + * configuration. + * + * @static + * @memberOf _ + * @since 1.2.0 + * @category Array + * @param {Array} array The array of grouped elements to process. + * @returns {Array} Returns the new array of regrouped elements. + * @example + * + * var zipped = _.zip(['a', 'b'], [1, 2], [true, false]); + * // => [['a', 1, true], ['b', 2, false]] + * + * _.unzip(zipped); + * // => [['a', 'b'], [1, 2], [true, false]] + */ + function unzip(array) { + if (!(array && array.length)) { + return []; + } + var length = 0; + array = arrayFilter(array, function(group) { + if (isArrayLikeObject(group)) { + length = nativeMax(group.length, length); + return true; + } + }); + return baseTimes(length, function(index) { + return arrayMap(array, baseProperty(index)); + }); + } + + /** + * This method is like `_.unzip` except that it accepts `iteratee` to specify + * how regrouped values should be combined. The iteratee is invoked with the + * elements of each group: (...group). + * + * @static + * @memberOf _ + * @since 3.8.0 + * @category Array + * @param {Array} array The array of grouped elements to process. + * @param {Function} [iteratee=_.identity] The function to combine + * regrouped values. + * @returns {Array} Returns the new array of regrouped elements. + * @example + * + * var zipped = _.zip([1, 2], [10, 20], [100, 200]); + * // => [[1, 10, 100], [2, 20, 200]] + * + * _.unzipWith(zipped, _.add); + * // => [3, 30, 300] + */ + function unzipWith(array, iteratee) { + if (!(array && array.length)) { + return []; + } + var result = unzip(array); + if (iteratee == null) { + return result; + } + return arrayMap(result, function(group) { + return apply(iteratee, undefined, group); + }); + } + + /** + * Creates an array excluding all given values using + * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. + * + * **Note:** Unlike `_.pull`, this method returns a new array. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {...*} [values] The values to exclude. + * @returns {Array} Returns the new array of filtered values. + * @see _.difference, _.xor + * @example + * + * _.without([2, 1, 2, 3], 1, 2); + * // => [3] + */ + var without = baseRest(function(array, values) { + return isArrayLikeObject(array) + ? baseDifference(array, values) + : []; + }); + + /** + * Creates an array of unique values that is the + * [symmetric difference](https://en.wikipedia.org/wiki/Symmetric_difference) + * of the given arrays. The order of result values is determined by the order + * they occur in the arrays. + * + * @static + * @memberOf _ + * @since 2.4.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @returns {Array} Returns the new array of filtered values. + * @see _.difference, _.without + * @example + * + * _.xor([2, 1], [2, 3]); + * // => [1, 3] + */ + var xor = baseRest(function(arrays) { + return baseXor(arrayFilter(arrays, isArrayLikeObject)); + }); + + /** + * This method is like `_.xor` except that it accepts `iteratee` which is + * invoked for each element of each `arrays` to generate the criterion by + * which by which they're compared. The order of result values is determined + * by the order they occur in the arrays. The iteratee is invoked with one + * argument: (value). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {Array} Returns the new array of filtered values. + * @example + * + * _.xorBy([2.1, 1.2], [2.3, 3.4], Math.floor); + * // => [1.2, 3.4] + * + * // The `_.property` iteratee shorthand. + * _.xorBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x'); + * // => [{ 'x': 2 }] + */ + var xorBy = baseRest(function(arrays) { + var iteratee = last(arrays); + if (isArrayLikeObject(iteratee)) { + iteratee = undefined; + } + return baseXor(arrayFilter(arrays, isArrayLikeObject), getIteratee(iteratee, 2)); + }); + + /** + * This method is like `_.xor` except that it accepts `comparator` which is + * invoked to compare elements of `arrays`. The order of result values is + * determined by the order they occur in the arrays. The comparator is invoked + * with two arguments: (arrVal, othVal). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new array of filtered values. + * @example + * + * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]; + * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }]; + * + * _.xorWith(objects, others, _.isEqual); + * // => [{ 'x': 2, 'y': 1 }, { 'x': 1, 'y': 1 }] + */ + var xorWith = baseRest(function(arrays) { + var comparator = last(arrays); + comparator = typeof comparator == 'function' ? comparator : undefined; + return baseXor(arrayFilter(arrays, isArrayLikeObject), undefined, comparator); + }); + + /** + * Creates an array of grouped elements, the first of which contains the + * first elements of the given arrays, the second of which contains the + * second elements of the given arrays, and so on. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {...Array} [arrays] The arrays to process. + * @returns {Array} Returns the new array of grouped elements. + * @example + * + * _.zip(['a', 'b'], [1, 2], [true, false]); + * // => [['a', 1, true], ['b', 2, false]] + */ + var zip = baseRest(unzip); + + /** + * This method is like `_.fromPairs` except that it accepts two arrays, + * one of property identifiers and one of corresponding values. + * + * @static + * @memberOf _ + * @since 0.4.0 + * @category Array + * @param {Array} [props=[]] The property identifiers. + * @param {Array} [values=[]] The property values. + * @returns {Object} Returns the new object. + * @example + * + * _.zipObject(['a', 'b'], [1, 2]); + * // => { 'a': 1, 'b': 2 } + */ + function zipObject(props, values) { + return baseZipObject(props || [], values || [], assignValue); + } + + /** + * This method is like `_.zipObject` except that it supports property paths. + * + * @static + * @memberOf _ + * @since 4.1.0 + * @category Array + * @param {Array} [props=[]] The property identifiers. + * @param {Array} [values=[]] The property values. + * @returns {Object} Returns the new object. + * @example + * + * _.zipObjectDeep(['a.b[0].c', 'a.b[1].d'], [1, 2]); + * // => { 'a': { 'b': [{ 'c': 1 }, { 'd': 2 }] } } + */ + function zipObjectDeep(props, values) { + return baseZipObject(props || [], values || [], baseSet); + } + + /** + * This method is like `_.zip` except that it accepts `iteratee` to specify + * how grouped values should be combined. The iteratee is invoked with the + * elements of each group: (...group). + * + * @static + * @memberOf _ + * @since 3.8.0 + * @category Array + * @param {...Array} [arrays] The arrays to process. + * @param {Function} [iteratee=_.identity] The function to combine + * grouped values. + * @returns {Array} Returns the new array of grouped elements. + * @example + * + * _.zipWith([1, 2], [10, 20], [100, 200], function(a, b, c) { + * return a + b + c; + * }); + * // => [111, 222] + */ + var zipWith = baseRest(function(arrays) { + var length = arrays.length, + iteratee = length > 1 ? arrays[length - 1] : undefined; + + iteratee = typeof iteratee == 'function' ? (arrays.pop(), iteratee) : undefined; + return unzipWith(arrays, iteratee); + }); + + /*------------------------------------------------------------------------*/ + + /** + * Creates a `lodash` wrapper instance that wraps `value` with explicit method + * chain sequences enabled. The result of such sequences must be unwrapped + * with `_#value`. + * + * @static + * @memberOf _ + * @since 1.3.0 + * @category Seq + * @param {*} value The value to wrap. + * @returns {Object} Returns the new `lodash` wrapper instance. + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36 }, + * { 'user': 'fred', 'age': 40 }, + * { 'user': 'pebbles', 'age': 1 } + * ]; + * + * var youngest = _ + * .chain(users) + * .sortBy('age') + * .map(function(o) { + * return o.user + ' is ' + o.age; + * }) + * .head() + * .value(); + * // => 'pebbles is 1' + */ + function chain(value) { + var result = lodash(value); + result.__chain__ = true; + return result; + } + + /** + * This method invokes `interceptor` and returns `value`. The interceptor + * is invoked with one argument; (value). The purpose of this method is to + * "tap into" a method chain sequence in order to modify intermediate results. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Seq + * @param {*} value The value to provide to `interceptor`. + * @param {Function} interceptor The function to invoke. + * @returns {*} Returns `value`. + * @example + * + * _([1, 2, 3]) + * .tap(function(array) { + * // Mutate input array. + * array.pop(); + * }) + * .reverse() + * .value(); + * // => [2, 1] + */ + function tap(value, interceptor) { + interceptor(value); + return value; + } + + /** + * This method is like `_.tap` except that it returns the result of `interceptor`. + * The purpose of this method is to "pass thru" values replacing intermediate + * results in a method chain sequence. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Seq + * @param {*} value The value to provide to `interceptor`. + * @param {Function} interceptor The function to invoke. + * @returns {*} Returns the result of `interceptor`. + * @example + * + * _(' abc ') + * .chain() + * .trim() + * .thru(function(value) { + * return [value]; + * }) + * .value(); + * // => ['abc'] + */ + function thru(value, interceptor) { + return interceptor(value); + } + + /** + * This method is the wrapper version of `_.at`. + * + * @name at + * @memberOf _ + * @since 1.0.0 + * @category Seq + * @param {...(string|string[])} [paths] The property paths to pick. + * @returns {Object} Returns the new `lodash` wrapper instance. + * @example + * + * var object = { 'a': [{ 'b': { 'c': 3 } }, 4] }; + * + * _(object).at(['a[0].b.c', 'a[1]']).value(); + * // => [3, 4] + */ + var wrapperAt = flatRest(function(paths) { + var length = paths.length, + start = length ? paths[0] : 0, + value = this.__wrapped__, + interceptor = function(object) { return baseAt(object, paths); }; + + if (length > 1 || this.__actions__.length || + !(value instanceof LazyWrapper) || !isIndex(start)) { + return this.thru(interceptor); + } + value = value.slice(start, +start + (length ? 1 : 0)); + value.__actions__.push({ + 'func': thru, + 'args': [interceptor], + 'thisArg': undefined + }); + return new LodashWrapper(value, this.__chain__).thru(function(array) { + if (length && !array.length) { + array.push(undefined); + } + return array; + }); + }); + + /** + * Creates a `lodash` wrapper instance with explicit method chain sequences enabled. + * + * @name chain + * @memberOf _ + * @since 0.1.0 + * @category Seq + * @returns {Object} Returns the new `lodash` wrapper instance. + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36 }, + * { 'user': 'fred', 'age': 40 } + * ]; + * + * // A sequence without explicit chaining. + * _(users).head(); + * // => { 'user': 'barney', 'age': 36 } + * + * // A sequence with explicit chaining. + * _(users) + * .chain() + * .head() + * .pick('user') + * .value(); + * // => { 'user': 'barney' } + */ + function wrapperChain() { + return chain(this); + } + + /** + * Executes the chain sequence and returns the wrapped result. + * + * @name commit + * @memberOf _ + * @since 3.2.0 + * @category Seq + * @returns {Object} Returns the new `lodash` wrapper instance. + * @example + * + * var array = [1, 2]; + * var wrapped = _(array).push(3); + * + * console.log(array); + * // => [1, 2] + * + * wrapped = wrapped.commit(); + * console.log(array); + * // => [1, 2, 3] + * + * wrapped.last(); + * // => 3 + * + * console.log(array); + * // => [1, 2, 3] + */ + function wrapperCommit() { + return new LodashWrapper(this.value(), this.__chain__); + } + + /** + * Gets the next value on a wrapped object following the + * [iterator protocol](https://mdn.io/iteration_protocols#iterator). + * + * @name next + * @memberOf _ + * @since 4.0.0 + * @category Seq + * @returns {Object} Returns the next iterator value. + * @example + * + * var wrapped = _([1, 2]); + * + * wrapped.next(); + * // => { 'done': false, 'value': 1 } + * + * wrapped.next(); + * // => { 'done': false, 'value': 2 } + * + * wrapped.next(); + * // => { 'done': true, 'value': undefined } + */ + function wrapperNext() { + if (this.__values__ === undefined) { + this.__values__ = toArray(this.value()); + } + var done = this.__index__ >= this.__values__.length, + value = done ? undefined : this.__values__[this.__index__++]; + + return { 'done': done, 'value': value }; + } + + /** + * Enables the wrapper to be iterable. + * + * @name Symbol.iterator + * @memberOf _ + * @since 4.0.0 + * @category Seq + * @returns {Object} Returns the wrapper object. + * @example + * + * var wrapped = _([1, 2]); + * + * wrapped[Symbol.iterator]() === wrapped; + * // => true + * + * Array.from(wrapped); + * // => [1, 2] + */ + function wrapperToIterator() { + return this; + } + + /** + * Creates a clone of the chain sequence planting `value` as the wrapped value. + * + * @name plant + * @memberOf _ + * @since 3.2.0 + * @category Seq + * @param {*} value The value to plant. + * @returns {Object} Returns the new `lodash` wrapper instance. + * @example + * + * function square(n) { + * return n * n; + * } + * + * var wrapped = _([1, 2]).map(square); + * var other = wrapped.plant([3, 4]); + * + * other.value(); + * // => [9, 16] + * + * wrapped.value(); + * // => [1, 4] + */ + function wrapperPlant(value) { + var result, + parent = this; + + while (parent instanceof baseLodash) { + var clone = wrapperClone(parent); + clone.__index__ = 0; + clone.__values__ = undefined; + if (result) { + previous.__wrapped__ = clone; + } else { + result = clone; + } + var previous = clone; + parent = parent.__wrapped__; + } + previous.__wrapped__ = value; + return result; + } + + /** + * This method is the wrapper version of `_.reverse`. + * + * **Note:** This method mutates the wrapped array. + * + * @name reverse + * @memberOf _ + * @since 0.1.0 + * @category Seq + * @returns {Object} Returns the new `lodash` wrapper instance. + * @example + * + * var array = [1, 2, 3]; + * + * _(array).reverse().value() + * // => [3, 2, 1] + * + * console.log(array); + * // => [3, 2, 1] + */ + function wrapperReverse() { + var value = this.__wrapped__; + if (value instanceof LazyWrapper) { + var wrapped = value; + if (this.__actions__.length) { + wrapped = new LazyWrapper(this); + } + wrapped = wrapped.reverse(); + wrapped.__actions__.push({ + 'func': thru, + 'args': [reverse], + 'thisArg': undefined + }); + return new LodashWrapper(wrapped, this.__chain__); + } + return this.thru(reverse); + } + + /** + * Executes the chain sequence to resolve the unwrapped value. + * + * @name value + * @memberOf _ + * @since 0.1.0 + * @alias toJSON, valueOf + * @category Seq + * @returns {*} Returns the resolved unwrapped value. + * @example + * + * _([1, 2, 3]).value(); + * // => [1, 2, 3] + */ + function wrapperValue() { + return baseWrapperValue(this.__wrapped__, this.__actions__); + } + + /*------------------------------------------------------------------------*/ + + /** + * Creates an object composed of keys generated from the results of running + * each element of `collection` thru `iteratee`. The corresponding value of + * each key is the number of times the key was returned by `iteratee`. The + * iteratee is invoked with one argument: (value). + * + * @static + * @memberOf _ + * @since 0.5.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The iteratee to transform keys. + * @returns {Object} Returns the composed aggregate object. + * @example + * + * _.countBy([6.1, 4.2, 6.3], Math.floor); + * // => { '4': 1, '6': 2 } + * + * // The `_.property` iteratee shorthand. + * _.countBy(['one', 'two', 'three'], 'length'); + * // => { '3': 2, '5': 1 } + */ + var countBy = createAggregator(function(result, value, key) { + if (hasOwnProperty.call(result, key)) { + ++result[key]; + } else { + baseAssignValue(result, key, 1); + } + }); + + /** + * Checks if `predicate` returns truthy for **all** elements of `collection`. + * Iteration is stopped once `predicate` returns falsey. The predicate is + * invoked with three arguments: (value, index|key, collection). + * + * **Note:** This method returns `true` for + * [empty collections](https://en.wikipedia.org/wiki/Empty_set) because + * [everything is true](https://en.wikipedia.org/wiki/Vacuous_truth) of + * elements of empty collections. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {boolean} Returns `true` if all elements pass the predicate check, + * else `false`. + * @example + * + * _.every([true, 1, null, 'yes'], Boolean); + * // => false + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': false }, + * { 'user': 'fred', 'age': 40, 'active': false } + * ]; + * + * // The `_.matches` iteratee shorthand. + * _.every(users, { 'user': 'barney', 'active': false }); + * // => false + * + * // The `_.matchesProperty` iteratee shorthand. + * _.every(users, ['active', false]); + * // => true + * + * // The `_.property` iteratee shorthand. + * _.every(users, 'active'); + * // => false + */ + function every(collection, predicate, guard) { + var func = isArray(collection) ? arrayEvery : baseEvery; + if (guard && isIterateeCall(collection, predicate, guard)) { + predicate = undefined; + } + return func(collection, getIteratee(predicate, 3)); + } + + /** + * Iterates over elements of `collection`, returning an array of all elements + * `predicate` returns truthy for. The predicate is invoked with three + * arguments: (value, index|key, collection). + * + * **Note:** Unlike `_.remove`, this method returns a new array. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new filtered array. + * @see _.reject + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': true }, + * { 'user': 'fred', 'age': 40, 'active': false } + * ]; + * + * _.filter(users, function(o) { return !o.active; }); + * // => objects for ['fred'] + * + * // The `_.matches` iteratee shorthand. + * _.filter(users, { 'age': 36, 'active': true }); + * // => objects for ['barney'] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.filter(users, ['active', false]); + * // => objects for ['fred'] + * + * // The `_.property` iteratee shorthand. + * _.filter(users, 'active'); + * // => objects for ['barney'] + * + * // Combining several predicates using `_.overEvery` or `_.overSome`. + * _.filter(users, _.overSome([{ 'age': 36 }, ['age', 40]])); + * // => objects for ['fred', 'barney'] + */ + function filter(collection, predicate) { + var func = isArray(collection) ? arrayFilter : baseFilter; + return func(collection, getIteratee(predicate, 3)); + } + + /** + * Iterates over elements of `collection`, returning the first element + * `predicate` returns truthy for. The predicate is invoked with three + * arguments: (value, index|key, collection). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param {number} [fromIndex=0] The index to search from. + * @returns {*} Returns the matched element, else `undefined`. + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': true }, + * { 'user': 'fred', 'age': 40, 'active': false }, + * { 'user': 'pebbles', 'age': 1, 'active': true } + * ]; + * + * _.find(users, function(o) { return o.age < 40; }); + * // => object for 'barney' + * + * // The `_.matches` iteratee shorthand. + * _.find(users, { 'age': 1, 'active': true }); + * // => object for 'pebbles' + * + * // The `_.matchesProperty` iteratee shorthand. + * _.find(users, ['active', false]); + * // => object for 'fred' + * + * // The `_.property` iteratee shorthand. + * _.find(users, 'active'); + * // => object for 'barney' + */ + var find = createFind(findIndex); + + /** + * This method is like `_.find` except that it iterates over elements of + * `collection` from right to left. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Collection + * @param {Array|Object} collection The collection to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param {number} [fromIndex=collection.length-1] The index to search from. + * @returns {*} Returns the matched element, else `undefined`. + * @example + * + * _.findLast([1, 2, 3, 4], function(n) { + * return n % 2 == 1; + * }); + * // => 3 + */ + var findLast = createFind(findLastIndex); + + /** + * Creates a flattened array of values by running each element in `collection` + * thru `iteratee` and flattening the mapped results. The iteratee is invoked + * with three arguments: (value, index|key, collection). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new flattened array. + * @example + * + * function duplicate(n) { + * return [n, n]; + * } + * + * _.flatMap([1, 2], duplicate); + * // => [1, 1, 2, 2] + */ + function flatMap(collection, iteratee) { + return baseFlatten(map(collection, iteratee), 1); + } + + /** + * This method is like `_.flatMap` except that it recursively flattens the + * mapped results. + * + * @static + * @memberOf _ + * @since 4.7.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new flattened array. + * @example + * + * function duplicate(n) { + * return [[[n, n]]]; + * } + * + * _.flatMapDeep([1, 2], duplicate); + * // => [1, 1, 2, 2] + */ + function flatMapDeep(collection, iteratee) { + return baseFlatten(map(collection, iteratee), INFINITY); + } + + /** + * This method is like `_.flatMap` except that it recursively flattens the + * mapped results up to `depth` times. + * + * @static + * @memberOf _ + * @since 4.7.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @param {number} [depth=1] The maximum recursion depth. + * @returns {Array} Returns the new flattened array. + * @example + * + * function duplicate(n) { + * return [[[n, n]]]; + * } + * + * _.flatMapDepth([1, 2], duplicate, 2); + * // => [[1, 1], [2, 2]] + */ + function flatMapDepth(collection, iteratee, depth) { + depth = depth === undefined ? 1 : toInteger(depth); + return baseFlatten(map(collection, iteratee), depth); + } + + /** + * Iterates over elements of `collection` and invokes `iteratee` for each element. + * The iteratee is invoked with three arguments: (value, index|key, collection). + * Iteratee functions may exit iteration early by explicitly returning `false`. + * + * **Note:** As with other "Collections" methods, objects with a "length" + * property are iterated like arrays. To avoid this behavior use `_.forIn` + * or `_.forOwn` for object iteration. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @alias each + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Array|Object} Returns `collection`. + * @see _.forEachRight + * @example + * + * _.forEach([1, 2], function(value) { + * console.log(value); + * }); + * // => Logs `1` then `2`. + * + * _.forEach({ 'a': 1, 'b': 2 }, function(value, key) { + * console.log(key); + * }); + * // => Logs 'a' then 'b' (iteration order is not guaranteed). + */ + function forEach(collection, iteratee) { + var func = isArray(collection) ? arrayEach : baseEach; + return func(collection, getIteratee(iteratee, 3)); + } + + /** + * This method is like `_.forEach` except that it iterates over elements of + * `collection` from right to left. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @alias eachRight + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Array|Object} Returns `collection`. + * @see _.forEach + * @example + * + * _.forEachRight([1, 2], function(value) { + * console.log(value); + * }); + * // => Logs `2` then `1`. + */ + function forEachRight(collection, iteratee) { + var func = isArray(collection) ? arrayEachRight : baseEachRight; + return func(collection, getIteratee(iteratee, 3)); + } + + /** + * Creates an object composed of keys generated from the results of running + * each element of `collection` thru `iteratee`. The order of grouped values + * is determined by the order they occur in `collection`. The corresponding + * value of each key is an array of elements responsible for generating the + * key. The iteratee is invoked with one argument: (value). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The iteratee to transform keys. + * @returns {Object} Returns the composed aggregate object. + * @example + * + * _.groupBy([6.1, 4.2, 6.3], Math.floor); + * // => { '4': [4.2], '6': [6.1, 6.3] } + * + * // The `_.property` iteratee shorthand. + * _.groupBy(['one', 'two', 'three'], 'length'); + * // => { '3': ['one', 'two'], '5': ['three'] } + */ + var groupBy = createAggregator(function(result, value, key) { + if (hasOwnProperty.call(result, key)) { + result[key].push(value); + } else { + baseAssignValue(result, key, [value]); + } + }); + + /** + * Checks if `value` is in `collection`. If `collection` is a string, it's + * checked for a substring of `value`, otherwise + * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * is used for equality comparisons. If `fromIndex` is negative, it's used as + * the offset from the end of `collection`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object|string} collection The collection to inspect. + * @param {*} value The value to search for. + * @param {number} [fromIndex=0] The index to search from. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`. + * @returns {boolean} Returns `true` if `value` is found, else `false`. + * @example + * + * _.includes([1, 2, 3], 1); + * // => true + * + * _.includes([1, 2, 3], 1, 2); + * // => false + * + * _.includes({ 'a': 1, 'b': 2 }, 1); + * // => true + * + * _.includes('abcd', 'bc'); + * // => true + */ + function includes(collection, value, fromIndex, guard) { + collection = isArrayLike(collection) ? collection : values(collection); + fromIndex = (fromIndex && !guard) ? toInteger(fromIndex) : 0; + + var length = collection.length; + if (fromIndex < 0) { + fromIndex = nativeMax(length + fromIndex, 0); + } + return isString(collection) + ? (fromIndex <= length && collection.indexOf(value, fromIndex) > -1) + : (!!length && baseIndexOf(collection, value, fromIndex) > -1); + } + + /** + * Invokes the method at `path` of each element in `collection`, returning + * an array of the results of each invoked method. Any additional arguments + * are provided to each invoked method. If `path` is a function, it's invoked + * for, and `this` bound to, each element in `collection`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Array|Function|string} path The path of the method to invoke or + * the function invoked per iteration. + * @param {...*} [args] The arguments to invoke each method with. + * @returns {Array} Returns the array of results. + * @example + * + * _.invokeMap([[5, 1, 7], [3, 2, 1]], 'sort'); + * // => [[1, 5, 7], [1, 2, 3]] + * + * _.invokeMap([123, 456], String.prototype.split, ''); + * // => [['1', '2', '3'], ['4', '5', '6']] + */ + var invokeMap = baseRest(function(collection, path, args) { + var index = -1, + isFunc = typeof path == 'function', + result = isArrayLike(collection) ? Array(collection.length) : []; + + baseEach(collection, function(value) { + result[++index] = isFunc ? apply(path, value, args) : baseInvoke(value, path, args); + }); + return result; + }); + + /** + * Creates an object composed of keys generated from the results of running + * each element of `collection` thru `iteratee`. The corresponding value of + * each key is the last element responsible for generating the key. The + * iteratee is invoked with one argument: (value). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The iteratee to transform keys. + * @returns {Object} Returns the composed aggregate object. + * @example + * + * var array = [ + * { 'dir': 'left', 'code': 97 }, + * { 'dir': 'right', 'code': 100 } + * ]; + * + * _.keyBy(array, function(o) { + * return String.fromCharCode(o.code); + * }); + * // => { 'a': { 'dir': 'left', 'code': 97 }, 'd': { 'dir': 'right', 'code': 100 } } + * + * _.keyBy(array, 'dir'); + * // => { 'left': { 'dir': 'left', 'code': 97 }, 'right': { 'dir': 'right', 'code': 100 } } + */ + var keyBy = createAggregator(function(result, value, key) { + baseAssignValue(result, key, value); + }); + + /** + * Creates an array of values by running each element in `collection` thru + * `iteratee`. The iteratee is invoked with three arguments: + * (value, index|key, collection). + * + * Many lodash methods are guarded to work as iteratees for methods like + * `_.every`, `_.filter`, `_.map`, `_.mapValues`, `_.reject`, and `_.some`. + * + * The guarded methods are: + * `ary`, `chunk`, `curry`, `curryRight`, `drop`, `dropRight`, `every`, + * `fill`, `invert`, `parseInt`, `random`, `range`, `rangeRight`, `repeat`, + * `sampleSize`, `slice`, `some`, `sortBy`, `split`, `take`, `takeRight`, + * `template`, `trim`, `trimEnd`, `trimStart`, and `words` + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new mapped array. + * @example + * + * function square(n) { + * return n * n; + * } + * + * _.map([4, 8], square); + * // => [16, 64] + * + * _.map({ 'a': 4, 'b': 8 }, square); + * // => [16, 64] (iteration order is not guaranteed) + * + * var users = [ + * { 'user': 'barney' }, + * { 'user': 'fred' } + * ]; + * + * // The `_.property` iteratee shorthand. + * _.map(users, 'user'); + * // => ['barney', 'fred'] + */ + function map(collection, iteratee) { + var func = isArray(collection) ? arrayMap : baseMap; + return func(collection, getIteratee(iteratee, 3)); + } + + /** + * This method is like `_.sortBy` except that it allows specifying the sort + * orders of the iteratees to sort by. If `orders` is unspecified, all values + * are sorted in ascending order. Otherwise, specify an order of "desc" for + * descending or "asc" for ascending sort order of corresponding values. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Array[]|Function[]|Object[]|string[]} [iteratees=[_.identity]] + * The iteratees to sort by. + * @param {string[]} [orders] The sort orders of `iteratees`. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`. + * @returns {Array} Returns the new sorted array. + * @example + * + * var users = [ + * { 'user': 'fred', 'age': 48 }, + * { 'user': 'barney', 'age': 34 }, + * { 'user': 'fred', 'age': 40 }, + * { 'user': 'barney', 'age': 36 } + * ]; + * + * // Sort by `user` in ascending order and by `age` in descending order. + * _.orderBy(users, ['user', 'age'], ['asc', 'desc']); + * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 40]] + */ + function orderBy(collection, iteratees, orders, guard) { + if (collection == null) { + return []; + } + if (!isArray(iteratees)) { + iteratees = iteratees == null ? [] : [iteratees]; + } + orders = guard ? undefined : orders; + if (!isArray(orders)) { + orders = orders == null ? [] : [orders]; + } + return baseOrderBy(collection, iteratees, orders); + } + + /** + * Creates an array of elements split into two groups, the first of which + * contains elements `predicate` returns truthy for, the second of which + * contains elements `predicate` returns falsey for. The predicate is + * invoked with one argument: (value). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the array of grouped elements. + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': false }, + * { 'user': 'fred', 'age': 40, 'active': true }, + * { 'user': 'pebbles', 'age': 1, 'active': false } + * ]; + * + * _.partition(users, function(o) { return o.active; }); + * // => objects for [['fred'], ['barney', 'pebbles']] + * + * // The `_.matches` iteratee shorthand. + * _.partition(users, { 'age': 1, 'active': false }); + * // => objects for [['pebbles'], ['barney', 'fred']] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.partition(users, ['active', false]); + * // => objects for [['barney', 'pebbles'], ['fred']] + * + * // The `_.property` iteratee shorthand. + * _.partition(users, 'active'); + * // => objects for [['fred'], ['barney', 'pebbles']] + */ + var partition = createAggregator(function(result, value, key) { + result[key ? 0 : 1].push(value); + }, function() { return [[], []]; }); + + /** + * Reduces `collection` to a value which is the accumulated result of running + * each element in `collection` thru `iteratee`, where each successive + * invocation is supplied the return value of the previous. If `accumulator` + * is not given, the first element of `collection` is used as the initial + * value. The iteratee is invoked with four arguments: + * (accumulator, value, index|key, collection). + * + * Many lodash methods are guarded to work as iteratees for methods like + * `_.reduce`, `_.reduceRight`, and `_.transform`. + * + * The guarded methods are: + * `assign`, `defaults`, `defaultsDeep`, `includes`, `merge`, `orderBy`, + * and `sortBy` + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @param {*} [accumulator] The initial value. + * @returns {*} Returns the accumulated value. + * @see _.reduceRight + * @example + * + * _.reduce([1, 2], function(sum, n) { + * return sum + n; + * }, 0); + * // => 3 + * + * _.reduce({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) { + * (result[value] || (result[value] = [])).push(key); + * return result; + * }, {}); + * // => { '1': ['a', 'c'], '2': ['b'] } (iteration order is not guaranteed) + */ + function reduce(collection, iteratee, accumulator) { + var func = isArray(collection) ? arrayReduce : baseReduce, + initAccum = arguments.length < 3; + + return func(collection, getIteratee(iteratee, 4), accumulator, initAccum, baseEach); + } + + /** + * This method is like `_.reduce` except that it iterates over elements of + * `collection` from right to left. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @param {*} [accumulator] The initial value. + * @returns {*} Returns the accumulated value. + * @see _.reduce + * @example + * + * var array = [[0, 1], [2, 3], [4, 5]]; + * + * _.reduceRight(array, function(flattened, other) { + * return flattened.concat(other); + * }, []); + * // => [4, 5, 2, 3, 0, 1] + */ + function reduceRight(collection, iteratee, accumulator) { + var func = isArray(collection) ? arrayReduceRight : baseReduce, + initAccum = arguments.length < 3; + + return func(collection, getIteratee(iteratee, 4), accumulator, initAccum, baseEachRight); + } + + /** + * The opposite of `_.filter`; this method returns the elements of `collection` + * that `predicate` does **not** return truthy for. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new filtered array. + * @see _.filter + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': false }, + * { 'user': 'fred', 'age': 40, 'active': true } + * ]; + * + * _.reject(users, function(o) { return !o.active; }); + * // => objects for ['fred'] + * + * // The `_.matches` iteratee shorthand. + * _.reject(users, { 'age': 40, 'active': true }); + * // => objects for ['barney'] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.reject(users, ['active', false]); + * // => objects for ['fred'] + * + * // The `_.property` iteratee shorthand. + * _.reject(users, 'active'); + * // => objects for ['barney'] + */ + function reject(collection, predicate) { + var func = isArray(collection) ? arrayFilter : baseFilter; + return func(collection, negate(getIteratee(predicate, 3))); + } + + /** + * Gets a random element from `collection`. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Collection + * @param {Array|Object} collection The collection to sample. + * @returns {*} Returns the random element. + * @example + * + * _.sample([1, 2, 3, 4]); + * // => 2 + */ + function sample(collection) { + var func = isArray(collection) ? arraySample : baseSample; + return func(collection); + } + + /** + * Gets `n` random elements at unique keys from `collection` up to the + * size of `collection`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Collection + * @param {Array|Object} collection The collection to sample. + * @param {number} [n=1] The number of elements to sample. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Array} Returns the random elements. + * @example + * + * _.sampleSize([1, 2, 3], 2); + * // => [3, 1] + * + * _.sampleSize([1, 2, 3], 4); + * // => [2, 3, 1] + */ + function sampleSize(collection, n, guard) { + if ((guard ? isIterateeCall(collection, n, guard) : n === undefined)) { + n = 1; + } else { + n = toInteger(n); + } + var func = isArray(collection) ? arraySampleSize : baseSampleSize; + return func(collection, n); + } + + /** + * Creates an array of shuffled values, using a version of the + * [Fisher-Yates shuffle](https://en.wikipedia.org/wiki/Fisher-Yates_shuffle). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to shuffle. + * @returns {Array} Returns the new shuffled array. + * @example + * + * _.shuffle([1, 2, 3, 4]); + * // => [4, 1, 3, 2] + */ + function shuffle(collection) { + var func = isArray(collection) ? arrayShuffle : baseShuffle; + return func(collection); + } + + /** + * Gets the size of `collection` by returning its length for array-like + * values or the number of own enumerable string keyed properties for objects. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object|string} collection The collection to inspect. + * @returns {number} Returns the collection size. + * @example + * + * _.size([1, 2, 3]); + * // => 3 + * + * _.size({ 'a': 1, 'b': 2 }); + * // => 2 + * + * _.size('pebbles'); + * // => 7 + */ + function size(collection) { + if (collection == null) { + return 0; + } + if (isArrayLike(collection)) { + return isString(collection) ? stringSize(collection) : collection.length; + } + var tag = getTag(collection); + if (tag == mapTag || tag == setTag) { + return collection.size; + } + return baseKeys(collection).length; + } + + /** + * Checks if `predicate` returns truthy for **any** element of `collection`. + * Iteration is stopped once `predicate` returns truthy. The predicate is + * invoked with three arguments: (value, index|key, collection). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {boolean} Returns `true` if any element passes the predicate check, + * else `false`. + * @example + * + * _.some([null, 0, 'yes', false], Boolean); + * // => true + * + * var users = [ + * { 'user': 'barney', 'active': true }, + * { 'user': 'fred', 'active': false } + * ]; + * + * // The `_.matches` iteratee shorthand. + * _.some(users, { 'user': 'barney', 'active': false }); + * // => false + * + * // The `_.matchesProperty` iteratee shorthand. + * _.some(users, ['active', false]); + * // => true + * + * // The `_.property` iteratee shorthand. + * _.some(users, 'active'); + * // => true + */ + function some(collection, predicate, guard) { + var func = isArray(collection) ? arraySome : baseSome; + if (guard && isIterateeCall(collection, predicate, guard)) { + predicate = undefined; + } + return func(collection, getIteratee(predicate, 3)); + } + + /** + * Creates an array of elements, sorted in ascending order by the results of + * running each element in a collection thru each iteratee. This method + * performs a stable sort, that is, it preserves the original sort order of + * equal elements. The iteratees are invoked with one argument: (value). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {...(Function|Function[])} [iteratees=[_.identity]] + * The iteratees to sort by. + * @returns {Array} Returns the new sorted array. + * @example + * + * var users = [ + * { 'user': 'fred', 'age': 48 }, + * { 'user': 'barney', 'age': 36 }, + * { 'user': 'fred', 'age': 30 }, + * { 'user': 'barney', 'age': 34 } + * ]; + * + * _.sortBy(users, [function(o) { return o.user; }]); + * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 30]] + * + * _.sortBy(users, ['user', 'age']); + * // => objects for [['barney', 34], ['barney', 36], ['fred', 30], ['fred', 48]] + */ + var sortBy = baseRest(function(collection, iteratees) { + if (collection == null) { + return []; + } + var length = iteratees.length; + if (length > 1 && isIterateeCall(collection, iteratees[0], iteratees[1])) { + iteratees = []; + } else if (length > 2 && isIterateeCall(iteratees[0], iteratees[1], iteratees[2])) { + iteratees = [iteratees[0]]; + } + return baseOrderBy(collection, baseFlatten(iteratees, 1), []); + }); + + /*------------------------------------------------------------------------*/ + + /** + * Gets the timestamp of the number of milliseconds that have elapsed since + * the Unix epoch (1 January 1970 00:00:00 UTC). + * + * @static + * @memberOf _ + * @since 2.4.0 + * @category Date + * @returns {number} Returns the timestamp. + * @example + * + * _.defer(function(stamp) { + * console.log(_.now() - stamp); + * }, _.now()); + * // => Logs the number of milliseconds it took for the deferred invocation. + */ + var now = ctxNow || function() { + return root.Date.now(); + }; + + /*------------------------------------------------------------------------*/ + + /** + * The opposite of `_.before`; this method creates a function that invokes + * `func` once it's called `n` or more times. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {number} n The number of calls before `func` is invoked. + * @param {Function} func The function to restrict. + * @returns {Function} Returns the new restricted function. + * @example + * + * var saves = ['profile', 'settings']; + * + * var done = _.after(saves.length, function() { + * console.log('done saving!'); + * }); + * + * _.forEach(saves, function(type) { + * asyncSave({ 'type': type, 'complete': done }); + * }); + * // => Logs 'done saving!' after the two async saves have completed. + */ + function after(n, func) { + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + n = toInteger(n); + return function() { + if (--n < 1) { + return func.apply(this, arguments); + } + }; + } + + /** + * Creates a function that invokes `func`, with up to `n` arguments, + * ignoring any additional arguments. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Function + * @param {Function} func The function to cap arguments for. + * @param {number} [n=func.length] The arity cap. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Function} Returns the new capped function. + * @example + * + * _.map(['6', '8', '10'], _.ary(parseInt, 1)); + * // => [6, 8, 10] + */ + function ary(func, n, guard) { + n = guard ? undefined : n; + n = (func && n == null) ? func.length : n; + return createWrap(func, WRAP_ARY_FLAG, undefined, undefined, undefined, undefined, n); + } + + /** + * Creates a function that invokes `func`, with the `this` binding and arguments + * of the created function, while it's called less than `n` times. Subsequent + * calls to the created function return the result of the last `func` invocation. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Function + * @param {number} n The number of calls at which `func` is no longer invoked. + * @param {Function} func The function to restrict. + * @returns {Function} Returns the new restricted function. + * @example + * + * jQuery(element).on('click', _.before(5, addContactToList)); + * // => Allows adding up to 4 contacts to the list. + */ + function before(n, func) { + var result; + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + n = toInteger(n); + return function() { + if (--n > 0) { + result = func.apply(this, arguments); + } + if (n <= 1) { + func = undefined; + } + return result; + }; + } + + /** + * Creates a function that invokes `func` with the `this` binding of `thisArg` + * and `partials` prepended to the arguments it receives. + * + * The `_.bind.placeholder` value, which defaults to `_` in monolithic builds, + * may be used as a placeholder for partially applied arguments. + * + * **Note:** Unlike native `Function#bind`, this method doesn't set the "length" + * property of bound functions. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {Function} func The function to bind. + * @param {*} thisArg The `this` binding of `func`. + * @param {...*} [partials] The arguments to be partially applied. + * @returns {Function} Returns the new bound function. + * @example + * + * function greet(greeting, punctuation) { + * return greeting + ' ' + this.user + punctuation; + * } + * + * var object = { 'user': 'fred' }; + * + * var bound = _.bind(greet, object, 'hi'); + * bound('!'); + * // => 'hi fred!' + * + * // Bound with placeholders. + * var bound = _.bind(greet, object, _, '!'); + * bound('hi'); + * // => 'hi fred!' + */ + var bind = baseRest(function(func, thisArg, partials) { + var bitmask = WRAP_BIND_FLAG; + if (partials.length) { + var holders = replaceHolders(partials, getHolder(bind)); + bitmask |= WRAP_PARTIAL_FLAG; + } + return createWrap(func, bitmask, thisArg, partials, holders); + }); + + /** + * Creates a function that invokes the method at `object[key]` with `partials` + * prepended to the arguments it receives. + * + * This method differs from `_.bind` by allowing bound functions to reference + * methods that may be redefined or don't yet exist. See + * [Peter Michaux's article](http://peter.michaux.ca/articles/lazy-function-definition-pattern) + * for more details. + * + * The `_.bindKey.placeholder` value, which defaults to `_` in monolithic + * builds, may be used as a placeholder for partially applied arguments. + * + * @static + * @memberOf _ + * @since 0.10.0 + * @category Function + * @param {Object} object The object to invoke the method on. + * @param {string} key The key of the method. + * @param {...*} [partials] The arguments to be partially applied. + * @returns {Function} Returns the new bound function. + * @example + * + * var object = { + * 'user': 'fred', + * 'greet': function(greeting, punctuation) { + * return greeting + ' ' + this.user + punctuation; + * } + * }; + * + * var bound = _.bindKey(object, 'greet', 'hi'); + * bound('!'); + * // => 'hi fred!' + * + * object.greet = function(greeting, punctuation) { + * return greeting + 'ya ' + this.user + punctuation; + * }; + * + * bound('!'); + * // => 'hiya fred!' + * + * // Bound with placeholders. + * var bound = _.bindKey(object, 'greet', _, '!'); + * bound('hi'); + * // => 'hiya fred!' + */ + var bindKey = baseRest(function(object, key, partials) { + var bitmask = WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG; + if (partials.length) { + var holders = replaceHolders(partials, getHolder(bindKey)); + bitmask |= WRAP_PARTIAL_FLAG; + } + return createWrap(key, bitmask, object, partials, holders); + }); + + /** + * Creates a function that accepts arguments of `func` and either invokes + * `func` returning its result, if at least `arity` number of arguments have + * been provided, or returns a function that accepts the remaining `func` + * arguments, and so on. The arity of `func` may be specified if `func.length` + * is not sufficient. + * + * The `_.curry.placeholder` value, which defaults to `_` in monolithic builds, + * may be used as a placeholder for provided arguments. + * + * **Note:** This method doesn't set the "length" property of curried functions. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Function + * @param {Function} func The function to curry. + * @param {number} [arity=func.length] The arity of `func`. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Function} Returns the new curried function. + * @example + * + * var abc = function(a, b, c) { + * return [a, b, c]; + * }; + * + * var curried = _.curry(abc); + * + * curried(1)(2)(3); + * // => [1, 2, 3] + * + * curried(1, 2)(3); + * // => [1, 2, 3] + * + * curried(1, 2, 3); + * // => [1, 2, 3] + * + * // Curried with placeholders. + * curried(1)(_, 3)(2); + * // => [1, 2, 3] + */ + function curry(func, arity, guard) { + arity = guard ? undefined : arity; + var result = createWrap(func, WRAP_CURRY_FLAG, undefined, undefined, undefined, undefined, undefined, arity); + result.placeholder = curry.placeholder; + return result; + } + + /** + * This method is like `_.curry` except that arguments are applied to `func` + * in the manner of `_.partialRight` instead of `_.partial`. + * + * The `_.curryRight.placeholder` value, which defaults to `_` in monolithic + * builds, may be used as a placeholder for provided arguments. + * + * **Note:** This method doesn't set the "length" property of curried functions. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Function + * @param {Function} func The function to curry. + * @param {number} [arity=func.length] The arity of `func`. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Function} Returns the new curried function. + * @example + * + * var abc = function(a, b, c) { + * return [a, b, c]; + * }; + * + * var curried = _.curryRight(abc); + * + * curried(3)(2)(1); + * // => [1, 2, 3] + * + * curried(2, 3)(1); + * // => [1, 2, 3] + * + * curried(1, 2, 3); + * // => [1, 2, 3] + * + * // Curried with placeholders. + * curried(3)(1, _)(2); + * // => [1, 2, 3] + */ + function curryRight(func, arity, guard) { + arity = guard ? undefined : arity; + var result = createWrap(func, WRAP_CURRY_RIGHT_FLAG, undefined, undefined, undefined, undefined, undefined, arity); + result.placeholder = curryRight.placeholder; + return result; + } + + /** + * Creates a debounced function that delays invoking `func` until after `wait` + * milliseconds have elapsed since the last time the debounced function was + * invoked. The debounced function comes with a `cancel` method to cancel + * delayed `func` invocations and a `flush` method to immediately invoke them. + * Provide `options` to indicate whether `func` should be invoked on the + * leading and/or trailing edge of the `wait` timeout. The `func` is invoked + * with the last arguments provided to the debounced function. Subsequent + * calls to the debounced function return the result of the last `func` + * invocation. + * + * **Note:** If `leading` and `trailing` options are `true`, `func` is + * invoked on the trailing edge of the timeout only if the debounced function + * is invoked more than once during the `wait` timeout. + * + * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred + * until to the next tick, similar to `setTimeout` with a timeout of `0`. + * + * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/) + * for details over the differences between `_.debounce` and `_.throttle`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {Function} func The function to debounce. + * @param {number} [wait=0] The number of milliseconds to delay. + * @param {Object} [options={}] The options object. + * @param {boolean} [options.leading=false] + * Specify invoking on the leading edge of the timeout. + * @param {number} [options.maxWait] + * The maximum time `func` is allowed to be delayed before it's invoked. + * @param {boolean} [options.trailing=true] + * Specify invoking on the trailing edge of the timeout. + * @returns {Function} Returns the new debounced function. + * @example + * + * // Avoid costly calculations while the window size is in flux. + * jQuery(window).on('resize', _.debounce(calculateLayout, 150)); + * + * // Invoke `sendMail` when clicked, debouncing subsequent calls. + * jQuery(element).on('click', _.debounce(sendMail, 300, { + * 'leading': true, + * 'trailing': false + * })); + * + * // Ensure `batchLog` is invoked once after 1 second of debounced calls. + * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 }); + * var source = new EventSource('/stream'); + * jQuery(source).on('message', debounced); + * + * // Cancel the trailing debounced invocation. + * jQuery(window).on('popstate', debounced.cancel); + */ + function debounce(func, wait, options) { + var lastArgs, + lastThis, + maxWait, + result, + timerId, + lastCallTime, + lastInvokeTime = 0, + leading = false, + maxing = false, + trailing = true; + + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + wait = toNumber(wait) || 0; + if (isObject(options)) { + leading = !!options.leading; + maxing = 'maxWait' in options; + maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait; + trailing = 'trailing' in options ? !!options.trailing : trailing; + } + + function invokeFunc(time) { + var args = lastArgs, + thisArg = lastThis; + + lastArgs = lastThis = undefined; + lastInvokeTime = time; + result = func.apply(thisArg, args); + return result; + } + + function leadingEdge(time) { + // Reset any `maxWait` timer. + lastInvokeTime = time; + // Start the timer for the trailing edge. + timerId = setTimeout(timerExpired, wait); + // Invoke the leading edge. + return leading ? invokeFunc(time) : result; + } + + function remainingWait(time) { + var timeSinceLastCall = time - lastCallTime, + timeSinceLastInvoke = time - lastInvokeTime, + timeWaiting = wait - timeSinceLastCall; + + return maxing + ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke) + : timeWaiting; + } + + function shouldInvoke(time) { + var timeSinceLastCall = time - lastCallTime, + timeSinceLastInvoke = time - lastInvokeTime; + + // Either this is the first call, activity has stopped and we're at the + // trailing edge, the system time has gone backwards and we're treating + // it as the trailing edge, or we've hit the `maxWait` limit. + return (lastCallTime === undefined || (timeSinceLastCall >= wait) || + (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait)); + } + + function timerExpired() { + var time = now(); + if (shouldInvoke(time)) { + return trailingEdge(time); + } + // Restart the timer. + timerId = setTimeout(timerExpired, remainingWait(time)); + } + + function trailingEdge(time) { + timerId = undefined; + + // Only invoke if we have `lastArgs` which means `func` has been + // debounced at least once. + if (trailing && lastArgs) { + return invokeFunc(time); + } + lastArgs = lastThis = undefined; + return result; + } + + function cancel() { + if (timerId !== undefined) { + clearTimeout(timerId); + } + lastInvokeTime = 0; + lastArgs = lastCallTime = lastThis = timerId = undefined; + } + + function flush() { + return timerId === undefined ? result : trailingEdge(now()); + } + + function debounced() { + var time = now(), + isInvoking = shouldInvoke(time); + + lastArgs = arguments; + lastThis = this; + lastCallTime = time; + + if (isInvoking) { + if (timerId === undefined) { + return leadingEdge(lastCallTime); + } + if (maxing) { + // Handle invocations in a tight loop. + clearTimeout(timerId); + timerId = setTimeout(timerExpired, wait); + return invokeFunc(lastCallTime); + } + } + if (timerId === undefined) { + timerId = setTimeout(timerExpired, wait); + } + return result; + } + debounced.cancel = cancel; + debounced.flush = flush; + return debounced; + } + + /** + * Defers invoking the `func` until the current call stack has cleared. Any + * additional arguments are provided to `func` when it's invoked. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {Function} func The function to defer. + * @param {...*} [args] The arguments to invoke `func` with. + * @returns {number} Returns the timer id. + * @example + * + * _.defer(function(text) { + * console.log(text); + * }, 'deferred'); + * // => Logs 'deferred' after one millisecond. + */ + var defer = baseRest(function(func, args) { + return baseDelay(func, 1, args); + }); + + /** + * Invokes `func` after `wait` milliseconds. Any additional arguments are + * provided to `func` when it's invoked. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {Function} func The function to delay. + * @param {number} wait The number of milliseconds to delay invocation. + * @param {...*} [args] The arguments to invoke `func` with. + * @returns {number} Returns the timer id. + * @example + * + * _.delay(function(text) { + * console.log(text); + * }, 1000, 'later'); + * // => Logs 'later' after one second. + */ + var delay = baseRest(function(func, wait, args) { + return baseDelay(func, toNumber(wait) || 0, args); + }); + + /** + * Creates a function that invokes `func` with arguments reversed. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Function + * @param {Function} func The function to flip arguments for. + * @returns {Function} Returns the new flipped function. + * @example + * + * var flipped = _.flip(function() { + * return _.toArray(arguments); + * }); + * + * flipped('a', 'b', 'c', 'd'); + * // => ['d', 'c', 'b', 'a'] + */ + function flip(func) { + return createWrap(func, WRAP_FLIP_FLAG); + } + + /** + * Creates a function that memoizes the result of `func`. If `resolver` is + * provided, it determines the cache key for storing the result based on the + * arguments provided to the memoized function. By default, the first argument + * provided to the memoized function is used as the map cache key. The `func` + * is invoked with the `this` binding of the memoized function. + * + * **Note:** The cache is exposed as the `cache` property on the memoized + * function. Its creation may be customized by replacing the `_.memoize.Cache` + * constructor with one whose instances implement the + * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object) + * method interface of `clear`, `delete`, `get`, `has`, and `set`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {Function} func The function to have its output memoized. + * @param {Function} [resolver] The function to resolve the cache key. + * @returns {Function} Returns the new memoized function. + * @example + * + * var object = { 'a': 1, 'b': 2 }; + * var other = { 'c': 3, 'd': 4 }; + * + * var values = _.memoize(_.values); + * values(object); + * // => [1, 2] + * + * values(other); + * // => [3, 4] + * + * object.a = 2; + * values(object); + * // => [1, 2] + * + * // Modify the result cache. + * values.cache.set(object, ['a', 'b']); + * values(object); + * // => ['a', 'b'] + * + * // Replace `_.memoize.Cache`. + * _.memoize.Cache = WeakMap; + */ + function memoize(func, resolver) { + if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) { + throw new TypeError(FUNC_ERROR_TEXT); + } + var memoized = function() { + var args = arguments, + key = resolver ? resolver.apply(this, args) : args[0], + cache = memoized.cache; + + if (cache.has(key)) { + return cache.get(key); + } + var result = func.apply(this, args); + memoized.cache = cache.set(key, result) || cache; + return result; + }; + memoized.cache = new (memoize.Cache || MapCache); + return memoized; + } + + // Expose `MapCache`. + memoize.Cache = MapCache; + + /** + * Creates a function that negates the result of the predicate `func`. The + * `func` predicate is invoked with the `this` binding and arguments of the + * created function. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Function + * @param {Function} predicate The predicate to negate. + * @returns {Function} Returns the new negated function. + * @example + * + * function isEven(n) { + * return n % 2 == 0; + * } + * + * _.filter([1, 2, 3, 4, 5, 6], _.negate(isEven)); + * // => [1, 3, 5] + */ + function negate(predicate) { + if (typeof predicate != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + return function() { + var args = arguments; + switch (args.length) { + case 0: return !predicate.call(this); + case 1: return !predicate.call(this, args[0]); + case 2: return !predicate.call(this, args[0], args[1]); + case 3: return !predicate.call(this, args[0], args[1], args[2]); + } + return !predicate.apply(this, args); + }; + } + + /** + * Creates a function that is restricted to invoking `func` once. Repeat calls + * to the function return the value of the first invocation. The `func` is + * invoked with the `this` binding and arguments of the created function. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {Function} func The function to restrict. + * @returns {Function} Returns the new restricted function. + * @example + * + * var initialize = _.once(createApplication); + * initialize(); + * initialize(); + * // => `createApplication` is invoked once + */ + function once(func) { + return before(2, func); + } + + /** + * Creates a function that invokes `func` with its arguments transformed. + * + * @static + * @since 4.0.0 + * @memberOf _ + * @category Function + * @param {Function} func The function to wrap. + * @param {...(Function|Function[])} [transforms=[_.identity]] + * The argument transforms. + * @returns {Function} Returns the new function. + * @example + * + * function doubled(n) { + * return n * 2; + * } + * + * function square(n) { + * return n * n; + * } + * + * var func = _.overArgs(function(x, y) { + * return [x, y]; + * }, [square, doubled]); + * + * func(9, 3); + * // => [81, 6] + * + * func(10, 5); + * // => [100, 10] + */ + var overArgs = castRest(function(func, transforms) { + transforms = (transforms.length == 1 && isArray(transforms[0])) + ? arrayMap(transforms[0], baseUnary(getIteratee())) + : arrayMap(baseFlatten(transforms, 1), baseUnary(getIteratee())); + + var funcsLength = transforms.length; + return baseRest(function(args) { + var index = -1, + length = nativeMin(args.length, funcsLength); + + while (++index < length) { + args[index] = transforms[index].call(this, args[index]); + } + return apply(func, this, args); + }); + }); + + /** + * Creates a function that invokes `func` with `partials` prepended to the + * arguments it receives. This method is like `_.bind` except it does **not** + * alter the `this` binding. + * + * The `_.partial.placeholder` value, which defaults to `_` in monolithic + * builds, may be used as a placeholder for partially applied arguments. + * + * **Note:** This method doesn't set the "length" property of partially + * applied functions. + * + * @static + * @memberOf _ + * @since 0.2.0 + * @category Function + * @param {Function} func The function to partially apply arguments to. + * @param {...*} [partials] The arguments to be partially applied. + * @returns {Function} Returns the new partially applied function. + * @example + * + * function greet(greeting, name) { + * return greeting + ' ' + name; + * } + * + * var sayHelloTo = _.partial(greet, 'hello'); + * sayHelloTo('fred'); + * // => 'hello fred' + * + * // Partially applied with placeholders. + * var greetFred = _.partial(greet, _, 'fred'); + * greetFred('hi'); + * // => 'hi fred' + */ + var partial = baseRest(function(func, partials) { + var holders = replaceHolders(partials, getHolder(partial)); + return createWrap(func, WRAP_PARTIAL_FLAG, undefined, partials, holders); + }); + + /** + * This method is like `_.partial` except that partially applied arguments + * are appended to the arguments it receives. + * + * The `_.partialRight.placeholder` value, which defaults to `_` in monolithic + * builds, may be used as a placeholder for partially applied arguments. + * + * **Note:** This method doesn't set the "length" property of partially + * applied functions. + * + * @static + * @memberOf _ + * @since 1.0.0 + * @category Function + * @param {Function} func The function to partially apply arguments to. + * @param {...*} [partials] The arguments to be partially applied. + * @returns {Function} Returns the new partially applied function. + * @example + * + * function greet(greeting, name) { + * return greeting + ' ' + name; + * } + * + * var greetFred = _.partialRight(greet, 'fred'); + * greetFred('hi'); + * // => 'hi fred' + * + * // Partially applied with placeholders. + * var sayHelloTo = _.partialRight(greet, 'hello', _); + * sayHelloTo('fred'); + * // => 'hello fred' + */ + var partialRight = baseRest(function(func, partials) { + var holders = replaceHolders(partials, getHolder(partialRight)); + return createWrap(func, WRAP_PARTIAL_RIGHT_FLAG, undefined, partials, holders); + }); + + /** + * Creates a function that invokes `func` with arguments arranged according + * to the specified `indexes` where the argument value at the first index is + * provided as the first argument, the argument value at the second index is + * provided as the second argument, and so on. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Function + * @param {Function} func The function to rearrange arguments for. + * @param {...(number|number[])} indexes The arranged argument indexes. + * @returns {Function} Returns the new function. + * @example + * + * var rearged = _.rearg(function(a, b, c) { + * return [a, b, c]; + * }, [2, 0, 1]); + * + * rearged('b', 'c', 'a') + * // => ['a', 'b', 'c'] + */ + var rearg = flatRest(function(func, indexes) { + return createWrap(func, WRAP_REARG_FLAG, undefined, undefined, undefined, indexes); + }); + + /** + * Creates a function that invokes `func` with the `this` binding of the + * created function and arguments from `start` and beyond provided as + * an array. + * + * **Note:** This method is based on the + * [rest parameter](https://mdn.io/rest_parameters). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Function + * @param {Function} func The function to apply a rest parameter to. + * @param {number} [start=func.length-1] The start position of the rest parameter. + * @returns {Function} Returns the new function. + * @example + * + * var say = _.rest(function(what, names) { + * return what + ' ' + _.initial(names).join(', ') + + * (_.size(names) > 1 ? ', & ' : '') + _.last(names); + * }); + * + * say('hello', 'fred', 'barney', 'pebbles'); + * // => 'hello fred, barney, & pebbles' + */ + function rest(func, start) { + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + start = start === undefined ? start : toInteger(start); + return baseRest(func, start); + } + + /** + * Creates a function that invokes `func` with the `this` binding of the + * create function and an array of arguments much like + * [`Function#apply`](http://www.ecma-international.org/ecma-262/7.0/#sec-function.prototype.apply). + * + * **Note:** This method is based on the + * [spread operator](https://mdn.io/spread_operator). + * + * @static + * @memberOf _ + * @since 3.2.0 + * @category Function + * @param {Function} func The function to spread arguments over. + * @param {number} [start=0] The start position of the spread. + * @returns {Function} Returns the new function. + * @example + * + * var say = _.spread(function(who, what) { + * return who + ' says ' + what; + * }); + * + * say(['fred', 'hello']); + * // => 'fred says hello' + * + * var numbers = Promise.all([ + * Promise.resolve(40), + * Promise.resolve(36) + * ]); + * + * numbers.then(_.spread(function(x, y) { + * return x + y; + * })); + * // => a Promise of 76 + */ + function spread(func, start) { + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + start = start == null ? 0 : nativeMax(toInteger(start), 0); + return baseRest(function(args) { + var array = args[start], + otherArgs = castSlice(args, 0, start); + + if (array) { + arrayPush(otherArgs, array); + } + return apply(func, this, otherArgs); + }); + } + + /** + * Creates a throttled function that only invokes `func` at most once per + * every `wait` milliseconds. The throttled function comes with a `cancel` + * method to cancel delayed `func` invocations and a `flush` method to + * immediately invoke them. Provide `options` to indicate whether `func` + * should be invoked on the leading and/or trailing edge of the `wait` + * timeout. The `func` is invoked with the last arguments provided to the + * throttled function. Subsequent calls to the throttled function return the + * result of the last `func` invocation. + * + * **Note:** If `leading` and `trailing` options are `true`, `func` is + * invoked on the trailing edge of the timeout only if the throttled function + * is invoked more than once during the `wait` timeout. + * + * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred + * until to the next tick, similar to `setTimeout` with a timeout of `0`. + * + * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/) + * for details over the differences between `_.throttle` and `_.debounce`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {Function} func The function to throttle. + * @param {number} [wait=0] The number of milliseconds to throttle invocations to. + * @param {Object} [options={}] The options object. + * @param {boolean} [options.leading=true] + * Specify invoking on the leading edge of the timeout. + * @param {boolean} [options.trailing=true] + * Specify invoking on the trailing edge of the timeout. + * @returns {Function} Returns the new throttled function. + * @example + * + * // Avoid excessively updating the position while scrolling. + * jQuery(window).on('scroll', _.throttle(updatePosition, 100)); + * + * // Invoke `renewToken` when the click event is fired, but not more than once every 5 minutes. + * var throttled = _.throttle(renewToken, 300000, { 'trailing': false }); + * jQuery(element).on('click', throttled); + * + * // Cancel the trailing throttled invocation. + * jQuery(window).on('popstate', throttled.cancel); + */ + function throttle(func, wait, options) { + var leading = true, + trailing = true; + + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + if (isObject(options)) { + leading = 'leading' in options ? !!options.leading : leading; + trailing = 'trailing' in options ? !!options.trailing : trailing; + } + return debounce(func, wait, { + 'leading': leading, + 'maxWait': wait, + 'trailing': trailing + }); + } + + /** + * Creates a function that accepts up to one argument, ignoring any + * additional arguments. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Function + * @param {Function} func The function to cap arguments for. + * @returns {Function} Returns the new capped function. + * @example + * + * _.map(['6', '8', '10'], _.unary(parseInt)); + * // => [6, 8, 10] + */ + function unary(func) { + return ary(func, 1); + } + + /** + * Creates a function that provides `value` to `wrapper` as its first + * argument. Any additional arguments provided to the function are appended + * to those provided to the `wrapper`. The wrapper is invoked with the `this` + * binding of the created function. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {*} value The value to wrap. + * @param {Function} [wrapper=identity] The wrapper function. + * @returns {Function} Returns the new function. + * @example + * + * var p = _.wrap(_.escape, function(func, text) { + * return '

' + func(text) + '

'; + * }); + * + * p('fred, barney, & pebbles'); + * // => '

fred, barney, & pebbles

' + */ + function wrap(value, wrapper) { + return partial(castFunction(wrapper), value); + } + + /*------------------------------------------------------------------------*/ + + /** + * Casts `value` as an array if it's not one. + * + * @static + * @memberOf _ + * @since 4.4.0 + * @category Lang + * @param {*} value The value to inspect. + * @returns {Array} Returns the cast array. + * @example + * + * _.castArray(1); + * // => [1] + * + * _.castArray({ 'a': 1 }); + * // => [{ 'a': 1 }] + * + * _.castArray('abc'); + * // => ['abc'] + * + * _.castArray(null); + * // => [null] + * + * _.castArray(undefined); + * // => [undefined] + * + * _.castArray(); + * // => [] + * + * var array = [1, 2, 3]; + * console.log(_.castArray(array) === array); + * // => true + */ + function castArray() { + if (!arguments.length) { + return []; + } + var value = arguments[0]; + return isArray(value) ? value : [value]; + } + + /** + * Creates a shallow clone of `value`. + * + * **Note:** This method is loosely based on the + * [structured clone algorithm](https://mdn.io/Structured_clone_algorithm) + * and supports cloning arrays, array buffers, booleans, date objects, maps, + * numbers, `Object` objects, regexes, sets, strings, symbols, and typed + * arrays. The own enumerable properties of `arguments` objects are cloned + * as plain objects. An empty object is returned for uncloneable values such + * as error objects, functions, DOM nodes, and WeakMaps. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to clone. + * @returns {*} Returns the cloned value. + * @see _.cloneDeep + * @example + * + * var objects = [{ 'a': 1 }, { 'b': 2 }]; + * + * var shallow = _.clone(objects); + * console.log(shallow[0] === objects[0]); + * // => true + */ + function clone(value) { + return baseClone(value, CLONE_SYMBOLS_FLAG); + } + + /** + * This method is like `_.clone` except that it accepts `customizer` which + * is invoked to produce the cloned value. If `customizer` returns `undefined`, + * cloning is handled by the method instead. The `customizer` is invoked with + * up to four arguments; (value [, index|key, object, stack]). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to clone. + * @param {Function} [customizer] The function to customize cloning. + * @returns {*} Returns the cloned value. + * @see _.cloneDeepWith + * @example + * + * function customizer(value) { + * if (_.isElement(value)) { + * return value.cloneNode(false); + * } + * } + * + * var el = _.cloneWith(document.body, customizer); + * + * console.log(el === document.body); + * // => false + * console.log(el.nodeName); + * // => 'BODY' + * console.log(el.childNodes.length); + * // => 0 + */ + function cloneWith(value, customizer) { + customizer = typeof customizer == 'function' ? customizer : undefined; + return baseClone(value, CLONE_SYMBOLS_FLAG, customizer); + } + + /** + * This method is like `_.clone` except that it recursively clones `value`. + * + * @static + * @memberOf _ + * @since 1.0.0 + * @category Lang + * @param {*} value The value to recursively clone. + * @returns {*} Returns the deep cloned value. + * @see _.clone + * @example + * + * var objects = [{ 'a': 1 }, { 'b': 2 }]; + * + * var deep = _.cloneDeep(objects); + * console.log(deep[0] === objects[0]); + * // => false + */ + function cloneDeep(value) { + return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG); + } + + /** + * This method is like `_.cloneWith` except that it recursively clones `value`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to recursively clone. + * @param {Function} [customizer] The function to customize cloning. + * @returns {*} Returns the deep cloned value. + * @see _.cloneWith + * @example + * + * function customizer(value) { + * if (_.isElement(value)) { + * return value.cloneNode(true); + * } + * } + * + * var el = _.cloneDeepWith(document.body, customizer); + * + * console.log(el === document.body); + * // => false + * console.log(el.nodeName); + * // => 'BODY' + * console.log(el.childNodes.length); + * // => 20 + */ + function cloneDeepWith(value, customizer) { + customizer = typeof customizer == 'function' ? customizer : undefined; + return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG, customizer); + } + + /** + * Checks if `object` conforms to `source` by invoking the predicate + * properties of `source` with the corresponding property values of `object`. + * + * **Note:** This method is equivalent to `_.conforms` when `source` is + * partially applied. + * + * @static + * @memberOf _ + * @since 4.14.0 + * @category Lang + * @param {Object} object The object to inspect. + * @param {Object} source The object of property predicates to conform to. + * @returns {boolean} Returns `true` if `object` conforms, else `false`. + * @example + * + * var object = { 'a': 1, 'b': 2 }; + * + * _.conformsTo(object, { 'b': function(n) { return n > 1; } }); + * // => true + * + * _.conformsTo(object, { 'b': function(n) { return n > 2; } }); + * // => false + */ + function conformsTo(object, source) { + return source == null || baseConformsTo(object, source, keys(source)); + } + + /** + * Performs a + * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * comparison between two values to determine if they are equivalent. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if the values are equivalent, else `false`. + * @example + * + * var object = { 'a': 1 }; + * var other = { 'a': 1 }; + * + * _.eq(object, object); + * // => true + * + * _.eq(object, other); + * // => false + * + * _.eq('a', 'a'); + * // => true + * + * _.eq('a', Object('a')); + * // => false + * + * _.eq(NaN, NaN); + * // => true + */ + function eq(value, other) { + return value === other || (value !== value && other !== other); + } + + /** + * Checks if `value` is greater than `other`. + * + * @static + * @memberOf _ + * @since 3.9.0 + * @category Lang + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if `value` is greater than `other`, + * else `false`. + * @see _.lt + * @example + * + * _.gt(3, 1); + * // => true + * + * _.gt(3, 3); + * // => false + * + * _.gt(1, 3); + * // => false + */ + var gt = createRelationalOperation(baseGt); + + /** + * Checks if `value` is greater than or equal to `other`. + * + * @static + * @memberOf _ + * @since 3.9.0 + * @category Lang + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if `value` is greater than or equal to + * `other`, else `false`. + * @see _.lte + * @example + * + * _.gte(3, 1); + * // => true + * + * _.gte(3, 3); + * // => true + * + * _.gte(1, 3); + * // => false + */ + var gte = createRelationalOperation(function(value, other) { + return value >= other; + }); + + /** + * Checks if `value` is likely an `arguments` object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an `arguments` object, + * else `false`. + * @example + * + * _.isArguments(function() { return arguments; }()); + * // => true + * + * _.isArguments([1, 2, 3]); + * // => false + */ + var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) { + return isObjectLike(value) && hasOwnProperty.call(value, 'callee') && + !propertyIsEnumerable.call(value, 'callee'); + }; + + /** + * Checks if `value` is classified as an `Array` object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an array, else `false`. + * @example + * + * _.isArray([1, 2, 3]); + * // => true + * + * _.isArray(document.body.children); + * // => false + * + * _.isArray('abc'); + * // => false + * + * _.isArray(_.noop); + * // => false + */ + var isArray = Array.isArray; + + /** + * Checks if `value` is classified as an `ArrayBuffer` object. + * + * @static + * @memberOf _ + * @since 4.3.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an array buffer, else `false`. + * @example + * + * _.isArrayBuffer(new ArrayBuffer(2)); + * // => true + * + * _.isArrayBuffer(new Array(2)); + * // => false + */ + var isArrayBuffer = nodeIsArrayBuffer ? baseUnary(nodeIsArrayBuffer) : baseIsArrayBuffer; + + /** + * Checks if `value` is array-like. A value is considered array-like if it's + * not a function and has a `value.length` that's an integer greater than or + * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is array-like, else `false`. + * @example + * + * _.isArrayLike([1, 2, 3]); + * // => true + * + * _.isArrayLike(document.body.children); + * // => true + * + * _.isArrayLike('abc'); + * // => true + * + * _.isArrayLike(_.noop); + * // => false + */ + function isArrayLike(value) { + return value != null && isLength(value.length) && !isFunction(value); + } + + /** + * This method is like `_.isArrayLike` except that it also checks if `value` + * is an object. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an array-like object, + * else `false`. + * @example + * + * _.isArrayLikeObject([1, 2, 3]); + * // => true + * + * _.isArrayLikeObject(document.body.children); + * // => true + * + * _.isArrayLikeObject('abc'); + * // => false + * + * _.isArrayLikeObject(_.noop); + * // => false + */ + function isArrayLikeObject(value) { + return isObjectLike(value) && isArrayLike(value); + } + + /** + * Checks if `value` is classified as a boolean primitive or object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a boolean, else `false`. + * @example + * + * _.isBoolean(false); + * // => true + * + * _.isBoolean(null); + * // => false + */ + function isBoolean(value) { + return value === true || value === false || + (isObjectLike(value) && baseGetTag(value) == boolTag); + } + + /** + * Checks if `value` is a buffer. + * + * @static + * @memberOf _ + * @since 4.3.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a buffer, else `false`. + * @example + * + * _.isBuffer(new Buffer(2)); + * // => true + * + * _.isBuffer(new Uint8Array(2)); + * // => false + */ + var isBuffer = nativeIsBuffer || stubFalse; + + /** + * Checks if `value` is classified as a `Date` object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a date object, else `false`. + * @example + * + * _.isDate(new Date); + * // => true + * + * _.isDate('Mon April 23 2012'); + * // => false + */ + var isDate = nodeIsDate ? baseUnary(nodeIsDate) : baseIsDate; + + /** + * Checks if `value` is likely a DOM element. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a DOM element, else `false`. + * @example + * + * _.isElement(document.body); + * // => true + * + * _.isElement(''); + * // => false + */ + function isElement(value) { + return isObjectLike(value) && value.nodeType === 1 && !isPlainObject(value); + } + + /** + * Checks if `value` is an empty object, collection, map, or set. + * + * Objects are considered empty if they have no own enumerable string keyed + * properties. + * + * Array-like values such as `arguments` objects, arrays, buffers, strings, or + * jQuery-like collections are considered empty if they have a `length` of `0`. + * Similarly, maps and sets are considered empty if they have a `size` of `0`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is empty, else `false`. + * @example + * + * _.isEmpty(null); + * // => true + * + * _.isEmpty(true); + * // => true + * + * _.isEmpty(1); + * // => true + * + * _.isEmpty([1, 2, 3]); + * // => false + * + * _.isEmpty({ 'a': 1 }); + * // => false + */ + function isEmpty(value) { + if (value == null) { + return true; + } + if (isArrayLike(value) && + (isArray(value) || typeof value == 'string' || typeof value.splice == 'function' || + isBuffer(value) || isTypedArray(value) || isArguments(value))) { + return !value.length; + } + var tag = getTag(value); + if (tag == mapTag || tag == setTag) { + return !value.size; + } + if (isPrototype(value)) { + return !baseKeys(value).length; + } + for (var key in value) { + if (hasOwnProperty.call(value, key)) { + return false; + } + } + return true; + } + + /** + * Performs a deep comparison between two values to determine if they are + * equivalent. + * + * **Note:** This method supports comparing arrays, array buffers, booleans, + * date objects, error objects, maps, numbers, `Object` objects, regexes, + * sets, strings, symbols, and typed arrays. `Object` objects are compared + * by their own, not inherited, enumerable properties. Functions and DOM + * nodes are compared by strict equality, i.e. `===`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if the values are equivalent, else `false`. + * @example + * + * var object = { 'a': 1 }; + * var other = { 'a': 1 }; + * + * _.isEqual(object, other); + * // => true + * + * object === other; + * // => false + */ + function isEqual(value, other) { + return baseIsEqual(value, other); + } + + /** + * This method is like `_.isEqual` except that it accepts `customizer` which + * is invoked to compare values. If `customizer` returns `undefined`, comparisons + * are handled by the method instead. The `customizer` is invoked with up to + * six arguments: (objValue, othValue [, index|key, object, other, stack]). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @param {Function} [customizer] The function to customize comparisons. + * @returns {boolean} Returns `true` if the values are equivalent, else `false`. + * @example + * + * function isGreeting(value) { + * return /^h(?:i|ello)$/.test(value); + * } + * + * function customizer(objValue, othValue) { + * if (isGreeting(objValue) && isGreeting(othValue)) { + * return true; + * } + * } + * + * var array = ['hello', 'goodbye']; + * var other = ['hi', 'goodbye']; + * + * _.isEqualWith(array, other, customizer); + * // => true + */ + function isEqualWith(value, other, customizer) { + customizer = typeof customizer == 'function' ? customizer : undefined; + var result = customizer ? customizer(value, other) : undefined; + return result === undefined ? baseIsEqual(value, other, undefined, customizer) : !!result; + } + + /** + * Checks if `value` is an `Error`, `EvalError`, `RangeError`, `ReferenceError`, + * `SyntaxError`, `TypeError`, or `URIError` object. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an error object, else `false`. + * @example + * + * _.isError(new Error); + * // => true + * + * _.isError(Error); + * // => false + */ + function isError(value) { + if (!isObjectLike(value)) { + return false; + } + var tag = baseGetTag(value); + return tag == errorTag || tag == domExcTag || + (typeof value.message == 'string' && typeof value.name == 'string' && !isPlainObject(value)); + } + + /** + * Checks if `value` is a finite primitive number. + * + * **Note:** This method is based on + * [`Number.isFinite`](https://mdn.io/Number/isFinite). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a finite number, else `false`. + * @example + * + * _.isFinite(3); + * // => true + * + * _.isFinite(Number.MIN_VALUE); + * // => true + * + * _.isFinite(Infinity); + * // => false + * + * _.isFinite('3'); + * // => false + */ + function isFinite(value) { + return typeof value == 'number' && nativeIsFinite(value); + } + + /** + * Checks if `value` is classified as a `Function` object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a function, else `false`. + * @example + * + * _.isFunction(_); + * // => true + * + * _.isFunction(/abc/); + * // => false + */ + function isFunction(value) { + if (!isObject(value)) { + return false; + } + // The use of `Object#toString` avoids issues with the `typeof` operator + // in Safari 9 which returns 'object' for typed arrays and other constructors. + var tag = baseGetTag(value); + return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag; + } + + /** + * Checks if `value` is an integer. + * + * **Note:** This method is based on + * [`Number.isInteger`](https://mdn.io/Number/isInteger). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an integer, else `false`. + * @example + * + * _.isInteger(3); + * // => true + * + * _.isInteger(Number.MIN_VALUE); + * // => false + * + * _.isInteger(Infinity); + * // => false + * + * _.isInteger('3'); + * // => false + */ + function isInteger(value) { + return typeof value == 'number' && value == toInteger(value); + } + + /** + * Checks if `value` is a valid array-like length. + * + * **Note:** This method is loosely based on + * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a valid length, else `false`. + * @example + * + * _.isLength(3); + * // => true + * + * _.isLength(Number.MIN_VALUE); + * // => false + * + * _.isLength(Infinity); + * // => false + * + * _.isLength('3'); + * // => false + */ + function isLength(value) { + return typeof value == 'number' && + value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER; + } + + /** + * Checks if `value` is the + * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types) + * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`) + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an object, else `false`. + * @example + * + * _.isObject({}); + * // => true + * + * _.isObject([1, 2, 3]); + * // => true + * + * _.isObject(_.noop); + * // => true + * + * _.isObject(null); + * // => false + */ + function isObject(value) { + var type = typeof value; + return value != null && (type == 'object' || type == 'function'); + } + + /** + * Checks if `value` is object-like. A value is object-like if it's not `null` + * and has a `typeof` result of "object". + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is object-like, else `false`. + * @example + * + * _.isObjectLike({}); + * // => true + * + * _.isObjectLike([1, 2, 3]); + * // => true + * + * _.isObjectLike(_.noop); + * // => false + * + * _.isObjectLike(null); + * // => false + */ + function isObjectLike(value) { + return value != null && typeof value == 'object'; + } + + /** + * Checks if `value` is classified as a `Map` object. + * + * @static + * @memberOf _ + * @since 4.3.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a map, else `false`. + * @example + * + * _.isMap(new Map); + * // => true + * + * _.isMap(new WeakMap); + * // => false + */ + var isMap = nodeIsMap ? baseUnary(nodeIsMap) : baseIsMap; + + /** + * Performs a partial deep comparison between `object` and `source` to + * determine if `object` contains equivalent property values. + * + * **Note:** This method is equivalent to `_.matches` when `source` is + * partially applied. + * + * Partial comparisons will match empty array and empty object `source` + * values against any array or object value, respectively. See `_.isEqual` + * for a list of supported value comparisons. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Lang + * @param {Object} object The object to inspect. + * @param {Object} source The object of property values to match. + * @returns {boolean} Returns `true` if `object` is a match, else `false`. + * @example + * + * var object = { 'a': 1, 'b': 2 }; + * + * _.isMatch(object, { 'b': 2 }); + * // => true + * + * _.isMatch(object, { 'b': 1 }); + * // => false + */ + function isMatch(object, source) { + return object === source || baseIsMatch(object, source, getMatchData(source)); + } + + /** + * This method is like `_.isMatch` except that it accepts `customizer` which + * is invoked to compare values. If `customizer` returns `undefined`, comparisons + * are handled by the method instead. The `customizer` is invoked with five + * arguments: (objValue, srcValue, index|key, object, source). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {Object} object The object to inspect. + * @param {Object} source The object of property values to match. + * @param {Function} [customizer] The function to customize comparisons. + * @returns {boolean} Returns `true` if `object` is a match, else `false`. + * @example + * + * function isGreeting(value) { + * return /^h(?:i|ello)$/.test(value); + * } + * + * function customizer(objValue, srcValue) { + * if (isGreeting(objValue) && isGreeting(srcValue)) { + * return true; + * } + * } + * + * var object = { 'greeting': 'hello' }; + * var source = { 'greeting': 'hi' }; + * + * _.isMatchWith(object, source, customizer); + * // => true + */ + function isMatchWith(object, source, customizer) { + customizer = typeof customizer == 'function' ? customizer : undefined; + return baseIsMatch(object, source, getMatchData(source), customizer); + } + + /** + * Checks if `value` is `NaN`. + * + * **Note:** This method is based on + * [`Number.isNaN`](https://mdn.io/Number/isNaN) and is not the same as + * global [`isNaN`](https://mdn.io/isNaN) which returns `true` for + * `undefined` and other non-number values. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`. + * @example + * + * _.isNaN(NaN); + * // => true + * + * _.isNaN(new Number(NaN)); + * // => true + * + * isNaN(undefined); + * // => true + * + * _.isNaN(undefined); + * // => false + */ + function isNaN(value) { + // An `NaN` primitive is the only value that is not equal to itself. + // Perform the `toStringTag` check first to avoid errors with some + // ActiveX objects in IE. + return isNumber(value) && value != +value; + } + + /** + * Checks if `value` is a pristine native function. + * + * **Note:** This method can't reliably detect native functions in the presence + * of the core-js package because core-js circumvents this kind of detection. + * Despite multiple requests, the core-js maintainer has made it clear: any + * attempt to fix the detection will be obstructed. As a result, we're left + * with little choice but to throw an error. Unfortunately, this also affects + * packages, like [babel-polyfill](https://www.npmjs.com/package/babel-polyfill), + * which rely on core-js. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a native function, + * else `false`. + * @example + * + * _.isNative(Array.prototype.push); + * // => true + * + * _.isNative(_); + * // => false + */ + function isNative(value) { + if (isMaskable(value)) { + throw new Error(CORE_ERROR_TEXT); + } + return baseIsNative(value); + } + + /** + * Checks if `value` is `null`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is `null`, else `false`. + * @example + * + * _.isNull(null); + * // => true + * + * _.isNull(void 0); + * // => false + */ + function isNull(value) { + return value === null; + } + + /** + * Checks if `value` is `null` or `undefined`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is nullish, else `false`. + * @example + * + * _.isNil(null); + * // => true + * + * _.isNil(void 0); + * // => true + * + * _.isNil(NaN); + * // => false + */ + function isNil(value) { + return value == null; + } + + /** + * Checks if `value` is classified as a `Number` primitive or object. + * + * **Note:** To exclude `Infinity`, `-Infinity`, and `NaN`, which are + * classified as numbers, use the `_.isFinite` method. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a number, else `false`. + * @example + * + * _.isNumber(3); + * // => true + * + * _.isNumber(Number.MIN_VALUE); + * // => true + * + * _.isNumber(Infinity); + * // => true + * + * _.isNumber('3'); + * // => false + */ + function isNumber(value) { + return typeof value == 'number' || + (isObjectLike(value) && baseGetTag(value) == numberTag); + } + + /** + * Checks if `value` is a plain object, that is, an object created by the + * `Object` constructor or one with a `[[Prototype]]` of `null`. + * + * @static + * @memberOf _ + * @since 0.8.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a plain object, else `false`. + * @example + * + * function Foo() { + * this.a = 1; + * } + * + * _.isPlainObject(new Foo); + * // => false + * + * _.isPlainObject([1, 2, 3]); + * // => false + * + * _.isPlainObject({ 'x': 0, 'y': 0 }); + * // => true + * + * _.isPlainObject(Object.create(null)); + * // => true + */ + function isPlainObject(value) { + if (!isObjectLike(value) || baseGetTag(value) != objectTag) { + return false; + } + var proto = getPrototype(value); + if (proto === null) { + return true; + } + var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor; + return typeof Ctor == 'function' && Ctor instanceof Ctor && + funcToString.call(Ctor) == objectCtorString; + } + + /** + * Checks if `value` is classified as a `RegExp` object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a regexp, else `false`. + * @example + * + * _.isRegExp(/abc/); + * // => true + * + * _.isRegExp('/abc/'); + * // => false + */ + var isRegExp = nodeIsRegExp ? baseUnary(nodeIsRegExp) : baseIsRegExp; + + /** + * Checks if `value` is a safe integer. An integer is safe if it's an IEEE-754 + * double precision number which isn't the result of a rounded unsafe integer. + * + * **Note:** This method is based on + * [`Number.isSafeInteger`](https://mdn.io/Number/isSafeInteger). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a safe integer, else `false`. + * @example + * + * _.isSafeInteger(3); + * // => true + * + * _.isSafeInteger(Number.MIN_VALUE); + * // => false + * + * _.isSafeInteger(Infinity); + * // => false + * + * _.isSafeInteger('3'); + * // => false + */ + function isSafeInteger(value) { + return isInteger(value) && value >= -MAX_SAFE_INTEGER && value <= MAX_SAFE_INTEGER; + } + + /** + * Checks if `value` is classified as a `Set` object. + * + * @static + * @memberOf _ + * @since 4.3.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a set, else `false`. + * @example + * + * _.isSet(new Set); + * // => true + * + * _.isSet(new WeakSet); + * // => false + */ + var isSet = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet; + + /** + * Checks if `value` is classified as a `String` primitive or object. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a string, else `false`. + * @example + * + * _.isString('abc'); + * // => true + * + * _.isString(1); + * // => false + */ + function isString(value) { + return typeof value == 'string' || + (!isArray(value) && isObjectLike(value) && baseGetTag(value) == stringTag); + } + + /** + * Checks if `value` is classified as a `Symbol` primitive or object. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a symbol, else `false`. + * @example + * + * _.isSymbol(Symbol.iterator); + * // => true + * + * _.isSymbol('abc'); + * // => false + */ + function isSymbol(value) { + return typeof value == 'symbol' || + (isObjectLike(value) && baseGetTag(value) == symbolTag); + } + + /** + * Checks if `value` is classified as a typed array. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a typed array, else `false`. + * @example + * + * _.isTypedArray(new Uint8Array); + * // => true + * + * _.isTypedArray([]); + * // => false + */ + var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray; + + /** + * Checks if `value` is `undefined`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is `undefined`, else `false`. + * @example + * + * _.isUndefined(void 0); + * // => true + * + * _.isUndefined(null); + * // => false + */ + function isUndefined(value) { + return value === undefined; + } + + /** + * Checks if `value` is classified as a `WeakMap` object. + * + * @static + * @memberOf _ + * @since 4.3.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a weak map, else `false`. + * @example + * + * _.isWeakMap(new WeakMap); + * // => true + * + * _.isWeakMap(new Map); + * // => false + */ + function isWeakMap(value) { + return isObjectLike(value) && getTag(value) == weakMapTag; + } + + /** + * Checks if `value` is classified as a `WeakSet` object. + * + * @static + * @memberOf _ + * @since 4.3.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a weak set, else `false`. + * @example + * + * _.isWeakSet(new WeakSet); + * // => true + * + * _.isWeakSet(new Set); + * // => false + */ + function isWeakSet(value) { + return isObjectLike(value) && baseGetTag(value) == weakSetTag; + } + + /** + * Checks if `value` is less than `other`. + * + * @static + * @memberOf _ + * @since 3.9.0 + * @category Lang + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if `value` is less than `other`, + * else `false`. + * @see _.gt + * @example + * + * _.lt(1, 3); + * // => true + * + * _.lt(3, 3); + * // => false + * + * _.lt(3, 1); + * // => false + */ + var lt = createRelationalOperation(baseLt); + + /** + * Checks if `value` is less than or equal to `other`. + * + * @static + * @memberOf _ + * @since 3.9.0 + * @category Lang + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if `value` is less than or equal to + * `other`, else `false`. + * @see _.gte + * @example + * + * _.lte(1, 3); + * // => true + * + * _.lte(3, 3); + * // => true + * + * _.lte(3, 1); + * // => false + */ + var lte = createRelationalOperation(function(value, other) { + return value <= other; + }); + + /** + * Converts `value` to an array. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Lang + * @param {*} value The value to convert. + * @returns {Array} Returns the converted array. + * @example + * + * _.toArray({ 'a': 1, 'b': 2 }); + * // => [1, 2] + * + * _.toArray('abc'); + * // => ['a', 'b', 'c'] + * + * _.toArray(1); + * // => [] + * + * _.toArray(null); + * // => [] + */ + function toArray(value) { + if (!value) { + return []; + } + if (isArrayLike(value)) { + return isString(value) ? stringToArray(value) : copyArray(value); + } + if (symIterator && value[symIterator]) { + return iteratorToArray(value[symIterator]()); + } + var tag = getTag(value), + func = tag == mapTag ? mapToArray : (tag == setTag ? setToArray : values); + + return func(value); + } + + /** + * Converts `value` to a finite number. + * + * @static + * @memberOf _ + * @since 4.12.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {number} Returns the converted number. + * @example + * + * _.toFinite(3.2); + * // => 3.2 + * + * _.toFinite(Number.MIN_VALUE); + * // => 5e-324 + * + * _.toFinite(Infinity); + * // => 1.7976931348623157e+308 + * + * _.toFinite('3.2'); + * // => 3.2 + */ + function toFinite(value) { + if (!value) { + return value === 0 ? value : 0; + } + value = toNumber(value); + if (value === INFINITY || value === -INFINITY) { + var sign = (value < 0 ? -1 : 1); + return sign * MAX_INTEGER; + } + return value === value ? value : 0; + } + + /** + * Converts `value` to an integer. + * + * **Note:** This method is loosely based on + * [`ToInteger`](http://www.ecma-international.org/ecma-262/7.0/#sec-tointeger). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {number} Returns the converted integer. + * @example + * + * _.toInteger(3.2); + * // => 3 + * + * _.toInteger(Number.MIN_VALUE); + * // => 0 + * + * _.toInteger(Infinity); + * // => 1.7976931348623157e+308 + * + * _.toInteger('3.2'); + * // => 3 + */ + function toInteger(value) { + var result = toFinite(value), + remainder = result % 1; + + return result === result ? (remainder ? result - remainder : result) : 0; + } + + /** + * Converts `value` to an integer suitable for use as the length of an + * array-like object. + * + * **Note:** This method is based on + * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {number} Returns the converted integer. + * @example + * + * _.toLength(3.2); + * // => 3 + * + * _.toLength(Number.MIN_VALUE); + * // => 0 + * + * _.toLength(Infinity); + * // => 4294967295 + * + * _.toLength('3.2'); + * // => 3 + */ + function toLength(value) { + return value ? baseClamp(toInteger(value), 0, MAX_ARRAY_LENGTH) : 0; + } + + /** + * Converts `value` to a number. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to process. + * @returns {number} Returns the number. + * @example + * + * _.toNumber(3.2); + * // => 3.2 + * + * _.toNumber(Number.MIN_VALUE); + * // => 5e-324 + * + * _.toNumber(Infinity); + * // => Infinity + * + * _.toNumber('3.2'); + * // => 3.2 + */ + function toNumber(value) { + if (typeof value == 'number') { + return value; + } + if (isSymbol(value)) { + return NAN; + } + if (isObject(value)) { + var other = typeof value.valueOf == 'function' ? value.valueOf() : value; + value = isObject(other) ? (other + '') : other; + } + if (typeof value != 'string') { + return value === 0 ? value : +value; + } + value = baseTrim(value); + var isBinary = reIsBinary.test(value); + return (isBinary || reIsOctal.test(value)) + ? freeParseInt(value.slice(2), isBinary ? 2 : 8) + : (reIsBadHex.test(value) ? NAN : +value); + } + + /** + * Converts `value` to a plain object flattening inherited enumerable string + * keyed properties of `value` to own properties of the plain object. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {Object} Returns the converted plain object. + * @example + * + * function Foo() { + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.assign({ 'a': 1 }, new Foo); + * // => { 'a': 1, 'b': 2 } + * + * _.assign({ 'a': 1 }, _.toPlainObject(new Foo)); + * // => { 'a': 1, 'b': 2, 'c': 3 } + */ + function toPlainObject(value) { + return copyObject(value, keysIn(value)); + } + + /** + * Converts `value` to a safe integer. A safe integer can be compared and + * represented correctly. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {number} Returns the converted integer. + * @example + * + * _.toSafeInteger(3.2); + * // => 3 + * + * _.toSafeInteger(Number.MIN_VALUE); + * // => 0 + * + * _.toSafeInteger(Infinity); + * // => 9007199254740991 + * + * _.toSafeInteger('3.2'); + * // => 3 + */ + function toSafeInteger(value) { + return value + ? baseClamp(toInteger(value), -MAX_SAFE_INTEGER, MAX_SAFE_INTEGER) + : (value === 0 ? value : 0); + } + + /** + * Converts `value` to a string. An empty string is returned for `null` + * and `undefined` values. The sign of `-0` is preserved. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {string} Returns the converted string. + * @example + * + * _.toString(null); + * // => '' + * + * _.toString(-0); + * // => '-0' + * + * _.toString([1, 2, 3]); + * // => '1,2,3' + */ + function toString(value) { + return value == null ? '' : baseToString(value); + } + + /*------------------------------------------------------------------------*/ + + /** + * Assigns own enumerable string keyed properties of source objects to the + * destination object. Source objects are applied from left to right. + * Subsequent sources overwrite property assignments of previous sources. + * + * **Note:** This method mutates `object` and is loosely based on + * [`Object.assign`](https://mdn.io/Object/assign). + * + * @static + * @memberOf _ + * @since 0.10.0 + * @category Object + * @param {Object} object The destination object. + * @param {...Object} [sources] The source objects. + * @returns {Object} Returns `object`. + * @see _.assignIn + * @example + * + * function Foo() { + * this.a = 1; + * } + * + * function Bar() { + * this.c = 3; + * } + * + * Foo.prototype.b = 2; + * Bar.prototype.d = 4; + * + * _.assign({ 'a': 0 }, new Foo, new Bar); + * // => { 'a': 1, 'c': 3 } + */ + var assign = createAssigner(function(object, source) { + if (isPrototype(source) || isArrayLike(source)) { + copyObject(source, keys(source), object); + return; + } + for (var key in source) { + if (hasOwnProperty.call(source, key)) { + assignValue(object, key, source[key]); + } + } + }); + + /** + * This method is like `_.assign` except that it iterates over own and + * inherited source properties. + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @alias extend + * @category Object + * @param {Object} object The destination object. + * @param {...Object} [sources] The source objects. + * @returns {Object} Returns `object`. + * @see _.assign + * @example + * + * function Foo() { + * this.a = 1; + * } + * + * function Bar() { + * this.c = 3; + * } + * + * Foo.prototype.b = 2; + * Bar.prototype.d = 4; + * + * _.assignIn({ 'a': 0 }, new Foo, new Bar); + * // => { 'a': 1, 'b': 2, 'c': 3, 'd': 4 } + */ + var assignIn = createAssigner(function(object, source) { + copyObject(source, keysIn(source), object); + }); + + /** + * This method is like `_.assignIn` except that it accepts `customizer` + * which is invoked to produce the assigned values. If `customizer` returns + * `undefined`, assignment is handled by the method instead. The `customizer` + * is invoked with five arguments: (objValue, srcValue, key, object, source). + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @alias extendWith + * @category Object + * @param {Object} object The destination object. + * @param {...Object} sources The source objects. + * @param {Function} [customizer] The function to customize assigned values. + * @returns {Object} Returns `object`. + * @see _.assignWith + * @example + * + * function customizer(objValue, srcValue) { + * return _.isUndefined(objValue) ? srcValue : objValue; + * } + * + * var defaults = _.partialRight(_.assignInWith, customizer); + * + * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 }); + * // => { 'a': 1, 'b': 2 } + */ + var assignInWith = createAssigner(function(object, source, srcIndex, customizer) { + copyObject(source, keysIn(source), object, customizer); + }); + + /** + * This method is like `_.assign` except that it accepts `customizer` + * which is invoked to produce the assigned values. If `customizer` returns + * `undefined`, assignment is handled by the method instead. The `customizer` + * is invoked with five arguments: (objValue, srcValue, key, object, source). + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The destination object. + * @param {...Object} sources The source objects. + * @param {Function} [customizer] The function to customize assigned values. + * @returns {Object} Returns `object`. + * @see _.assignInWith + * @example + * + * function customizer(objValue, srcValue) { + * return _.isUndefined(objValue) ? srcValue : objValue; + * } + * + * var defaults = _.partialRight(_.assignWith, customizer); + * + * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 }); + * // => { 'a': 1, 'b': 2 } + */ + var assignWith = createAssigner(function(object, source, srcIndex, customizer) { + copyObject(source, keys(source), object, customizer); + }); + + /** + * Creates an array of values corresponding to `paths` of `object`. + * + * @static + * @memberOf _ + * @since 1.0.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {...(string|string[])} [paths] The property paths to pick. + * @returns {Array} Returns the picked values. + * @example + * + * var object = { 'a': [{ 'b': { 'c': 3 } }, 4] }; + * + * _.at(object, ['a[0].b.c', 'a[1]']); + * // => [3, 4] + */ + var at = flatRest(baseAt); + + /** + * Creates an object that inherits from the `prototype` object. If a + * `properties` object is given, its own enumerable string keyed properties + * are assigned to the created object. + * + * @static + * @memberOf _ + * @since 2.3.0 + * @category Object + * @param {Object} prototype The object to inherit from. + * @param {Object} [properties] The properties to assign to the object. + * @returns {Object} Returns the new object. + * @example + * + * function Shape() { + * this.x = 0; + * this.y = 0; + * } + * + * function Circle() { + * Shape.call(this); + * } + * + * Circle.prototype = _.create(Shape.prototype, { + * 'constructor': Circle + * }); + * + * var circle = new Circle; + * circle instanceof Circle; + * // => true + * + * circle instanceof Shape; + * // => true + */ + function create(prototype, properties) { + var result = baseCreate(prototype); + return properties == null ? result : baseAssign(result, properties); + } + + /** + * Assigns own and inherited enumerable string keyed properties of source + * objects to the destination object for all destination properties that + * resolve to `undefined`. Source objects are applied from left to right. + * Once a property is set, additional values of the same property are ignored. + * + * **Note:** This method mutates `object`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The destination object. + * @param {...Object} [sources] The source objects. + * @returns {Object} Returns `object`. + * @see _.defaultsDeep + * @example + * + * _.defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 }); + * // => { 'a': 1, 'b': 2 } + */ + var defaults = baseRest(function(object, sources) { + object = Object(object); + + var index = -1; + var length = sources.length; + var guard = length > 2 ? sources[2] : undefined; + + if (guard && isIterateeCall(sources[0], sources[1], guard)) { + length = 1; + } + + while (++index < length) { + var source = sources[index]; + var props = keysIn(source); + var propsIndex = -1; + var propsLength = props.length; + + while (++propsIndex < propsLength) { + var key = props[propsIndex]; + var value = object[key]; + + if (value === undefined || + (eq(value, objectProto[key]) && !hasOwnProperty.call(object, key))) { + object[key] = source[key]; + } + } + } + + return object; + }); + + /** + * This method is like `_.defaults` except that it recursively assigns + * default properties. + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 3.10.0 + * @category Object + * @param {Object} object The destination object. + * @param {...Object} [sources] The source objects. + * @returns {Object} Returns `object`. + * @see _.defaults + * @example + * + * _.defaultsDeep({ 'a': { 'b': 2 } }, { 'a': { 'b': 1, 'c': 3 } }); + * // => { 'a': { 'b': 2, 'c': 3 } } + */ + var defaultsDeep = baseRest(function(args) { + args.push(undefined, customDefaultsMerge); + return apply(mergeWith, undefined, args); + }); + + /** + * This method is like `_.find` except that it returns the key of the first + * element `predicate` returns truthy for instead of the element itself. + * + * @static + * @memberOf _ + * @since 1.1.0 + * @category Object + * @param {Object} object The object to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {string|undefined} Returns the key of the matched element, + * else `undefined`. + * @example + * + * var users = { + * 'barney': { 'age': 36, 'active': true }, + * 'fred': { 'age': 40, 'active': false }, + * 'pebbles': { 'age': 1, 'active': true } + * }; + * + * _.findKey(users, function(o) { return o.age < 40; }); + * // => 'barney' (iteration order is not guaranteed) + * + * // The `_.matches` iteratee shorthand. + * _.findKey(users, { 'age': 1, 'active': true }); + * // => 'pebbles' + * + * // The `_.matchesProperty` iteratee shorthand. + * _.findKey(users, ['active', false]); + * // => 'fred' + * + * // The `_.property` iteratee shorthand. + * _.findKey(users, 'active'); + * // => 'barney' + */ + function findKey(object, predicate) { + return baseFindKey(object, getIteratee(predicate, 3), baseForOwn); + } + + /** + * This method is like `_.findKey` except that it iterates over elements of + * a collection in the opposite order. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Object + * @param {Object} object The object to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {string|undefined} Returns the key of the matched element, + * else `undefined`. + * @example + * + * var users = { + * 'barney': { 'age': 36, 'active': true }, + * 'fred': { 'age': 40, 'active': false }, + * 'pebbles': { 'age': 1, 'active': true } + * }; + * + * _.findLastKey(users, function(o) { return o.age < 40; }); + * // => returns 'pebbles' assuming `_.findKey` returns 'barney' + * + * // The `_.matches` iteratee shorthand. + * _.findLastKey(users, { 'age': 36, 'active': true }); + * // => 'barney' + * + * // The `_.matchesProperty` iteratee shorthand. + * _.findLastKey(users, ['active', false]); + * // => 'fred' + * + * // The `_.property` iteratee shorthand. + * _.findLastKey(users, 'active'); + * // => 'pebbles' + */ + function findLastKey(object, predicate) { + return baseFindKey(object, getIteratee(predicate, 3), baseForOwnRight); + } + + /** + * Iterates over own and inherited enumerable string keyed properties of an + * object and invokes `iteratee` for each property. The iteratee is invoked + * with three arguments: (value, key, object). Iteratee functions may exit + * iteration early by explicitly returning `false`. + * + * @static + * @memberOf _ + * @since 0.3.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Object} Returns `object`. + * @see _.forInRight + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.forIn(new Foo, function(value, key) { + * console.log(key); + * }); + * // => Logs 'a', 'b', then 'c' (iteration order is not guaranteed). + */ + function forIn(object, iteratee) { + return object == null + ? object + : baseFor(object, getIteratee(iteratee, 3), keysIn); + } + + /** + * This method is like `_.forIn` except that it iterates over properties of + * `object` in the opposite order. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Object} Returns `object`. + * @see _.forIn + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.forInRight(new Foo, function(value, key) { + * console.log(key); + * }); + * // => Logs 'c', 'b', then 'a' assuming `_.forIn` logs 'a', 'b', then 'c'. + */ + function forInRight(object, iteratee) { + return object == null + ? object + : baseForRight(object, getIteratee(iteratee, 3), keysIn); + } + + /** + * Iterates over own enumerable string keyed properties of an object and + * invokes `iteratee` for each property. The iteratee is invoked with three + * arguments: (value, key, object). Iteratee functions may exit iteration + * early by explicitly returning `false`. + * + * @static + * @memberOf _ + * @since 0.3.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Object} Returns `object`. + * @see _.forOwnRight + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.forOwn(new Foo, function(value, key) { + * console.log(key); + * }); + * // => Logs 'a' then 'b' (iteration order is not guaranteed). + */ + function forOwn(object, iteratee) { + return object && baseForOwn(object, getIteratee(iteratee, 3)); + } + + /** + * This method is like `_.forOwn` except that it iterates over properties of + * `object` in the opposite order. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Object} Returns `object`. + * @see _.forOwn + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.forOwnRight(new Foo, function(value, key) { + * console.log(key); + * }); + * // => Logs 'b' then 'a' assuming `_.forOwn` logs 'a' then 'b'. + */ + function forOwnRight(object, iteratee) { + return object && baseForOwnRight(object, getIteratee(iteratee, 3)); + } + + /** + * Creates an array of function property names from own enumerable properties + * of `object`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to inspect. + * @returns {Array} Returns the function names. + * @see _.functionsIn + * @example + * + * function Foo() { + * this.a = _.constant('a'); + * this.b = _.constant('b'); + * } + * + * Foo.prototype.c = _.constant('c'); + * + * _.functions(new Foo); + * // => ['a', 'b'] + */ + function functions(object) { + return object == null ? [] : baseFunctions(object, keys(object)); + } + + /** + * Creates an array of function property names from own and inherited + * enumerable properties of `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The object to inspect. + * @returns {Array} Returns the function names. + * @see _.functions + * @example + * + * function Foo() { + * this.a = _.constant('a'); + * this.b = _.constant('b'); + * } + * + * Foo.prototype.c = _.constant('c'); + * + * _.functionsIn(new Foo); + * // => ['a', 'b', 'c'] + */ + function functionsIn(object) { + return object == null ? [] : baseFunctions(object, keysIn(object)); + } + + /** + * Gets the value at `path` of `object`. If the resolved value is + * `undefined`, the `defaultValue` is returned in its place. + * + * @static + * @memberOf _ + * @since 3.7.0 + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path of the property to get. + * @param {*} [defaultValue] The value returned for `undefined` resolved values. + * @returns {*} Returns the resolved value. + * @example + * + * var object = { 'a': [{ 'b': { 'c': 3 } }] }; + * + * _.get(object, 'a[0].b.c'); + * // => 3 + * + * _.get(object, ['a', '0', 'b', 'c']); + * // => 3 + * + * _.get(object, 'a.b.c', 'default'); + * // => 'default' + */ + function get(object, path, defaultValue) { + var result = object == null ? undefined : baseGet(object, path); + return result === undefined ? defaultValue : result; + } + + /** + * Checks if `path` is a direct property of `object`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path to check. + * @returns {boolean} Returns `true` if `path` exists, else `false`. + * @example + * + * var object = { 'a': { 'b': 2 } }; + * var other = _.create({ 'a': _.create({ 'b': 2 }) }); + * + * _.has(object, 'a'); + * // => true + * + * _.has(object, 'a.b'); + * // => true + * + * _.has(object, ['a', 'b']); + * // => true + * + * _.has(other, 'a'); + * // => false + */ + function has(object, path) { + return object != null && hasPath(object, path, baseHas); + } + + /** + * Checks if `path` is a direct or inherited property of `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path to check. + * @returns {boolean} Returns `true` if `path` exists, else `false`. + * @example + * + * var object = _.create({ 'a': _.create({ 'b': 2 }) }); + * + * _.hasIn(object, 'a'); + * // => true + * + * _.hasIn(object, 'a.b'); + * // => true + * + * _.hasIn(object, ['a', 'b']); + * // => true + * + * _.hasIn(object, 'b'); + * // => false + */ + function hasIn(object, path) { + return object != null && hasPath(object, path, baseHasIn); + } + + /** + * Creates an object composed of the inverted keys and values of `object`. + * If `object` contains duplicate values, subsequent values overwrite + * property assignments of previous values. + * + * @static + * @memberOf _ + * @since 0.7.0 + * @category Object + * @param {Object} object The object to invert. + * @returns {Object} Returns the new inverted object. + * @example + * + * var object = { 'a': 1, 'b': 2, 'c': 1 }; + * + * _.invert(object); + * // => { '1': 'c', '2': 'b' } + */ + var invert = createInverter(function(result, value, key) { + if (value != null && + typeof value.toString != 'function') { + value = nativeObjectToString.call(value); + } + + result[value] = key; + }, constant(identity)); + + /** + * This method is like `_.invert` except that the inverted object is generated + * from the results of running each element of `object` thru `iteratee`. The + * corresponding inverted value of each inverted key is an array of keys + * responsible for generating the inverted value. The iteratee is invoked + * with one argument: (value). + * + * @static + * @memberOf _ + * @since 4.1.0 + * @category Object + * @param {Object} object The object to invert. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {Object} Returns the new inverted object. + * @example + * + * var object = { 'a': 1, 'b': 2, 'c': 1 }; + * + * _.invertBy(object); + * // => { '1': ['a', 'c'], '2': ['b'] } + * + * _.invertBy(object, function(value) { + * return 'group' + value; + * }); + * // => { 'group1': ['a', 'c'], 'group2': ['b'] } + */ + var invertBy = createInverter(function(result, value, key) { + if (value != null && + typeof value.toString != 'function') { + value = nativeObjectToString.call(value); + } + + if (hasOwnProperty.call(result, value)) { + result[value].push(key); + } else { + result[value] = [key]; + } + }, getIteratee); + + /** + * Invokes the method at `path` of `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path of the method to invoke. + * @param {...*} [args] The arguments to invoke the method with. + * @returns {*} Returns the result of the invoked method. + * @example + * + * var object = { 'a': [{ 'b': { 'c': [1, 2, 3, 4] } }] }; + * + * _.invoke(object, 'a[0].b.c.slice', 1, 3); + * // => [2, 3] + */ + var invoke = baseRest(baseInvoke); + + /** + * Creates an array of the own enumerable property names of `object`. + * + * **Note:** Non-object values are coerced to objects. See the + * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys) + * for more details. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names. + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.keys(new Foo); + * // => ['a', 'b'] (iteration order is not guaranteed) + * + * _.keys('hi'); + * // => ['0', '1'] + */ + function keys(object) { + return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object); + } + + /** + * Creates an array of the own and inherited enumerable property names of `object`. + * + * **Note:** Non-object values are coerced to objects. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Object + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names. + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.keysIn(new Foo); + * // => ['a', 'b', 'c'] (iteration order is not guaranteed) + */ + function keysIn(object) { + return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object); + } + + /** + * The opposite of `_.mapValues`; this method creates an object with the + * same values as `object` and keys generated by running each own enumerable + * string keyed property of `object` thru `iteratee`. The iteratee is invoked + * with three arguments: (value, key, object). + * + * @static + * @memberOf _ + * @since 3.8.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Object} Returns the new mapped object. + * @see _.mapValues + * @example + * + * _.mapKeys({ 'a': 1, 'b': 2 }, function(value, key) { + * return key + value; + * }); + * // => { 'a1': 1, 'b2': 2 } + */ + function mapKeys(object, iteratee) { + var result = {}; + iteratee = getIteratee(iteratee, 3); + + baseForOwn(object, function(value, key, object) { + baseAssignValue(result, iteratee(value, key, object), value); + }); + return result; + } + + /** + * Creates an object with the same keys as `object` and values generated + * by running each own enumerable string keyed property of `object` thru + * `iteratee`. The iteratee is invoked with three arguments: + * (value, key, object). + * + * @static + * @memberOf _ + * @since 2.4.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Object} Returns the new mapped object. + * @see _.mapKeys + * @example + * + * var users = { + * 'fred': { 'user': 'fred', 'age': 40 }, + * 'pebbles': { 'user': 'pebbles', 'age': 1 } + * }; + * + * _.mapValues(users, function(o) { return o.age; }); + * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed) + * + * // The `_.property` iteratee shorthand. + * _.mapValues(users, 'age'); + * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed) + */ + function mapValues(object, iteratee) { + var result = {}; + iteratee = getIteratee(iteratee, 3); + + baseForOwn(object, function(value, key, object) { + baseAssignValue(result, key, iteratee(value, key, object)); + }); + return result; + } + + /** + * This method is like `_.assign` except that it recursively merges own and + * inherited enumerable string keyed properties of source objects into the + * destination object. Source properties that resolve to `undefined` are + * skipped if a destination value exists. Array and plain object properties + * are merged recursively. Other objects and value types are overridden by + * assignment. Source objects are applied from left to right. Subsequent + * sources overwrite property assignments of previous sources. + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 0.5.0 + * @category Object + * @param {Object} object The destination object. + * @param {...Object} [sources] The source objects. + * @returns {Object} Returns `object`. + * @example + * + * var object = { + * 'a': [{ 'b': 2 }, { 'd': 4 }] + * }; + * + * var other = { + * 'a': [{ 'c': 3 }, { 'e': 5 }] + * }; + * + * _.merge(object, other); + * // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] } + */ + var merge = createAssigner(function(object, source, srcIndex) { + baseMerge(object, source, srcIndex); + }); + + /** + * This method is like `_.merge` except that it accepts `customizer` which + * is invoked to produce the merged values of the destination and source + * properties. If `customizer` returns `undefined`, merging is handled by the + * method instead. The `customizer` is invoked with six arguments: + * (objValue, srcValue, key, object, source, stack). + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The destination object. + * @param {...Object} sources The source objects. + * @param {Function} customizer The function to customize assigned values. + * @returns {Object} Returns `object`. + * @example + * + * function customizer(objValue, srcValue) { + * if (_.isArray(objValue)) { + * return objValue.concat(srcValue); + * } + * } + * + * var object = { 'a': [1], 'b': [2] }; + * var other = { 'a': [3], 'b': [4] }; + * + * _.mergeWith(object, other, customizer); + * // => { 'a': [1, 3], 'b': [2, 4] } + */ + var mergeWith = createAssigner(function(object, source, srcIndex, customizer) { + baseMerge(object, source, srcIndex, customizer); + }); + + /** + * The opposite of `_.pick`; this method creates an object composed of the + * own and inherited enumerable property paths of `object` that are not omitted. + * + * **Note:** This method is considerably slower than `_.pick`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The source object. + * @param {...(string|string[])} [paths] The property paths to omit. + * @returns {Object} Returns the new object. + * @example + * + * var object = { 'a': 1, 'b': '2', 'c': 3 }; + * + * _.omit(object, ['a', 'c']); + * // => { 'b': '2' } + */ + var omit = flatRest(function(object, paths) { + var result = {}; + if (object == null) { + return result; + } + var isDeep = false; + paths = arrayMap(paths, function(path) { + path = castPath(path, object); + isDeep || (isDeep = path.length > 1); + return path; + }); + copyObject(object, getAllKeysIn(object), result); + if (isDeep) { + result = baseClone(result, CLONE_DEEP_FLAG | CLONE_FLAT_FLAG | CLONE_SYMBOLS_FLAG, customOmitClone); + } + var length = paths.length; + while (length--) { + baseUnset(result, paths[length]); + } + return result; + }); + + /** + * The opposite of `_.pickBy`; this method creates an object composed of + * the own and inherited enumerable string keyed properties of `object` that + * `predicate` doesn't return truthy for. The predicate is invoked with two + * arguments: (value, key). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The source object. + * @param {Function} [predicate=_.identity] The function invoked per property. + * @returns {Object} Returns the new object. + * @example + * + * var object = { 'a': 1, 'b': '2', 'c': 3 }; + * + * _.omitBy(object, _.isNumber); + * // => { 'b': '2' } + */ + function omitBy(object, predicate) { + return pickBy(object, negate(getIteratee(predicate))); + } + + /** + * Creates an object composed of the picked `object` properties. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The source object. + * @param {...(string|string[])} [paths] The property paths to pick. + * @returns {Object} Returns the new object. + * @example + * + * var object = { 'a': 1, 'b': '2', 'c': 3 }; + * + * _.pick(object, ['a', 'c']); + * // => { 'a': 1, 'c': 3 } + */ + var pick = flatRest(function(object, paths) { + return object == null ? {} : basePick(object, paths); + }); + + /** + * Creates an object composed of the `object` properties `predicate` returns + * truthy for. The predicate is invoked with two arguments: (value, key). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The source object. + * @param {Function} [predicate=_.identity] The function invoked per property. + * @returns {Object} Returns the new object. + * @example + * + * var object = { 'a': 1, 'b': '2', 'c': 3 }; + * + * _.pickBy(object, _.isNumber); + * // => { 'a': 1, 'c': 3 } + */ + function pickBy(object, predicate) { + if (object == null) { + return {}; + } + var props = arrayMap(getAllKeysIn(object), function(prop) { + return [prop]; + }); + predicate = getIteratee(predicate); + return basePickBy(object, props, function(value, path) { + return predicate(value, path[0]); + }); + } + + /** + * This method is like `_.get` except that if the resolved value is a + * function it's invoked with the `this` binding of its parent object and + * its result is returned. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path of the property to resolve. + * @param {*} [defaultValue] The value returned for `undefined` resolved values. + * @returns {*} Returns the resolved value. + * @example + * + * var object = { 'a': [{ 'b': { 'c1': 3, 'c2': _.constant(4) } }] }; + * + * _.result(object, 'a[0].b.c1'); + * // => 3 + * + * _.result(object, 'a[0].b.c2'); + * // => 4 + * + * _.result(object, 'a[0].b.c3', 'default'); + * // => 'default' + * + * _.result(object, 'a[0].b.c3', _.constant('default')); + * // => 'default' + */ + function result(object, path, defaultValue) { + path = castPath(path, object); + + var index = -1, + length = path.length; + + // Ensure the loop is entered when path is empty. + if (!length) { + length = 1; + object = undefined; + } + while (++index < length) { + var value = object == null ? undefined : object[toKey(path[index])]; + if (value === undefined) { + index = length; + value = defaultValue; + } + object = isFunction(value) ? value.call(object) : value; + } + return object; + } + + /** + * Sets the value at `path` of `object`. If a portion of `path` doesn't exist, + * it's created. Arrays are created for missing index properties while objects + * are created for all other missing properties. Use `_.setWith` to customize + * `path` creation. + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 3.7.0 + * @category Object + * @param {Object} object The object to modify. + * @param {Array|string} path The path of the property to set. + * @param {*} value The value to set. + * @returns {Object} Returns `object`. + * @example + * + * var object = { 'a': [{ 'b': { 'c': 3 } }] }; + * + * _.set(object, 'a[0].b.c', 4); + * console.log(object.a[0].b.c); + * // => 4 + * + * _.set(object, ['x', '0', 'y', 'z'], 5); + * console.log(object.x[0].y.z); + * // => 5 + */ + function set(object, path, value) { + return object == null ? object : baseSet(object, path, value); + } + + /** + * This method is like `_.set` except that it accepts `customizer` which is + * invoked to produce the objects of `path`. If `customizer` returns `undefined` + * path creation is handled by the method instead. The `customizer` is invoked + * with three arguments: (nsValue, key, nsObject). + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The object to modify. + * @param {Array|string} path The path of the property to set. + * @param {*} value The value to set. + * @param {Function} [customizer] The function to customize assigned values. + * @returns {Object} Returns `object`. + * @example + * + * var object = {}; + * + * _.setWith(object, '[0][1]', 'a', Object); + * // => { '0': { '1': 'a' } } + */ + function setWith(object, path, value, customizer) { + customizer = typeof customizer == 'function' ? customizer : undefined; + return object == null ? object : baseSet(object, path, value, customizer); + } + + /** + * Creates an array of own enumerable string keyed-value pairs for `object` + * which can be consumed by `_.fromPairs`. If `object` is a map or set, its + * entries are returned. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @alias entries + * @category Object + * @param {Object} object The object to query. + * @returns {Array} Returns the key-value pairs. + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.toPairs(new Foo); + * // => [['a', 1], ['b', 2]] (iteration order is not guaranteed) + */ + var toPairs = createToPairs(keys); + + /** + * Creates an array of own and inherited enumerable string keyed-value pairs + * for `object` which can be consumed by `_.fromPairs`. If `object` is a map + * or set, its entries are returned. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @alias entriesIn + * @category Object + * @param {Object} object The object to query. + * @returns {Array} Returns the key-value pairs. + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.toPairsIn(new Foo); + * // => [['a', 1], ['b', 2], ['c', 3]] (iteration order is not guaranteed) + */ + var toPairsIn = createToPairs(keysIn); + + /** + * An alternative to `_.reduce`; this method transforms `object` to a new + * `accumulator` object which is the result of running each of its own + * enumerable string keyed properties thru `iteratee`, with each invocation + * potentially mutating the `accumulator` object. If `accumulator` is not + * provided, a new object with the same `[[Prototype]]` will be used. The + * iteratee is invoked with four arguments: (accumulator, value, key, object). + * Iteratee functions may exit iteration early by explicitly returning `false`. + * + * @static + * @memberOf _ + * @since 1.3.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @param {*} [accumulator] The custom accumulator value. + * @returns {*} Returns the accumulated value. + * @example + * + * _.transform([2, 3, 4], function(result, n) { + * result.push(n *= n); + * return n % 2 == 0; + * }, []); + * // => [4, 9] + * + * _.transform({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) { + * (result[value] || (result[value] = [])).push(key); + * }, {}); + * // => { '1': ['a', 'c'], '2': ['b'] } + */ + function transform(object, iteratee, accumulator) { + var isArr = isArray(object), + isArrLike = isArr || isBuffer(object) || isTypedArray(object); + + iteratee = getIteratee(iteratee, 4); + if (accumulator == null) { + var Ctor = object && object.constructor; + if (isArrLike) { + accumulator = isArr ? new Ctor : []; + } + else if (isObject(object)) { + accumulator = isFunction(Ctor) ? baseCreate(getPrototype(object)) : {}; + } + else { + accumulator = {}; + } + } + (isArrLike ? arrayEach : baseForOwn)(object, function(value, index, object) { + return iteratee(accumulator, value, index, object); + }); + return accumulator; + } + + /** + * Removes the property at `path` of `object`. + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The object to modify. + * @param {Array|string} path The path of the property to unset. + * @returns {boolean} Returns `true` if the property is deleted, else `false`. + * @example + * + * var object = { 'a': [{ 'b': { 'c': 7 } }] }; + * _.unset(object, 'a[0].b.c'); + * // => true + * + * console.log(object); + * // => { 'a': [{ 'b': {} }] }; + * + * _.unset(object, ['a', '0', 'b', 'c']); + * // => true + * + * console.log(object); + * // => { 'a': [{ 'b': {} }] }; + */ + function unset(object, path) { + return object == null ? true : baseUnset(object, path); + } + + /** + * This method is like `_.set` except that accepts `updater` to produce the + * value to set. Use `_.updateWith` to customize `path` creation. The `updater` + * is invoked with one argument: (value). + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 4.6.0 + * @category Object + * @param {Object} object The object to modify. + * @param {Array|string} path The path of the property to set. + * @param {Function} updater The function to produce the updated value. + * @returns {Object} Returns `object`. + * @example + * + * var object = { 'a': [{ 'b': { 'c': 3 } }] }; + * + * _.update(object, 'a[0].b.c', function(n) { return n * n; }); + * console.log(object.a[0].b.c); + * // => 9 + * + * _.update(object, 'x[0].y.z', function(n) { return n ? n + 1 : 0; }); + * console.log(object.x[0].y.z); + * // => 0 + */ + function update(object, path, updater) { + return object == null ? object : baseUpdate(object, path, castFunction(updater)); + } + + /** + * This method is like `_.update` except that it accepts `customizer` which is + * invoked to produce the objects of `path`. If `customizer` returns `undefined` + * path creation is handled by the method instead. The `customizer` is invoked + * with three arguments: (nsValue, key, nsObject). + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 4.6.0 + * @category Object + * @param {Object} object The object to modify. + * @param {Array|string} path The path of the property to set. + * @param {Function} updater The function to produce the updated value. + * @param {Function} [customizer] The function to customize assigned values. + * @returns {Object} Returns `object`. + * @example + * + * var object = {}; + * + * _.updateWith(object, '[0][1]', _.constant('a'), Object); + * // => { '0': { '1': 'a' } } + */ + function updateWith(object, path, updater, customizer) { + customizer = typeof customizer == 'function' ? customizer : undefined; + return object == null ? object : baseUpdate(object, path, castFunction(updater), customizer); + } + + /** + * Creates an array of the own enumerable string keyed property values of `object`. + * + * **Note:** Non-object values are coerced to objects. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property values. + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.values(new Foo); + * // => [1, 2] (iteration order is not guaranteed) + * + * _.values('hi'); + * // => ['h', 'i'] + */ + function values(object) { + return object == null ? [] : baseValues(object, keys(object)); + } + + /** + * Creates an array of the own and inherited enumerable string keyed property + * values of `object`. + * + * **Note:** Non-object values are coerced to objects. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Object + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property values. + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.valuesIn(new Foo); + * // => [1, 2, 3] (iteration order is not guaranteed) + */ + function valuesIn(object) { + return object == null ? [] : baseValues(object, keysIn(object)); + } + + /*------------------------------------------------------------------------*/ + + /** + * Clamps `number` within the inclusive `lower` and `upper` bounds. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Number + * @param {number} number The number to clamp. + * @param {number} [lower] The lower bound. + * @param {number} upper The upper bound. + * @returns {number} Returns the clamped number. + * @example + * + * _.clamp(-10, -5, 5); + * // => -5 + * + * _.clamp(10, -5, 5); + * // => 5 + */ + function clamp(number, lower, upper) { + if (upper === undefined) { + upper = lower; + lower = undefined; + } + if (upper !== undefined) { + upper = toNumber(upper); + upper = upper === upper ? upper : 0; + } + if (lower !== undefined) { + lower = toNumber(lower); + lower = lower === lower ? lower : 0; + } + return baseClamp(toNumber(number), lower, upper); + } + + /** + * Checks if `n` is between `start` and up to, but not including, `end`. If + * `end` is not specified, it's set to `start` with `start` then set to `0`. + * If `start` is greater than `end` the params are swapped to support + * negative ranges. + * + * @static + * @memberOf _ + * @since 3.3.0 + * @category Number + * @param {number} number The number to check. + * @param {number} [start=0] The start of the range. + * @param {number} end The end of the range. + * @returns {boolean} Returns `true` if `number` is in the range, else `false`. + * @see _.range, _.rangeRight + * @example + * + * _.inRange(3, 2, 4); + * // => true + * + * _.inRange(4, 8); + * // => true + * + * _.inRange(4, 2); + * // => false + * + * _.inRange(2, 2); + * // => false + * + * _.inRange(1.2, 2); + * // => true + * + * _.inRange(5.2, 4); + * // => false + * + * _.inRange(-3, -2, -6); + * // => true + */ + function inRange(number, start, end) { + start = toFinite(start); + if (end === undefined) { + end = start; + start = 0; + } else { + end = toFinite(end); + } + number = toNumber(number); + return baseInRange(number, start, end); + } + + /** + * Produces a random number between the inclusive `lower` and `upper` bounds. + * If only one argument is provided a number between `0` and the given number + * is returned. If `floating` is `true`, or either `lower` or `upper` are + * floats, a floating-point number is returned instead of an integer. + * + * **Note:** JavaScript follows the IEEE-754 standard for resolving + * floating-point values which can produce unexpected results. + * + * @static + * @memberOf _ + * @since 0.7.0 + * @category Number + * @param {number} [lower=0] The lower bound. + * @param {number} [upper=1] The upper bound. + * @param {boolean} [floating] Specify returning a floating-point number. + * @returns {number} Returns the random number. + * @example + * + * _.random(0, 5); + * // => an integer between 0 and 5 + * + * _.random(5); + * // => also an integer between 0 and 5 + * + * _.random(5, true); + * // => a floating-point number between 0 and 5 + * + * _.random(1.2, 5.2); + * // => a floating-point number between 1.2 and 5.2 + */ + function random(lower, upper, floating) { + if (floating && typeof floating != 'boolean' && isIterateeCall(lower, upper, floating)) { + upper = floating = undefined; + } + if (floating === undefined) { + if (typeof upper == 'boolean') { + floating = upper; + upper = undefined; + } + else if (typeof lower == 'boolean') { + floating = lower; + lower = undefined; + } + } + if (lower === undefined && upper === undefined) { + lower = 0; + upper = 1; + } + else { + lower = toFinite(lower); + if (upper === undefined) { + upper = lower; + lower = 0; + } else { + upper = toFinite(upper); + } + } + if (lower > upper) { + var temp = lower; + lower = upper; + upper = temp; + } + if (floating || lower % 1 || upper % 1) { + var rand = nativeRandom(); + return nativeMin(lower + (rand * (upper - lower + freeParseFloat('1e-' + ((rand + '').length - 1)))), upper); + } + return baseRandom(lower, upper); + } + + /*------------------------------------------------------------------------*/ + + /** + * Converts `string` to [camel case](https://en.wikipedia.org/wiki/CamelCase). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to convert. + * @returns {string} Returns the camel cased string. + * @example + * + * _.camelCase('Foo Bar'); + * // => 'fooBar' + * + * _.camelCase('--foo-bar--'); + * // => 'fooBar' + * + * _.camelCase('__FOO_BAR__'); + * // => 'fooBar' + */ + var camelCase = createCompounder(function(result, word, index) { + word = word.toLowerCase(); + return result + (index ? capitalize(word) : word); + }); + + /** + * Converts the first character of `string` to upper case and the remaining + * to lower case. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to capitalize. + * @returns {string} Returns the capitalized string. + * @example + * + * _.capitalize('FRED'); + * // => 'Fred' + */ + function capitalize(string) { + return upperFirst(toString(string).toLowerCase()); + } + + /** + * Deburrs `string` by converting + * [Latin-1 Supplement](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table) + * and [Latin Extended-A](https://en.wikipedia.org/wiki/Latin_Extended-A) + * letters to basic Latin letters and removing + * [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to deburr. + * @returns {string} Returns the deburred string. + * @example + * + * _.deburr('déjà vu'); + * // => 'deja vu' + */ + function deburr(string) { + string = toString(string); + return string && string.replace(reLatin, deburrLetter).replace(reComboMark, ''); + } + + /** + * Checks if `string` ends with the given target string. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to inspect. + * @param {string} [target] The string to search for. + * @param {number} [position=string.length] The position to search up to. + * @returns {boolean} Returns `true` if `string` ends with `target`, + * else `false`. + * @example + * + * _.endsWith('abc', 'c'); + * // => true + * + * _.endsWith('abc', 'b'); + * // => false + * + * _.endsWith('abc', 'b', 2); + * // => true + */ + function endsWith(string, target, position) { + string = toString(string); + target = baseToString(target); + + var length = string.length; + position = position === undefined + ? length + : baseClamp(toInteger(position), 0, length); + + var end = position; + position -= target.length; + return position >= 0 && string.slice(position, end) == target; + } + + /** + * Converts the characters "&", "<", ">", '"', and "'" in `string` to their + * corresponding HTML entities. + * + * **Note:** No other characters are escaped. To escape additional + * characters use a third-party library like [_he_](https://mths.be/he). + * + * Though the ">" character is escaped for symmetry, characters like + * ">" and "/" don't need escaping in HTML and have no special meaning + * unless they're part of a tag or unquoted attribute value. See + * [Mathias Bynens's article](https://mathiasbynens.be/notes/ambiguous-ampersands) + * (under "semi-related fun fact") for more details. + * + * When working with HTML you should always + * [quote attribute values](http://wonko.com/post/html-escaping) to reduce + * XSS vectors. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category String + * @param {string} [string=''] The string to escape. + * @returns {string} Returns the escaped string. + * @example + * + * _.escape('fred, barney, & pebbles'); + * // => 'fred, barney, & pebbles' + */ + function escape(string) { + string = toString(string); + return (string && reHasUnescapedHtml.test(string)) + ? string.replace(reUnescapedHtml, escapeHtmlChar) + : string; + } + + /** + * Escapes the `RegExp` special characters "^", "$", "\", ".", "*", "+", + * "?", "(", ")", "[", "]", "{", "}", and "|" in `string`. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to escape. + * @returns {string} Returns the escaped string. + * @example + * + * _.escapeRegExp('[lodash](https://lodash.com/)'); + * // => '\[lodash\]\(https://lodash\.com/\)' + */ + function escapeRegExp(string) { + string = toString(string); + return (string && reHasRegExpChar.test(string)) + ? string.replace(reRegExpChar, '\\$&') + : string; + } + + /** + * Converts `string` to + * [kebab case](https://en.wikipedia.org/wiki/Letter_case#Special_case_styles). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to convert. + * @returns {string} Returns the kebab cased string. + * @example + * + * _.kebabCase('Foo Bar'); + * // => 'foo-bar' + * + * _.kebabCase('fooBar'); + * // => 'foo-bar' + * + * _.kebabCase('__FOO_BAR__'); + * // => 'foo-bar' + */ + var kebabCase = createCompounder(function(result, word, index) { + return result + (index ? '-' : '') + word.toLowerCase(); + }); + + /** + * Converts `string`, as space separated words, to lower case. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category String + * @param {string} [string=''] The string to convert. + * @returns {string} Returns the lower cased string. + * @example + * + * _.lowerCase('--Foo-Bar--'); + * // => 'foo bar' + * + * _.lowerCase('fooBar'); + * // => 'foo bar' + * + * _.lowerCase('__FOO_BAR__'); + * // => 'foo bar' + */ + var lowerCase = createCompounder(function(result, word, index) { + return result + (index ? ' ' : '') + word.toLowerCase(); + }); + + /** + * Converts the first character of `string` to lower case. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category String + * @param {string} [string=''] The string to convert. + * @returns {string} Returns the converted string. + * @example + * + * _.lowerFirst('Fred'); + * // => 'fred' + * + * _.lowerFirst('FRED'); + * // => 'fRED' + */ + var lowerFirst = createCaseFirst('toLowerCase'); + + /** + * Pads `string` on the left and right sides if it's shorter than `length`. + * Padding characters are truncated if they can't be evenly divided by `length`. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to pad. + * @param {number} [length=0] The padding length. + * @param {string} [chars=' '] The string used as padding. + * @returns {string} Returns the padded string. + * @example + * + * _.pad('abc', 8); + * // => ' abc ' + * + * _.pad('abc', 8, '_-'); + * // => '_-abc_-_' + * + * _.pad('abc', 3); + * // => 'abc' + */ + function pad(string, length, chars) { + string = toString(string); + length = toInteger(length); + + var strLength = length ? stringSize(string) : 0; + if (!length || strLength >= length) { + return string; + } + var mid = (length - strLength) / 2; + return ( + createPadding(nativeFloor(mid), chars) + + string + + createPadding(nativeCeil(mid), chars) + ); + } + + /** + * Pads `string` on the right side if it's shorter than `length`. Padding + * characters are truncated if they exceed `length`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category String + * @param {string} [string=''] The string to pad. + * @param {number} [length=0] The padding length. + * @param {string} [chars=' '] The string used as padding. + * @returns {string} Returns the padded string. + * @example + * + * _.padEnd('abc', 6); + * // => 'abc ' + * + * _.padEnd('abc', 6, '_-'); + * // => 'abc_-_' + * + * _.padEnd('abc', 3); + * // => 'abc' + */ + function padEnd(string, length, chars) { + string = toString(string); + length = toInteger(length); + + var strLength = length ? stringSize(string) : 0; + return (length && strLength < length) + ? (string + createPadding(length - strLength, chars)) + : string; + } + + /** + * Pads `string` on the left side if it's shorter than `length`. Padding + * characters are truncated if they exceed `length`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category String + * @param {string} [string=''] The string to pad. + * @param {number} [length=0] The padding length. + * @param {string} [chars=' '] The string used as padding. + * @returns {string} Returns the padded string. + * @example + * + * _.padStart('abc', 6); + * // => ' abc' + * + * _.padStart('abc', 6, '_-'); + * // => '_-_abc' + * + * _.padStart('abc', 3); + * // => 'abc' + */ + function padStart(string, length, chars) { + string = toString(string); + length = toInteger(length); + + var strLength = length ? stringSize(string) : 0; + return (length && strLength < length) + ? (createPadding(length - strLength, chars) + string) + : string; + } + + /** + * Converts `string` to an integer of the specified radix. If `radix` is + * `undefined` or `0`, a `radix` of `10` is used unless `value` is a + * hexadecimal, in which case a `radix` of `16` is used. + * + * **Note:** This method aligns with the + * [ES5 implementation](https://es5.github.io/#x15.1.2.2) of `parseInt`. + * + * @static + * @memberOf _ + * @since 1.1.0 + * @category String + * @param {string} string The string to convert. + * @param {number} [radix=10] The radix to interpret `value` by. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {number} Returns the converted integer. + * @example + * + * _.parseInt('08'); + * // => 8 + * + * _.map(['6', '08', '10'], _.parseInt); + * // => [6, 8, 10] + */ + function parseInt(string, radix, guard) { + if (guard || radix == null) { + radix = 0; + } else if (radix) { + radix = +radix; + } + return nativeParseInt(toString(string).replace(reTrimStart, ''), radix || 0); + } + + /** + * Repeats the given string `n` times. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to repeat. + * @param {number} [n=1] The number of times to repeat the string. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {string} Returns the repeated string. + * @example + * + * _.repeat('*', 3); + * // => '***' + * + * _.repeat('abc', 2); + * // => 'abcabc' + * + * _.repeat('abc', 0); + * // => '' + */ + function repeat(string, n, guard) { + if ((guard ? isIterateeCall(string, n, guard) : n === undefined)) { + n = 1; + } else { + n = toInteger(n); + } + return baseRepeat(toString(string), n); + } + + /** + * Replaces matches for `pattern` in `string` with `replacement`. + * + * **Note:** This method is based on + * [`String#replace`](https://mdn.io/String/replace). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category String + * @param {string} [string=''] The string to modify. + * @param {RegExp|string} pattern The pattern to replace. + * @param {Function|string} replacement The match replacement. + * @returns {string} Returns the modified string. + * @example + * + * _.replace('Hi Fred', 'Fred', 'Barney'); + * // => 'Hi Barney' + */ + function replace() { + var args = arguments, + string = toString(args[0]); + + return args.length < 3 ? string : string.replace(args[1], args[2]); + } + + /** + * Converts `string` to + * [snake case](https://en.wikipedia.org/wiki/Snake_case). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to convert. + * @returns {string} Returns the snake cased string. + * @example + * + * _.snakeCase('Foo Bar'); + * // => 'foo_bar' + * + * _.snakeCase('fooBar'); + * // => 'foo_bar' + * + * _.snakeCase('--FOO-BAR--'); + * // => 'foo_bar' + */ + var snakeCase = createCompounder(function(result, word, index) { + return result + (index ? '_' : '') + word.toLowerCase(); + }); + + /** + * Splits `string` by `separator`. + * + * **Note:** This method is based on + * [`String#split`](https://mdn.io/String/split). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category String + * @param {string} [string=''] The string to split. + * @param {RegExp|string} separator The separator pattern to split by. + * @param {number} [limit] The length to truncate results to. + * @returns {Array} Returns the string segments. + * @example + * + * _.split('a-b-c', '-', 2); + * // => ['a', 'b'] + */ + function split(string, separator, limit) { + if (limit && typeof limit != 'number' && isIterateeCall(string, separator, limit)) { + separator = limit = undefined; + } + limit = limit === undefined ? MAX_ARRAY_LENGTH : limit >>> 0; + if (!limit) { + return []; + } + string = toString(string); + if (string && ( + typeof separator == 'string' || + (separator != null && !isRegExp(separator)) + )) { + separator = baseToString(separator); + if (!separator && hasUnicode(string)) { + return castSlice(stringToArray(string), 0, limit); + } + } + return string.split(separator, limit); + } + + /** + * Converts `string` to + * [start case](https://en.wikipedia.org/wiki/Letter_case#Stylistic_or_specialised_usage). + * + * @static + * @memberOf _ + * @since 3.1.0 + * @category String + * @param {string} [string=''] The string to convert. + * @returns {string} Returns the start cased string. + * @example + * + * _.startCase('--foo-bar--'); + * // => 'Foo Bar' + * + * _.startCase('fooBar'); + * // => 'Foo Bar' + * + * _.startCase('__FOO_BAR__'); + * // => 'FOO BAR' + */ + var startCase = createCompounder(function(result, word, index) { + return result + (index ? ' ' : '') + upperFirst(word); + }); + + /** + * Checks if `string` starts with the given target string. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to inspect. + * @param {string} [target] The string to search for. + * @param {number} [position=0] The position to search from. + * @returns {boolean} Returns `true` if `string` starts with `target`, + * else `false`. + * @example + * + * _.startsWith('abc', 'a'); + * // => true + * + * _.startsWith('abc', 'b'); + * // => false + * + * _.startsWith('abc', 'b', 1); + * // => true + */ + function startsWith(string, target, position) { + string = toString(string); + position = position == null + ? 0 + : baseClamp(toInteger(position), 0, string.length); + + target = baseToString(target); + return string.slice(position, position + target.length) == target; + } + + /** + * Creates a compiled template function that can interpolate data properties + * in "interpolate" delimiters, HTML-escape interpolated data properties in + * "escape" delimiters, and execute JavaScript in "evaluate" delimiters. Data + * properties may be accessed as free variables in the template. If a setting + * object is given, it takes precedence over `_.templateSettings` values. + * + * **Note:** In the development build `_.template` utilizes + * [sourceURLs](http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/#toc-sourceurl) + * for easier debugging. + * + * For more information on precompiling templates see + * [lodash's custom builds documentation](https://lodash.com/custom-builds). + * + * For more information on Chrome extension sandboxes see + * [Chrome's extensions documentation](https://developer.chrome.com/extensions/sandboxingEval). + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category String + * @param {string} [string=''] The template string. + * @param {Object} [options={}] The options object. + * @param {RegExp} [options.escape=_.templateSettings.escape] + * The HTML "escape" delimiter. + * @param {RegExp} [options.evaluate=_.templateSettings.evaluate] + * The "evaluate" delimiter. + * @param {Object} [options.imports=_.templateSettings.imports] + * An object to import into the template as free variables. + * @param {RegExp} [options.interpolate=_.templateSettings.interpolate] + * The "interpolate" delimiter. + * @param {string} [options.sourceURL='lodash.templateSources[n]'] + * The sourceURL of the compiled template. + * @param {string} [options.variable='obj'] + * The data object variable name. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Function} Returns the compiled template function. + * @example + * + * // Use the "interpolate" delimiter to create a compiled template. + * var compiled = _.template('hello <%= user %>!'); + * compiled({ 'user': 'fred' }); + * // => 'hello fred!' + * + * // Use the HTML "escape" delimiter to escape data property values. + * var compiled = _.template('<%- value %>'); + * compiled({ 'value': ' +``` + +This script is browserified and wrapped in a [umd](https://github.com/umdjs/umd) +wrapper so you should be able to use it standalone or together with a module +loader. + +## API + +### `psl.parse(domain)` + +Parse domain based on Public Suffix List. Returns an `Object` with the following +properties: + +* `tld`: Top level domain (this is the _public suffix_). +* `sld`: Second level domain (the first private part of the domain name). +* `domain`: The domain name is the `sld` + `tld`. +* `subdomain`: Optional parts left of the domain. + +#### Example: + +```js +var psl = require('psl'); + +// Parse domain without subdomain +var parsed = psl.parse('google.com'); +console.log(parsed.tld); // 'com' +console.log(parsed.sld); // 'google' +console.log(parsed.domain); // 'google.com' +console.log(parsed.subdomain); // null + +// Parse domain with subdomain +var parsed = psl.parse('www.google.com'); +console.log(parsed.tld); // 'com' +console.log(parsed.sld); // 'google' +console.log(parsed.domain); // 'google.com' +console.log(parsed.subdomain); // 'www' + +// Parse domain with nested subdomains +var parsed = psl.parse('a.b.c.d.foo.com'); +console.log(parsed.tld); // 'com' +console.log(parsed.sld); // 'foo' +console.log(parsed.domain); // 'foo.com' +console.log(parsed.subdomain); // 'a.b.c.d' +``` + +### `psl.get(domain)` + +Get domain name, `sld` + `tld`. Returns `null` if not valid. + +#### Example: + +```js +var psl = require('psl'); + +// null input. +psl.get(null); // null + +// Mixed case. +psl.get('COM'); // null +psl.get('example.COM'); // 'example.com' +psl.get('WwW.example.COM'); // 'example.com' + +// Unlisted TLD. +psl.get('example'); // null +psl.get('example.example'); // 'example.example' +psl.get('b.example.example'); // 'example.example' +psl.get('a.b.example.example'); // 'example.example' + +// TLD with only 1 rule. +psl.get('biz'); // null +psl.get('domain.biz'); // 'domain.biz' +psl.get('b.domain.biz'); // 'domain.biz' +psl.get('a.b.domain.biz'); // 'domain.biz' + +// TLD with some 2-level rules. +psl.get('uk.com'); // null); +psl.get('example.uk.com'); // 'example.uk.com'); +psl.get('b.example.uk.com'); // 'example.uk.com'); + +// More complex TLD. +psl.get('c.kobe.jp'); // null +psl.get('b.c.kobe.jp'); // 'b.c.kobe.jp' +psl.get('a.b.c.kobe.jp'); // 'b.c.kobe.jp' +psl.get('city.kobe.jp'); // 'city.kobe.jp' +psl.get('www.city.kobe.jp'); // 'city.kobe.jp' + +// IDN labels. +psl.get('食狮.com.cn'); // '食狮.com.cn' +psl.get('食狮.公司.cn'); // '食狮.公司.cn' +psl.get('www.食狮.公司.cn'); // '食狮.公司.cn' + +// Same as above, but punycoded. +psl.get('xn--85x722f.com.cn'); // 'xn--85x722f.com.cn' +psl.get('xn--85x722f.xn--55qx5d.cn'); // 'xn--85x722f.xn--55qx5d.cn' +psl.get('www.xn--85x722f.xn--55qx5d.cn'); // 'xn--85x722f.xn--55qx5d.cn' +``` + +### `psl.isValid(domain)` + +Check whether a domain has a valid Public Suffix. Returns a `Boolean` indicating +whether the domain has a valid Public Suffix. + +#### Example + +```js +var psl = require('psl'); + +psl.isValid('google.com'); // true +psl.isValid('www.google.com'); // true +psl.isValid('x.yz'); // false +``` + + +## Testing and Building + +Test are written using [`mocha`](https://mochajs.org/) and can be +run in two different environments: `node` and `phantomjs`. + +```sh +# This will run `eslint`, `mocha` and `karma`. +npm test + +# Individual test environments +# Run tests in node only. +./node_modules/.bin/mocha test +# Run tests in phantomjs only. +./node_modules/.bin/karma start ./karma.conf.js --single-run + +# Build data (parse raw list) and create dist files +npm run build +``` + +Feel free to fork if you see possible improvements! + + +## Acknowledgements + +* Mozilla Foundation's [Public Suffix List](https://publicsuffix.org/) +* Thanks to Rob Stradling of [Comodo](https://www.comodo.com/) for providing + test data. +* Inspired by [weppos/publicsuffix-ruby](https://github.com/weppos/publicsuffix-ruby) + + +## License + +The MIT License (MIT) + +Copyright (c) 2017 Lupo Montero + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/node_modules/psl/browserstack-logo.svg b/node_modules/psl/browserstack-logo.svg new file mode 100644 index 0000000..195f64d --- /dev/null +++ b/node_modules/psl/browserstack-logo.svg @@ -0,0 +1,90 @@ + + + + +Browserstack-logo-white + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/node_modules/psl/data/rules.json b/node_modules/psl/data/rules.json new file mode 100644 index 0000000..e19abdc --- /dev/null +++ b/node_modules/psl/data/rules.json @@ -0,0 +1,8834 @@ +[ +"ac", +"com.ac", +"edu.ac", +"gov.ac", +"net.ac", +"mil.ac", +"org.ac", +"ad", +"nom.ad", +"ae", +"co.ae", +"net.ae", +"org.ae", +"sch.ae", +"ac.ae", +"gov.ae", +"mil.ae", +"aero", +"accident-investigation.aero", +"accident-prevention.aero", +"aerobatic.aero", +"aeroclub.aero", +"aerodrome.aero", +"agents.aero", +"aircraft.aero", +"airline.aero", +"airport.aero", +"air-surveillance.aero", +"airtraffic.aero", +"air-traffic-control.aero", +"ambulance.aero", +"amusement.aero", +"association.aero", +"author.aero", +"ballooning.aero", +"broker.aero", +"caa.aero", +"cargo.aero", +"catering.aero", +"certification.aero", +"championship.aero", +"charter.aero", +"civilaviation.aero", +"club.aero", +"conference.aero", +"consultant.aero", +"consulting.aero", +"control.aero", +"council.aero", +"crew.aero", +"design.aero", +"dgca.aero", +"educator.aero", +"emergency.aero", +"engine.aero", +"engineer.aero", +"entertainment.aero", +"equipment.aero", +"exchange.aero", +"express.aero", +"federation.aero", +"flight.aero", +"freight.aero", +"fuel.aero", +"gliding.aero", +"government.aero", +"groundhandling.aero", +"group.aero", +"hanggliding.aero", +"homebuilt.aero", +"insurance.aero", +"journal.aero", +"journalist.aero", +"leasing.aero", +"logistics.aero", +"magazine.aero", +"maintenance.aero", +"media.aero", +"microlight.aero", +"modelling.aero", +"navigation.aero", +"parachuting.aero", +"paragliding.aero", +"passenger-association.aero", +"pilot.aero", +"press.aero", +"production.aero", +"recreation.aero", +"repbody.aero", +"res.aero", +"research.aero", +"rotorcraft.aero", +"safety.aero", +"scientist.aero", +"services.aero", +"show.aero", +"skydiving.aero", +"software.aero", +"student.aero", +"trader.aero", +"trading.aero", +"trainer.aero", +"union.aero", +"workinggroup.aero", +"works.aero", +"af", +"gov.af", +"com.af", +"org.af", +"net.af", +"edu.af", +"ag", +"com.ag", +"org.ag", +"net.ag", +"co.ag", +"nom.ag", +"ai", +"off.ai", +"com.ai", +"net.ai", +"org.ai", +"al", +"com.al", +"edu.al", +"gov.al", +"mil.al", +"net.al", +"org.al", +"am", +"co.am", +"com.am", +"commune.am", +"net.am", +"org.am", +"ao", +"ed.ao", +"gv.ao", +"og.ao", +"co.ao", +"pb.ao", +"it.ao", +"aq", +"ar", +"com.ar", +"edu.ar", +"gob.ar", +"gov.ar", +"int.ar", +"mil.ar", +"musica.ar", +"net.ar", +"org.ar", +"tur.ar", +"arpa", +"e164.arpa", +"in-addr.arpa", +"ip6.arpa", +"iris.arpa", +"uri.arpa", +"urn.arpa", +"as", +"gov.as", +"asia", +"at", +"ac.at", +"co.at", +"gv.at", +"or.at", +"au", +"com.au", +"net.au", +"org.au", +"edu.au", +"gov.au", +"asn.au", +"id.au", +"info.au", +"conf.au", +"oz.au", +"act.au", +"nsw.au", +"nt.au", +"qld.au", +"sa.au", +"tas.au", +"vic.au", +"wa.au", +"act.edu.au", +"catholic.edu.au", +"nsw.edu.au", +"nt.edu.au", +"qld.edu.au", +"sa.edu.au", +"tas.edu.au", +"vic.edu.au", +"wa.edu.au", +"qld.gov.au", +"sa.gov.au", +"tas.gov.au", +"vic.gov.au", +"wa.gov.au", +"education.tas.edu.au", +"schools.nsw.edu.au", +"aw", +"com.aw", +"ax", +"az", +"com.az", +"net.az", +"int.az", +"gov.az", +"org.az", +"edu.az", +"info.az", +"pp.az", +"mil.az", +"name.az", +"pro.az", +"biz.az", +"ba", +"com.ba", +"edu.ba", +"gov.ba", +"mil.ba", +"net.ba", +"org.ba", +"bb", +"biz.bb", +"co.bb", +"com.bb", +"edu.bb", +"gov.bb", +"info.bb", +"net.bb", +"org.bb", +"store.bb", +"tv.bb", +"*.bd", +"be", +"ac.be", +"bf", +"gov.bf", +"bg", +"a.bg", +"b.bg", +"c.bg", +"d.bg", +"e.bg", +"f.bg", +"g.bg", +"h.bg", +"i.bg", +"j.bg", +"k.bg", +"l.bg", +"m.bg", +"n.bg", +"o.bg", +"p.bg", +"q.bg", +"r.bg", +"s.bg", +"t.bg", +"u.bg", +"v.bg", +"w.bg", +"x.bg", +"y.bg", +"z.bg", +"0.bg", +"1.bg", +"2.bg", +"3.bg", +"4.bg", +"5.bg", +"6.bg", +"7.bg", +"8.bg", +"9.bg", +"bh", +"com.bh", +"edu.bh", +"net.bh", +"org.bh", +"gov.bh", +"bi", +"co.bi", +"com.bi", +"edu.bi", +"or.bi", +"org.bi", +"biz", +"bj", +"asso.bj", +"barreau.bj", +"gouv.bj", +"bm", +"com.bm", +"edu.bm", +"gov.bm", +"net.bm", +"org.bm", +"bn", +"com.bn", +"edu.bn", +"gov.bn", +"net.bn", +"org.bn", +"bo", +"com.bo", +"edu.bo", +"gob.bo", +"int.bo", +"org.bo", +"net.bo", +"mil.bo", +"tv.bo", +"web.bo", +"academia.bo", +"agro.bo", +"arte.bo", +"blog.bo", +"bolivia.bo", +"ciencia.bo", +"cooperativa.bo", +"democracia.bo", +"deporte.bo", +"ecologia.bo", +"economia.bo", +"empresa.bo", +"indigena.bo", +"industria.bo", +"info.bo", +"medicina.bo", +"movimiento.bo", +"musica.bo", +"natural.bo", +"nombre.bo", +"noticias.bo", +"patria.bo", +"politica.bo", +"profesional.bo", +"plurinacional.bo", +"pueblo.bo", +"revista.bo", +"salud.bo", +"tecnologia.bo", +"tksat.bo", +"transporte.bo", +"wiki.bo", +"br", +"9guacu.br", +"abc.br", +"adm.br", +"adv.br", +"agr.br", +"aju.br", +"am.br", +"anani.br", +"aparecida.br", +"arq.br", +"art.br", +"ato.br", +"b.br", +"barueri.br", +"belem.br", +"bhz.br", +"bio.br", +"blog.br", +"bmd.br", +"boavista.br", +"bsb.br", +"campinagrande.br", +"campinas.br", +"caxias.br", +"cim.br", +"cng.br", +"cnt.br", +"com.br", +"contagem.br", +"coop.br", +"cri.br", +"cuiaba.br", +"curitiba.br", +"def.br", +"ecn.br", +"eco.br", +"edu.br", +"emp.br", +"eng.br", +"esp.br", +"etc.br", +"eti.br", +"far.br", +"feira.br", +"flog.br", +"floripa.br", +"fm.br", +"fnd.br", +"fortal.br", +"fot.br", +"foz.br", +"fst.br", +"g12.br", +"ggf.br", +"goiania.br", +"gov.br", +"ac.gov.br", +"al.gov.br", +"am.gov.br", +"ap.gov.br", +"ba.gov.br", +"ce.gov.br", +"df.gov.br", +"es.gov.br", +"go.gov.br", +"ma.gov.br", +"mg.gov.br", +"ms.gov.br", +"mt.gov.br", +"pa.gov.br", +"pb.gov.br", +"pe.gov.br", +"pi.gov.br", +"pr.gov.br", +"rj.gov.br", +"rn.gov.br", +"ro.gov.br", +"rr.gov.br", +"rs.gov.br", +"sc.gov.br", +"se.gov.br", +"sp.gov.br", +"to.gov.br", +"gru.br", +"imb.br", +"ind.br", +"inf.br", +"jab.br", +"jampa.br", +"jdf.br", +"joinville.br", +"jor.br", +"jus.br", +"leg.br", +"lel.br", +"londrina.br", +"macapa.br", +"maceio.br", +"manaus.br", +"maringa.br", +"mat.br", +"med.br", +"mil.br", +"morena.br", +"mp.br", +"mus.br", +"natal.br", +"net.br", +"niteroi.br", +"*.nom.br", +"not.br", +"ntr.br", +"odo.br", +"ong.br", +"org.br", +"osasco.br", +"palmas.br", +"poa.br", +"ppg.br", +"pro.br", +"psc.br", +"psi.br", +"pvh.br", +"qsl.br", +"radio.br", +"rec.br", +"recife.br", +"ribeirao.br", +"rio.br", +"riobranco.br", +"riopreto.br", +"salvador.br", +"sampa.br", +"santamaria.br", +"santoandre.br", +"saobernardo.br", +"saogonca.br", +"sjc.br", +"slg.br", +"slz.br", +"sorocaba.br", +"srv.br", +"taxi.br", +"tc.br", +"teo.br", +"the.br", +"tmp.br", +"trd.br", +"tur.br", +"tv.br", +"udi.br", +"vet.br", +"vix.br", +"vlog.br", +"wiki.br", +"zlg.br", +"bs", +"com.bs", +"net.bs", +"org.bs", +"edu.bs", +"gov.bs", +"bt", +"com.bt", +"edu.bt", +"gov.bt", +"net.bt", +"org.bt", +"bv", +"bw", +"co.bw", +"org.bw", +"by", +"gov.by", +"mil.by", +"com.by", +"of.by", +"bz", +"com.bz", +"net.bz", +"org.bz", +"edu.bz", +"gov.bz", +"ca", +"ab.ca", +"bc.ca", +"mb.ca", +"nb.ca", +"nf.ca", +"nl.ca", +"ns.ca", +"nt.ca", +"nu.ca", +"on.ca", +"pe.ca", +"qc.ca", +"sk.ca", +"yk.ca", +"gc.ca", +"cat", +"cc", +"cd", +"gov.cd", +"cf", +"cg", +"ch", +"ci", +"org.ci", +"or.ci", +"com.ci", +"co.ci", +"edu.ci", +"ed.ci", +"ac.ci", +"net.ci", +"go.ci", +"asso.ci", +"aéroport.ci", +"int.ci", +"presse.ci", +"md.ci", +"gouv.ci", +"*.ck", +"!www.ck", +"cl", +"aprendemas.cl", +"co.cl", +"gob.cl", +"gov.cl", +"mil.cl", +"cm", +"co.cm", +"com.cm", +"gov.cm", +"net.cm", +"cn", +"ac.cn", +"com.cn", +"edu.cn", +"gov.cn", +"net.cn", +"org.cn", +"mil.cn", +"公司.cn", +"网络.cn", +"網絡.cn", +"ah.cn", +"bj.cn", +"cq.cn", +"fj.cn", +"gd.cn", +"gs.cn", +"gz.cn", +"gx.cn", +"ha.cn", +"hb.cn", +"he.cn", +"hi.cn", +"hl.cn", +"hn.cn", +"jl.cn", +"js.cn", +"jx.cn", +"ln.cn", +"nm.cn", +"nx.cn", +"qh.cn", +"sc.cn", +"sd.cn", +"sh.cn", +"sn.cn", +"sx.cn", +"tj.cn", +"xj.cn", +"xz.cn", +"yn.cn", +"zj.cn", +"hk.cn", +"mo.cn", +"tw.cn", +"co", +"arts.co", +"com.co", +"edu.co", +"firm.co", +"gov.co", +"info.co", +"int.co", +"mil.co", +"net.co", +"nom.co", +"org.co", +"rec.co", +"web.co", +"com", +"coop", +"cr", +"ac.cr", +"co.cr", +"ed.cr", +"fi.cr", +"go.cr", +"or.cr", +"sa.cr", +"cu", +"com.cu", +"edu.cu", +"org.cu", +"net.cu", +"gov.cu", +"inf.cu", +"cv", +"cw", +"com.cw", +"edu.cw", +"net.cw", +"org.cw", +"cx", +"gov.cx", +"cy", +"ac.cy", +"biz.cy", +"com.cy", +"ekloges.cy", +"gov.cy", +"ltd.cy", +"name.cy", +"net.cy", +"org.cy", +"parliament.cy", +"press.cy", +"pro.cy", +"tm.cy", +"cz", +"de", +"dj", +"dk", +"dm", +"com.dm", +"net.dm", +"org.dm", +"edu.dm", +"gov.dm", +"do", +"art.do", +"com.do", +"edu.do", +"gob.do", +"gov.do", +"mil.do", +"net.do", +"org.do", +"sld.do", +"web.do", +"dz", +"com.dz", +"org.dz", +"net.dz", +"gov.dz", +"edu.dz", +"asso.dz", +"pol.dz", +"art.dz", +"ec", +"com.ec", +"info.ec", +"net.ec", +"fin.ec", +"k12.ec", +"med.ec", +"pro.ec", +"org.ec", +"edu.ec", +"gov.ec", +"gob.ec", +"mil.ec", +"edu", +"ee", +"edu.ee", +"gov.ee", +"riik.ee", +"lib.ee", +"med.ee", +"com.ee", +"pri.ee", +"aip.ee", +"org.ee", +"fie.ee", +"eg", +"com.eg", +"edu.eg", +"eun.eg", +"gov.eg", +"mil.eg", +"name.eg", +"net.eg", +"org.eg", +"sci.eg", +"*.er", +"es", +"com.es", +"nom.es", +"org.es", +"gob.es", +"edu.es", +"et", +"com.et", +"gov.et", +"org.et", +"edu.et", +"biz.et", +"name.et", +"info.et", +"net.et", +"eu", +"fi", +"aland.fi", +"fj", +"ac.fj", +"biz.fj", +"com.fj", +"gov.fj", +"info.fj", +"mil.fj", +"name.fj", +"net.fj", +"org.fj", +"pro.fj", +"*.fk", +"fm", +"fo", +"fr", +"asso.fr", +"com.fr", +"gouv.fr", +"nom.fr", +"prd.fr", +"tm.fr", +"aeroport.fr", +"avocat.fr", +"avoues.fr", +"cci.fr", +"chambagri.fr", +"chirurgiens-dentistes.fr", +"experts-comptables.fr", +"geometre-expert.fr", +"greta.fr", +"huissier-justice.fr", +"medecin.fr", +"notaires.fr", +"pharmacien.fr", +"port.fr", +"veterinaire.fr", +"ga", +"gb", +"gd", +"ge", +"com.ge", +"edu.ge", +"gov.ge", +"org.ge", +"mil.ge", +"net.ge", +"pvt.ge", +"gf", +"gg", +"co.gg", +"net.gg", +"org.gg", +"gh", +"com.gh", +"edu.gh", +"gov.gh", +"org.gh", +"mil.gh", +"gi", +"com.gi", +"ltd.gi", +"gov.gi", +"mod.gi", +"edu.gi", +"org.gi", +"gl", +"co.gl", +"com.gl", +"edu.gl", +"net.gl", +"org.gl", +"gm", +"gn", +"ac.gn", +"com.gn", +"edu.gn", +"gov.gn", +"org.gn", +"net.gn", +"gov", +"gp", +"com.gp", +"net.gp", +"mobi.gp", +"edu.gp", +"org.gp", +"asso.gp", +"gq", +"gr", +"com.gr", +"edu.gr", +"net.gr", +"org.gr", +"gov.gr", +"gs", +"gt", +"com.gt", +"edu.gt", +"gob.gt", +"ind.gt", +"mil.gt", +"net.gt", +"org.gt", +"gu", +"com.gu", +"edu.gu", +"gov.gu", +"guam.gu", +"info.gu", +"net.gu", +"org.gu", +"web.gu", +"gw", +"gy", +"co.gy", +"com.gy", +"edu.gy", +"gov.gy", +"net.gy", +"org.gy", +"hk", +"com.hk", +"edu.hk", +"gov.hk", +"idv.hk", +"net.hk", +"org.hk", +"公司.hk", +"教育.hk", +"敎育.hk", +"政府.hk", +"個人.hk", +"个人.hk", +"箇人.hk", +"網络.hk", +"网络.hk", +"组織.hk", +"網絡.hk", +"网絡.hk", +"组织.hk", +"組織.hk", +"組织.hk", +"hm", +"hn", +"com.hn", +"edu.hn", +"org.hn", +"net.hn", +"mil.hn", +"gob.hn", +"hr", +"iz.hr", +"from.hr", +"name.hr", +"com.hr", +"ht", +"com.ht", +"shop.ht", +"firm.ht", +"info.ht", +"adult.ht", +"net.ht", +"pro.ht", +"org.ht", +"med.ht", +"art.ht", +"coop.ht", +"pol.ht", +"asso.ht", +"edu.ht", +"rel.ht", +"gouv.ht", +"perso.ht", +"hu", +"co.hu", +"info.hu", +"org.hu", +"priv.hu", +"sport.hu", +"tm.hu", +"2000.hu", +"agrar.hu", +"bolt.hu", +"casino.hu", +"city.hu", +"erotica.hu", +"erotika.hu", +"film.hu", +"forum.hu", +"games.hu", +"hotel.hu", +"ingatlan.hu", +"jogasz.hu", +"konyvelo.hu", +"lakas.hu", +"media.hu", +"news.hu", +"reklam.hu", +"sex.hu", +"shop.hu", +"suli.hu", +"szex.hu", +"tozsde.hu", +"utazas.hu", +"video.hu", +"id", +"ac.id", +"biz.id", +"co.id", +"desa.id", +"go.id", +"mil.id", +"my.id", +"net.id", +"or.id", +"ponpes.id", +"sch.id", +"web.id", +"ie", +"gov.ie", +"il", +"ac.il", +"co.il", +"gov.il", +"idf.il", +"k12.il", +"muni.il", +"net.il", +"org.il", +"im", +"ac.im", +"co.im", +"com.im", +"ltd.co.im", +"net.im", +"org.im", +"plc.co.im", +"tt.im", +"tv.im", +"in", +"co.in", +"firm.in", +"net.in", +"org.in", +"gen.in", +"ind.in", +"nic.in", +"ac.in", +"edu.in", +"res.in", +"gov.in", +"mil.in", +"info", +"int", +"eu.int", +"io", +"com.io", +"iq", +"gov.iq", +"edu.iq", +"mil.iq", +"com.iq", +"org.iq", +"net.iq", +"ir", +"ac.ir", +"co.ir", +"gov.ir", +"id.ir", +"net.ir", +"org.ir", +"sch.ir", +"ایران.ir", +"ايران.ir", +"is", +"net.is", +"com.is", +"edu.is", +"gov.is", +"org.is", +"int.is", +"it", +"gov.it", +"edu.it", +"abr.it", +"abruzzo.it", +"aosta-valley.it", +"aostavalley.it", +"bas.it", +"basilicata.it", +"cal.it", +"calabria.it", +"cam.it", +"campania.it", +"emilia-romagna.it", +"emiliaromagna.it", +"emr.it", +"friuli-v-giulia.it", +"friuli-ve-giulia.it", +"friuli-vegiulia.it", +"friuli-venezia-giulia.it", +"friuli-veneziagiulia.it", +"friuli-vgiulia.it", +"friuliv-giulia.it", +"friulive-giulia.it", +"friulivegiulia.it", +"friulivenezia-giulia.it", +"friuliveneziagiulia.it", +"friulivgiulia.it", +"fvg.it", +"laz.it", +"lazio.it", +"lig.it", +"liguria.it", +"lom.it", +"lombardia.it", +"lombardy.it", +"lucania.it", +"mar.it", +"marche.it", +"mol.it", +"molise.it", +"piedmont.it", +"piemonte.it", +"pmn.it", +"pug.it", +"puglia.it", +"sar.it", +"sardegna.it", +"sardinia.it", +"sic.it", +"sicilia.it", +"sicily.it", +"taa.it", +"tos.it", +"toscana.it", +"trentin-sud-tirol.it", +"trentin-süd-tirol.it", +"trentin-sudtirol.it", +"trentin-südtirol.it", +"trentin-sued-tirol.it", +"trentin-suedtirol.it", +"trentino-a-adige.it", +"trentino-aadige.it", +"trentino-alto-adige.it", +"trentino-altoadige.it", +"trentino-s-tirol.it", +"trentino-stirol.it", +"trentino-sud-tirol.it", +"trentino-süd-tirol.it", +"trentino-sudtirol.it", +"trentino-südtirol.it", +"trentino-sued-tirol.it", +"trentino-suedtirol.it", +"trentino.it", +"trentinoa-adige.it", +"trentinoaadige.it", +"trentinoalto-adige.it", +"trentinoaltoadige.it", +"trentinos-tirol.it", +"trentinostirol.it", +"trentinosud-tirol.it", +"trentinosüd-tirol.it", +"trentinosudtirol.it", +"trentinosüdtirol.it", +"trentinosued-tirol.it", +"trentinosuedtirol.it", +"trentinsud-tirol.it", +"trentinsüd-tirol.it", +"trentinsudtirol.it", +"trentinsüdtirol.it", +"trentinsued-tirol.it", +"trentinsuedtirol.it", +"tuscany.it", +"umb.it", +"umbria.it", +"val-d-aosta.it", +"val-daosta.it", +"vald-aosta.it", +"valdaosta.it", +"valle-aosta.it", +"valle-d-aosta.it", +"valle-daosta.it", +"valleaosta.it", +"valled-aosta.it", +"valledaosta.it", +"vallee-aoste.it", +"vallée-aoste.it", +"vallee-d-aoste.it", +"vallée-d-aoste.it", +"valleeaoste.it", +"valléeaoste.it", +"valleedaoste.it", +"valléedaoste.it", +"vao.it", +"vda.it", +"ven.it", +"veneto.it", +"ag.it", +"agrigento.it", +"al.it", +"alessandria.it", +"alto-adige.it", +"altoadige.it", +"an.it", +"ancona.it", +"andria-barletta-trani.it", +"andria-trani-barletta.it", +"andriabarlettatrani.it", +"andriatranibarletta.it", +"ao.it", +"aosta.it", +"aoste.it", +"ap.it", +"aq.it", +"aquila.it", +"ar.it", +"arezzo.it", +"ascoli-piceno.it", +"ascolipiceno.it", +"asti.it", +"at.it", +"av.it", +"avellino.it", +"ba.it", +"balsan-sudtirol.it", +"balsan-südtirol.it", +"balsan-suedtirol.it", +"balsan.it", +"bari.it", +"barletta-trani-andria.it", +"barlettatraniandria.it", +"belluno.it", +"benevento.it", +"bergamo.it", +"bg.it", +"bi.it", +"biella.it", +"bl.it", +"bn.it", +"bo.it", +"bologna.it", +"bolzano-altoadige.it", +"bolzano.it", +"bozen-sudtirol.it", +"bozen-südtirol.it", +"bozen-suedtirol.it", +"bozen.it", +"br.it", +"brescia.it", +"brindisi.it", +"bs.it", +"bt.it", +"bulsan-sudtirol.it", +"bulsan-südtirol.it", +"bulsan-suedtirol.it", +"bulsan.it", +"bz.it", +"ca.it", +"cagliari.it", +"caltanissetta.it", +"campidano-medio.it", +"campidanomedio.it", +"campobasso.it", +"carbonia-iglesias.it", +"carboniaiglesias.it", +"carrara-massa.it", +"carraramassa.it", +"caserta.it", +"catania.it", +"catanzaro.it", +"cb.it", +"ce.it", +"cesena-forli.it", +"cesena-forlì.it", +"cesenaforli.it", +"cesenaforlì.it", +"ch.it", +"chieti.it", +"ci.it", +"cl.it", +"cn.it", +"co.it", +"como.it", +"cosenza.it", +"cr.it", +"cremona.it", +"crotone.it", +"cs.it", +"ct.it", +"cuneo.it", +"cz.it", +"dell-ogliastra.it", +"dellogliastra.it", +"en.it", +"enna.it", +"fc.it", +"fe.it", +"fermo.it", +"ferrara.it", +"fg.it", +"fi.it", +"firenze.it", +"florence.it", +"fm.it", +"foggia.it", +"forli-cesena.it", +"forlì-cesena.it", +"forlicesena.it", +"forlìcesena.it", +"fr.it", +"frosinone.it", +"ge.it", +"genoa.it", +"genova.it", +"go.it", +"gorizia.it", +"gr.it", +"grosseto.it", +"iglesias-carbonia.it", +"iglesiascarbonia.it", +"im.it", +"imperia.it", +"is.it", +"isernia.it", +"kr.it", +"la-spezia.it", +"laquila.it", +"laspezia.it", +"latina.it", +"lc.it", +"le.it", +"lecce.it", +"lecco.it", +"li.it", +"livorno.it", +"lo.it", +"lodi.it", +"lt.it", +"lu.it", +"lucca.it", +"macerata.it", +"mantova.it", +"massa-carrara.it", +"massacarrara.it", +"matera.it", +"mb.it", +"mc.it", +"me.it", +"medio-campidano.it", +"mediocampidano.it", +"messina.it", +"mi.it", +"milan.it", +"milano.it", +"mn.it", +"mo.it", +"modena.it", +"monza-brianza.it", +"monza-e-della-brianza.it", +"monza.it", +"monzabrianza.it", +"monzaebrianza.it", +"monzaedellabrianza.it", +"ms.it", +"mt.it", +"na.it", +"naples.it", +"napoli.it", +"no.it", +"novara.it", +"nu.it", +"nuoro.it", +"og.it", +"ogliastra.it", +"olbia-tempio.it", +"olbiatempio.it", +"or.it", +"oristano.it", +"ot.it", +"pa.it", +"padova.it", +"padua.it", +"palermo.it", +"parma.it", +"pavia.it", +"pc.it", +"pd.it", +"pe.it", +"perugia.it", +"pesaro-urbino.it", +"pesarourbino.it", +"pescara.it", +"pg.it", +"pi.it", +"piacenza.it", +"pisa.it", +"pistoia.it", +"pn.it", +"po.it", +"pordenone.it", +"potenza.it", +"pr.it", +"prato.it", +"pt.it", +"pu.it", +"pv.it", +"pz.it", +"ra.it", +"ragusa.it", +"ravenna.it", +"rc.it", +"re.it", +"reggio-calabria.it", +"reggio-emilia.it", +"reggiocalabria.it", +"reggioemilia.it", +"rg.it", +"ri.it", +"rieti.it", +"rimini.it", +"rm.it", +"rn.it", +"ro.it", +"roma.it", +"rome.it", +"rovigo.it", +"sa.it", +"salerno.it", +"sassari.it", +"savona.it", +"si.it", +"siena.it", +"siracusa.it", +"so.it", +"sondrio.it", +"sp.it", +"sr.it", +"ss.it", +"suedtirol.it", +"südtirol.it", +"sv.it", +"ta.it", +"taranto.it", +"te.it", +"tempio-olbia.it", +"tempioolbia.it", +"teramo.it", +"terni.it", +"tn.it", +"to.it", +"torino.it", +"tp.it", +"tr.it", +"trani-andria-barletta.it", +"trani-barletta-andria.it", +"traniandriabarletta.it", +"tranibarlettaandria.it", +"trapani.it", +"trento.it", +"treviso.it", +"trieste.it", +"ts.it", +"turin.it", +"tv.it", +"ud.it", +"udine.it", +"urbino-pesaro.it", +"urbinopesaro.it", +"va.it", +"varese.it", +"vb.it", +"vc.it", +"ve.it", +"venezia.it", +"venice.it", +"verbania.it", +"vercelli.it", +"verona.it", +"vi.it", +"vibo-valentia.it", +"vibovalentia.it", +"vicenza.it", +"viterbo.it", +"vr.it", +"vs.it", +"vt.it", +"vv.it", +"je", +"co.je", +"net.je", +"org.je", +"*.jm", +"jo", +"com.jo", +"org.jo", +"net.jo", +"edu.jo", +"sch.jo", +"gov.jo", +"mil.jo", +"name.jo", +"jobs", +"jp", +"ac.jp", +"ad.jp", +"co.jp", +"ed.jp", +"go.jp", +"gr.jp", +"lg.jp", +"ne.jp", +"or.jp", +"aichi.jp", +"akita.jp", +"aomori.jp", +"chiba.jp", +"ehime.jp", +"fukui.jp", +"fukuoka.jp", +"fukushima.jp", +"gifu.jp", +"gunma.jp", +"hiroshima.jp", +"hokkaido.jp", +"hyogo.jp", +"ibaraki.jp", +"ishikawa.jp", +"iwate.jp", +"kagawa.jp", +"kagoshima.jp", +"kanagawa.jp", +"kochi.jp", +"kumamoto.jp", +"kyoto.jp", +"mie.jp", +"miyagi.jp", +"miyazaki.jp", +"nagano.jp", +"nagasaki.jp", +"nara.jp", +"niigata.jp", +"oita.jp", +"okayama.jp", +"okinawa.jp", +"osaka.jp", +"saga.jp", +"saitama.jp", +"shiga.jp", +"shimane.jp", +"shizuoka.jp", +"tochigi.jp", +"tokushima.jp", +"tokyo.jp", +"tottori.jp", +"toyama.jp", +"wakayama.jp", +"yamagata.jp", +"yamaguchi.jp", +"yamanashi.jp", +"栃木.jp", +"愛知.jp", +"愛媛.jp", +"兵庫.jp", +"熊本.jp", +"茨城.jp", +"北海道.jp", +"千葉.jp", +"和歌山.jp", +"長崎.jp", +"長野.jp", +"新潟.jp", +"青森.jp", +"静岡.jp", +"東京.jp", +"石川.jp", +"埼玉.jp", +"三重.jp", +"京都.jp", +"佐賀.jp", +"大分.jp", +"大阪.jp", +"奈良.jp", +"宮城.jp", +"宮崎.jp", +"富山.jp", +"山口.jp", +"山形.jp", +"山梨.jp", +"岩手.jp", +"岐阜.jp", +"岡山.jp", +"島根.jp", +"広島.jp", +"徳島.jp", +"沖縄.jp", +"滋賀.jp", +"神奈川.jp", +"福井.jp", +"福岡.jp", +"福島.jp", +"秋田.jp", +"群馬.jp", +"香川.jp", +"高知.jp", +"鳥取.jp", +"鹿児島.jp", +"*.kawasaki.jp", +"*.kitakyushu.jp", +"*.kobe.jp", +"*.nagoya.jp", +"*.sapporo.jp", +"*.sendai.jp", +"*.yokohama.jp", +"!city.kawasaki.jp", +"!city.kitakyushu.jp", +"!city.kobe.jp", +"!city.nagoya.jp", +"!city.sapporo.jp", +"!city.sendai.jp", +"!city.yokohama.jp", +"aisai.aichi.jp", +"ama.aichi.jp", +"anjo.aichi.jp", +"asuke.aichi.jp", +"chiryu.aichi.jp", +"chita.aichi.jp", +"fuso.aichi.jp", +"gamagori.aichi.jp", +"handa.aichi.jp", +"hazu.aichi.jp", +"hekinan.aichi.jp", +"higashiura.aichi.jp", +"ichinomiya.aichi.jp", +"inazawa.aichi.jp", +"inuyama.aichi.jp", +"isshiki.aichi.jp", +"iwakura.aichi.jp", +"kanie.aichi.jp", +"kariya.aichi.jp", +"kasugai.aichi.jp", +"kira.aichi.jp", +"kiyosu.aichi.jp", +"komaki.aichi.jp", +"konan.aichi.jp", +"kota.aichi.jp", +"mihama.aichi.jp", +"miyoshi.aichi.jp", +"nishio.aichi.jp", +"nisshin.aichi.jp", +"obu.aichi.jp", +"oguchi.aichi.jp", +"oharu.aichi.jp", +"okazaki.aichi.jp", +"owariasahi.aichi.jp", +"seto.aichi.jp", +"shikatsu.aichi.jp", +"shinshiro.aichi.jp", +"shitara.aichi.jp", +"tahara.aichi.jp", +"takahama.aichi.jp", +"tobishima.aichi.jp", +"toei.aichi.jp", +"togo.aichi.jp", +"tokai.aichi.jp", +"tokoname.aichi.jp", +"toyoake.aichi.jp", +"toyohashi.aichi.jp", +"toyokawa.aichi.jp", +"toyone.aichi.jp", +"toyota.aichi.jp", +"tsushima.aichi.jp", +"yatomi.aichi.jp", +"akita.akita.jp", +"daisen.akita.jp", +"fujisato.akita.jp", +"gojome.akita.jp", +"hachirogata.akita.jp", +"happou.akita.jp", +"higashinaruse.akita.jp", +"honjo.akita.jp", +"honjyo.akita.jp", +"ikawa.akita.jp", +"kamikoani.akita.jp", +"kamioka.akita.jp", +"katagami.akita.jp", +"kazuno.akita.jp", +"kitaakita.akita.jp", +"kosaka.akita.jp", +"kyowa.akita.jp", +"misato.akita.jp", +"mitane.akita.jp", +"moriyoshi.akita.jp", +"nikaho.akita.jp", +"noshiro.akita.jp", +"odate.akita.jp", +"oga.akita.jp", +"ogata.akita.jp", +"semboku.akita.jp", +"yokote.akita.jp", +"yurihonjo.akita.jp", +"aomori.aomori.jp", +"gonohe.aomori.jp", +"hachinohe.aomori.jp", +"hashikami.aomori.jp", +"hiranai.aomori.jp", +"hirosaki.aomori.jp", +"itayanagi.aomori.jp", +"kuroishi.aomori.jp", +"misawa.aomori.jp", +"mutsu.aomori.jp", +"nakadomari.aomori.jp", +"noheji.aomori.jp", +"oirase.aomori.jp", +"owani.aomori.jp", +"rokunohe.aomori.jp", +"sannohe.aomori.jp", +"shichinohe.aomori.jp", +"shingo.aomori.jp", +"takko.aomori.jp", +"towada.aomori.jp", +"tsugaru.aomori.jp", +"tsuruta.aomori.jp", +"abiko.chiba.jp", +"asahi.chiba.jp", +"chonan.chiba.jp", +"chosei.chiba.jp", +"choshi.chiba.jp", +"chuo.chiba.jp", +"funabashi.chiba.jp", +"futtsu.chiba.jp", +"hanamigawa.chiba.jp", +"ichihara.chiba.jp", +"ichikawa.chiba.jp", +"ichinomiya.chiba.jp", +"inzai.chiba.jp", +"isumi.chiba.jp", +"kamagaya.chiba.jp", +"kamogawa.chiba.jp", +"kashiwa.chiba.jp", +"katori.chiba.jp", +"katsuura.chiba.jp", +"kimitsu.chiba.jp", +"kisarazu.chiba.jp", +"kozaki.chiba.jp", +"kujukuri.chiba.jp", +"kyonan.chiba.jp", +"matsudo.chiba.jp", +"midori.chiba.jp", +"mihama.chiba.jp", +"minamiboso.chiba.jp", +"mobara.chiba.jp", +"mutsuzawa.chiba.jp", +"nagara.chiba.jp", +"nagareyama.chiba.jp", +"narashino.chiba.jp", +"narita.chiba.jp", +"noda.chiba.jp", +"oamishirasato.chiba.jp", +"omigawa.chiba.jp", +"onjuku.chiba.jp", +"otaki.chiba.jp", +"sakae.chiba.jp", +"sakura.chiba.jp", +"shimofusa.chiba.jp", +"shirako.chiba.jp", +"shiroi.chiba.jp", +"shisui.chiba.jp", +"sodegaura.chiba.jp", +"sosa.chiba.jp", +"tako.chiba.jp", +"tateyama.chiba.jp", +"togane.chiba.jp", +"tohnosho.chiba.jp", +"tomisato.chiba.jp", +"urayasu.chiba.jp", +"yachimata.chiba.jp", +"yachiyo.chiba.jp", +"yokaichiba.chiba.jp", +"yokoshibahikari.chiba.jp", +"yotsukaido.chiba.jp", +"ainan.ehime.jp", +"honai.ehime.jp", +"ikata.ehime.jp", +"imabari.ehime.jp", +"iyo.ehime.jp", +"kamijima.ehime.jp", +"kihoku.ehime.jp", +"kumakogen.ehime.jp", +"masaki.ehime.jp", +"matsuno.ehime.jp", +"matsuyama.ehime.jp", +"namikata.ehime.jp", +"niihama.ehime.jp", +"ozu.ehime.jp", +"saijo.ehime.jp", +"seiyo.ehime.jp", +"shikokuchuo.ehime.jp", +"tobe.ehime.jp", +"toon.ehime.jp", +"uchiko.ehime.jp", +"uwajima.ehime.jp", +"yawatahama.ehime.jp", +"echizen.fukui.jp", +"eiheiji.fukui.jp", +"fukui.fukui.jp", +"ikeda.fukui.jp", +"katsuyama.fukui.jp", +"mihama.fukui.jp", +"minamiechizen.fukui.jp", +"obama.fukui.jp", +"ohi.fukui.jp", +"ono.fukui.jp", +"sabae.fukui.jp", +"sakai.fukui.jp", +"takahama.fukui.jp", +"tsuruga.fukui.jp", +"wakasa.fukui.jp", +"ashiya.fukuoka.jp", +"buzen.fukuoka.jp", +"chikugo.fukuoka.jp", +"chikuho.fukuoka.jp", +"chikujo.fukuoka.jp", +"chikushino.fukuoka.jp", +"chikuzen.fukuoka.jp", +"chuo.fukuoka.jp", +"dazaifu.fukuoka.jp", +"fukuchi.fukuoka.jp", +"hakata.fukuoka.jp", +"higashi.fukuoka.jp", +"hirokawa.fukuoka.jp", +"hisayama.fukuoka.jp", +"iizuka.fukuoka.jp", +"inatsuki.fukuoka.jp", +"kaho.fukuoka.jp", +"kasuga.fukuoka.jp", +"kasuya.fukuoka.jp", +"kawara.fukuoka.jp", +"keisen.fukuoka.jp", +"koga.fukuoka.jp", +"kurate.fukuoka.jp", +"kurogi.fukuoka.jp", +"kurume.fukuoka.jp", +"minami.fukuoka.jp", +"miyako.fukuoka.jp", +"miyama.fukuoka.jp", +"miyawaka.fukuoka.jp", +"mizumaki.fukuoka.jp", +"munakata.fukuoka.jp", +"nakagawa.fukuoka.jp", +"nakama.fukuoka.jp", +"nishi.fukuoka.jp", +"nogata.fukuoka.jp", +"ogori.fukuoka.jp", +"okagaki.fukuoka.jp", +"okawa.fukuoka.jp", +"oki.fukuoka.jp", +"omuta.fukuoka.jp", +"onga.fukuoka.jp", +"onojo.fukuoka.jp", +"oto.fukuoka.jp", +"saigawa.fukuoka.jp", +"sasaguri.fukuoka.jp", +"shingu.fukuoka.jp", +"shinyoshitomi.fukuoka.jp", +"shonai.fukuoka.jp", +"soeda.fukuoka.jp", +"sue.fukuoka.jp", +"tachiarai.fukuoka.jp", +"tagawa.fukuoka.jp", +"takata.fukuoka.jp", +"toho.fukuoka.jp", +"toyotsu.fukuoka.jp", +"tsuiki.fukuoka.jp", +"ukiha.fukuoka.jp", +"umi.fukuoka.jp", +"usui.fukuoka.jp", +"yamada.fukuoka.jp", +"yame.fukuoka.jp", +"yanagawa.fukuoka.jp", +"yukuhashi.fukuoka.jp", +"aizubange.fukushima.jp", +"aizumisato.fukushima.jp", +"aizuwakamatsu.fukushima.jp", +"asakawa.fukushima.jp", +"bandai.fukushima.jp", +"date.fukushima.jp", +"fukushima.fukushima.jp", +"furudono.fukushima.jp", +"futaba.fukushima.jp", +"hanawa.fukushima.jp", +"higashi.fukushima.jp", +"hirata.fukushima.jp", +"hirono.fukushima.jp", +"iitate.fukushima.jp", +"inawashiro.fukushima.jp", +"ishikawa.fukushima.jp", +"iwaki.fukushima.jp", +"izumizaki.fukushima.jp", +"kagamiishi.fukushima.jp", +"kaneyama.fukushima.jp", +"kawamata.fukushima.jp", +"kitakata.fukushima.jp", +"kitashiobara.fukushima.jp", +"koori.fukushima.jp", +"koriyama.fukushima.jp", +"kunimi.fukushima.jp", +"miharu.fukushima.jp", +"mishima.fukushima.jp", +"namie.fukushima.jp", +"nango.fukushima.jp", +"nishiaizu.fukushima.jp", +"nishigo.fukushima.jp", +"okuma.fukushima.jp", +"omotego.fukushima.jp", +"ono.fukushima.jp", +"otama.fukushima.jp", +"samegawa.fukushima.jp", +"shimogo.fukushima.jp", +"shirakawa.fukushima.jp", +"showa.fukushima.jp", +"soma.fukushima.jp", +"sukagawa.fukushima.jp", +"taishin.fukushima.jp", +"tamakawa.fukushima.jp", +"tanagura.fukushima.jp", +"tenei.fukushima.jp", +"yabuki.fukushima.jp", +"yamato.fukushima.jp", +"yamatsuri.fukushima.jp", +"yanaizu.fukushima.jp", +"yugawa.fukushima.jp", +"anpachi.gifu.jp", +"ena.gifu.jp", +"gifu.gifu.jp", +"ginan.gifu.jp", +"godo.gifu.jp", +"gujo.gifu.jp", +"hashima.gifu.jp", +"hichiso.gifu.jp", +"hida.gifu.jp", +"higashishirakawa.gifu.jp", +"ibigawa.gifu.jp", +"ikeda.gifu.jp", +"kakamigahara.gifu.jp", +"kani.gifu.jp", +"kasahara.gifu.jp", +"kasamatsu.gifu.jp", +"kawaue.gifu.jp", +"kitagata.gifu.jp", +"mino.gifu.jp", +"minokamo.gifu.jp", +"mitake.gifu.jp", +"mizunami.gifu.jp", +"motosu.gifu.jp", +"nakatsugawa.gifu.jp", +"ogaki.gifu.jp", +"sakahogi.gifu.jp", +"seki.gifu.jp", +"sekigahara.gifu.jp", +"shirakawa.gifu.jp", +"tajimi.gifu.jp", +"takayama.gifu.jp", +"tarui.gifu.jp", +"toki.gifu.jp", +"tomika.gifu.jp", +"wanouchi.gifu.jp", +"yamagata.gifu.jp", +"yaotsu.gifu.jp", +"yoro.gifu.jp", +"annaka.gunma.jp", +"chiyoda.gunma.jp", +"fujioka.gunma.jp", +"higashiagatsuma.gunma.jp", +"isesaki.gunma.jp", +"itakura.gunma.jp", +"kanna.gunma.jp", +"kanra.gunma.jp", +"katashina.gunma.jp", +"kawaba.gunma.jp", +"kiryu.gunma.jp", +"kusatsu.gunma.jp", +"maebashi.gunma.jp", +"meiwa.gunma.jp", +"midori.gunma.jp", +"minakami.gunma.jp", +"naganohara.gunma.jp", +"nakanojo.gunma.jp", +"nanmoku.gunma.jp", +"numata.gunma.jp", +"oizumi.gunma.jp", +"ora.gunma.jp", +"ota.gunma.jp", +"shibukawa.gunma.jp", +"shimonita.gunma.jp", +"shinto.gunma.jp", +"showa.gunma.jp", +"takasaki.gunma.jp", +"takayama.gunma.jp", +"tamamura.gunma.jp", +"tatebayashi.gunma.jp", +"tomioka.gunma.jp", +"tsukiyono.gunma.jp", +"tsumagoi.gunma.jp", +"ueno.gunma.jp", +"yoshioka.gunma.jp", +"asaminami.hiroshima.jp", +"daiwa.hiroshima.jp", +"etajima.hiroshima.jp", +"fuchu.hiroshima.jp", +"fukuyama.hiroshima.jp", +"hatsukaichi.hiroshima.jp", +"higashihiroshima.hiroshima.jp", +"hongo.hiroshima.jp", +"jinsekikogen.hiroshima.jp", +"kaita.hiroshima.jp", +"kui.hiroshima.jp", +"kumano.hiroshima.jp", +"kure.hiroshima.jp", +"mihara.hiroshima.jp", +"miyoshi.hiroshima.jp", +"naka.hiroshima.jp", +"onomichi.hiroshima.jp", +"osakikamijima.hiroshima.jp", +"otake.hiroshima.jp", +"saka.hiroshima.jp", +"sera.hiroshima.jp", +"seranishi.hiroshima.jp", +"shinichi.hiroshima.jp", +"shobara.hiroshima.jp", +"takehara.hiroshima.jp", +"abashiri.hokkaido.jp", +"abira.hokkaido.jp", +"aibetsu.hokkaido.jp", +"akabira.hokkaido.jp", +"akkeshi.hokkaido.jp", +"asahikawa.hokkaido.jp", +"ashibetsu.hokkaido.jp", +"ashoro.hokkaido.jp", +"assabu.hokkaido.jp", +"atsuma.hokkaido.jp", +"bibai.hokkaido.jp", +"biei.hokkaido.jp", +"bifuka.hokkaido.jp", +"bihoro.hokkaido.jp", +"biratori.hokkaido.jp", +"chippubetsu.hokkaido.jp", +"chitose.hokkaido.jp", +"date.hokkaido.jp", +"ebetsu.hokkaido.jp", +"embetsu.hokkaido.jp", +"eniwa.hokkaido.jp", +"erimo.hokkaido.jp", +"esan.hokkaido.jp", +"esashi.hokkaido.jp", +"fukagawa.hokkaido.jp", +"fukushima.hokkaido.jp", +"furano.hokkaido.jp", +"furubira.hokkaido.jp", +"haboro.hokkaido.jp", +"hakodate.hokkaido.jp", +"hamatonbetsu.hokkaido.jp", +"hidaka.hokkaido.jp", +"higashikagura.hokkaido.jp", +"higashikawa.hokkaido.jp", +"hiroo.hokkaido.jp", +"hokuryu.hokkaido.jp", +"hokuto.hokkaido.jp", +"honbetsu.hokkaido.jp", +"horokanai.hokkaido.jp", +"horonobe.hokkaido.jp", +"ikeda.hokkaido.jp", +"imakane.hokkaido.jp", +"ishikari.hokkaido.jp", +"iwamizawa.hokkaido.jp", +"iwanai.hokkaido.jp", +"kamifurano.hokkaido.jp", +"kamikawa.hokkaido.jp", +"kamishihoro.hokkaido.jp", +"kamisunagawa.hokkaido.jp", +"kamoenai.hokkaido.jp", +"kayabe.hokkaido.jp", +"kembuchi.hokkaido.jp", +"kikonai.hokkaido.jp", +"kimobetsu.hokkaido.jp", +"kitahiroshima.hokkaido.jp", +"kitami.hokkaido.jp", +"kiyosato.hokkaido.jp", +"koshimizu.hokkaido.jp", +"kunneppu.hokkaido.jp", +"kuriyama.hokkaido.jp", +"kuromatsunai.hokkaido.jp", +"kushiro.hokkaido.jp", +"kutchan.hokkaido.jp", +"kyowa.hokkaido.jp", +"mashike.hokkaido.jp", +"matsumae.hokkaido.jp", +"mikasa.hokkaido.jp", +"minamifurano.hokkaido.jp", +"mombetsu.hokkaido.jp", +"moseushi.hokkaido.jp", +"mukawa.hokkaido.jp", +"muroran.hokkaido.jp", +"naie.hokkaido.jp", +"nakagawa.hokkaido.jp", +"nakasatsunai.hokkaido.jp", +"nakatombetsu.hokkaido.jp", +"nanae.hokkaido.jp", +"nanporo.hokkaido.jp", +"nayoro.hokkaido.jp", +"nemuro.hokkaido.jp", +"niikappu.hokkaido.jp", +"niki.hokkaido.jp", +"nishiokoppe.hokkaido.jp", +"noboribetsu.hokkaido.jp", +"numata.hokkaido.jp", +"obihiro.hokkaido.jp", +"obira.hokkaido.jp", +"oketo.hokkaido.jp", +"okoppe.hokkaido.jp", +"otaru.hokkaido.jp", +"otobe.hokkaido.jp", +"otofuke.hokkaido.jp", +"otoineppu.hokkaido.jp", +"oumu.hokkaido.jp", +"ozora.hokkaido.jp", +"pippu.hokkaido.jp", +"rankoshi.hokkaido.jp", +"rebun.hokkaido.jp", +"rikubetsu.hokkaido.jp", +"rishiri.hokkaido.jp", +"rishirifuji.hokkaido.jp", +"saroma.hokkaido.jp", +"sarufutsu.hokkaido.jp", +"shakotan.hokkaido.jp", +"shari.hokkaido.jp", +"shibecha.hokkaido.jp", +"shibetsu.hokkaido.jp", +"shikabe.hokkaido.jp", +"shikaoi.hokkaido.jp", +"shimamaki.hokkaido.jp", +"shimizu.hokkaido.jp", +"shimokawa.hokkaido.jp", +"shinshinotsu.hokkaido.jp", +"shintoku.hokkaido.jp", +"shiranuka.hokkaido.jp", +"shiraoi.hokkaido.jp", +"shiriuchi.hokkaido.jp", +"sobetsu.hokkaido.jp", +"sunagawa.hokkaido.jp", +"taiki.hokkaido.jp", +"takasu.hokkaido.jp", +"takikawa.hokkaido.jp", +"takinoue.hokkaido.jp", +"teshikaga.hokkaido.jp", +"tobetsu.hokkaido.jp", +"tohma.hokkaido.jp", +"tomakomai.hokkaido.jp", +"tomari.hokkaido.jp", +"toya.hokkaido.jp", +"toyako.hokkaido.jp", +"toyotomi.hokkaido.jp", +"toyoura.hokkaido.jp", +"tsubetsu.hokkaido.jp", +"tsukigata.hokkaido.jp", +"urakawa.hokkaido.jp", +"urausu.hokkaido.jp", +"uryu.hokkaido.jp", +"utashinai.hokkaido.jp", +"wakkanai.hokkaido.jp", +"wassamu.hokkaido.jp", +"yakumo.hokkaido.jp", +"yoichi.hokkaido.jp", +"aioi.hyogo.jp", +"akashi.hyogo.jp", +"ako.hyogo.jp", +"amagasaki.hyogo.jp", +"aogaki.hyogo.jp", +"asago.hyogo.jp", +"ashiya.hyogo.jp", +"awaji.hyogo.jp", +"fukusaki.hyogo.jp", +"goshiki.hyogo.jp", +"harima.hyogo.jp", +"himeji.hyogo.jp", +"ichikawa.hyogo.jp", +"inagawa.hyogo.jp", +"itami.hyogo.jp", +"kakogawa.hyogo.jp", +"kamigori.hyogo.jp", +"kamikawa.hyogo.jp", +"kasai.hyogo.jp", +"kasuga.hyogo.jp", +"kawanishi.hyogo.jp", +"miki.hyogo.jp", +"minamiawaji.hyogo.jp", +"nishinomiya.hyogo.jp", +"nishiwaki.hyogo.jp", +"ono.hyogo.jp", +"sanda.hyogo.jp", +"sannan.hyogo.jp", +"sasayama.hyogo.jp", +"sayo.hyogo.jp", +"shingu.hyogo.jp", +"shinonsen.hyogo.jp", +"shiso.hyogo.jp", +"sumoto.hyogo.jp", +"taishi.hyogo.jp", +"taka.hyogo.jp", +"takarazuka.hyogo.jp", +"takasago.hyogo.jp", +"takino.hyogo.jp", +"tamba.hyogo.jp", +"tatsuno.hyogo.jp", +"toyooka.hyogo.jp", +"yabu.hyogo.jp", +"yashiro.hyogo.jp", +"yoka.hyogo.jp", +"yokawa.hyogo.jp", +"ami.ibaraki.jp", +"asahi.ibaraki.jp", +"bando.ibaraki.jp", +"chikusei.ibaraki.jp", +"daigo.ibaraki.jp", +"fujishiro.ibaraki.jp", +"hitachi.ibaraki.jp", +"hitachinaka.ibaraki.jp", +"hitachiomiya.ibaraki.jp", +"hitachiota.ibaraki.jp", +"ibaraki.ibaraki.jp", +"ina.ibaraki.jp", +"inashiki.ibaraki.jp", +"itako.ibaraki.jp", +"iwama.ibaraki.jp", +"joso.ibaraki.jp", +"kamisu.ibaraki.jp", +"kasama.ibaraki.jp", +"kashima.ibaraki.jp", +"kasumigaura.ibaraki.jp", +"koga.ibaraki.jp", +"miho.ibaraki.jp", +"mito.ibaraki.jp", +"moriya.ibaraki.jp", +"naka.ibaraki.jp", +"namegata.ibaraki.jp", +"oarai.ibaraki.jp", +"ogawa.ibaraki.jp", +"omitama.ibaraki.jp", +"ryugasaki.ibaraki.jp", +"sakai.ibaraki.jp", +"sakuragawa.ibaraki.jp", +"shimodate.ibaraki.jp", +"shimotsuma.ibaraki.jp", +"shirosato.ibaraki.jp", +"sowa.ibaraki.jp", +"suifu.ibaraki.jp", +"takahagi.ibaraki.jp", +"tamatsukuri.ibaraki.jp", +"tokai.ibaraki.jp", +"tomobe.ibaraki.jp", +"tone.ibaraki.jp", +"toride.ibaraki.jp", +"tsuchiura.ibaraki.jp", +"tsukuba.ibaraki.jp", +"uchihara.ibaraki.jp", +"ushiku.ibaraki.jp", +"yachiyo.ibaraki.jp", +"yamagata.ibaraki.jp", +"yawara.ibaraki.jp", +"yuki.ibaraki.jp", +"anamizu.ishikawa.jp", +"hakui.ishikawa.jp", +"hakusan.ishikawa.jp", +"kaga.ishikawa.jp", +"kahoku.ishikawa.jp", +"kanazawa.ishikawa.jp", +"kawakita.ishikawa.jp", +"komatsu.ishikawa.jp", +"nakanoto.ishikawa.jp", +"nanao.ishikawa.jp", +"nomi.ishikawa.jp", +"nonoichi.ishikawa.jp", +"noto.ishikawa.jp", +"shika.ishikawa.jp", +"suzu.ishikawa.jp", +"tsubata.ishikawa.jp", +"tsurugi.ishikawa.jp", +"uchinada.ishikawa.jp", +"wajima.ishikawa.jp", +"fudai.iwate.jp", +"fujisawa.iwate.jp", +"hanamaki.iwate.jp", +"hiraizumi.iwate.jp", +"hirono.iwate.jp", +"ichinohe.iwate.jp", +"ichinoseki.iwate.jp", +"iwaizumi.iwate.jp", +"iwate.iwate.jp", +"joboji.iwate.jp", +"kamaishi.iwate.jp", +"kanegasaki.iwate.jp", +"karumai.iwate.jp", +"kawai.iwate.jp", +"kitakami.iwate.jp", +"kuji.iwate.jp", +"kunohe.iwate.jp", +"kuzumaki.iwate.jp", +"miyako.iwate.jp", +"mizusawa.iwate.jp", +"morioka.iwate.jp", +"ninohe.iwate.jp", +"noda.iwate.jp", +"ofunato.iwate.jp", +"oshu.iwate.jp", +"otsuchi.iwate.jp", +"rikuzentakata.iwate.jp", +"shiwa.iwate.jp", +"shizukuishi.iwate.jp", +"sumita.iwate.jp", +"tanohata.iwate.jp", +"tono.iwate.jp", +"yahaba.iwate.jp", +"yamada.iwate.jp", +"ayagawa.kagawa.jp", +"higashikagawa.kagawa.jp", +"kanonji.kagawa.jp", +"kotohira.kagawa.jp", +"manno.kagawa.jp", +"marugame.kagawa.jp", +"mitoyo.kagawa.jp", +"naoshima.kagawa.jp", +"sanuki.kagawa.jp", +"tadotsu.kagawa.jp", +"takamatsu.kagawa.jp", +"tonosho.kagawa.jp", +"uchinomi.kagawa.jp", +"utazu.kagawa.jp", +"zentsuji.kagawa.jp", +"akune.kagoshima.jp", +"amami.kagoshima.jp", +"hioki.kagoshima.jp", +"isa.kagoshima.jp", +"isen.kagoshima.jp", +"izumi.kagoshima.jp", +"kagoshima.kagoshima.jp", +"kanoya.kagoshima.jp", +"kawanabe.kagoshima.jp", +"kinko.kagoshima.jp", +"kouyama.kagoshima.jp", +"makurazaki.kagoshima.jp", +"matsumoto.kagoshima.jp", +"minamitane.kagoshima.jp", +"nakatane.kagoshima.jp", +"nishinoomote.kagoshima.jp", +"satsumasendai.kagoshima.jp", +"soo.kagoshima.jp", +"tarumizu.kagoshima.jp", +"yusui.kagoshima.jp", +"aikawa.kanagawa.jp", +"atsugi.kanagawa.jp", +"ayase.kanagawa.jp", +"chigasaki.kanagawa.jp", +"ebina.kanagawa.jp", +"fujisawa.kanagawa.jp", +"hadano.kanagawa.jp", +"hakone.kanagawa.jp", +"hiratsuka.kanagawa.jp", +"isehara.kanagawa.jp", +"kaisei.kanagawa.jp", +"kamakura.kanagawa.jp", +"kiyokawa.kanagawa.jp", +"matsuda.kanagawa.jp", +"minamiashigara.kanagawa.jp", +"miura.kanagawa.jp", +"nakai.kanagawa.jp", +"ninomiya.kanagawa.jp", +"odawara.kanagawa.jp", +"oi.kanagawa.jp", +"oiso.kanagawa.jp", +"sagamihara.kanagawa.jp", +"samukawa.kanagawa.jp", +"tsukui.kanagawa.jp", +"yamakita.kanagawa.jp", +"yamato.kanagawa.jp", +"yokosuka.kanagawa.jp", +"yugawara.kanagawa.jp", +"zama.kanagawa.jp", +"zushi.kanagawa.jp", +"aki.kochi.jp", +"geisei.kochi.jp", +"hidaka.kochi.jp", +"higashitsuno.kochi.jp", +"ino.kochi.jp", +"kagami.kochi.jp", +"kami.kochi.jp", +"kitagawa.kochi.jp", +"kochi.kochi.jp", +"mihara.kochi.jp", +"motoyama.kochi.jp", +"muroto.kochi.jp", +"nahari.kochi.jp", +"nakamura.kochi.jp", +"nankoku.kochi.jp", +"nishitosa.kochi.jp", +"niyodogawa.kochi.jp", +"ochi.kochi.jp", +"okawa.kochi.jp", +"otoyo.kochi.jp", +"otsuki.kochi.jp", +"sakawa.kochi.jp", +"sukumo.kochi.jp", +"susaki.kochi.jp", +"tosa.kochi.jp", +"tosashimizu.kochi.jp", +"toyo.kochi.jp", +"tsuno.kochi.jp", +"umaji.kochi.jp", +"yasuda.kochi.jp", +"yusuhara.kochi.jp", +"amakusa.kumamoto.jp", +"arao.kumamoto.jp", +"aso.kumamoto.jp", +"choyo.kumamoto.jp", +"gyokuto.kumamoto.jp", +"kamiamakusa.kumamoto.jp", +"kikuchi.kumamoto.jp", +"kumamoto.kumamoto.jp", +"mashiki.kumamoto.jp", +"mifune.kumamoto.jp", +"minamata.kumamoto.jp", +"minamioguni.kumamoto.jp", +"nagasu.kumamoto.jp", +"nishihara.kumamoto.jp", +"oguni.kumamoto.jp", +"ozu.kumamoto.jp", +"sumoto.kumamoto.jp", +"takamori.kumamoto.jp", +"uki.kumamoto.jp", +"uto.kumamoto.jp", +"yamaga.kumamoto.jp", +"yamato.kumamoto.jp", +"yatsushiro.kumamoto.jp", +"ayabe.kyoto.jp", +"fukuchiyama.kyoto.jp", +"higashiyama.kyoto.jp", +"ide.kyoto.jp", +"ine.kyoto.jp", +"joyo.kyoto.jp", +"kameoka.kyoto.jp", +"kamo.kyoto.jp", +"kita.kyoto.jp", +"kizu.kyoto.jp", +"kumiyama.kyoto.jp", +"kyotamba.kyoto.jp", +"kyotanabe.kyoto.jp", +"kyotango.kyoto.jp", +"maizuru.kyoto.jp", +"minami.kyoto.jp", +"minamiyamashiro.kyoto.jp", +"miyazu.kyoto.jp", +"muko.kyoto.jp", +"nagaokakyo.kyoto.jp", +"nakagyo.kyoto.jp", +"nantan.kyoto.jp", +"oyamazaki.kyoto.jp", +"sakyo.kyoto.jp", +"seika.kyoto.jp", +"tanabe.kyoto.jp", +"uji.kyoto.jp", +"ujitawara.kyoto.jp", +"wazuka.kyoto.jp", +"yamashina.kyoto.jp", +"yawata.kyoto.jp", +"asahi.mie.jp", +"inabe.mie.jp", +"ise.mie.jp", +"kameyama.mie.jp", +"kawagoe.mie.jp", +"kiho.mie.jp", +"kisosaki.mie.jp", +"kiwa.mie.jp", +"komono.mie.jp", +"kumano.mie.jp", +"kuwana.mie.jp", +"matsusaka.mie.jp", +"meiwa.mie.jp", +"mihama.mie.jp", +"minamiise.mie.jp", +"misugi.mie.jp", +"miyama.mie.jp", +"nabari.mie.jp", +"shima.mie.jp", +"suzuka.mie.jp", +"tado.mie.jp", +"taiki.mie.jp", +"taki.mie.jp", +"tamaki.mie.jp", +"toba.mie.jp", +"tsu.mie.jp", +"udono.mie.jp", +"ureshino.mie.jp", +"watarai.mie.jp", +"yokkaichi.mie.jp", +"furukawa.miyagi.jp", +"higashimatsushima.miyagi.jp", +"ishinomaki.miyagi.jp", +"iwanuma.miyagi.jp", +"kakuda.miyagi.jp", +"kami.miyagi.jp", +"kawasaki.miyagi.jp", +"marumori.miyagi.jp", +"matsushima.miyagi.jp", +"minamisanriku.miyagi.jp", +"misato.miyagi.jp", +"murata.miyagi.jp", +"natori.miyagi.jp", +"ogawara.miyagi.jp", +"ohira.miyagi.jp", +"onagawa.miyagi.jp", +"osaki.miyagi.jp", +"rifu.miyagi.jp", +"semine.miyagi.jp", +"shibata.miyagi.jp", +"shichikashuku.miyagi.jp", +"shikama.miyagi.jp", +"shiogama.miyagi.jp", +"shiroishi.miyagi.jp", +"tagajo.miyagi.jp", +"taiwa.miyagi.jp", +"tome.miyagi.jp", +"tomiya.miyagi.jp", +"wakuya.miyagi.jp", +"watari.miyagi.jp", +"yamamoto.miyagi.jp", +"zao.miyagi.jp", +"aya.miyazaki.jp", +"ebino.miyazaki.jp", +"gokase.miyazaki.jp", +"hyuga.miyazaki.jp", +"kadogawa.miyazaki.jp", +"kawaminami.miyazaki.jp", +"kijo.miyazaki.jp", +"kitagawa.miyazaki.jp", +"kitakata.miyazaki.jp", +"kitaura.miyazaki.jp", +"kobayashi.miyazaki.jp", +"kunitomi.miyazaki.jp", +"kushima.miyazaki.jp", +"mimata.miyazaki.jp", +"miyakonojo.miyazaki.jp", +"miyazaki.miyazaki.jp", +"morotsuka.miyazaki.jp", +"nichinan.miyazaki.jp", +"nishimera.miyazaki.jp", +"nobeoka.miyazaki.jp", +"saito.miyazaki.jp", +"shiiba.miyazaki.jp", +"shintomi.miyazaki.jp", +"takaharu.miyazaki.jp", +"takanabe.miyazaki.jp", +"takazaki.miyazaki.jp", +"tsuno.miyazaki.jp", +"achi.nagano.jp", +"agematsu.nagano.jp", +"anan.nagano.jp", +"aoki.nagano.jp", +"asahi.nagano.jp", +"azumino.nagano.jp", +"chikuhoku.nagano.jp", +"chikuma.nagano.jp", +"chino.nagano.jp", +"fujimi.nagano.jp", +"hakuba.nagano.jp", +"hara.nagano.jp", +"hiraya.nagano.jp", +"iida.nagano.jp", +"iijima.nagano.jp", +"iiyama.nagano.jp", +"iizuna.nagano.jp", +"ikeda.nagano.jp", +"ikusaka.nagano.jp", +"ina.nagano.jp", +"karuizawa.nagano.jp", +"kawakami.nagano.jp", +"kiso.nagano.jp", +"kisofukushima.nagano.jp", +"kitaaiki.nagano.jp", +"komagane.nagano.jp", +"komoro.nagano.jp", +"matsukawa.nagano.jp", +"matsumoto.nagano.jp", +"miasa.nagano.jp", +"minamiaiki.nagano.jp", +"minamimaki.nagano.jp", +"minamiminowa.nagano.jp", +"minowa.nagano.jp", +"miyada.nagano.jp", +"miyota.nagano.jp", +"mochizuki.nagano.jp", +"nagano.nagano.jp", +"nagawa.nagano.jp", +"nagiso.nagano.jp", +"nakagawa.nagano.jp", +"nakano.nagano.jp", +"nozawaonsen.nagano.jp", +"obuse.nagano.jp", +"ogawa.nagano.jp", +"okaya.nagano.jp", +"omachi.nagano.jp", +"omi.nagano.jp", +"ookuwa.nagano.jp", +"ooshika.nagano.jp", +"otaki.nagano.jp", +"otari.nagano.jp", +"sakae.nagano.jp", +"sakaki.nagano.jp", +"saku.nagano.jp", +"sakuho.nagano.jp", +"shimosuwa.nagano.jp", +"shinanomachi.nagano.jp", +"shiojiri.nagano.jp", +"suwa.nagano.jp", +"suzaka.nagano.jp", +"takagi.nagano.jp", +"takamori.nagano.jp", +"takayama.nagano.jp", +"tateshina.nagano.jp", +"tatsuno.nagano.jp", +"togakushi.nagano.jp", +"togura.nagano.jp", +"tomi.nagano.jp", +"ueda.nagano.jp", +"wada.nagano.jp", +"yamagata.nagano.jp", +"yamanouchi.nagano.jp", +"yasaka.nagano.jp", +"yasuoka.nagano.jp", +"chijiwa.nagasaki.jp", +"futsu.nagasaki.jp", +"goto.nagasaki.jp", +"hasami.nagasaki.jp", +"hirado.nagasaki.jp", +"iki.nagasaki.jp", +"isahaya.nagasaki.jp", +"kawatana.nagasaki.jp", +"kuchinotsu.nagasaki.jp", +"matsuura.nagasaki.jp", +"nagasaki.nagasaki.jp", +"obama.nagasaki.jp", +"omura.nagasaki.jp", +"oseto.nagasaki.jp", +"saikai.nagasaki.jp", +"sasebo.nagasaki.jp", +"seihi.nagasaki.jp", +"shimabara.nagasaki.jp", +"shinkamigoto.nagasaki.jp", +"togitsu.nagasaki.jp", +"tsushima.nagasaki.jp", +"unzen.nagasaki.jp", +"ando.nara.jp", +"gose.nara.jp", +"heguri.nara.jp", +"higashiyoshino.nara.jp", +"ikaruga.nara.jp", +"ikoma.nara.jp", +"kamikitayama.nara.jp", +"kanmaki.nara.jp", +"kashiba.nara.jp", +"kashihara.nara.jp", +"katsuragi.nara.jp", +"kawai.nara.jp", +"kawakami.nara.jp", +"kawanishi.nara.jp", +"koryo.nara.jp", +"kurotaki.nara.jp", +"mitsue.nara.jp", +"miyake.nara.jp", +"nara.nara.jp", +"nosegawa.nara.jp", +"oji.nara.jp", +"ouda.nara.jp", +"oyodo.nara.jp", +"sakurai.nara.jp", +"sango.nara.jp", +"shimoichi.nara.jp", +"shimokitayama.nara.jp", +"shinjo.nara.jp", +"soni.nara.jp", +"takatori.nara.jp", +"tawaramoto.nara.jp", +"tenkawa.nara.jp", +"tenri.nara.jp", +"uda.nara.jp", +"yamatokoriyama.nara.jp", +"yamatotakada.nara.jp", +"yamazoe.nara.jp", +"yoshino.nara.jp", +"aga.niigata.jp", +"agano.niigata.jp", +"gosen.niigata.jp", +"itoigawa.niigata.jp", +"izumozaki.niigata.jp", +"joetsu.niigata.jp", +"kamo.niigata.jp", +"kariwa.niigata.jp", +"kashiwazaki.niigata.jp", +"minamiuonuma.niigata.jp", +"mitsuke.niigata.jp", +"muika.niigata.jp", +"murakami.niigata.jp", +"myoko.niigata.jp", +"nagaoka.niigata.jp", +"niigata.niigata.jp", +"ojiya.niigata.jp", +"omi.niigata.jp", +"sado.niigata.jp", +"sanjo.niigata.jp", +"seiro.niigata.jp", +"seirou.niigata.jp", +"sekikawa.niigata.jp", +"shibata.niigata.jp", +"tagami.niigata.jp", +"tainai.niigata.jp", +"tochio.niigata.jp", +"tokamachi.niigata.jp", +"tsubame.niigata.jp", +"tsunan.niigata.jp", +"uonuma.niigata.jp", +"yahiko.niigata.jp", +"yoita.niigata.jp", +"yuzawa.niigata.jp", +"beppu.oita.jp", +"bungoono.oita.jp", +"bungotakada.oita.jp", +"hasama.oita.jp", +"hiji.oita.jp", +"himeshima.oita.jp", +"hita.oita.jp", +"kamitsue.oita.jp", +"kokonoe.oita.jp", +"kuju.oita.jp", +"kunisaki.oita.jp", +"kusu.oita.jp", +"oita.oita.jp", +"saiki.oita.jp", +"taketa.oita.jp", +"tsukumi.oita.jp", +"usa.oita.jp", +"usuki.oita.jp", +"yufu.oita.jp", +"akaiwa.okayama.jp", +"asakuchi.okayama.jp", +"bizen.okayama.jp", +"hayashima.okayama.jp", +"ibara.okayama.jp", +"kagamino.okayama.jp", +"kasaoka.okayama.jp", +"kibichuo.okayama.jp", +"kumenan.okayama.jp", +"kurashiki.okayama.jp", +"maniwa.okayama.jp", +"misaki.okayama.jp", +"nagi.okayama.jp", +"niimi.okayama.jp", +"nishiawakura.okayama.jp", +"okayama.okayama.jp", +"satosho.okayama.jp", +"setouchi.okayama.jp", +"shinjo.okayama.jp", +"shoo.okayama.jp", +"soja.okayama.jp", +"takahashi.okayama.jp", +"tamano.okayama.jp", +"tsuyama.okayama.jp", +"wake.okayama.jp", +"yakage.okayama.jp", +"aguni.okinawa.jp", +"ginowan.okinawa.jp", +"ginoza.okinawa.jp", +"gushikami.okinawa.jp", +"haebaru.okinawa.jp", +"higashi.okinawa.jp", +"hirara.okinawa.jp", +"iheya.okinawa.jp", +"ishigaki.okinawa.jp", +"ishikawa.okinawa.jp", +"itoman.okinawa.jp", +"izena.okinawa.jp", +"kadena.okinawa.jp", +"kin.okinawa.jp", +"kitadaito.okinawa.jp", +"kitanakagusuku.okinawa.jp", +"kumejima.okinawa.jp", +"kunigami.okinawa.jp", +"minamidaito.okinawa.jp", +"motobu.okinawa.jp", +"nago.okinawa.jp", +"naha.okinawa.jp", +"nakagusuku.okinawa.jp", +"nakijin.okinawa.jp", +"nanjo.okinawa.jp", +"nishihara.okinawa.jp", +"ogimi.okinawa.jp", +"okinawa.okinawa.jp", +"onna.okinawa.jp", +"shimoji.okinawa.jp", +"taketomi.okinawa.jp", +"tarama.okinawa.jp", +"tokashiki.okinawa.jp", +"tomigusuku.okinawa.jp", +"tonaki.okinawa.jp", +"urasoe.okinawa.jp", +"uruma.okinawa.jp", +"yaese.okinawa.jp", +"yomitan.okinawa.jp", +"yonabaru.okinawa.jp", +"yonaguni.okinawa.jp", +"zamami.okinawa.jp", +"abeno.osaka.jp", +"chihayaakasaka.osaka.jp", +"chuo.osaka.jp", +"daito.osaka.jp", +"fujiidera.osaka.jp", +"habikino.osaka.jp", +"hannan.osaka.jp", +"higashiosaka.osaka.jp", +"higashisumiyoshi.osaka.jp", +"higashiyodogawa.osaka.jp", +"hirakata.osaka.jp", +"ibaraki.osaka.jp", +"ikeda.osaka.jp", +"izumi.osaka.jp", +"izumiotsu.osaka.jp", +"izumisano.osaka.jp", +"kadoma.osaka.jp", +"kaizuka.osaka.jp", +"kanan.osaka.jp", +"kashiwara.osaka.jp", +"katano.osaka.jp", +"kawachinagano.osaka.jp", +"kishiwada.osaka.jp", +"kita.osaka.jp", +"kumatori.osaka.jp", +"matsubara.osaka.jp", +"minato.osaka.jp", +"minoh.osaka.jp", +"misaki.osaka.jp", +"moriguchi.osaka.jp", +"neyagawa.osaka.jp", +"nishi.osaka.jp", +"nose.osaka.jp", +"osakasayama.osaka.jp", +"sakai.osaka.jp", +"sayama.osaka.jp", +"sennan.osaka.jp", +"settsu.osaka.jp", +"shijonawate.osaka.jp", +"shimamoto.osaka.jp", +"suita.osaka.jp", +"tadaoka.osaka.jp", +"taishi.osaka.jp", +"tajiri.osaka.jp", +"takaishi.osaka.jp", +"takatsuki.osaka.jp", +"tondabayashi.osaka.jp", +"toyonaka.osaka.jp", +"toyono.osaka.jp", +"yao.osaka.jp", +"ariake.saga.jp", +"arita.saga.jp", +"fukudomi.saga.jp", +"genkai.saga.jp", +"hamatama.saga.jp", +"hizen.saga.jp", +"imari.saga.jp", +"kamimine.saga.jp", +"kanzaki.saga.jp", +"karatsu.saga.jp", +"kashima.saga.jp", +"kitagata.saga.jp", +"kitahata.saga.jp", +"kiyama.saga.jp", +"kouhoku.saga.jp", +"kyuragi.saga.jp", +"nishiarita.saga.jp", +"ogi.saga.jp", +"omachi.saga.jp", +"ouchi.saga.jp", +"saga.saga.jp", +"shiroishi.saga.jp", +"taku.saga.jp", +"tara.saga.jp", +"tosu.saga.jp", +"yoshinogari.saga.jp", +"arakawa.saitama.jp", +"asaka.saitama.jp", +"chichibu.saitama.jp", +"fujimi.saitama.jp", +"fujimino.saitama.jp", +"fukaya.saitama.jp", +"hanno.saitama.jp", +"hanyu.saitama.jp", +"hasuda.saitama.jp", +"hatogaya.saitama.jp", +"hatoyama.saitama.jp", +"hidaka.saitama.jp", +"higashichichibu.saitama.jp", +"higashimatsuyama.saitama.jp", +"honjo.saitama.jp", +"ina.saitama.jp", +"iruma.saitama.jp", +"iwatsuki.saitama.jp", +"kamiizumi.saitama.jp", +"kamikawa.saitama.jp", +"kamisato.saitama.jp", +"kasukabe.saitama.jp", +"kawagoe.saitama.jp", +"kawaguchi.saitama.jp", +"kawajima.saitama.jp", +"kazo.saitama.jp", +"kitamoto.saitama.jp", +"koshigaya.saitama.jp", +"kounosu.saitama.jp", +"kuki.saitama.jp", +"kumagaya.saitama.jp", +"matsubushi.saitama.jp", +"minano.saitama.jp", +"misato.saitama.jp", +"miyashiro.saitama.jp", +"miyoshi.saitama.jp", +"moroyama.saitama.jp", +"nagatoro.saitama.jp", +"namegawa.saitama.jp", +"niiza.saitama.jp", +"ogano.saitama.jp", +"ogawa.saitama.jp", +"ogose.saitama.jp", +"okegawa.saitama.jp", +"omiya.saitama.jp", +"otaki.saitama.jp", +"ranzan.saitama.jp", +"ryokami.saitama.jp", +"saitama.saitama.jp", +"sakado.saitama.jp", +"satte.saitama.jp", +"sayama.saitama.jp", +"shiki.saitama.jp", +"shiraoka.saitama.jp", +"soka.saitama.jp", +"sugito.saitama.jp", +"toda.saitama.jp", +"tokigawa.saitama.jp", +"tokorozawa.saitama.jp", +"tsurugashima.saitama.jp", +"urawa.saitama.jp", +"warabi.saitama.jp", +"yashio.saitama.jp", +"yokoze.saitama.jp", +"yono.saitama.jp", +"yorii.saitama.jp", +"yoshida.saitama.jp", +"yoshikawa.saitama.jp", +"yoshimi.saitama.jp", +"aisho.shiga.jp", +"gamo.shiga.jp", +"higashiomi.shiga.jp", +"hikone.shiga.jp", +"koka.shiga.jp", +"konan.shiga.jp", +"kosei.shiga.jp", +"koto.shiga.jp", +"kusatsu.shiga.jp", +"maibara.shiga.jp", +"moriyama.shiga.jp", +"nagahama.shiga.jp", +"nishiazai.shiga.jp", +"notogawa.shiga.jp", +"omihachiman.shiga.jp", +"otsu.shiga.jp", +"ritto.shiga.jp", +"ryuoh.shiga.jp", +"takashima.shiga.jp", +"takatsuki.shiga.jp", +"torahime.shiga.jp", +"toyosato.shiga.jp", +"yasu.shiga.jp", +"akagi.shimane.jp", +"ama.shimane.jp", +"gotsu.shimane.jp", +"hamada.shimane.jp", +"higashiizumo.shimane.jp", +"hikawa.shimane.jp", +"hikimi.shimane.jp", +"izumo.shimane.jp", +"kakinoki.shimane.jp", +"masuda.shimane.jp", +"matsue.shimane.jp", +"misato.shimane.jp", +"nishinoshima.shimane.jp", +"ohda.shimane.jp", +"okinoshima.shimane.jp", +"okuizumo.shimane.jp", +"shimane.shimane.jp", +"tamayu.shimane.jp", +"tsuwano.shimane.jp", +"unnan.shimane.jp", +"yakumo.shimane.jp", +"yasugi.shimane.jp", +"yatsuka.shimane.jp", +"arai.shizuoka.jp", +"atami.shizuoka.jp", +"fuji.shizuoka.jp", +"fujieda.shizuoka.jp", +"fujikawa.shizuoka.jp", +"fujinomiya.shizuoka.jp", +"fukuroi.shizuoka.jp", +"gotemba.shizuoka.jp", +"haibara.shizuoka.jp", +"hamamatsu.shizuoka.jp", +"higashiizu.shizuoka.jp", +"ito.shizuoka.jp", +"iwata.shizuoka.jp", +"izu.shizuoka.jp", +"izunokuni.shizuoka.jp", +"kakegawa.shizuoka.jp", +"kannami.shizuoka.jp", +"kawanehon.shizuoka.jp", +"kawazu.shizuoka.jp", +"kikugawa.shizuoka.jp", +"kosai.shizuoka.jp", +"makinohara.shizuoka.jp", +"matsuzaki.shizuoka.jp", +"minamiizu.shizuoka.jp", +"mishima.shizuoka.jp", +"morimachi.shizuoka.jp", +"nishiizu.shizuoka.jp", +"numazu.shizuoka.jp", +"omaezaki.shizuoka.jp", +"shimada.shizuoka.jp", +"shimizu.shizuoka.jp", +"shimoda.shizuoka.jp", +"shizuoka.shizuoka.jp", +"susono.shizuoka.jp", +"yaizu.shizuoka.jp", +"yoshida.shizuoka.jp", +"ashikaga.tochigi.jp", +"bato.tochigi.jp", +"haga.tochigi.jp", +"ichikai.tochigi.jp", +"iwafune.tochigi.jp", +"kaminokawa.tochigi.jp", +"kanuma.tochigi.jp", +"karasuyama.tochigi.jp", +"kuroiso.tochigi.jp", +"mashiko.tochigi.jp", +"mibu.tochigi.jp", +"moka.tochigi.jp", +"motegi.tochigi.jp", +"nasu.tochigi.jp", +"nasushiobara.tochigi.jp", +"nikko.tochigi.jp", +"nishikata.tochigi.jp", +"nogi.tochigi.jp", +"ohira.tochigi.jp", +"ohtawara.tochigi.jp", +"oyama.tochigi.jp", +"sakura.tochigi.jp", +"sano.tochigi.jp", +"shimotsuke.tochigi.jp", +"shioya.tochigi.jp", +"takanezawa.tochigi.jp", +"tochigi.tochigi.jp", +"tsuga.tochigi.jp", +"ujiie.tochigi.jp", +"utsunomiya.tochigi.jp", +"yaita.tochigi.jp", +"aizumi.tokushima.jp", +"anan.tokushima.jp", +"ichiba.tokushima.jp", +"itano.tokushima.jp", +"kainan.tokushima.jp", +"komatsushima.tokushima.jp", +"matsushige.tokushima.jp", +"mima.tokushima.jp", +"minami.tokushima.jp", +"miyoshi.tokushima.jp", +"mugi.tokushima.jp", +"nakagawa.tokushima.jp", +"naruto.tokushima.jp", +"sanagochi.tokushima.jp", +"shishikui.tokushima.jp", +"tokushima.tokushima.jp", +"wajiki.tokushima.jp", +"adachi.tokyo.jp", +"akiruno.tokyo.jp", +"akishima.tokyo.jp", +"aogashima.tokyo.jp", +"arakawa.tokyo.jp", +"bunkyo.tokyo.jp", +"chiyoda.tokyo.jp", +"chofu.tokyo.jp", +"chuo.tokyo.jp", +"edogawa.tokyo.jp", +"fuchu.tokyo.jp", +"fussa.tokyo.jp", +"hachijo.tokyo.jp", +"hachioji.tokyo.jp", +"hamura.tokyo.jp", +"higashikurume.tokyo.jp", +"higashimurayama.tokyo.jp", +"higashiyamato.tokyo.jp", +"hino.tokyo.jp", +"hinode.tokyo.jp", +"hinohara.tokyo.jp", +"inagi.tokyo.jp", +"itabashi.tokyo.jp", +"katsushika.tokyo.jp", +"kita.tokyo.jp", +"kiyose.tokyo.jp", +"kodaira.tokyo.jp", +"koganei.tokyo.jp", +"kokubunji.tokyo.jp", +"komae.tokyo.jp", +"koto.tokyo.jp", +"kouzushima.tokyo.jp", +"kunitachi.tokyo.jp", +"machida.tokyo.jp", +"meguro.tokyo.jp", +"minato.tokyo.jp", +"mitaka.tokyo.jp", +"mizuho.tokyo.jp", +"musashimurayama.tokyo.jp", +"musashino.tokyo.jp", +"nakano.tokyo.jp", +"nerima.tokyo.jp", +"ogasawara.tokyo.jp", +"okutama.tokyo.jp", +"ome.tokyo.jp", +"oshima.tokyo.jp", +"ota.tokyo.jp", +"setagaya.tokyo.jp", +"shibuya.tokyo.jp", +"shinagawa.tokyo.jp", +"shinjuku.tokyo.jp", +"suginami.tokyo.jp", +"sumida.tokyo.jp", +"tachikawa.tokyo.jp", +"taito.tokyo.jp", +"tama.tokyo.jp", +"toshima.tokyo.jp", +"chizu.tottori.jp", +"hino.tottori.jp", +"kawahara.tottori.jp", +"koge.tottori.jp", +"kotoura.tottori.jp", +"misasa.tottori.jp", +"nanbu.tottori.jp", +"nichinan.tottori.jp", +"sakaiminato.tottori.jp", +"tottori.tottori.jp", +"wakasa.tottori.jp", +"yazu.tottori.jp", +"yonago.tottori.jp", +"asahi.toyama.jp", +"fuchu.toyama.jp", +"fukumitsu.toyama.jp", +"funahashi.toyama.jp", +"himi.toyama.jp", +"imizu.toyama.jp", +"inami.toyama.jp", +"johana.toyama.jp", +"kamiichi.toyama.jp", +"kurobe.toyama.jp", +"nakaniikawa.toyama.jp", +"namerikawa.toyama.jp", +"nanto.toyama.jp", +"nyuzen.toyama.jp", +"oyabe.toyama.jp", +"taira.toyama.jp", +"takaoka.toyama.jp", +"tateyama.toyama.jp", +"toga.toyama.jp", +"tonami.toyama.jp", +"toyama.toyama.jp", +"unazuki.toyama.jp", +"uozu.toyama.jp", +"yamada.toyama.jp", +"arida.wakayama.jp", +"aridagawa.wakayama.jp", +"gobo.wakayama.jp", +"hashimoto.wakayama.jp", +"hidaka.wakayama.jp", +"hirogawa.wakayama.jp", +"inami.wakayama.jp", +"iwade.wakayama.jp", +"kainan.wakayama.jp", +"kamitonda.wakayama.jp", +"katsuragi.wakayama.jp", +"kimino.wakayama.jp", +"kinokawa.wakayama.jp", +"kitayama.wakayama.jp", +"koya.wakayama.jp", +"koza.wakayama.jp", +"kozagawa.wakayama.jp", +"kudoyama.wakayama.jp", +"kushimoto.wakayama.jp", +"mihama.wakayama.jp", +"misato.wakayama.jp", +"nachikatsuura.wakayama.jp", +"shingu.wakayama.jp", +"shirahama.wakayama.jp", +"taiji.wakayama.jp", +"tanabe.wakayama.jp", +"wakayama.wakayama.jp", +"yuasa.wakayama.jp", +"yura.wakayama.jp", +"asahi.yamagata.jp", +"funagata.yamagata.jp", +"higashine.yamagata.jp", +"iide.yamagata.jp", +"kahoku.yamagata.jp", +"kaminoyama.yamagata.jp", +"kaneyama.yamagata.jp", +"kawanishi.yamagata.jp", +"mamurogawa.yamagata.jp", +"mikawa.yamagata.jp", +"murayama.yamagata.jp", +"nagai.yamagata.jp", +"nakayama.yamagata.jp", +"nanyo.yamagata.jp", +"nishikawa.yamagata.jp", +"obanazawa.yamagata.jp", +"oe.yamagata.jp", +"oguni.yamagata.jp", +"ohkura.yamagata.jp", +"oishida.yamagata.jp", +"sagae.yamagata.jp", +"sakata.yamagata.jp", +"sakegawa.yamagata.jp", +"shinjo.yamagata.jp", +"shirataka.yamagata.jp", +"shonai.yamagata.jp", +"takahata.yamagata.jp", +"tendo.yamagata.jp", +"tozawa.yamagata.jp", +"tsuruoka.yamagata.jp", +"yamagata.yamagata.jp", +"yamanobe.yamagata.jp", +"yonezawa.yamagata.jp", +"yuza.yamagata.jp", +"abu.yamaguchi.jp", +"hagi.yamaguchi.jp", +"hikari.yamaguchi.jp", +"hofu.yamaguchi.jp", +"iwakuni.yamaguchi.jp", +"kudamatsu.yamaguchi.jp", +"mitou.yamaguchi.jp", +"nagato.yamaguchi.jp", +"oshima.yamaguchi.jp", +"shimonoseki.yamaguchi.jp", +"shunan.yamaguchi.jp", +"tabuse.yamaguchi.jp", +"tokuyama.yamaguchi.jp", +"toyota.yamaguchi.jp", +"ube.yamaguchi.jp", +"yuu.yamaguchi.jp", +"chuo.yamanashi.jp", +"doshi.yamanashi.jp", +"fuefuki.yamanashi.jp", +"fujikawa.yamanashi.jp", +"fujikawaguchiko.yamanashi.jp", +"fujiyoshida.yamanashi.jp", +"hayakawa.yamanashi.jp", +"hokuto.yamanashi.jp", +"ichikawamisato.yamanashi.jp", +"kai.yamanashi.jp", +"kofu.yamanashi.jp", +"koshu.yamanashi.jp", +"kosuge.yamanashi.jp", +"minami-alps.yamanashi.jp", +"minobu.yamanashi.jp", +"nakamichi.yamanashi.jp", +"nanbu.yamanashi.jp", +"narusawa.yamanashi.jp", +"nirasaki.yamanashi.jp", +"nishikatsura.yamanashi.jp", +"oshino.yamanashi.jp", +"otsuki.yamanashi.jp", +"showa.yamanashi.jp", +"tabayama.yamanashi.jp", +"tsuru.yamanashi.jp", +"uenohara.yamanashi.jp", +"yamanakako.yamanashi.jp", +"yamanashi.yamanashi.jp", +"ke", +"ac.ke", +"co.ke", +"go.ke", +"info.ke", +"me.ke", +"mobi.ke", +"ne.ke", +"or.ke", +"sc.ke", +"kg", +"org.kg", +"net.kg", +"com.kg", +"edu.kg", +"gov.kg", +"mil.kg", +"*.kh", +"ki", +"edu.ki", +"biz.ki", +"net.ki", +"org.ki", +"gov.ki", +"info.ki", +"com.ki", +"km", +"org.km", +"nom.km", +"gov.km", +"prd.km", +"tm.km", +"edu.km", +"mil.km", +"ass.km", +"com.km", +"coop.km", +"asso.km", +"presse.km", +"medecin.km", +"notaires.km", +"pharmaciens.km", +"veterinaire.km", +"gouv.km", +"kn", +"net.kn", +"org.kn", +"edu.kn", +"gov.kn", +"kp", +"com.kp", +"edu.kp", +"gov.kp", +"org.kp", +"rep.kp", +"tra.kp", +"kr", +"ac.kr", +"co.kr", +"es.kr", +"go.kr", +"hs.kr", +"kg.kr", +"mil.kr", +"ms.kr", +"ne.kr", +"or.kr", +"pe.kr", +"re.kr", +"sc.kr", +"busan.kr", +"chungbuk.kr", +"chungnam.kr", +"daegu.kr", +"daejeon.kr", +"gangwon.kr", +"gwangju.kr", +"gyeongbuk.kr", +"gyeonggi.kr", +"gyeongnam.kr", +"incheon.kr", +"jeju.kr", +"jeonbuk.kr", +"jeonnam.kr", +"seoul.kr", +"ulsan.kr", +"kw", +"com.kw", +"edu.kw", +"emb.kw", +"gov.kw", +"ind.kw", +"net.kw", +"org.kw", +"ky", +"edu.ky", +"gov.ky", +"com.ky", +"org.ky", +"net.ky", +"kz", +"org.kz", +"edu.kz", +"net.kz", +"gov.kz", +"mil.kz", +"com.kz", +"la", +"int.la", +"net.la", +"info.la", +"edu.la", +"gov.la", +"per.la", +"com.la", +"org.la", +"lb", +"com.lb", +"edu.lb", +"gov.lb", +"net.lb", +"org.lb", +"lc", +"com.lc", +"net.lc", +"co.lc", +"org.lc", +"edu.lc", +"gov.lc", +"li", +"lk", +"gov.lk", +"sch.lk", +"net.lk", +"int.lk", +"com.lk", +"org.lk", +"edu.lk", +"ngo.lk", +"soc.lk", +"web.lk", +"ltd.lk", +"assn.lk", +"grp.lk", +"hotel.lk", +"ac.lk", +"lr", +"com.lr", +"edu.lr", +"gov.lr", +"org.lr", +"net.lr", +"ls", +"ac.ls", +"biz.ls", +"co.ls", +"edu.ls", +"gov.ls", +"info.ls", +"net.ls", +"org.ls", +"sc.ls", +"lt", +"gov.lt", +"lu", +"lv", +"com.lv", +"edu.lv", +"gov.lv", +"org.lv", +"mil.lv", +"id.lv", +"net.lv", +"asn.lv", +"conf.lv", +"ly", +"com.ly", +"net.ly", +"gov.ly", +"plc.ly", +"edu.ly", +"sch.ly", +"med.ly", +"org.ly", +"id.ly", +"ma", +"co.ma", +"net.ma", +"gov.ma", +"org.ma", +"ac.ma", +"press.ma", +"mc", +"tm.mc", +"asso.mc", +"md", +"me", +"co.me", +"net.me", +"org.me", +"edu.me", +"ac.me", +"gov.me", +"its.me", +"priv.me", +"mg", +"org.mg", +"nom.mg", +"gov.mg", +"prd.mg", +"tm.mg", +"edu.mg", +"mil.mg", +"com.mg", +"co.mg", +"mh", +"mil", +"mk", +"com.mk", +"org.mk", +"net.mk", +"edu.mk", +"gov.mk", +"inf.mk", +"name.mk", +"ml", +"com.ml", +"edu.ml", +"gouv.ml", +"gov.ml", +"net.ml", +"org.ml", +"presse.ml", +"*.mm", +"mn", +"gov.mn", +"edu.mn", +"org.mn", +"mo", +"com.mo", +"net.mo", +"org.mo", +"edu.mo", +"gov.mo", +"mobi", +"mp", +"mq", +"mr", +"gov.mr", +"ms", +"com.ms", +"edu.ms", +"gov.ms", +"net.ms", +"org.ms", +"mt", +"com.mt", +"edu.mt", +"net.mt", +"org.mt", +"mu", +"com.mu", +"net.mu", +"org.mu", +"gov.mu", +"ac.mu", +"co.mu", +"or.mu", +"museum", +"academy.museum", +"agriculture.museum", +"air.museum", +"airguard.museum", +"alabama.museum", +"alaska.museum", +"amber.museum", +"ambulance.museum", +"american.museum", +"americana.museum", +"americanantiques.museum", +"americanart.museum", +"amsterdam.museum", +"and.museum", +"annefrank.museum", +"anthro.museum", +"anthropology.museum", +"antiques.museum", +"aquarium.museum", +"arboretum.museum", +"archaeological.museum", +"archaeology.museum", +"architecture.museum", +"art.museum", +"artanddesign.museum", +"artcenter.museum", +"artdeco.museum", +"arteducation.museum", +"artgallery.museum", +"arts.museum", +"artsandcrafts.museum", +"asmatart.museum", +"assassination.museum", +"assisi.museum", +"association.museum", +"astronomy.museum", +"atlanta.museum", +"austin.museum", +"australia.museum", +"automotive.museum", +"aviation.museum", +"axis.museum", +"badajoz.museum", +"baghdad.museum", +"bahn.museum", +"bale.museum", +"baltimore.museum", +"barcelona.museum", +"baseball.museum", +"basel.museum", +"baths.museum", +"bauern.museum", +"beauxarts.museum", +"beeldengeluid.museum", +"bellevue.museum", +"bergbau.museum", +"berkeley.museum", +"berlin.museum", +"bern.museum", +"bible.museum", +"bilbao.museum", +"bill.museum", +"birdart.museum", +"birthplace.museum", +"bonn.museum", +"boston.museum", +"botanical.museum", +"botanicalgarden.museum", +"botanicgarden.museum", +"botany.museum", +"brandywinevalley.museum", +"brasil.museum", +"bristol.museum", +"british.museum", +"britishcolumbia.museum", +"broadcast.museum", +"brunel.museum", +"brussel.museum", +"brussels.museum", +"bruxelles.museum", +"building.museum", +"burghof.museum", +"bus.museum", +"bushey.museum", +"cadaques.museum", +"california.museum", +"cambridge.museum", +"can.museum", +"canada.museum", +"capebreton.museum", +"carrier.museum", +"cartoonart.museum", +"casadelamoneda.museum", +"castle.museum", +"castres.museum", +"celtic.museum", +"center.museum", +"chattanooga.museum", +"cheltenham.museum", +"chesapeakebay.museum", +"chicago.museum", +"children.museum", +"childrens.museum", +"childrensgarden.museum", +"chiropractic.museum", +"chocolate.museum", +"christiansburg.museum", +"cincinnati.museum", +"cinema.museum", +"circus.museum", +"civilisation.museum", +"civilization.museum", +"civilwar.museum", +"clinton.museum", +"clock.museum", +"coal.museum", +"coastaldefence.museum", +"cody.museum", +"coldwar.museum", +"collection.museum", +"colonialwilliamsburg.museum", +"coloradoplateau.museum", +"columbia.museum", +"columbus.museum", +"communication.museum", +"communications.museum", +"community.museum", +"computer.museum", +"computerhistory.museum", +"comunicações.museum", +"contemporary.museum", +"contemporaryart.museum", +"convent.museum", +"copenhagen.museum", +"corporation.museum", +"correios-e-telecomunicações.museum", +"corvette.museum", +"costume.museum", +"countryestate.museum", +"county.museum", +"crafts.museum", +"cranbrook.museum", +"creation.museum", +"cultural.museum", +"culturalcenter.museum", +"culture.museum", +"cyber.museum", +"cymru.museum", +"dali.museum", +"dallas.museum", +"database.museum", +"ddr.museum", +"decorativearts.museum", +"delaware.museum", +"delmenhorst.museum", +"denmark.museum", +"depot.museum", +"design.museum", +"detroit.museum", +"dinosaur.museum", +"discovery.museum", +"dolls.museum", +"donostia.museum", +"durham.museum", +"eastafrica.museum", +"eastcoast.museum", +"education.museum", +"educational.museum", +"egyptian.museum", +"eisenbahn.museum", +"elburg.museum", +"elvendrell.museum", +"embroidery.museum", +"encyclopedic.museum", +"england.museum", +"entomology.museum", +"environment.museum", +"environmentalconservation.museum", +"epilepsy.museum", +"essex.museum", +"estate.museum", +"ethnology.museum", +"exeter.museum", +"exhibition.museum", +"family.museum", +"farm.museum", +"farmequipment.museum", +"farmers.museum", +"farmstead.museum", +"field.museum", +"figueres.museum", +"filatelia.museum", +"film.museum", +"fineart.museum", +"finearts.museum", +"finland.museum", +"flanders.museum", +"florida.museum", +"force.museum", +"fortmissoula.museum", +"fortworth.museum", +"foundation.museum", +"francaise.museum", +"frankfurt.museum", +"franziskaner.museum", +"freemasonry.museum", +"freiburg.museum", +"fribourg.museum", +"frog.museum", +"fundacio.museum", +"furniture.museum", +"gallery.museum", +"garden.museum", +"gateway.museum", +"geelvinck.museum", +"gemological.museum", +"geology.museum", +"georgia.museum", +"giessen.museum", +"glas.museum", +"glass.museum", +"gorge.museum", +"grandrapids.museum", +"graz.museum", +"guernsey.museum", +"halloffame.museum", +"hamburg.museum", +"handson.museum", +"harvestcelebration.museum", +"hawaii.museum", +"health.museum", +"heimatunduhren.museum", +"hellas.museum", +"helsinki.museum", +"hembygdsforbund.museum", +"heritage.museum", +"histoire.museum", +"historical.museum", +"historicalsociety.museum", +"historichouses.museum", +"historisch.museum", +"historisches.museum", +"history.museum", +"historyofscience.museum", +"horology.museum", +"house.museum", +"humanities.museum", +"illustration.museum", +"imageandsound.museum", +"indian.museum", +"indiana.museum", +"indianapolis.museum", +"indianmarket.museum", +"intelligence.museum", +"interactive.museum", +"iraq.museum", +"iron.museum", +"isleofman.museum", +"jamison.museum", +"jefferson.museum", +"jerusalem.museum", +"jewelry.museum", +"jewish.museum", +"jewishart.museum", +"jfk.museum", +"journalism.museum", +"judaica.museum", +"judygarland.museum", +"juedisches.museum", +"juif.museum", +"karate.museum", +"karikatur.museum", +"kids.museum", +"koebenhavn.museum", +"koeln.museum", +"kunst.museum", +"kunstsammlung.museum", +"kunstunddesign.museum", +"labor.museum", +"labour.museum", +"lajolla.museum", +"lancashire.museum", +"landes.museum", +"lans.museum", +"läns.museum", +"larsson.museum", +"lewismiller.museum", +"lincoln.museum", +"linz.museum", +"living.museum", +"livinghistory.museum", +"localhistory.museum", +"london.museum", +"losangeles.museum", +"louvre.museum", +"loyalist.museum", +"lucerne.museum", +"luxembourg.museum", +"luzern.museum", +"mad.museum", +"madrid.museum", +"mallorca.museum", +"manchester.museum", +"mansion.museum", +"mansions.museum", +"manx.museum", +"marburg.museum", +"maritime.museum", +"maritimo.museum", +"maryland.museum", +"marylhurst.museum", +"media.museum", +"medical.museum", +"medizinhistorisches.museum", +"meeres.museum", +"memorial.museum", +"mesaverde.museum", +"michigan.museum", +"midatlantic.museum", +"military.museum", +"mill.museum", +"miners.museum", +"mining.museum", +"minnesota.museum", +"missile.museum", +"missoula.museum", +"modern.museum", +"moma.museum", +"money.museum", +"monmouth.museum", +"monticello.museum", +"montreal.museum", +"moscow.museum", +"motorcycle.museum", +"muenchen.museum", +"muenster.museum", +"mulhouse.museum", +"muncie.museum", +"museet.museum", +"museumcenter.museum", +"museumvereniging.museum", +"music.museum", +"national.museum", +"nationalfirearms.museum", +"nationalheritage.museum", +"nativeamerican.museum", +"naturalhistory.museum", +"naturalhistorymuseum.museum", +"naturalsciences.museum", +"nature.museum", +"naturhistorisches.museum", +"natuurwetenschappen.museum", +"naumburg.museum", +"naval.museum", +"nebraska.museum", +"neues.museum", +"newhampshire.museum", +"newjersey.museum", +"newmexico.museum", +"newport.museum", +"newspaper.museum", +"newyork.museum", +"niepce.museum", +"norfolk.museum", +"north.museum", +"nrw.museum", +"nyc.museum", +"nyny.museum", +"oceanographic.museum", +"oceanographique.museum", +"omaha.museum", +"online.museum", +"ontario.museum", +"openair.museum", +"oregon.museum", +"oregontrail.museum", +"otago.museum", +"oxford.museum", +"pacific.museum", +"paderborn.museum", +"palace.museum", +"paleo.museum", +"palmsprings.museum", +"panama.museum", +"paris.museum", +"pasadena.museum", +"pharmacy.museum", +"philadelphia.museum", +"philadelphiaarea.museum", +"philately.museum", +"phoenix.museum", +"photography.museum", +"pilots.museum", +"pittsburgh.museum", +"planetarium.museum", +"plantation.museum", +"plants.museum", +"plaza.museum", +"portal.museum", +"portland.museum", +"portlligat.museum", +"posts-and-telecommunications.museum", +"preservation.museum", +"presidio.museum", +"press.museum", +"project.museum", +"public.museum", +"pubol.museum", +"quebec.museum", +"railroad.museum", +"railway.museum", +"research.museum", +"resistance.museum", +"riodejaneiro.museum", +"rochester.museum", +"rockart.museum", +"roma.museum", +"russia.museum", +"saintlouis.museum", +"salem.museum", +"salvadordali.museum", +"salzburg.museum", +"sandiego.museum", +"sanfrancisco.museum", +"santabarbara.museum", +"santacruz.museum", +"santafe.museum", +"saskatchewan.museum", +"satx.museum", +"savannahga.museum", +"schlesisches.museum", +"schoenbrunn.museum", +"schokoladen.museum", +"school.museum", +"schweiz.museum", +"science.museum", +"scienceandhistory.museum", +"scienceandindustry.museum", +"sciencecenter.museum", +"sciencecenters.museum", +"science-fiction.museum", +"sciencehistory.museum", +"sciences.museum", +"sciencesnaturelles.museum", +"scotland.museum", +"seaport.museum", +"settlement.museum", +"settlers.museum", +"shell.museum", +"sherbrooke.museum", +"sibenik.museum", +"silk.museum", +"ski.museum", +"skole.museum", +"society.museum", +"sologne.museum", +"soundandvision.museum", +"southcarolina.museum", +"southwest.museum", +"space.museum", +"spy.museum", +"square.museum", +"stadt.museum", +"stalbans.museum", +"starnberg.museum", +"state.museum", +"stateofdelaware.museum", +"station.museum", +"steam.museum", +"steiermark.museum", +"stjohn.museum", +"stockholm.museum", +"stpetersburg.museum", +"stuttgart.museum", +"suisse.museum", +"surgeonshall.museum", +"surrey.museum", +"svizzera.museum", +"sweden.museum", +"sydney.museum", +"tank.museum", +"tcm.museum", +"technology.museum", +"telekommunikation.museum", +"television.museum", +"texas.museum", +"textile.museum", +"theater.museum", +"time.museum", +"timekeeping.museum", +"topology.museum", +"torino.museum", +"touch.museum", +"town.museum", +"transport.museum", +"tree.museum", +"trolley.museum", +"trust.museum", +"trustee.museum", +"uhren.museum", +"ulm.museum", +"undersea.museum", +"university.museum", +"usa.museum", +"usantiques.museum", +"usarts.museum", +"uscountryestate.museum", +"usculture.museum", +"usdecorativearts.museum", +"usgarden.museum", +"ushistory.museum", +"ushuaia.museum", +"uslivinghistory.museum", +"utah.museum", +"uvic.museum", +"valley.museum", +"vantaa.museum", +"versailles.museum", +"viking.museum", +"village.museum", +"virginia.museum", +"virtual.museum", +"virtuel.museum", +"vlaanderen.museum", +"volkenkunde.museum", +"wales.museum", +"wallonie.museum", +"war.museum", +"washingtondc.museum", +"watchandclock.museum", +"watch-and-clock.museum", +"western.museum", +"westfalen.museum", +"whaling.museum", +"wildlife.museum", +"williamsburg.museum", +"windmill.museum", +"workshop.museum", +"york.museum", +"yorkshire.museum", +"yosemite.museum", +"youth.museum", +"zoological.museum", +"zoology.museum", +"ירושלים.museum", +"иком.museum", +"mv", +"aero.mv", +"biz.mv", +"com.mv", +"coop.mv", +"edu.mv", +"gov.mv", +"info.mv", +"int.mv", +"mil.mv", +"museum.mv", +"name.mv", +"net.mv", +"org.mv", +"pro.mv", +"mw", +"ac.mw", +"biz.mw", +"co.mw", +"com.mw", +"coop.mw", +"edu.mw", +"gov.mw", +"int.mw", +"museum.mw", +"net.mw", +"org.mw", +"mx", +"com.mx", +"org.mx", +"gob.mx", +"edu.mx", +"net.mx", +"my", +"com.my", +"net.my", +"org.my", +"gov.my", +"edu.my", +"mil.my", +"name.my", +"mz", +"ac.mz", +"adv.mz", +"co.mz", +"edu.mz", +"gov.mz", +"mil.mz", +"net.mz", +"org.mz", +"na", +"info.na", +"pro.na", +"name.na", +"school.na", +"or.na", +"dr.na", +"us.na", +"mx.na", +"ca.na", +"in.na", +"cc.na", +"tv.na", +"ws.na", +"mobi.na", +"co.na", +"com.na", +"org.na", +"name", +"nc", +"asso.nc", +"nom.nc", +"ne", +"net", +"nf", +"com.nf", +"net.nf", +"per.nf", +"rec.nf", +"web.nf", +"arts.nf", +"firm.nf", +"info.nf", +"other.nf", +"store.nf", +"ng", +"com.ng", +"edu.ng", +"gov.ng", +"i.ng", +"mil.ng", +"mobi.ng", +"name.ng", +"net.ng", +"org.ng", +"sch.ng", +"ni", +"ac.ni", +"biz.ni", +"co.ni", +"com.ni", +"edu.ni", +"gob.ni", +"in.ni", +"info.ni", +"int.ni", +"mil.ni", +"net.ni", +"nom.ni", +"org.ni", +"web.ni", +"nl", +"no", +"fhs.no", +"vgs.no", +"fylkesbibl.no", +"folkebibl.no", +"museum.no", +"idrett.no", +"priv.no", +"mil.no", +"stat.no", +"dep.no", +"kommune.no", +"herad.no", +"aa.no", +"ah.no", +"bu.no", +"fm.no", +"hl.no", +"hm.no", +"jan-mayen.no", +"mr.no", +"nl.no", +"nt.no", +"of.no", +"ol.no", +"oslo.no", +"rl.no", +"sf.no", +"st.no", +"svalbard.no", +"tm.no", +"tr.no", +"va.no", +"vf.no", +"gs.aa.no", +"gs.ah.no", +"gs.bu.no", +"gs.fm.no", +"gs.hl.no", +"gs.hm.no", +"gs.jan-mayen.no", +"gs.mr.no", +"gs.nl.no", +"gs.nt.no", +"gs.of.no", +"gs.ol.no", +"gs.oslo.no", +"gs.rl.no", +"gs.sf.no", +"gs.st.no", +"gs.svalbard.no", +"gs.tm.no", +"gs.tr.no", +"gs.va.no", +"gs.vf.no", +"akrehamn.no", +"åkrehamn.no", +"algard.no", +"ålgård.no", +"arna.no", +"brumunddal.no", +"bryne.no", +"bronnoysund.no", +"brønnøysund.no", +"drobak.no", +"drøbak.no", +"egersund.no", +"fetsund.no", +"floro.no", +"florø.no", +"fredrikstad.no", +"hokksund.no", +"honefoss.no", +"hønefoss.no", +"jessheim.no", +"jorpeland.no", +"jørpeland.no", +"kirkenes.no", +"kopervik.no", +"krokstadelva.no", +"langevag.no", +"langevåg.no", +"leirvik.no", +"mjondalen.no", +"mjøndalen.no", +"mo-i-rana.no", +"mosjoen.no", +"mosjøen.no", +"nesoddtangen.no", +"orkanger.no", +"osoyro.no", +"osøyro.no", +"raholt.no", +"råholt.no", +"sandnessjoen.no", +"sandnessjøen.no", +"skedsmokorset.no", +"slattum.no", +"spjelkavik.no", +"stathelle.no", +"stavern.no", +"stjordalshalsen.no", +"stjørdalshalsen.no", +"tananger.no", +"tranby.no", +"vossevangen.no", +"afjord.no", +"åfjord.no", +"agdenes.no", +"al.no", +"ål.no", +"alesund.no", +"ålesund.no", +"alstahaug.no", +"alta.no", +"áltá.no", +"alaheadju.no", +"álaheadju.no", +"alvdal.no", +"amli.no", +"åmli.no", +"amot.no", +"åmot.no", +"andebu.no", +"andoy.no", +"andøy.no", +"andasuolo.no", +"ardal.no", +"årdal.no", +"aremark.no", +"arendal.no", +"ås.no", +"aseral.no", +"åseral.no", +"asker.no", +"askim.no", +"askvoll.no", +"askoy.no", +"askøy.no", +"asnes.no", +"åsnes.no", +"audnedaln.no", +"aukra.no", +"aure.no", +"aurland.no", +"aurskog-holand.no", +"aurskog-høland.no", +"austevoll.no", +"austrheim.no", +"averoy.no", +"averøy.no", +"balestrand.no", +"ballangen.no", +"balat.no", +"bálát.no", +"balsfjord.no", +"bahccavuotna.no", +"báhccavuotna.no", +"bamble.no", +"bardu.no", +"beardu.no", +"beiarn.no", +"bajddar.no", +"bájddar.no", +"baidar.no", +"báidár.no", +"berg.no", +"bergen.no", +"berlevag.no", +"berlevåg.no", +"bearalvahki.no", +"bearalváhki.no", +"bindal.no", +"birkenes.no", +"bjarkoy.no", +"bjarkøy.no", +"bjerkreim.no", +"bjugn.no", +"bodo.no", +"bodø.no", +"badaddja.no", +"bådåddjå.no", +"budejju.no", +"bokn.no", +"bremanger.no", +"bronnoy.no", +"brønnøy.no", +"bygland.no", +"bykle.no", +"barum.no", +"bærum.no", +"bo.telemark.no", +"bø.telemark.no", +"bo.nordland.no", +"bø.nordland.no", +"bievat.no", +"bievát.no", +"bomlo.no", +"bømlo.no", +"batsfjord.no", +"båtsfjord.no", +"bahcavuotna.no", +"báhcavuotna.no", +"dovre.no", +"drammen.no", +"drangedal.no", +"dyroy.no", +"dyrøy.no", +"donna.no", +"dønna.no", +"eid.no", +"eidfjord.no", +"eidsberg.no", +"eidskog.no", +"eidsvoll.no", +"eigersund.no", +"elverum.no", +"enebakk.no", +"engerdal.no", +"etne.no", +"etnedal.no", +"evenes.no", +"evenassi.no", +"evenášši.no", +"evje-og-hornnes.no", +"farsund.no", +"fauske.no", +"fuossko.no", +"fuoisku.no", +"fedje.no", +"fet.no", +"finnoy.no", +"finnøy.no", +"fitjar.no", +"fjaler.no", +"fjell.no", +"flakstad.no", +"flatanger.no", +"flekkefjord.no", +"flesberg.no", +"flora.no", +"fla.no", +"flå.no", +"folldal.no", +"forsand.no", +"fosnes.no", +"frei.no", +"frogn.no", +"froland.no", +"frosta.no", +"frana.no", +"fræna.no", +"froya.no", +"frøya.no", +"fusa.no", +"fyresdal.no", +"forde.no", +"førde.no", +"gamvik.no", +"gangaviika.no", +"gáŋgaviika.no", +"gaular.no", +"gausdal.no", +"gildeskal.no", +"gildeskål.no", +"giske.no", +"gjemnes.no", +"gjerdrum.no", +"gjerstad.no", +"gjesdal.no", +"gjovik.no", +"gjøvik.no", +"gloppen.no", +"gol.no", +"gran.no", +"grane.no", +"granvin.no", +"gratangen.no", +"grimstad.no", +"grong.no", +"kraanghke.no", +"kråanghke.no", +"grue.no", +"gulen.no", +"hadsel.no", +"halden.no", +"halsa.no", +"hamar.no", +"hamaroy.no", +"habmer.no", +"hábmer.no", +"hapmir.no", +"hápmir.no", +"hammerfest.no", +"hammarfeasta.no", +"hámmárfeasta.no", +"haram.no", +"hareid.no", +"harstad.no", +"hasvik.no", +"aknoluokta.no", +"ákŋoluokta.no", +"hattfjelldal.no", +"aarborte.no", +"haugesund.no", +"hemne.no", +"hemnes.no", +"hemsedal.no", +"heroy.more-og-romsdal.no", +"herøy.møre-og-romsdal.no", +"heroy.nordland.no", +"herøy.nordland.no", +"hitra.no", +"hjartdal.no", +"hjelmeland.no", +"hobol.no", +"hobøl.no", +"hof.no", +"hol.no", +"hole.no", +"holmestrand.no", +"holtalen.no", +"holtålen.no", +"hornindal.no", +"horten.no", +"hurdal.no", +"hurum.no", +"hvaler.no", +"hyllestad.no", +"hagebostad.no", +"hægebostad.no", +"hoyanger.no", +"høyanger.no", +"hoylandet.no", +"høylandet.no", +"ha.no", +"hå.no", +"ibestad.no", +"inderoy.no", +"inderøy.no", +"iveland.no", +"jevnaker.no", +"jondal.no", +"jolster.no", +"jølster.no", +"karasjok.no", +"karasjohka.no", +"kárášjohka.no", +"karlsoy.no", +"galsa.no", +"gálsá.no", +"karmoy.no", +"karmøy.no", +"kautokeino.no", +"guovdageaidnu.no", +"klepp.no", +"klabu.no", +"klæbu.no", +"kongsberg.no", +"kongsvinger.no", +"kragero.no", +"kragerø.no", +"kristiansand.no", +"kristiansund.no", +"krodsherad.no", +"krødsherad.no", +"kvalsund.no", +"rahkkeravju.no", +"ráhkkerávju.no", +"kvam.no", +"kvinesdal.no", +"kvinnherad.no", +"kviteseid.no", +"kvitsoy.no", +"kvitsøy.no", +"kvafjord.no", +"kvæfjord.no", +"giehtavuoatna.no", +"kvanangen.no", +"kvænangen.no", +"navuotna.no", +"návuotna.no", +"kafjord.no", +"kåfjord.no", +"gaivuotna.no", +"gáivuotna.no", +"larvik.no", +"lavangen.no", +"lavagis.no", +"loabat.no", +"loabát.no", +"lebesby.no", +"davvesiida.no", +"leikanger.no", +"leirfjord.no", +"leka.no", +"leksvik.no", +"lenvik.no", +"leangaviika.no", +"leaŋgaviika.no", +"lesja.no", +"levanger.no", +"lier.no", +"lierne.no", +"lillehammer.no", +"lillesand.no", +"lindesnes.no", +"lindas.no", +"lindås.no", +"lom.no", +"loppa.no", +"lahppi.no", +"láhppi.no", +"lund.no", +"lunner.no", +"luroy.no", +"lurøy.no", +"luster.no", +"lyngdal.no", +"lyngen.no", +"ivgu.no", +"lardal.no", +"lerdal.no", +"lærdal.no", +"lodingen.no", +"lødingen.no", +"lorenskog.no", +"lørenskog.no", +"loten.no", +"løten.no", +"malvik.no", +"masoy.no", +"måsøy.no", +"muosat.no", +"muosát.no", +"mandal.no", +"marker.no", +"marnardal.no", +"masfjorden.no", +"meland.no", +"meldal.no", +"melhus.no", +"meloy.no", +"meløy.no", +"meraker.no", +"meråker.no", +"moareke.no", +"moåreke.no", +"midsund.no", +"midtre-gauldal.no", +"modalen.no", +"modum.no", +"molde.no", +"moskenes.no", +"moss.no", +"mosvik.no", +"malselv.no", +"målselv.no", +"malatvuopmi.no", +"málatvuopmi.no", +"namdalseid.no", +"aejrie.no", +"namsos.no", +"namsskogan.no", +"naamesjevuemie.no", +"nååmesjevuemie.no", +"laakesvuemie.no", +"nannestad.no", +"narvik.no", +"narviika.no", +"naustdal.no", +"nedre-eiker.no", +"nes.akershus.no", +"nes.buskerud.no", +"nesna.no", +"nesodden.no", +"nesseby.no", +"unjarga.no", +"unjárga.no", +"nesset.no", +"nissedal.no", +"nittedal.no", +"nord-aurdal.no", +"nord-fron.no", +"nord-odal.no", +"norddal.no", +"nordkapp.no", +"davvenjarga.no", +"davvenjárga.no", +"nordre-land.no", +"nordreisa.no", +"raisa.no", +"ráisa.no", +"nore-og-uvdal.no", +"notodden.no", +"naroy.no", +"nærøy.no", +"notteroy.no", +"nøtterøy.no", +"odda.no", +"oksnes.no", +"øksnes.no", +"oppdal.no", +"oppegard.no", +"oppegård.no", +"orkdal.no", +"orland.no", +"ørland.no", +"orskog.no", +"ørskog.no", +"orsta.no", +"ørsta.no", +"os.hedmark.no", +"os.hordaland.no", +"osen.no", +"osteroy.no", +"osterøy.no", +"ostre-toten.no", +"østre-toten.no", +"overhalla.no", +"ovre-eiker.no", +"øvre-eiker.no", +"oyer.no", +"øyer.no", +"oygarden.no", +"øygarden.no", +"oystre-slidre.no", +"øystre-slidre.no", +"porsanger.no", +"porsangu.no", +"porsáŋgu.no", +"porsgrunn.no", +"radoy.no", +"radøy.no", +"rakkestad.no", +"rana.no", +"ruovat.no", +"randaberg.no", +"rauma.no", +"rendalen.no", +"rennebu.no", +"rennesoy.no", +"rennesøy.no", +"rindal.no", +"ringebu.no", +"ringerike.no", +"ringsaker.no", +"rissa.no", +"risor.no", +"risør.no", +"roan.no", +"rollag.no", +"rygge.no", +"ralingen.no", +"rælingen.no", +"rodoy.no", +"rødøy.no", +"romskog.no", +"rømskog.no", +"roros.no", +"røros.no", +"rost.no", +"røst.no", +"royken.no", +"røyken.no", +"royrvik.no", +"røyrvik.no", +"rade.no", +"råde.no", +"salangen.no", +"siellak.no", +"saltdal.no", +"salat.no", +"sálát.no", +"sálat.no", +"samnanger.no", +"sande.more-og-romsdal.no", +"sande.møre-og-romsdal.no", +"sande.vestfold.no", +"sandefjord.no", +"sandnes.no", +"sandoy.no", +"sandøy.no", +"sarpsborg.no", +"sauda.no", +"sauherad.no", +"sel.no", +"selbu.no", +"selje.no", +"seljord.no", +"sigdal.no", +"siljan.no", +"sirdal.no", +"skaun.no", +"skedsmo.no", +"ski.no", +"skien.no", +"skiptvet.no", +"skjervoy.no", +"skjervøy.no", +"skierva.no", +"skiervá.no", +"skjak.no", +"skjåk.no", +"skodje.no", +"skanland.no", +"skånland.no", +"skanit.no", +"skánit.no", +"smola.no", +"smøla.no", +"snillfjord.no", +"snasa.no", +"snåsa.no", +"snoasa.no", +"snaase.no", +"snåase.no", +"sogndal.no", +"sokndal.no", +"sola.no", +"solund.no", +"songdalen.no", +"sortland.no", +"spydeberg.no", +"stange.no", +"stavanger.no", +"steigen.no", +"steinkjer.no", +"stjordal.no", +"stjørdal.no", +"stokke.no", +"stor-elvdal.no", +"stord.no", +"stordal.no", +"storfjord.no", +"omasvuotna.no", +"strand.no", +"stranda.no", +"stryn.no", +"sula.no", +"suldal.no", +"sund.no", +"sunndal.no", +"surnadal.no", +"sveio.no", +"svelvik.no", +"sykkylven.no", +"sogne.no", +"søgne.no", +"somna.no", +"sømna.no", +"sondre-land.no", +"søndre-land.no", +"sor-aurdal.no", +"sør-aurdal.no", +"sor-fron.no", +"sør-fron.no", +"sor-odal.no", +"sør-odal.no", +"sor-varanger.no", +"sør-varanger.no", +"matta-varjjat.no", +"mátta-várjjat.no", +"sorfold.no", +"sørfold.no", +"sorreisa.no", +"sørreisa.no", +"sorum.no", +"sørum.no", +"tana.no", +"deatnu.no", +"time.no", +"tingvoll.no", +"tinn.no", +"tjeldsund.no", +"dielddanuorri.no", +"tjome.no", +"tjøme.no", +"tokke.no", +"tolga.no", +"torsken.no", +"tranoy.no", +"tranøy.no", +"tromso.no", +"tromsø.no", +"tromsa.no", +"romsa.no", +"trondheim.no", +"troandin.no", +"trysil.no", +"trana.no", +"træna.no", +"trogstad.no", +"trøgstad.no", +"tvedestrand.no", +"tydal.no", +"tynset.no", +"tysfjord.no", +"divtasvuodna.no", +"divttasvuotna.no", +"tysnes.no", +"tysvar.no", +"tysvær.no", +"tonsberg.no", +"tønsberg.no", +"ullensaker.no", +"ullensvang.no", +"ulvik.no", +"utsira.no", +"vadso.no", +"vadsø.no", +"cahcesuolo.no", +"čáhcesuolo.no", +"vaksdal.no", +"valle.no", +"vang.no", +"vanylven.no", +"vardo.no", +"vardø.no", +"varggat.no", +"várggát.no", +"vefsn.no", +"vaapste.no", +"vega.no", +"vegarshei.no", +"vegårshei.no", +"vennesla.no", +"verdal.no", +"verran.no", +"vestby.no", +"vestnes.no", +"vestre-slidre.no", +"vestre-toten.no", +"vestvagoy.no", +"vestvågøy.no", +"vevelstad.no", +"vik.no", +"vikna.no", +"vindafjord.no", +"volda.no", +"voss.no", +"varoy.no", +"værøy.no", +"vagan.no", +"vågan.no", +"voagat.no", +"vagsoy.no", +"vågsøy.no", +"vaga.no", +"vågå.no", +"valer.ostfold.no", +"våler.østfold.no", +"valer.hedmark.no", +"våler.hedmark.no", +"*.np", +"nr", +"biz.nr", +"info.nr", +"gov.nr", +"edu.nr", +"org.nr", +"net.nr", +"com.nr", +"nu", +"nz", +"ac.nz", +"co.nz", +"cri.nz", +"geek.nz", +"gen.nz", +"govt.nz", +"health.nz", +"iwi.nz", +"kiwi.nz", +"maori.nz", +"mil.nz", +"māori.nz", +"net.nz", +"org.nz", +"parliament.nz", +"school.nz", +"om", +"co.om", +"com.om", +"edu.om", +"gov.om", +"med.om", +"museum.om", +"net.om", +"org.om", +"pro.om", +"onion", +"org", +"pa", +"ac.pa", +"gob.pa", +"com.pa", +"org.pa", +"sld.pa", +"edu.pa", +"net.pa", +"ing.pa", +"abo.pa", +"med.pa", +"nom.pa", +"pe", +"edu.pe", +"gob.pe", +"nom.pe", +"mil.pe", +"org.pe", +"com.pe", +"net.pe", +"pf", +"com.pf", +"org.pf", +"edu.pf", +"*.pg", +"ph", +"com.ph", +"net.ph", +"org.ph", +"gov.ph", +"edu.ph", +"ngo.ph", +"mil.ph", +"i.ph", +"pk", +"com.pk", +"net.pk", +"edu.pk", +"org.pk", +"fam.pk", +"biz.pk", +"web.pk", +"gov.pk", +"gob.pk", +"gok.pk", +"gon.pk", +"gop.pk", +"gos.pk", +"info.pk", +"pl", +"com.pl", +"net.pl", +"org.pl", +"aid.pl", +"agro.pl", +"atm.pl", +"auto.pl", +"biz.pl", +"edu.pl", +"gmina.pl", +"gsm.pl", +"info.pl", +"mail.pl", +"miasta.pl", +"media.pl", +"mil.pl", +"nieruchomosci.pl", +"nom.pl", +"pc.pl", +"powiat.pl", +"priv.pl", +"realestate.pl", +"rel.pl", +"sex.pl", +"shop.pl", +"sklep.pl", +"sos.pl", +"szkola.pl", +"targi.pl", +"tm.pl", +"tourism.pl", +"travel.pl", +"turystyka.pl", +"gov.pl", +"ap.gov.pl", +"ic.gov.pl", +"is.gov.pl", +"us.gov.pl", +"kmpsp.gov.pl", +"kppsp.gov.pl", +"kwpsp.gov.pl", +"psp.gov.pl", +"wskr.gov.pl", +"kwp.gov.pl", +"mw.gov.pl", +"ug.gov.pl", +"um.gov.pl", +"umig.gov.pl", +"ugim.gov.pl", +"upow.gov.pl", +"uw.gov.pl", +"starostwo.gov.pl", +"pa.gov.pl", +"po.gov.pl", +"psse.gov.pl", +"pup.gov.pl", +"rzgw.gov.pl", +"sa.gov.pl", +"so.gov.pl", +"sr.gov.pl", +"wsa.gov.pl", +"sko.gov.pl", +"uzs.gov.pl", +"wiih.gov.pl", +"winb.gov.pl", +"pinb.gov.pl", +"wios.gov.pl", +"witd.gov.pl", +"wzmiuw.gov.pl", +"piw.gov.pl", +"wiw.gov.pl", +"griw.gov.pl", +"wif.gov.pl", +"oum.gov.pl", +"sdn.gov.pl", +"zp.gov.pl", +"uppo.gov.pl", +"mup.gov.pl", +"wuoz.gov.pl", +"konsulat.gov.pl", +"oirm.gov.pl", +"augustow.pl", +"babia-gora.pl", +"bedzin.pl", +"beskidy.pl", +"bialowieza.pl", +"bialystok.pl", +"bielawa.pl", +"bieszczady.pl", +"boleslawiec.pl", +"bydgoszcz.pl", +"bytom.pl", +"cieszyn.pl", +"czeladz.pl", +"czest.pl", +"dlugoleka.pl", +"elblag.pl", +"elk.pl", +"glogow.pl", +"gniezno.pl", +"gorlice.pl", +"grajewo.pl", +"ilawa.pl", +"jaworzno.pl", +"jelenia-gora.pl", +"jgora.pl", +"kalisz.pl", +"kazimierz-dolny.pl", +"karpacz.pl", +"kartuzy.pl", +"kaszuby.pl", +"katowice.pl", +"kepno.pl", +"ketrzyn.pl", +"klodzko.pl", +"kobierzyce.pl", +"kolobrzeg.pl", +"konin.pl", +"konskowola.pl", +"kutno.pl", +"lapy.pl", +"lebork.pl", +"legnica.pl", +"lezajsk.pl", +"limanowa.pl", +"lomza.pl", +"lowicz.pl", +"lubin.pl", +"lukow.pl", +"malbork.pl", +"malopolska.pl", +"mazowsze.pl", +"mazury.pl", +"mielec.pl", +"mielno.pl", +"mragowo.pl", +"naklo.pl", +"nowaruda.pl", +"nysa.pl", +"olawa.pl", +"olecko.pl", +"olkusz.pl", +"olsztyn.pl", +"opoczno.pl", +"opole.pl", +"ostroda.pl", +"ostroleka.pl", +"ostrowiec.pl", +"ostrowwlkp.pl", +"pila.pl", +"pisz.pl", +"podhale.pl", +"podlasie.pl", +"polkowice.pl", +"pomorze.pl", +"pomorskie.pl", +"prochowice.pl", +"pruszkow.pl", +"przeworsk.pl", +"pulawy.pl", +"radom.pl", +"rawa-maz.pl", +"rybnik.pl", +"rzeszow.pl", +"sanok.pl", +"sejny.pl", +"slask.pl", +"slupsk.pl", +"sosnowiec.pl", +"stalowa-wola.pl", +"skoczow.pl", +"starachowice.pl", +"stargard.pl", +"suwalki.pl", +"swidnica.pl", +"swiebodzin.pl", +"swinoujscie.pl", +"szczecin.pl", +"szczytno.pl", +"tarnobrzeg.pl", +"tgory.pl", +"turek.pl", +"tychy.pl", +"ustka.pl", +"walbrzych.pl", +"warmia.pl", +"warszawa.pl", +"waw.pl", +"wegrow.pl", +"wielun.pl", +"wlocl.pl", +"wloclawek.pl", +"wodzislaw.pl", +"wolomin.pl", +"wroclaw.pl", +"zachpomor.pl", +"zagan.pl", +"zarow.pl", +"zgora.pl", +"zgorzelec.pl", +"pm", +"pn", +"gov.pn", +"co.pn", +"org.pn", +"edu.pn", +"net.pn", +"post", +"pr", +"com.pr", +"net.pr", +"org.pr", +"gov.pr", +"edu.pr", +"isla.pr", +"pro.pr", +"biz.pr", +"info.pr", +"name.pr", +"est.pr", +"prof.pr", +"ac.pr", +"pro", +"aaa.pro", +"aca.pro", +"acct.pro", +"avocat.pro", +"bar.pro", +"cpa.pro", +"eng.pro", +"jur.pro", +"law.pro", +"med.pro", +"recht.pro", +"ps", +"edu.ps", +"gov.ps", +"sec.ps", +"plo.ps", +"com.ps", +"org.ps", +"net.ps", +"pt", +"net.pt", +"gov.pt", +"org.pt", +"edu.pt", +"int.pt", +"publ.pt", +"com.pt", +"nome.pt", +"pw", +"co.pw", +"ne.pw", +"or.pw", +"ed.pw", +"go.pw", +"belau.pw", +"py", +"com.py", +"coop.py", +"edu.py", +"gov.py", +"mil.py", +"net.py", +"org.py", +"qa", +"com.qa", +"edu.qa", +"gov.qa", +"mil.qa", +"name.qa", +"net.qa", +"org.qa", +"sch.qa", +"re", +"asso.re", +"com.re", +"nom.re", +"ro", +"arts.ro", +"com.ro", +"firm.ro", +"info.ro", +"nom.ro", +"nt.ro", +"org.ro", +"rec.ro", +"store.ro", +"tm.ro", +"www.ro", +"rs", +"ac.rs", +"co.rs", +"edu.rs", +"gov.rs", +"in.rs", +"org.rs", +"ru", +"rw", +"ac.rw", +"co.rw", +"coop.rw", +"gov.rw", +"mil.rw", +"net.rw", +"org.rw", +"sa", +"com.sa", +"net.sa", +"org.sa", +"gov.sa", +"med.sa", +"pub.sa", +"edu.sa", +"sch.sa", +"sb", +"com.sb", +"edu.sb", +"gov.sb", +"net.sb", +"org.sb", +"sc", +"com.sc", +"gov.sc", +"net.sc", +"org.sc", +"edu.sc", +"sd", +"com.sd", +"net.sd", +"org.sd", +"edu.sd", +"med.sd", +"tv.sd", +"gov.sd", +"info.sd", +"se", +"a.se", +"ac.se", +"b.se", +"bd.se", +"brand.se", +"c.se", +"d.se", +"e.se", +"f.se", +"fh.se", +"fhsk.se", +"fhv.se", +"g.se", +"h.se", +"i.se", +"k.se", +"komforb.se", +"kommunalforbund.se", +"komvux.se", +"l.se", +"lanbib.se", +"m.se", +"n.se", +"naturbruksgymn.se", +"o.se", +"org.se", +"p.se", +"parti.se", +"pp.se", +"press.se", +"r.se", +"s.se", +"t.se", +"tm.se", +"u.se", +"w.se", +"x.se", +"y.se", +"z.se", +"sg", +"com.sg", +"net.sg", +"org.sg", +"gov.sg", +"edu.sg", +"per.sg", +"sh", +"com.sh", +"net.sh", +"gov.sh", +"org.sh", +"mil.sh", +"si", +"sj", +"sk", +"sl", +"com.sl", +"net.sl", +"edu.sl", +"gov.sl", +"org.sl", +"sm", +"sn", +"art.sn", +"com.sn", +"edu.sn", +"gouv.sn", +"org.sn", +"perso.sn", +"univ.sn", +"so", +"com.so", +"edu.so", +"gov.so", +"me.so", +"net.so", +"org.so", +"sr", +"ss", +"biz.ss", +"com.ss", +"edu.ss", +"gov.ss", +"net.ss", +"org.ss", +"st", +"co.st", +"com.st", +"consulado.st", +"edu.st", +"embaixada.st", +"gov.st", +"mil.st", +"net.st", +"org.st", +"principe.st", +"saotome.st", +"store.st", +"su", +"sv", +"com.sv", +"edu.sv", +"gob.sv", +"org.sv", +"red.sv", +"sx", +"gov.sx", +"sy", +"edu.sy", +"gov.sy", +"net.sy", +"mil.sy", +"com.sy", +"org.sy", +"sz", +"co.sz", +"ac.sz", +"org.sz", +"tc", +"td", +"tel", +"tf", +"tg", +"th", +"ac.th", +"co.th", +"go.th", +"in.th", +"mi.th", +"net.th", +"or.th", +"tj", +"ac.tj", +"biz.tj", +"co.tj", +"com.tj", +"edu.tj", +"go.tj", +"gov.tj", +"int.tj", +"mil.tj", +"name.tj", +"net.tj", +"nic.tj", +"org.tj", +"test.tj", +"web.tj", +"tk", +"tl", +"gov.tl", +"tm", +"com.tm", +"co.tm", +"org.tm", +"net.tm", +"nom.tm", +"gov.tm", +"mil.tm", +"edu.tm", +"tn", +"com.tn", +"ens.tn", +"fin.tn", +"gov.tn", +"ind.tn", +"intl.tn", +"nat.tn", +"net.tn", +"org.tn", +"info.tn", +"perso.tn", +"tourism.tn", +"edunet.tn", +"rnrt.tn", +"rns.tn", +"rnu.tn", +"mincom.tn", +"agrinet.tn", +"defense.tn", +"turen.tn", +"to", +"com.to", +"gov.to", +"net.to", +"org.to", +"edu.to", +"mil.to", +"tr", +"av.tr", +"bbs.tr", +"bel.tr", +"biz.tr", +"com.tr", +"dr.tr", +"edu.tr", +"gen.tr", +"gov.tr", +"info.tr", +"mil.tr", +"k12.tr", +"kep.tr", +"name.tr", +"net.tr", +"org.tr", +"pol.tr", +"tel.tr", +"tsk.tr", +"tv.tr", +"web.tr", +"nc.tr", +"gov.nc.tr", +"tt", +"co.tt", +"com.tt", +"org.tt", +"net.tt", +"biz.tt", +"info.tt", +"pro.tt", +"int.tt", +"coop.tt", +"jobs.tt", +"mobi.tt", +"travel.tt", +"museum.tt", +"aero.tt", +"name.tt", +"gov.tt", +"edu.tt", +"tv", +"tw", +"edu.tw", +"gov.tw", +"mil.tw", +"com.tw", +"net.tw", +"org.tw", +"idv.tw", +"game.tw", +"ebiz.tw", +"club.tw", +"網路.tw", +"組織.tw", +"商業.tw", +"tz", +"ac.tz", +"co.tz", +"go.tz", +"hotel.tz", +"info.tz", +"me.tz", +"mil.tz", +"mobi.tz", +"ne.tz", +"or.tz", +"sc.tz", +"tv.tz", +"ua", +"com.ua", +"edu.ua", +"gov.ua", +"in.ua", +"net.ua", +"org.ua", +"cherkassy.ua", +"cherkasy.ua", +"chernigov.ua", +"chernihiv.ua", +"chernivtsi.ua", +"chernovtsy.ua", +"ck.ua", +"cn.ua", +"cr.ua", +"crimea.ua", +"cv.ua", +"dn.ua", +"dnepropetrovsk.ua", +"dnipropetrovsk.ua", +"dominic.ua", +"donetsk.ua", +"dp.ua", +"if.ua", +"ivano-frankivsk.ua", +"kh.ua", +"kharkiv.ua", +"kharkov.ua", +"kherson.ua", +"khmelnitskiy.ua", +"khmelnytskyi.ua", +"kiev.ua", +"kirovograd.ua", +"km.ua", +"kr.ua", +"krym.ua", +"ks.ua", +"kv.ua", +"kyiv.ua", +"lg.ua", +"lt.ua", +"lugansk.ua", +"lutsk.ua", +"lv.ua", +"lviv.ua", +"mk.ua", +"mykolaiv.ua", +"nikolaev.ua", +"od.ua", +"odesa.ua", +"odessa.ua", +"pl.ua", +"poltava.ua", +"rivne.ua", +"rovno.ua", +"rv.ua", +"sb.ua", +"sebastopol.ua", +"sevastopol.ua", +"sm.ua", +"sumy.ua", +"te.ua", +"ternopil.ua", +"uz.ua", +"uzhgorod.ua", +"vinnica.ua", +"vinnytsia.ua", +"vn.ua", +"volyn.ua", +"yalta.ua", +"zaporizhzhe.ua", +"zaporizhzhia.ua", +"zhitomir.ua", +"zhytomyr.ua", +"zp.ua", +"zt.ua", +"ug", +"co.ug", +"or.ug", +"ac.ug", +"sc.ug", +"go.ug", +"ne.ug", +"com.ug", +"org.ug", +"uk", +"ac.uk", +"co.uk", +"gov.uk", +"ltd.uk", +"me.uk", +"net.uk", +"nhs.uk", +"org.uk", +"plc.uk", +"police.uk", +"*.sch.uk", +"us", +"dni.us", +"fed.us", +"isa.us", +"kids.us", +"nsn.us", +"ak.us", +"al.us", +"ar.us", +"as.us", +"az.us", +"ca.us", +"co.us", +"ct.us", +"dc.us", +"de.us", +"fl.us", +"ga.us", +"gu.us", +"hi.us", +"ia.us", +"id.us", +"il.us", +"in.us", +"ks.us", +"ky.us", +"la.us", +"ma.us", +"md.us", +"me.us", +"mi.us", +"mn.us", +"mo.us", +"ms.us", +"mt.us", +"nc.us", +"nd.us", +"ne.us", +"nh.us", +"nj.us", +"nm.us", +"nv.us", +"ny.us", +"oh.us", +"ok.us", +"or.us", +"pa.us", +"pr.us", +"ri.us", +"sc.us", +"sd.us", +"tn.us", +"tx.us", +"ut.us", +"vi.us", +"vt.us", +"va.us", +"wa.us", +"wi.us", +"wv.us", +"wy.us", +"k12.ak.us", +"k12.al.us", +"k12.ar.us", +"k12.as.us", +"k12.az.us", +"k12.ca.us", +"k12.co.us", +"k12.ct.us", +"k12.dc.us", +"k12.de.us", +"k12.fl.us", +"k12.ga.us", +"k12.gu.us", +"k12.ia.us", +"k12.id.us", +"k12.il.us", +"k12.in.us", +"k12.ks.us", +"k12.ky.us", +"k12.la.us", +"k12.ma.us", +"k12.md.us", +"k12.me.us", +"k12.mi.us", +"k12.mn.us", +"k12.mo.us", +"k12.ms.us", +"k12.mt.us", +"k12.nc.us", +"k12.ne.us", +"k12.nh.us", +"k12.nj.us", +"k12.nm.us", +"k12.nv.us", +"k12.ny.us", +"k12.oh.us", +"k12.ok.us", +"k12.or.us", +"k12.pa.us", +"k12.pr.us", +"k12.ri.us", +"k12.sc.us", +"k12.tn.us", +"k12.tx.us", +"k12.ut.us", +"k12.vi.us", +"k12.vt.us", +"k12.va.us", +"k12.wa.us", +"k12.wi.us", +"k12.wy.us", +"cc.ak.us", +"cc.al.us", +"cc.ar.us", +"cc.as.us", +"cc.az.us", +"cc.ca.us", +"cc.co.us", +"cc.ct.us", +"cc.dc.us", +"cc.de.us", +"cc.fl.us", +"cc.ga.us", +"cc.gu.us", +"cc.hi.us", +"cc.ia.us", +"cc.id.us", +"cc.il.us", +"cc.in.us", +"cc.ks.us", +"cc.ky.us", +"cc.la.us", +"cc.ma.us", +"cc.md.us", +"cc.me.us", +"cc.mi.us", +"cc.mn.us", +"cc.mo.us", +"cc.ms.us", +"cc.mt.us", +"cc.nc.us", +"cc.nd.us", +"cc.ne.us", +"cc.nh.us", +"cc.nj.us", +"cc.nm.us", +"cc.nv.us", +"cc.ny.us", +"cc.oh.us", +"cc.ok.us", +"cc.or.us", +"cc.pa.us", +"cc.pr.us", +"cc.ri.us", +"cc.sc.us", +"cc.sd.us", +"cc.tn.us", +"cc.tx.us", +"cc.ut.us", +"cc.vi.us", +"cc.vt.us", +"cc.va.us", +"cc.wa.us", +"cc.wi.us", +"cc.wv.us", +"cc.wy.us", +"lib.ak.us", +"lib.al.us", +"lib.ar.us", +"lib.as.us", +"lib.az.us", +"lib.ca.us", +"lib.co.us", +"lib.ct.us", +"lib.dc.us", +"lib.fl.us", +"lib.ga.us", +"lib.gu.us", +"lib.hi.us", +"lib.ia.us", +"lib.id.us", +"lib.il.us", +"lib.in.us", +"lib.ks.us", +"lib.ky.us", +"lib.la.us", +"lib.ma.us", +"lib.md.us", +"lib.me.us", +"lib.mi.us", +"lib.mn.us", +"lib.mo.us", +"lib.ms.us", +"lib.mt.us", +"lib.nc.us", +"lib.nd.us", +"lib.ne.us", +"lib.nh.us", +"lib.nj.us", +"lib.nm.us", +"lib.nv.us", +"lib.ny.us", +"lib.oh.us", +"lib.ok.us", +"lib.or.us", +"lib.pa.us", +"lib.pr.us", +"lib.ri.us", +"lib.sc.us", +"lib.sd.us", +"lib.tn.us", +"lib.tx.us", +"lib.ut.us", +"lib.vi.us", +"lib.vt.us", +"lib.va.us", +"lib.wa.us", +"lib.wi.us", +"lib.wy.us", +"pvt.k12.ma.us", +"chtr.k12.ma.us", +"paroch.k12.ma.us", +"ann-arbor.mi.us", +"cog.mi.us", +"dst.mi.us", +"eaton.mi.us", +"gen.mi.us", +"mus.mi.us", +"tec.mi.us", +"washtenaw.mi.us", +"uy", +"com.uy", +"edu.uy", +"gub.uy", +"mil.uy", +"net.uy", +"org.uy", +"uz", +"co.uz", +"com.uz", +"net.uz", +"org.uz", +"va", +"vc", +"com.vc", +"net.vc", +"org.vc", +"gov.vc", +"mil.vc", +"edu.vc", +"ve", +"arts.ve", +"co.ve", +"com.ve", +"e12.ve", +"edu.ve", +"firm.ve", +"gob.ve", +"gov.ve", +"info.ve", +"int.ve", +"mil.ve", +"net.ve", +"org.ve", +"rec.ve", +"store.ve", +"tec.ve", +"web.ve", +"vg", +"vi", +"co.vi", +"com.vi", +"k12.vi", +"net.vi", +"org.vi", +"vn", +"com.vn", +"net.vn", +"org.vn", +"edu.vn", +"gov.vn", +"int.vn", +"ac.vn", +"biz.vn", +"info.vn", +"name.vn", +"pro.vn", +"health.vn", +"vu", +"com.vu", +"edu.vu", +"net.vu", +"org.vu", +"wf", +"ws", +"com.ws", +"net.ws", +"org.ws", +"gov.ws", +"edu.ws", +"yt", +"امارات", +"հայ", +"বাংলা", +"бг", +"бел", +"中国", +"中國", +"الجزائر", +"مصر", +"ею", +"ευ", +"موريتانيا", +"გე", +"ελ", +"香港", +"公司.香港", +"教育.香港", +"政府.香港", +"個人.香港", +"網絡.香港", +"組織.香港", +"ಭಾರತ", +"ଭାରତ", +"ভাৰত", +"भारतम्", +"भारोत", +"ڀارت", +"ഭാരതം", +"भारत", +"بارت", +"بھارت", +"భారత్", +"ભારત", +"ਭਾਰਤ", +"ভারত", +"இந்தியா", +"ایران", +"ايران", +"عراق", +"الاردن", +"한국", +"қаз", +"ලංකා", +"இலங்கை", +"المغرب", +"мкд", +"мон", +"澳門", +"澳门", +"مليسيا", +"عمان", +"پاکستان", +"پاكستان", +"فلسطين", +"срб", +"пр.срб", +"орг.срб", +"обр.срб", +"од.срб", +"упр.срб", +"ак.срб", +"рф", +"قطر", +"السعودية", +"السعودیة", +"السعودیۃ", +"السعوديه", +"سودان", +"新加坡", +"சிங்கப்பூர்", +"سورية", +"سوريا", +"ไทย", +"ศึกษา.ไทย", +"ธุรกิจ.ไทย", +"รัฐบาล.ไทย", +"ทหาร.ไทย", +"เน็ต.ไทย", +"องค์กร.ไทย", +"تونس", +"台灣", +"台湾", +"臺灣", +"укр", +"اليمن", +"xxx", +"*.ye", +"ac.za", +"agric.za", +"alt.za", +"co.za", +"edu.za", +"gov.za", +"grondar.za", +"law.za", +"mil.za", +"net.za", +"ngo.za", +"nic.za", +"nis.za", +"nom.za", +"org.za", +"school.za", +"tm.za", +"web.za", +"zm", +"ac.zm", +"biz.zm", +"co.zm", +"com.zm", +"edu.zm", +"gov.zm", +"info.zm", +"mil.zm", +"net.zm", +"org.zm", +"sch.zm", +"zw", +"ac.zw", +"co.zw", +"gov.zw", +"mil.zw", +"org.zw", +"aaa", +"aarp", +"abarth", +"abb", +"abbott", +"abbvie", +"abc", +"able", +"abogado", +"abudhabi", +"academy", +"accenture", +"accountant", +"accountants", +"aco", +"actor", +"adac", +"ads", +"adult", +"aeg", +"aetna", +"afamilycompany", +"afl", +"africa", +"agakhan", +"agency", +"aig", +"aigo", +"airbus", +"airforce", +"airtel", +"akdn", +"alfaromeo", +"alibaba", +"alipay", +"allfinanz", +"allstate", +"ally", +"alsace", +"alstom", +"amazon", +"americanexpress", +"americanfamily", +"amex", +"amfam", +"amica", +"amsterdam", +"analytics", +"android", +"anquan", +"anz", +"aol", +"apartments", +"app", +"apple", +"aquarelle", +"arab", +"aramco", +"archi", +"army", +"art", +"arte", +"asda", +"associates", +"athleta", +"attorney", +"auction", +"audi", +"audible", +"audio", +"auspost", +"author", +"auto", +"autos", +"avianca", +"aws", +"axa", +"azure", +"baby", +"baidu", +"banamex", +"bananarepublic", +"band", +"bank", +"bar", +"barcelona", +"barclaycard", +"barclays", +"barefoot", +"bargains", +"baseball", +"basketball", +"bauhaus", +"bayern", +"bbc", +"bbt", +"bbva", +"bcg", +"bcn", +"beats", +"beauty", +"beer", +"bentley", +"berlin", +"best", +"bestbuy", +"bet", +"bharti", +"bible", +"bid", +"bike", +"bing", +"bingo", +"bio", +"black", +"blackfriday", +"blockbuster", +"blog", +"bloomberg", +"blue", +"bms", +"bmw", +"bnpparibas", +"boats", +"boehringer", +"bofa", +"bom", +"bond", +"boo", +"book", +"booking", +"bosch", +"bostik", +"boston", +"bot", +"boutique", +"box", +"bradesco", +"bridgestone", +"broadway", +"broker", +"brother", +"brussels", +"budapest", +"bugatti", +"build", +"builders", +"business", +"buy", +"buzz", +"bzh", +"cab", +"cafe", +"cal", +"call", +"calvinklein", +"cam", +"camera", +"camp", +"cancerresearch", +"canon", +"capetown", +"capital", +"capitalone", +"car", +"caravan", +"cards", +"care", +"career", +"careers", +"cars", +"casa", +"case", +"caseih", +"cash", +"casino", +"catering", +"catholic", +"cba", +"cbn", +"cbre", +"cbs", +"ceb", +"center", +"ceo", +"cern", +"cfa", +"cfd", +"chanel", +"channel", +"charity", +"chase", +"chat", +"cheap", +"chintai", +"christmas", +"chrome", +"church", +"cipriani", +"circle", +"cisco", +"citadel", +"citi", +"citic", +"city", +"cityeats", +"claims", +"cleaning", +"click", +"clinic", +"clinique", +"clothing", +"cloud", +"club", +"clubmed", +"coach", +"codes", +"coffee", +"college", +"cologne", +"comcast", +"commbank", +"community", +"company", +"compare", +"computer", +"comsec", +"condos", +"construction", +"consulting", +"contact", +"contractors", +"cooking", +"cookingchannel", +"cool", +"corsica", +"country", +"coupon", +"coupons", +"courses", +"cpa", +"credit", +"creditcard", +"creditunion", +"cricket", +"crown", +"crs", +"cruise", +"cruises", +"csc", +"cuisinella", +"cymru", +"cyou", +"dabur", +"dad", +"dance", +"data", +"date", +"dating", +"datsun", +"day", +"dclk", +"dds", +"deal", +"dealer", +"deals", +"degree", +"delivery", +"dell", +"deloitte", +"delta", +"democrat", +"dental", +"dentist", +"desi", +"design", +"dev", +"dhl", +"diamonds", +"diet", +"digital", +"direct", +"directory", +"discount", +"discover", +"dish", +"diy", +"dnp", +"docs", +"doctor", +"dog", +"domains", +"dot", +"download", +"drive", +"dtv", +"dubai", +"duck", +"dunlop", +"dupont", +"durban", +"dvag", +"dvr", +"earth", +"eat", +"eco", +"edeka", +"education", +"email", +"emerck", +"energy", +"engineer", +"engineering", +"enterprises", +"epson", +"equipment", +"ericsson", +"erni", +"esq", +"estate", +"esurance", +"etisalat", +"eurovision", +"eus", +"events", +"exchange", +"expert", +"exposed", +"express", +"extraspace", +"fage", +"fail", +"fairwinds", +"faith", +"family", +"fan", +"fans", +"farm", +"farmers", +"fashion", +"fast", +"fedex", +"feedback", +"ferrari", +"ferrero", +"fiat", +"fidelity", +"fido", +"film", +"final", +"finance", +"financial", +"fire", +"firestone", +"firmdale", +"fish", +"fishing", +"fit", +"fitness", +"flickr", +"flights", +"flir", +"florist", +"flowers", +"fly", +"foo", +"food", +"foodnetwork", +"football", +"ford", +"forex", +"forsale", +"forum", +"foundation", +"fox", +"free", +"fresenius", +"frl", +"frogans", +"frontdoor", +"frontier", +"ftr", +"fujitsu", +"fujixerox", +"fun", +"fund", +"furniture", +"futbol", +"fyi", +"gal", +"gallery", +"gallo", +"gallup", +"game", +"games", +"gap", +"garden", +"gay", +"gbiz", +"gdn", +"gea", +"gent", +"genting", +"george", +"ggee", +"gift", +"gifts", +"gives", +"giving", +"glade", +"glass", +"gle", +"global", +"globo", +"gmail", +"gmbh", +"gmo", +"gmx", +"godaddy", +"gold", +"goldpoint", +"golf", +"goo", +"goodyear", +"goog", +"google", +"gop", +"got", +"grainger", +"graphics", +"gratis", +"green", +"gripe", +"grocery", +"group", +"guardian", +"gucci", +"guge", +"guide", +"guitars", +"guru", +"hair", +"hamburg", +"hangout", +"haus", +"hbo", +"hdfc", +"hdfcbank", +"health", +"healthcare", +"help", +"helsinki", +"here", +"hermes", +"hgtv", +"hiphop", +"hisamitsu", +"hitachi", +"hiv", +"hkt", +"hockey", +"holdings", +"holiday", +"homedepot", +"homegoods", +"homes", +"homesense", +"honda", +"horse", +"hospital", +"host", +"hosting", +"hot", +"hoteles", +"hotels", +"hotmail", +"house", +"how", +"hsbc", +"hughes", +"hyatt", +"hyundai", +"ibm", +"icbc", +"ice", +"icu", +"ieee", +"ifm", +"ikano", +"imamat", +"imdb", +"immo", +"immobilien", +"inc", +"industries", +"infiniti", +"ing", +"ink", +"institute", +"insurance", +"insure", +"intel", +"international", +"intuit", +"investments", +"ipiranga", +"irish", +"ismaili", +"ist", +"istanbul", +"itau", +"itv", +"iveco", +"jaguar", +"java", +"jcb", +"jcp", +"jeep", +"jetzt", +"jewelry", +"jio", +"jll", +"jmp", +"jnj", +"joburg", +"jot", +"joy", +"jpmorgan", +"jprs", +"juegos", +"juniper", +"kaufen", +"kddi", +"kerryhotels", +"kerrylogistics", +"kerryproperties", +"kfh", +"kia", +"kim", +"kinder", +"kindle", +"kitchen", +"kiwi", +"koeln", +"komatsu", +"kosher", +"kpmg", +"kpn", +"krd", +"kred", +"kuokgroup", +"kyoto", +"lacaixa", +"lamborghini", +"lamer", +"lancaster", +"lancia", +"land", +"landrover", +"lanxess", +"lasalle", +"lat", +"latino", +"latrobe", +"law", +"lawyer", +"lds", +"lease", +"leclerc", +"lefrak", +"legal", +"lego", +"lexus", +"lgbt", +"lidl", +"life", +"lifeinsurance", +"lifestyle", +"lighting", +"like", +"lilly", +"limited", +"limo", +"lincoln", +"linde", +"link", +"lipsy", +"live", +"living", +"lixil", +"llc", +"llp", +"loan", +"loans", +"locker", +"locus", +"loft", +"lol", +"london", +"lotte", +"lotto", +"love", +"lpl", +"lplfinancial", +"ltd", +"ltda", +"lundbeck", +"lupin", +"luxe", +"luxury", +"macys", +"madrid", +"maif", +"maison", +"makeup", +"man", +"management", +"mango", +"map", +"market", +"marketing", +"markets", +"marriott", +"marshalls", +"maserati", +"mattel", +"mba", +"mckinsey", +"med", +"media", +"meet", +"melbourne", +"meme", +"memorial", +"men", +"menu", +"merckmsd", +"metlife", +"miami", +"microsoft", +"mini", +"mint", +"mit", +"mitsubishi", +"mlb", +"mls", +"mma", +"mobile", +"moda", +"moe", +"moi", +"mom", +"monash", +"money", +"monster", +"mormon", +"mortgage", +"moscow", +"moto", +"motorcycles", +"mov", +"movie", +"msd", +"mtn", +"mtr", +"mutual", +"nab", +"nadex", +"nagoya", +"nationwide", +"natura", +"navy", +"nba", +"nec", +"netbank", +"netflix", +"network", +"neustar", +"new", +"newholland", +"news", +"next", +"nextdirect", +"nexus", +"nfl", +"ngo", +"nhk", +"nico", +"nike", +"nikon", +"ninja", +"nissan", +"nissay", +"nokia", +"northwesternmutual", +"norton", +"now", +"nowruz", +"nowtv", +"nra", +"nrw", +"ntt", +"nyc", +"obi", +"observer", +"off", +"office", +"okinawa", +"olayan", +"olayangroup", +"oldnavy", +"ollo", +"omega", +"one", +"ong", +"onl", +"online", +"onyourside", +"ooo", +"open", +"oracle", +"orange", +"organic", +"origins", +"osaka", +"otsuka", +"ott", +"ovh", +"page", +"panasonic", +"paris", +"pars", +"partners", +"parts", +"party", +"passagens", +"pay", +"pccw", +"pet", +"pfizer", +"pharmacy", +"phd", +"philips", +"phone", +"photo", +"photography", +"photos", +"physio", +"pics", +"pictet", +"pictures", +"pid", +"pin", +"ping", +"pink", +"pioneer", +"pizza", +"place", +"play", +"playstation", +"plumbing", +"plus", +"pnc", +"pohl", +"poker", +"politie", +"porn", +"pramerica", +"praxi", +"press", +"prime", +"prod", +"productions", +"prof", +"progressive", +"promo", +"properties", +"property", +"protection", +"pru", +"prudential", +"pub", +"pwc", +"qpon", +"quebec", +"quest", +"qvc", +"racing", +"radio", +"raid", +"read", +"realestate", +"realtor", +"realty", +"recipes", +"red", +"redstone", +"redumbrella", +"rehab", +"reise", +"reisen", +"reit", +"reliance", +"ren", +"rent", +"rentals", +"repair", +"report", +"republican", +"rest", +"restaurant", +"review", +"reviews", +"rexroth", +"rich", +"richardli", +"ricoh", +"rightathome", +"ril", +"rio", +"rip", +"rmit", +"rocher", +"rocks", +"rodeo", +"rogers", +"room", +"rsvp", +"rugby", +"ruhr", +"run", +"rwe", +"ryukyu", +"saarland", +"safe", +"safety", +"sakura", +"sale", +"salon", +"samsclub", +"samsung", +"sandvik", +"sandvikcoromant", +"sanofi", +"sap", +"sarl", +"sas", +"save", +"saxo", +"sbi", +"sbs", +"sca", +"scb", +"schaeffler", +"schmidt", +"scholarships", +"school", +"schule", +"schwarz", +"science", +"scjohnson", +"scor", +"scot", +"search", +"seat", +"secure", +"security", +"seek", +"select", +"sener", +"services", +"ses", +"seven", +"sew", +"sex", +"sexy", +"sfr", +"shangrila", +"sharp", +"shaw", +"shell", +"shia", +"shiksha", +"shoes", +"shop", +"shopping", +"shouji", +"show", +"showtime", +"shriram", +"silk", +"sina", +"singles", +"site", +"ski", +"skin", +"sky", +"skype", +"sling", +"smart", +"smile", +"sncf", +"soccer", +"social", +"softbank", +"software", +"sohu", +"solar", +"solutions", +"song", +"sony", +"soy", +"spa", +"space", +"sport", +"spot", +"spreadbetting", +"srl", +"stada", +"staples", +"star", +"statebank", +"statefarm", +"stc", +"stcgroup", +"stockholm", +"storage", +"store", +"stream", +"studio", +"study", +"style", +"sucks", +"supplies", +"supply", +"support", +"surf", +"surgery", +"suzuki", +"swatch", +"swiftcover", +"swiss", +"sydney", +"symantec", +"systems", +"tab", +"taipei", +"talk", +"taobao", +"target", +"tatamotors", +"tatar", +"tattoo", +"tax", +"taxi", +"tci", +"tdk", +"team", +"tech", +"technology", +"temasek", +"tennis", +"teva", +"thd", +"theater", +"theatre", +"tiaa", +"tickets", +"tienda", +"tiffany", +"tips", +"tires", +"tirol", +"tjmaxx", +"tjx", +"tkmaxx", +"tmall", +"today", +"tokyo", +"tools", +"top", +"toray", +"toshiba", +"total", +"tours", +"town", +"toyota", +"toys", +"trade", +"trading", +"training", +"travel", +"travelchannel", +"travelers", +"travelersinsurance", +"trust", +"trv", +"tube", +"tui", +"tunes", +"tushu", +"tvs", +"ubank", +"ubs", +"unicom", +"university", +"uno", +"uol", +"ups", +"vacations", +"vana", +"vanguard", +"vegas", +"ventures", +"verisign", +"versicherung", +"vet", +"viajes", +"video", +"vig", +"viking", +"villas", +"vin", +"vip", +"virgin", +"visa", +"vision", +"viva", +"vivo", +"vlaanderen", +"vodka", +"volkswagen", +"volvo", +"vote", +"voting", +"voto", +"voyage", +"vuelos", +"wales", +"walmart", +"walter", +"wang", +"wanggou", +"watch", +"watches", +"weather", +"weatherchannel", +"webcam", +"weber", +"website", +"wed", +"wedding", +"weibo", +"weir", +"whoswho", +"wien", +"wiki", +"williamhill", +"win", +"windows", +"wine", +"winners", +"wme", +"wolterskluwer", +"woodside", +"work", +"works", +"world", +"wow", +"wtc", +"wtf", +"xbox", +"xerox", +"xfinity", +"xihuan", +"xin", +"कॉम", +"セール", +"佛山", +"慈善", +"集团", +"在线", +"大众汽车", +"点看", +"คอม", +"八卦", +"موقع", +"公益", +"公司", +"香格里拉", +"网站", +"移动", +"我爱你", +"москва", +"католик", +"онлайн", +"сайт", +"联通", +"קום", +"时尚", +"微博", +"淡马锡", +"ファッション", +"орг", +"नेट", +"ストア", +"アマゾン", +"삼성", +"商标", +"商店", +"商城", +"дети", +"ポイント", +"新闻", +"工行", +"家電", +"كوم", +"中文网", +"中信", +"娱乐", +"谷歌", +"電訊盈科", +"购物", +"クラウド", +"通販", +"网店", +"संगठन", +"餐厅", +"网络", +"ком", +"亚马逊", +"诺基亚", +"食品", +"飞利浦", +"手表", +"手机", +"ارامكو", +"العليان", +"اتصالات", +"بازار", +"ابوظبي", +"كاثوليك", +"همراه", +"닷컴", +"政府", +"شبكة", +"بيتك", +"عرب", +"机构", +"组织机构", +"健康", +"招聘", +"рус", +"珠宝", +"大拿", +"みんな", +"グーグル", +"世界", +"書籍", +"网址", +"닷넷", +"コム", +"天主教", +"游戏", +"vermögensberater", +"vermögensberatung", +"企业", +"信息", +"嘉里大酒店", +"嘉里", +"广东", +"政务", +"xyz", +"yachts", +"yahoo", +"yamaxun", +"yandex", +"yodobashi", +"yoga", +"yokohama", +"you", +"youtube", +"yun", +"zappos", +"zara", +"zero", +"zip", +"zone", +"zuerich", +"cc.ua", +"inf.ua", +"ltd.ua", +"adobeaemcloud.com", +"adobeaemcloud.net", +"*.dev.adobeaemcloud.com", +"beep.pl", +"barsy.ca", +"*.compute.estate", +"*.alces.network", +"altervista.org", +"alwaysdata.net", +"cloudfront.net", +"*.compute.amazonaws.com", +"*.compute-1.amazonaws.com", +"*.compute.amazonaws.com.cn", +"us-east-1.amazonaws.com", +"cn-north-1.eb.amazonaws.com.cn", +"cn-northwest-1.eb.amazonaws.com.cn", +"elasticbeanstalk.com", +"ap-northeast-1.elasticbeanstalk.com", +"ap-northeast-2.elasticbeanstalk.com", +"ap-northeast-3.elasticbeanstalk.com", +"ap-south-1.elasticbeanstalk.com", +"ap-southeast-1.elasticbeanstalk.com", +"ap-southeast-2.elasticbeanstalk.com", +"ca-central-1.elasticbeanstalk.com", +"eu-central-1.elasticbeanstalk.com", +"eu-west-1.elasticbeanstalk.com", +"eu-west-2.elasticbeanstalk.com", +"eu-west-3.elasticbeanstalk.com", +"sa-east-1.elasticbeanstalk.com", +"us-east-1.elasticbeanstalk.com", +"us-east-2.elasticbeanstalk.com", +"us-gov-west-1.elasticbeanstalk.com", +"us-west-1.elasticbeanstalk.com", +"us-west-2.elasticbeanstalk.com", +"*.elb.amazonaws.com", +"*.elb.amazonaws.com.cn", +"s3.amazonaws.com", +"s3-ap-northeast-1.amazonaws.com", +"s3-ap-northeast-2.amazonaws.com", +"s3-ap-south-1.amazonaws.com", +"s3-ap-southeast-1.amazonaws.com", +"s3-ap-southeast-2.amazonaws.com", +"s3-ca-central-1.amazonaws.com", +"s3-eu-central-1.amazonaws.com", +"s3-eu-west-1.amazonaws.com", +"s3-eu-west-2.amazonaws.com", +"s3-eu-west-3.amazonaws.com", +"s3-external-1.amazonaws.com", +"s3-fips-us-gov-west-1.amazonaws.com", +"s3-sa-east-1.amazonaws.com", +"s3-us-gov-west-1.amazonaws.com", +"s3-us-east-2.amazonaws.com", +"s3-us-west-1.amazonaws.com", +"s3-us-west-2.amazonaws.com", +"s3.ap-northeast-2.amazonaws.com", +"s3.ap-south-1.amazonaws.com", +"s3.cn-north-1.amazonaws.com.cn", +"s3.ca-central-1.amazonaws.com", +"s3.eu-central-1.amazonaws.com", +"s3.eu-west-2.amazonaws.com", +"s3.eu-west-3.amazonaws.com", +"s3.us-east-2.amazonaws.com", +"s3.dualstack.ap-northeast-1.amazonaws.com", +"s3.dualstack.ap-northeast-2.amazonaws.com", +"s3.dualstack.ap-south-1.amazonaws.com", +"s3.dualstack.ap-southeast-1.amazonaws.com", +"s3.dualstack.ap-southeast-2.amazonaws.com", +"s3.dualstack.ca-central-1.amazonaws.com", +"s3.dualstack.eu-central-1.amazonaws.com", +"s3.dualstack.eu-west-1.amazonaws.com", +"s3.dualstack.eu-west-2.amazonaws.com", +"s3.dualstack.eu-west-3.amazonaws.com", +"s3.dualstack.sa-east-1.amazonaws.com", +"s3.dualstack.us-east-1.amazonaws.com", +"s3.dualstack.us-east-2.amazonaws.com", +"s3-website-us-east-1.amazonaws.com", +"s3-website-us-west-1.amazonaws.com", +"s3-website-us-west-2.amazonaws.com", +"s3-website-ap-northeast-1.amazonaws.com", +"s3-website-ap-southeast-1.amazonaws.com", +"s3-website-ap-southeast-2.amazonaws.com", +"s3-website-eu-west-1.amazonaws.com", +"s3-website-sa-east-1.amazonaws.com", +"s3-website.ap-northeast-2.amazonaws.com", +"s3-website.ap-south-1.amazonaws.com", +"s3-website.ca-central-1.amazonaws.com", +"s3-website.eu-central-1.amazonaws.com", +"s3-website.eu-west-2.amazonaws.com", +"s3-website.eu-west-3.amazonaws.com", +"s3-website.us-east-2.amazonaws.com", +"amsw.nl", +"t3l3p0rt.net", +"tele.amune.org", +"apigee.io", +"on-aptible.com", +"user.aseinet.ne.jp", +"gv.vc", +"d.gv.vc", +"user.party.eus", +"pimienta.org", +"poivron.org", +"potager.org", +"sweetpepper.org", +"myasustor.com", +"myfritz.net", +"*.awdev.ca", +"*.advisor.ws", +"b-data.io", +"backplaneapp.io", +"balena-devices.com", +"app.banzaicloud.io", +"betainabox.com", +"bnr.la", +"blackbaudcdn.net", +"boomla.net", +"boxfuse.io", +"square7.ch", +"bplaced.com", +"bplaced.de", +"square7.de", +"bplaced.net", +"square7.net", +"browsersafetymark.io", +"uk0.bigv.io", +"dh.bytemark.co.uk", +"vm.bytemark.co.uk", +"mycd.eu", +"carrd.co", +"crd.co", +"uwu.ai", +"ae.org", +"ar.com", +"br.com", +"cn.com", +"com.de", +"com.se", +"de.com", +"eu.com", +"gb.com", +"gb.net", +"hu.com", +"hu.net", +"jp.net", +"jpn.com", +"kr.com", +"mex.com", +"no.com", +"qc.com", +"ru.com", +"sa.com", +"se.net", +"uk.com", +"uk.net", +"us.com", +"uy.com", +"za.bz", +"za.com", +"africa.com", +"gr.com", +"in.net", +"us.org", +"co.com", +"c.la", +"certmgr.org", +"xenapponazure.com", +"discourse.group", +"discourse.team", +"virtueeldomein.nl", +"cleverapps.io", +"*.lcl.dev", +"*.stg.dev", +"c66.me", +"cloud66.ws", +"cloud66.zone", +"jdevcloud.com", +"wpdevcloud.com", +"cloudaccess.host", +"freesite.host", +"cloudaccess.net", +"cloudcontrolled.com", +"cloudcontrolapp.com", +"cloudera.site", +"trycloudflare.com", +"workers.dev", +"wnext.app", +"co.ca", +"*.otap.co", +"co.cz", +"c.cdn77.org", +"cdn77-ssl.net", +"r.cdn77.net", +"rsc.cdn77.org", +"ssl.origin.cdn77-secure.org", +"cloudns.asia", +"cloudns.biz", +"cloudns.club", +"cloudns.cc", +"cloudns.eu", +"cloudns.in", +"cloudns.info", +"cloudns.org", +"cloudns.pro", +"cloudns.pw", +"cloudns.us", +"cloudeity.net", +"cnpy.gdn", +"co.nl", +"co.no", +"webhosting.be", +"hosting-cluster.nl", +"ac.ru", +"edu.ru", +"gov.ru", +"int.ru", +"mil.ru", +"test.ru", +"dyn.cosidns.de", +"dynamisches-dns.de", +"dnsupdater.de", +"internet-dns.de", +"l-o-g-i-n.de", +"dynamic-dns.info", +"feste-ip.net", +"knx-server.net", +"static-access.net", +"realm.cz", +"*.cryptonomic.net", +"cupcake.is", +"*.customer-oci.com", +"*.oci.customer-oci.com", +"*.ocp.customer-oci.com", +"*.ocs.customer-oci.com", +"cyon.link", +"cyon.site", +"daplie.me", +"localhost.daplie.me", +"dattolocal.com", +"dattorelay.com", +"dattoweb.com", +"mydatto.com", +"dattolocal.net", +"mydatto.net", +"biz.dk", +"co.dk", +"firm.dk", +"reg.dk", +"store.dk", +"*.dapps.earth", +"*.bzz.dapps.earth", +"builtwithdark.com", +"edgestack.me", +"debian.net", +"dedyn.io", +"dnshome.de", +"online.th", +"shop.th", +"drayddns.com", +"dreamhosters.com", +"mydrobo.com", +"drud.io", +"drud.us", +"duckdns.org", +"dy.fi", +"tunk.org", +"dyndns-at-home.com", +"dyndns-at-work.com", +"dyndns-blog.com", +"dyndns-free.com", +"dyndns-home.com", +"dyndns-ip.com", +"dyndns-mail.com", +"dyndns-office.com", +"dyndns-pics.com", +"dyndns-remote.com", +"dyndns-server.com", +"dyndns-web.com", +"dyndns-wiki.com", +"dyndns-work.com", +"dyndns.biz", +"dyndns.info", +"dyndns.org", +"dyndns.tv", +"at-band-camp.net", +"ath.cx", +"barrel-of-knowledge.info", +"barrell-of-knowledge.info", +"better-than.tv", +"blogdns.com", +"blogdns.net", +"blogdns.org", +"blogsite.org", +"boldlygoingnowhere.org", +"broke-it.net", +"buyshouses.net", +"cechire.com", +"dnsalias.com", +"dnsalias.net", +"dnsalias.org", +"dnsdojo.com", +"dnsdojo.net", +"dnsdojo.org", +"does-it.net", +"doesntexist.com", +"doesntexist.org", +"dontexist.com", +"dontexist.net", +"dontexist.org", +"doomdns.com", +"doomdns.org", +"dvrdns.org", +"dyn-o-saur.com", +"dynalias.com", +"dynalias.net", +"dynalias.org", +"dynathome.net", +"dyndns.ws", +"endofinternet.net", +"endofinternet.org", +"endoftheinternet.org", +"est-a-la-maison.com", +"est-a-la-masion.com", +"est-le-patron.com", +"est-mon-blogueur.com", +"for-better.biz", +"for-more.biz", +"for-our.info", +"for-some.biz", +"for-the.biz", +"forgot.her.name", +"forgot.his.name", +"from-ak.com", +"from-al.com", +"from-ar.com", +"from-az.net", +"from-ca.com", +"from-co.net", +"from-ct.com", +"from-dc.com", +"from-de.com", +"from-fl.com", +"from-ga.com", +"from-hi.com", +"from-ia.com", +"from-id.com", +"from-il.com", +"from-in.com", +"from-ks.com", +"from-ky.com", +"from-la.net", +"from-ma.com", +"from-md.com", +"from-me.org", +"from-mi.com", +"from-mn.com", +"from-mo.com", +"from-ms.com", +"from-mt.com", +"from-nc.com", +"from-nd.com", +"from-ne.com", +"from-nh.com", +"from-nj.com", +"from-nm.com", +"from-nv.com", +"from-ny.net", +"from-oh.com", +"from-ok.com", +"from-or.com", +"from-pa.com", +"from-pr.com", +"from-ri.com", +"from-sc.com", +"from-sd.com", +"from-tn.com", +"from-tx.com", +"from-ut.com", +"from-va.com", +"from-vt.com", +"from-wa.com", +"from-wi.com", +"from-wv.com", +"from-wy.com", +"ftpaccess.cc", +"fuettertdasnetz.de", +"game-host.org", +"game-server.cc", +"getmyip.com", +"gets-it.net", +"go.dyndns.org", +"gotdns.com", +"gotdns.org", +"groks-the.info", +"groks-this.info", +"ham-radio-op.net", +"here-for-more.info", +"hobby-site.com", +"hobby-site.org", +"home.dyndns.org", +"homedns.org", +"homeftp.net", +"homeftp.org", +"homeip.net", +"homelinux.com", +"homelinux.net", +"homelinux.org", +"homeunix.com", +"homeunix.net", +"homeunix.org", +"iamallama.com", +"in-the-band.net", +"is-a-anarchist.com", +"is-a-blogger.com", +"is-a-bookkeeper.com", +"is-a-bruinsfan.org", +"is-a-bulls-fan.com", +"is-a-candidate.org", +"is-a-caterer.com", +"is-a-celticsfan.org", +"is-a-chef.com", +"is-a-chef.net", +"is-a-chef.org", +"is-a-conservative.com", +"is-a-cpa.com", +"is-a-cubicle-slave.com", +"is-a-democrat.com", +"is-a-designer.com", +"is-a-doctor.com", +"is-a-financialadvisor.com", +"is-a-geek.com", +"is-a-geek.net", +"is-a-geek.org", +"is-a-green.com", +"is-a-guru.com", +"is-a-hard-worker.com", +"is-a-hunter.com", +"is-a-knight.org", +"is-a-landscaper.com", +"is-a-lawyer.com", +"is-a-liberal.com", +"is-a-libertarian.com", +"is-a-linux-user.org", +"is-a-llama.com", +"is-a-musician.com", +"is-a-nascarfan.com", +"is-a-nurse.com", +"is-a-painter.com", +"is-a-patsfan.org", +"is-a-personaltrainer.com", +"is-a-photographer.com", +"is-a-player.com", +"is-a-republican.com", +"is-a-rockstar.com", +"is-a-socialist.com", +"is-a-soxfan.org", +"is-a-student.com", +"is-a-teacher.com", +"is-a-techie.com", +"is-a-therapist.com", +"is-an-accountant.com", +"is-an-actor.com", +"is-an-actress.com", +"is-an-anarchist.com", +"is-an-artist.com", +"is-an-engineer.com", +"is-an-entertainer.com", +"is-by.us", +"is-certified.com", +"is-found.org", +"is-gone.com", +"is-into-anime.com", +"is-into-cars.com", +"is-into-cartoons.com", +"is-into-games.com", +"is-leet.com", +"is-lost.org", +"is-not-certified.com", +"is-saved.org", +"is-slick.com", +"is-uberleet.com", +"is-very-bad.org", +"is-very-evil.org", +"is-very-good.org", +"is-very-nice.org", +"is-very-sweet.org", +"is-with-theband.com", +"isa-geek.com", +"isa-geek.net", +"isa-geek.org", +"isa-hockeynut.com", +"issmarterthanyou.com", +"isteingeek.de", +"istmein.de", +"kicks-ass.net", +"kicks-ass.org", +"knowsitall.info", +"land-4-sale.us", +"lebtimnetz.de", +"leitungsen.de", +"likes-pie.com", +"likescandy.com", +"merseine.nu", +"mine.nu", +"misconfused.org", +"mypets.ws", +"myphotos.cc", +"neat-url.com", +"office-on-the.net", +"on-the-web.tv", +"podzone.net", +"podzone.org", +"readmyblog.org", +"saves-the-whales.com", +"scrapper-site.net", +"scrapping.cc", +"selfip.biz", +"selfip.com", +"selfip.info", +"selfip.net", +"selfip.org", +"sells-for-less.com", +"sells-for-u.com", +"sells-it.net", +"sellsyourhome.org", +"servebbs.com", +"servebbs.net", +"servebbs.org", +"serveftp.net", +"serveftp.org", +"servegame.org", +"shacknet.nu", +"simple-url.com", +"space-to-rent.com", +"stuff-4-sale.org", +"stuff-4-sale.us", +"teaches-yoga.com", +"thruhere.net", +"traeumtgerade.de", +"webhop.biz", +"webhop.info", +"webhop.net", +"webhop.org", +"worse-than.tv", +"writesthisblog.com", +"ddnss.de", +"dyn.ddnss.de", +"dyndns.ddnss.de", +"dyndns1.de", +"dyn-ip24.de", +"home-webserver.de", +"dyn.home-webserver.de", +"myhome-server.de", +"ddnss.org", +"definima.net", +"definima.io", +"bci.dnstrace.pro", +"ddnsfree.com", +"ddnsgeek.com", +"giize.com", +"gleeze.com", +"kozow.com", +"loseyourip.com", +"ooguy.com", +"theworkpc.com", +"casacam.net", +"dynu.net", +"accesscam.org", +"camdvr.org", +"freeddns.org", +"mywire.org", +"webredirect.org", +"myddns.rocks", +"blogsite.xyz", +"dynv6.net", +"e4.cz", +"en-root.fr", +"mytuleap.com", +"onred.one", +"staging.onred.one", +"enonic.io", +"customer.enonic.io", +"eu.org", +"al.eu.org", +"asso.eu.org", +"at.eu.org", +"au.eu.org", +"be.eu.org", +"bg.eu.org", +"ca.eu.org", +"cd.eu.org", +"ch.eu.org", +"cn.eu.org", +"cy.eu.org", +"cz.eu.org", +"de.eu.org", +"dk.eu.org", +"edu.eu.org", +"ee.eu.org", +"es.eu.org", +"fi.eu.org", +"fr.eu.org", +"gr.eu.org", +"hr.eu.org", +"hu.eu.org", +"ie.eu.org", +"il.eu.org", +"in.eu.org", +"int.eu.org", +"is.eu.org", +"it.eu.org", +"jp.eu.org", +"kr.eu.org", +"lt.eu.org", +"lu.eu.org", +"lv.eu.org", +"mc.eu.org", +"me.eu.org", +"mk.eu.org", +"mt.eu.org", +"my.eu.org", +"net.eu.org", +"ng.eu.org", +"nl.eu.org", +"no.eu.org", +"nz.eu.org", +"paris.eu.org", +"pl.eu.org", +"pt.eu.org", +"q-a.eu.org", +"ro.eu.org", +"ru.eu.org", +"se.eu.org", +"si.eu.org", +"sk.eu.org", +"tr.eu.org", +"uk.eu.org", +"us.eu.org", +"eu-1.evennode.com", +"eu-2.evennode.com", +"eu-3.evennode.com", +"eu-4.evennode.com", +"us-1.evennode.com", +"us-2.evennode.com", +"us-3.evennode.com", +"us-4.evennode.com", +"twmail.cc", +"twmail.net", +"twmail.org", +"mymailer.com.tw", +"url.tw", +"apps.fbsbx.com", +"ru.net", +"adygeya.ru", +"bashkiria.ru", +"bir.ru", +"cbg.ru", +"com.ru", +"dagestan.ru", +"grozny.ru", +"kalmykia.ru", +"kustanai.ru", +"marine.ru", +"mordovia.ru", +"msk.ru", +"mytis.ru", +"nalchik.ru", +"nov.ru", +"pyatigorsk.ru", +"spb.ru", +"vladikavkaz.ru", +"vladimir.ru", +"abkhazia.su", +"adygeya.su", +"aktyubinsk.su", +"arkhangelsk.su", +"armenia.su", +"ashgabad.su", +"azerbaijan.su", +"balashov.su", +"bashkiria.su", +"bryansk.su", +"bukhara.su", +"chimkent.su", +"dagestan.su", +"east-kazakhstan.su", +"exnet.su", +"georgia.su", +"grozny.su", +"ivanovo.su", +"jambyl.su", +"kalmykia.su", +"kaluga.su", +"karacol.su", +"karaganda.su", +"karelia.su", +"khakassia.su", +"krasnodar.su", +"kurgan.su", +"kustanai.su", +"lenug.su", +"mangyshlak.su", +"mordovia.su", +"msk.su", +"murmansk.su", +"nalchik.su", +"navoi.su", +"north-kazakhstan.su", +"nov.su", +"obninsk.su", +"penza.su", +"pokrovsk.su", +"sochi.su", +"spb.su", +"tashkent.su", +"termez.su", +"togliatti.su", +"troitsk.su", +"tselinograd.su", +"tula.su", +"tuva.su", +"vladikavkaz.su", +"vladimir.su", +"vologda.su", +"channelsdvr.net", +"u.channelsdvr.net", +"fastly-terrarium.com", +"fastlylb.net", +"map.fastlylb.net", +"freetls.fastly.net", +"map.fastly.net", +"a.prod.fastly.net", +"global.prod.fastly.net", +"a.ssl.fastly.net", +"b.ssl.fastly.net", +"global.ssl.fastly.net", +"fastpanel.direct", +"fastvps-server.com", +"fhapp.xyz", +"fedorainfracloud.org", +"fedorapeople.org", +"cloud.fedoraproject.org", +"app.os.fedoraproject.org", +"app.os.stg.fedoraproject.org", +"mydobiss.com", +"filegear.me", +"filegear-au.me", +"filegear-de.me", +"filegear-gb.me", +"filegear-ie.me", +"filegear-jp.me", +"filegear-sg.me", +"firebaseapp.com", +"flynnhub.com", +"flynnhosting.net", +"0e.vc", +"freebox-os.com", +"freeboxos.com", +"fbx-os.fr", +"fbxos.fr", +"freebox-os.fr", +"freeboxos.fr", +"freedesktop.org", +"*.futurecms.at", +"*.ex.futurecms.at", +"*.in.futurecms.at", +"futurehosting.at", +"futuremailing.at", +"*.ex.ortsinfo.at", +"*.kunden.ortsinfo.at", +"*.statics.cloud", +"service.gov.uk", +"gehirn.ne.jp", +"usercontent.jp", +"gentapps.com", +"lab.ms", +"github.io", +"githubusercontent.com", +"gitlab.io", +"glitch.me", +"lolipop.io", +"cloudapps.digital", +"london.cloudapps.digital", +"homeoffice.gov.uk", +"ro.im", +"shop.ro", +"goip.de", +"run.app", +"a.run.app", +"web.app", +"*.0emm.com", +"appspot.com", +"*.r.appspot.com", +"blogspot.ae", +"blogspot.al", +"blogspot.am", +"blogspot.ba", +"blogspot.be", +"blogspot.bg", +"blogspot.bj", +"blogspot.ca", +"blogspot.cf", +"blogspot.ch", +"blogspot.cl", +"blogspot.co.at", +"blogspot.co.id", +"blogspot.co.il", +"blogspot.co.ke", +"blogspot.co.nz", +"blogspot.co.uk", +"blogspot.co.za", +"blogspot.com", +"blogspot.com.ar", +"blogspot.com.au", +"blogspot.com.br", +"blogspot.com.by", +"blogspot.com.co", +"blogspot.com.cy", +"blogspot.com.ee", +"blogspot.com.eg", +"blogspot.com.es", +"blogspot.com.mt", +"blogspot.com.ng", +"blogspot.com.tr", +"blogspot.com.uy", +"blogspot.cv", +"blogspot.cz", +"blogspot.de", +"blogspot.dk", +"blogspot.fi", +"blogspot.fr", +"blogspot.gr", +"blogspot.hk", +"blogspot.hr", +"blogspot.hu", +"blogspot.ie", +"blogspot.in", +"blogspot.is", +"blogspot.it", +"blogspot.jp", +"blogspot.kr", +"blogspot.li", +"blogspot.lt", +"blogspot.lu", +"blogspot.md", +"blogspot.mk", +"blogspot.mr", +"blogspot.mx", +"blogspot.my", +"blogspot.nl", +"blogspot.no", +"blogspot.pe", +"blogspot.pt", +"blogspot.qa", +"blogspot.re", +"blogspot.ro", +"blogspot.rs", +"blogspot.ru", +"blogspot.se", +"blogspot.sg", +"blogspot.si", +"blogspot.sk", +"blogspot.sn", +"blogspot.td", +"blogspot.tw", +"blogspot.ug", +"blogspot.vn", +"cloudfunctions.net", +"cloud.goog", +"codespot.com", +"googleapis.com", +"googlecode.com", +"pagespeedmobilizer.com", +"publishproxy.com", +"withgoogle.com", +"withyoutube.com", +"awsmppl.com", +"fin.ci", +"free.hr", +"caa.li", +"ua.rs", +"conf.se", +"hs.zone", +"hs.run", +"hashbang.sh", +"hasura.app", +"hasura-app.io", +"hepforge.org", +"herokuapp.com", +"herokussl.com", +"myravendb.com", +"ravendb.community", +"ravendb.me", +"development.run", +"ravendb.run", +"bpl.biz", +"orx.biz", +"ng.city", +"biz.gl", +"ng.ink", +"col.ng", +"firm.ng", +"gen.ng", +"ltd.ng", +"ngo.ng", +"ng.school", +"sch.so", +"häkkinen.fi", +"*.moonscale.io", +"moonscale.net", +"iki.fi", +"dyn-berlin.de", +"in-berlin.de", +"in-brb.de", +"in-butter.de", +"in-dsl.de", +"in-dsl.net", +"in-dsl.org", +"in-vpn.de", +"in-vpn.net", +"in-vpn.org", +"biz.at", +"info.at", +"info.cx", +"ac.leg.br", +"al.leg.br", +"am.leg.br", +"ap.leg.br", +"ba.leg.br", +"ce.leg.br", +"df.leg.br", +"es.leg.br", +"go.leg.br", +"ma.leg.br", +"mg.leg.br", +"ms.leg.br", +"mt.leg.br", +"pa.leg.br", +"pb.leg.br", +"pe.leg.br", +"pi.leg.br", +"pr.leg.br", +"rj.leg.br", +"rn.leg.br", +"ro.leg.br", +"rr.leg.br", +"rs.leg.br", +"sc.leg.br", +"se.leg.br", +"sp.leg.br", +"to.leg.br", +"pixolino.com", +"ipifony.net", +"mein-iserv.de", +"test-iserv.de", +"iserv.dev", +"iobb.net", +"myjino.ru", +"*.hosting.myjino.ru", +"*.landing.myjino.ru", +"*.spectrum.myjino.ru", +"*.vps.myjino.ru", +"*.triton.zone", +"*.cns.joyent.com", +"js.org", +"kaas.gg", +"khplay.nl", +"keymachine.de", +"kinghost.net", +"uni5.net", +"knightpoint.systems", +"oya.to", +"co.krd", +"edu.krd", +"git-repos.de", +"lcube-server.de", +"svn-repos.de", +"leadpages.co", +"lpages.co", +"lpusercontent.com", +"lelux.site", +"co.business", +"co.education", +"co.events", +"co.financial", +"co.network", +"co.place", +"co.technology", +"app.lmpm.com", +"linkitools.space", +"linkyard.cloud", +"linkyard-cloud.ch", +"members.linode.com", +"nodebalancer.linode.com", +"we.bs", +"loginline.app", +"loginline.dev", +"loginline.io", +"loginline.services", +"loginline.site", +"krasnik.pl", +"leczna.pl", +"lubartow.pl", +"lublin.pl", +"poniatowa.pl", +"swidnik.pl", +"uklugs.org", +"glug.org.uk", +"lug.org.uk", +"lugs.org.uk", +"barsy.bg", +"barsy.co.uk", +"barsyonline.co.uk", +"barsycenter.com", +"barsyonline.com", +"barsy.club", +"barsy.de", +"barsy.eu", +"barsy.in", +"barsy.info", +"barsy.io", +"barsy.me", +"barsy.menu", +"barsy.mobi", +"barsy.net", +"barsy.online", +"barsy.org", +"barsy.pro", +"barsy.pub", +"barsy.shop", +"barsy.site", +"barsy.support", +"barsy.uk", +"*.magentosite.cloud", +"mayfirst.info", +"mayfirst.org", +"hb.cldmail.ru", +"miniserver.com", +"memset.net", +"cloud.metacentrum.cz", +"custom.metacentrum.cz", +"flt.cloud.muni.cz", +"usr.cloud.muni.cz", +"meteorapp.com", +"eu.meteorapp.com", +"co.pl", +"azurecontainer.io", +"azurewebsites.net", +"azure-mobile.net", +"cloudapp.net", +"mozilla-iot.org", +"bmoattachments.org", +"net.ru", +"org.ru", +"pp.ru", +"ui.nabu.casa", +"pony.club", +"of.fashion", +"on.fashion", +"of.football", +"in.london", +"of.london", +"for.men", +"and.mom", +"for.mom", +"for.one", +"for.sale", +"of.work", +"to.work", +"nctu.me", +"bitballoon.com", +"netlify.com", +"4u.com", +"ngrok.io", +"nh-serv.co.uk", +"nfshost.com", +"dnsking.ch", +"mypi.co", +"n4t.co", +"001www.com", +"ddnslive.com", +"myiphost.com", +"forumz.info", +"16-b.it", +"32-b.it", +"64-b.it", +"soundcast.me", +"tcp4.me", +"dnsup.net", +"hicam.net", +"now-dns.net", +"ownip.net", +"vpndns.net", +"dynserv.org", +"now-dns.org", +"x443.pw", +"now-dns.top", +"ntdll.top", +"freeddns.us", +"crafting.xyz", +"zapto.xyz", +"nsupdate.info", +"nerdpol.ovh", +"blogsyte.com", +"brasilia.me", +"cable-modem.org", +"ciscofreak.com", +"collegefan.org", +"couchpotatofries.org", +"damnserver.com", +"ddns.me", +"ditchyourip.com", +"dnsfor.me", +"dnsiskinky.com", +"dvrcam.info", +"dynns.com", +"eating-organic.net", +"fantasyleague.cc", +"geekgalaxy.com", +"golffan.us", +"health-carereform.com", +"homesecuritymac.com", +"homesecuritypc.com", +"hopto.me", +"ilovecollege.info", +"loginto.me", +"mlbfan.org", +"mmafan.biz", +"myactivedirectory.com", +"mydissent.net", +"myeffect.net", +"mymediapc.net", +"mypsx.net", +"mysecuritycamera.com", +"mysecuritycamera.net", +"mysecuritycamera.org", +"net-freaks.com", +"nflfan.org", +"nhlfan.net", +"no-ip.ca", +"no-ip.co.uk", +"no-ip.net", +"noip.us", +"onthewifi.com", +"pgafan.net", +"point2this.com", +"pointto.us", +"privatizehealthinsurance.net", +"quicksytes.com", +"read-books.org", +"securitytactics.com", +"serveexchange.com", +"servehumour.com", +"servep2p.com", +"servesarcasm.com", +"stufftoread.com", +"ufcfan.org", +"unusualperson.com", +"workisboring.com", +"3utilities.com", +"bounceme.net", +"ddns.net", +"ddnsking.com", +"gotdns.ch", +"hopto.org", +"myftp.biz", +"myftp.org", +"myvnc.com", +"no-ip.biz", +"no-ip.info", +"no-ip.org", +"noip.me", +"redirectme.net", +"servebeer.com", +"serveblog.net", +"servecounterstrike.com", +"serveftp.com", +"servegame.com", +"servehalflife.com", +"servehttp.com", +"serveirc.com", +"serveminecraft.net", +"servemp3.com", +"servepics.com", +"servequake.com", +"sytes.net", +"webhop.me", +"zapto.org", +"stage.nodeart.io", +"nodum.co", +"nodum.io", +"pcloud.host", +"nyc.mn", +"nom.ae", +"nom.af", +"nom.ai", +"nom.al", +"nym.by", +"nom.bz", +"nym.bz", +"nom.cl", +"nym.ec", +"nom.gd", +"nom.ge", +"nom.gl", +"nym.gr", +"nom.gt", +"nym.gy", +"nym.hk", +"nom.hn", +"nym.ie", +"nom.im", +"nom.ke", +"nym.kz", +"nym.la", +"nym.lc", +"nom.li", +"nym.li", +"nym.lt", +"nym.lu", +"nom.lv", +"nym.me", +"nom.mk", +"nym.mn", +"nym.mx", +"nom.nu", +"nym.nz", +"nym.pe", +"nym.pt", +"nom.pw", +"nom.qa", +"nym.ro", +"nom.rs", +"nom.si", +"nym.sk", +"nom.st", +"nym.su", +"nym.sx", +"nom.tj", +"nym.tw", +"nom.ug", +"nom.uy", +"nom.vc", +"nom.vg", +"static.observableusercontent.com", +"cya.gg", +"cloudycluster.net", +"nid.io", +"opencraft.hosting", +"operaunite.com", +"skygearapp.com", +"outsystemscloud.com", +"ownprovider.com", +"own.pm", +"ox.rs", +"oy.lc", +"pgfog.com", +"pagefrontapp.com", +"art.pl", +"gliwice.pl", +"krakow.pl", +"poznan.pl", +"wroc.pl", +"zakopane.pl", +"pantheonsite.io", +"gotpantheon.com", +"mypep.link", +"perspecta.cloud", +"on-web.fr", +"*.platform.sh", +"*.platformsh.site", +"dyn53.io", +"co.bn", +"xen.prgmr.com", +"priv.at", +"prvcy.page", +"*.dweb.link", +"protonet.io", +"chirurgiens-dentistes-en-france.fr", +"byen.site", +"pubtls.org", +"qualifioapp.com", +"qbuser.com", +"instantcloud.cn", +"ras.ru", +"qa2.com", +"qcx.io", +"*.sys.qcx.io", +"dev-myqnapcloud.com", +"alpha-myqnapcloud.com", +"myqnapcloud.com", +"*.quipelements.com", +"vapor.cloud", +"vaporcloud.io", +"rackmaze.com", +"rackmaze.net", +"*.on-k3s.io", +"*.on-rancher.cloud", +"*.on-rio.io", +"readthedocs.io", +"rhcloud.com", +"app.render.com", +"onrender.com", +"repl.co", +"repl.run", +"resindevice.io", +"devices.resinstaging.io", +"hzc.io", +"wellbeingzone.eu", +"ptplus.fit", +"wellbeingzone.co.uk", +"git-pages.rit.edu", +"sandcats.io", +"logoip.de", +"logoip.com", +"schokokeks.net", +"gov.scot", +"scrysec.com", +"firewall-gateway.com", +"firewall-gateway.de", +"my-gateway.de", +"my-router.de", +"spdns.de", +"spdns.eu", +"firewall-gateway.net", +"my-firewall.org", +"myfirewall.org", +"spdns.org", +"senseering.net", +"biz.ua", +"co.ua", +"pp.ua", +"shiftedit.io", +"myshopblocks.com", +"shopitsite.com", +"mo-siemens.io", +"1kapp.com", +"appchizi.com", +"applinzi.com", +"sinaapp.com", +"vipsinaapp.com", +"siteleaf.net", +"bounty-full.com", +"alpha.bounty-full.com", +"beta.bounty-full.com", +"stackhero-network.com", +"static.land", +"dev.static.land", +"sites.static.land", +"apps.lair.io", +"*.stolos.io", +"spacekit.io", +"customer.speedpartner.de", +"api.stdlib.com", +"storj.farm", +"utwente.io", +"soc.srcf.net", +"user.srcf.net", +"temp-dns.com", +"applicationcloud.io", +"scapp.io", +"*.s5y.io", +"*.sensiosite.cloud", +"syncloud.it", +"diskstation.me", +"dscloud.biz", +"dscloud.me", +"dscloud.mobi", +"dsmynas.com", +"dsmynas.net", +"dsmynas.org", +"familyds.com", +"familyds.net", +"familyds.org", +"i234.me", +"myds.me", +"synology.me", +"vpnplus.to", +"direct.quickconnect.to", +"taifun-dns.de", +"gda.pl", +"gdansk.pl", +"gdynia.pl", +"med.pl", +"sopot.pl", +"edugit.org", +"telebit.app", +"telebit.io", +"*.telebit.xyz", +"gwiddle.co.uk", +"thingdustdata.com", +"cust.dev.thingdust.io", +"cust.disrec.thingdust.io", +"cust.prod.thingdust.io", +"cust.testing.thingdust.io", +"arvo.network", +"azimuth.network", +"bloxcms.com", +"townnews-staging.com", +"12hp.at", +"2ix.at", +"4lima.at", +"lima-city.at", +"12hp.ch", +"2ix.ch", +"4lima.ch", +"lima-city.ch", +"trafficplex.cloud", +"de.cool", +"12hp.de", +"2ix.de", +"4lima.de", +"lima-city.de", +"1337.pictures", +"clan.rip", +"lima-city.rocks", +"webspace.rocks", +"lima.zone", +"*.transurl.be", +"*.transurl.eu", +"*.transurl.nl", +"tuxfamily.org", +"dd-dns.de", +"diskstation.eu", +"diskstation.org", +"dray-dns.de", +"draydns.de", +"dyn-vpn.de", +"dynvpn.de", +"mein-vigor.de", +"my-vigor.de", +"my-wan.de", +"syno-ds.de", +"synology-diskstation.de", +"synology-ds.de", +"uber.space", +"*.uberspace.de", +"hk.com", +"hk.org", +"ltd.hk", +"inc.hk", +"virtualuser.de", +"virtual-user.de", +"urown.cloud", +"dnsupdate.info", +"lib.de.us", +"2038.io", +"router.management", +"v-info.info", +"voorloper.cloud", +"v.ua", +"wafflecell.com", +"*.webhare.dev", +"wedeploy.io", +"wedeploy.me", +"wedeploy.sh", +"remotewd.com", +"wmflabs.org", +"myforum.community", +"community-pro.de", +"diskussionsbereich.de", +"community-pro.net", +"meinforum.net", +"half.host", +"xnbay.com", +"u2.xnbay.com", +"u2-local.xnbay.com", +"cistron.nl", +"demon.nl", +"xs4all.space", +"yandexcloud.net", +"storage.yandexcloud.net", +"website.yandexcloud.net", +"official.academy", +"yolasite.com", +"ybo.faith", +"yombo.me", +"homelink.one", +"ybo.party", +"ybo.review", +"ybo.science", +"ybo.trade", +"nohost.me", +"noho.st", +"za.net", +"za.org", +"now.sh", +"bss.design", +"basicserver.io", +"virtualserver.io", +"enterprisecloud.nu" +] \ No newline at end of file diff --git a/node_modules/psl/dist/psl.js b/node_modules/psl/dist/psl.js new file mode 100644 index 0000000..f4b9b89 --- /dev/null +++ b/node_modules/psl/dist/psl.js @@ -0,0 +1,9645 @@ +(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.psl = f()}})(function(){var define,module,exports;return (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i= punySuffix.length) { + // return memo; + // } + //} + return rule; + }, null); +}; + + +// +// Error codes and messages. +// +exports.errorCodes = { + DOMAIN_TOO_SHORT: 'Domain name too short.', + DOMAIN_TOO_LONG: 'Domain name too long. It should be no more than 255 chars.', + LABEL_STARTS_WITH_DASH: 'Domain name label can not start with a dash.', + LABEL_ENDS_WITH_DASH: 'Domain name label can not end with a dash.', + LABEL_TOO_LONG: 'Domain name label should be at most 63 chars long.', + LABEL_TOO_SHORT: 'Domain name label should be at least 1 character long.', + LABEL_INVALID_CHARS: 'Domain name label can only contain alphanumeric characters or dashes.' +}; + + +// +// Validate domain name and throw if not valid. +// +// From wikipedia: +// +// Hostnames are composed of series of labels concatenated with dots, as are all +// domain names. Each label must be between 1 and 63 characters long, and the +// entire hostname (including the delimiting dots) has a maximum of 255 chars. +// +// Allowed chars: +// +// * `a-z` +// * `0-9` +// * `-` but not as a starting or ending character +// * `.` as a separator for the textual portions of a domain name +// +// * http://en.wikipedia.org/wiki/Domain_name +// * http://en.wikipedia.org/wiki/Hostname +// +internals.validate = function (input) { + + // Before we can validate we need to take care of IDNs with unicode chars. + var ascii = Punycode.toASCII(input); + + if (ascii.length < 1) { + return 'DOMAIN_TOO_SHORT'; + } + if (ascii.length > 255) { + return 'DOMAIN_TOO_LONG'; + } + + // Check each part's length and allowed chars. + var labels = ascii.split('.'); + var label; + + for (var i = 0; i < labels.length; ++i) { + label = labels[i]; + if (!label.length) { + return 'LABEL_TOO_SHORT'; + } + if (label.length > 63) { + return 'LABEL_TOO_LONG'; + } + if (label.charAt(0) === '-') { + return 'LABEL_STARTS_WITH_DASH'; + } + if (label.charAt(label.length - 1) === '-') { + return 'LABEL_ENDS_WITH_DASH'; + } + if (!/^[a-z0-9\-]+$/.test(label)) { + return 'LABEL_INVALID_CHARS'; + } + } +}; + + +// +// Public API +// + + +// +// Parse domain. +// +exports.parse = function (input) { + + if (typeof input !== 'string') { + throw new TypeError('Domain name must be a string.'); + } + + // Force domain to lowercase. + var domain = input.slice(0).toLowerCase(); + + // Handle FQDN. + // TODO: Simply remove trailing dot? + if (domain.charAt(domain.length - 1) === '.') { + domain = domain.slice(0, domain.length - 1); + } + + // Validate and sanitise input. + var error = internals.validate(domain); + if (error) { + return { + input: input, + error: { + message: exports.errorCodes[error], + code: error + } + }; + } + + var parsed = { + input: input, + tld: null, + sld: null, + domain: null, + subdomain: null, + listed: false + }; + + var domainParts = domain.split('.'); + + // Non-Internet TLD + if (domainParts[domainParts.length - 1] === 'local') { + return parsed; + } + + var handlePunycode = function () { + + if (!/xn--/.test(domain)) { + return parsed; + } + if (parsed.domain) { + parsed.domain = Punycode.toASCII(parsed.domain); + } + if (parsed.subdomain) { + parsed.subdomain = Punycode.toASCII(parsed.subdomain); + } + return parsed; + }; + + var rule = internals.findRule(domain); + + // Unlisted tld. + if (!rule) { + if (domainParts.length < 2) { + return parsed; + } + parsed.tld = domainParts.pop(); + parsed.sld = domainParts.pop(); + parsed.domain = [parsed.sld, parsed.tld].join('.'); + if (domainParts.length) { + parsed.subdomain = domainParts.pop(); + } + return handlePunycode(); + } + + // At this point we know the public suffix is listed. + parsed.listed = true; + + var tldParts = rule.suffix.split('.'); + var privateParts = domainParts.slice(0, domainParts.length - tldParts.length); + + if (rule.exception) { + privateParts.push(tldParts.shift()); + } + + parsed.tld = tldParts.join('.'); + + if (!privateParts.length) { + return handlePunycode(); + } + + if (rule.wildcard) { + tldParts.unshift(privateParts.pop()); + parsed.tld = tldParts.join('.'); + } + + if (!privateParts.length) { + return handlePunycode(); + } + + parsed.sld = privateParts.pop(); + parsed.domain = [parsed.sld, parsed.tld].join('.'); + + if (privateParts.length) { + parsed.subdomain = privateParts.join('.'); + } + + return handlePunycode(); +}; + + +// +// Get domain. +// +exports.get = function (domain) { + + if (!domain) { + return null; + } + return exports.parse(domain).domain || null; +}; + + +// +// Check whether domain belongs to a known public suffix. +// +exports.isValid = function (domain) { + + var parsed = exports.parse(domain); + return Boolean(parsed.domain && parsed.listed); +}; + +},{"./data/rules.json":1,"punycode":3}],3:[function(require,module,exports){ +(function (global){ +/*! https://mths.be/punycode v1.4.1 by @mathias */ +;(function(root) { + + /** Detect free variables */ + var freeExports = typeof exports == 'object' && exports && + !exports.nodeType && exports; + var freeModule = typeof module == 'object' && module && + !module.nodeType && module; + var freeGlobal = typeof global == 'object' && global; + if ( + freeGlobal.global === freeGlobal || + freeGlobal.window === freeGlobal || + freeGlobal.self === freeGlobal + ) { + root = freeGlobal; + } + + /** + * The `punycode` object. + * @name punycode + * @type Object + */ + var punycode, + + /** Highest positive signed 32-bit float value */ + maxInt = 2147483647, // aka. 0x7FFFFFFF or 2^31-1 + + /** Bootstring parameters */ + base = 36, + tMin = 1, + tMax = 26, + skew = 38, + damp = 700, + initialBias = 72, + initialN = 128, // 0x80 + delimiter = '-', // '\x2D' + + /** Regular expressions */ + regexPunycode = /^xn--/, + regexNonASCII = /[^\x20-\x7E]/, // unprintable ASCII chars + non-ASCII chars + regexSeparators = /[\x2E\u3002\uFF0E\uFF61]/g, // RFC 3490 separators + + /** Error messages */ + errors = { + 'overflow': 'Overflow: input needs wider integers to process', + 'not-basic': 'Illegal input >= 0x80 (not a basic code point)', + 'invalid-input': 'Invalid input' + }, + + /** Convenience shortcuts */ + baseMinusTMin = base - tMin, + floor = Math.floor, + stringFromCharCode = String.fromCharCode, + + /** Temporary variable */ + key; + + /*--------------------------------------------------------------------------*/ + + /** + * A generic error utility function. + * @private + * @param {String} type The error type. + * @returns {Error} Throws a `RangeError` with the applicable error message. + */ + function error(type) { + throw new RangeError(errors[type]); + } + + /** + * A generic `Array#map` utility function. + * @private + * @param {Array} array The array to iterate over. + * @param {Function} callback The function that gets called for every array + * item. + * @returns {Array} A new array of values returned by the callback function. + */ + function map(array, fn) { + var length = array.length; + var result = []; + while (length--) { + result[length] = fn(array[length]); + } + return result; + } + + /** + * A simple `Array#map`-like wrapper to work with domain name strings or email + * addresses. + * @private + * @param {String} domain The domain name or email address. + * @param {Function} callback The function that gets called for every + * character. + * @returns {Array} A new string of characters returned by the callback + * function. + */ + function mapDomain(string, fn) { + var parts = string.split('@'); + var result = ''; + if (parts.length > 1) { + // In email addresses, only the domain name should be punycoded. Leave + // the local part (i.e. everything up to `@`) intact. + result = parts[0] + '@'; + string = parts[1]; + } + // Avoid `split(regex)` for IE8 compatibility. See #17. + string = string.replace(regexSeparators, '\x2E'); + var labels = string.split('.'); + var encoded = map(labels, fn).join('.'); + return result + encoded; + } + + /** + * Creates an array containing the numeric code points of each Unicode + * character in the string. While JavaScript uses UCS-2 internally, + * this function will convert a pair of surrogate halves (each of which + * UCS-2 exposes as separate characters) into a single code point, + * matching UTF-16. + * @see `punycode.ucs2.encode` + * @see + * @memberOf punycode.ucs2 + * @name decode + * @param {String} string The Unicode input string (UCS-2). + * @returns {Array} The new array of code points. + */ + function ucs2decode(string) { + var output = [], + counter = 0, + length = string.length, + value, + extra; + while (counter < length) { + value = string.charCodeAt(counter++); + if (value >= 0xD800 && value <= 0xDBFF && counter < length) { + // high surrogate, and there is a next character + extra = string.charCodeAt(counter++); + if ((extra & 0xFC00) == 0xDC00) { // low surrogate + output.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000); + } else { + // unmatched surrogate; only append this code unit, in case the next + // code unit is the high surrogate of a surrogate pair + output.push(value); + counter--; + } + } else { + output.push(value); + } + } + return output; + } + + /** + * Creates a string based on an array of numeric code points. + * @see `punycode.ucs2.decode` + * @memberOf punycode.ucs2 + * @name encode + * @param {Array} codePoints The array of numeric code points. + * @returns {String} The new Unicode string (UCS-2). + */ + function ucs2encode(array) { + return map(array, function(value) { + var output = ''; + if (value > 0xFFFF) { + value -= 0x10000; + output += stringFromCharCode(value >>> 10 & 0x3FF | 0xD800); + value = 0xDC00 | value & 0x3FF; + } + output += stringFromCharCode(value); + return output; + }).join(''); + } + + /** + * Converts a basic code point into a digit/integer. + * @see `digitToBasic()` + * @private + * @param {Number} codePoint The basic numeric code point value. + * @returns {Number} The numeric value of a basic code point (for use in + * representing integers) in the range `0` to `base - 1`, or `base` if + * the code point does not represent a value. + */ + function basicToDigit(codePoint) { + if (codePoint - 48 < 10) { + return codePoint - 22; + } + if (codePoint - 65 < 26) { + return codePoint - 65; + } + if (codePoint - 97 < 26) { + return codePoint - 97; + } + return base; + } + + /** + * Converts a digit/integer into a basic code point. + * @see `basicToDigit()` + * @private + * @param {Number} digit The numeric value of a basic code point. + * @returns {Number} The basic code point whose value (when used for + * representing integers) is `digit`, which needs to be in the range + * `0` to `base - 1`. If `flag` is non-zero, the uppercase form is + * used; else, the lowercase form is used. The behavior is undefined + * if `flag` is non-zero and `digit` has no uppercase form. + */ + function digitToBasic(digit, flag) { + // 0..25 map to ASCII a..z or A..Z + // 26..35 map to ASCII 0..9 + return digit + 22 + 75 * (digit < 26) - ((flag != 0) << 5); + } + + /** + * Bias adaptation function as per section 3.4 of RFC 3492. + * https://tools.ietf.org/html/rfc3492#section-3.4 + * @private + */ + function adapt(delta, numPoints, firstTime) { + var k = 0; + delta = firstTime ? floor(delta / damp) : delta >> 1; + delta += floor(delta / numPoints); + for (/* no initialization */; delta > baseMinusTMin * tMax >> 1; k += base) { + delta = floor(delta / baseMinusTMin); + } + return floor(k + (baseMinusTMin + 1) * delta / (delta + skew)); + } + + /** + * Converts a Punycode string of ASCII-only symbols to a string of Unicode + * symbols. + * @memberOf punycode + * @param {String} input The Punycode string of ASCII-only symbols. + * @returns {String} The resulting string of Unicode symbols. + */ + function decode(input) { + // Don't use UCS-2 + var output = [], + inputLength = input.length, + out, + i = 0, + n = initialN, + bias = initialBias, + basic, + j, + index, + oldi, + w, + k, + digit, + t, + /** Cached calculation results */ + baseMinusT; + + // Handle the basic code points: let `basic` be the number of input code + // points before the last delimiter, or `0` if there is none, then copy + // the first basic code points to the output. + + basic = input.lastIndexOf(delimiter); + if (basic < 0) { + basic = 0; + } + + for (j = 0; j < basic; ++j) { + // if it's not a basic code point + if (input.charCodeAt(j) >= 0x80) { + error('not-basic'); + } + output.push(input.charCodeAt(j)); + } + + // Main decoding loop: start just after the last delimiter if any basic code + // points were copied; start at the beginning otherwise. + + for (index = basic > 0 ? basic + 1 : 0; index < inputLength; /* no final expression */) { + + // `index` is the index of the next character to be consumed. + // Decode a generalized variable-length integer into `delta`, + // which gets added to `i`. The overflow checking is easier + // if we increase `i` as we go, then subtract off its starting + // value at the end to obtain `delta`. + for (oldi = i, w = 1, k = base; /* no condition */; k += base) { + + if (index >= inputLength) { + error('invalid-input'); + } + + digit = basicToDigit(input.charCodeAt(index++)); + + if (digit >= base || digit > floor((maxInt - i) / w)) { + error('overflow'); + } + + i += digit * w; + t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias); + + if (digit < t) { + break; + } + + baseMinusT = base - t; + if (w > floor(maxInt / baseMinusT)) { + error('overflow'); + } + + w *= baseMinusT; + + } + + out = output.length + 1; + bias = adapt(i - oldi, out, oldi == 0); + + // `i` was supposed to wrap around from `out` to `0`, + // incrementing `n` each time, so we'll fix that now: + if (floor(i / out) > maxInt - n) { + error('overflow'); + } + + n += floor(i / out); + i %= out; + + // Insert `n` at position `i` of the output + output.splice(i++, 0, n); + + } + + return ucs2encode(output); + } + + /** + * Converts a string of Unicode symbols (e.g. a domain name label) to a + * Punycode string of ASCII-only symbols. + * @memberOf punycode + * @param {String} input The string of Unicode symbols. + * @returns {String} The resulting Punycode string of ASCII-only symbols. + */ + function encode(input) { + var n, + delta, + handledCPCount, + basicLength, + bias, + j, + m, + q, + k, + t, + currentValue, + output = [], + /** `inputLength` will hold the number of code points in `input`. */ + inputLength, + /** Cached calculation results */ + handledCPCountPlusOne, + baseMinusT, + qMinusT; + + // Convert the input in UCS-2 to Unicode + input = ucs2decode(input); + + // Cache the length + inputLength = input.length; + + // Initialize the state + n = initialN; + delta = 0; + bias = initialBias; + + // Handle the basic code points + for (j = 0; j < inputLength; ++j) { + currentValue = input[j]; + if (currentValue < 0x80) { + output.push(stringFromCharCode(currentValue)); + } + } + + handledCPCount = basicLength = output.length; + + // `handledCPCount` is the number of code points that have been handled; + // `basicLength` is the number of basic code points. + + // Finish the basic string - if it is not empty - with a delimiter + if (basicLength) { + output.push(delimiter); + } + + // Main encoding loop: + while (handledCPCount < inputLength) { + + // All non-basic code points < n have been handled already. Find the next + // larger one: + for (m = maxInt, j = 0; j < inputLength; ++j) { + currentValue = input[j]; + if (currentValue >= n && currentValue < m) { + m = currentValue; + } + } + + // Increase `delta` enough to advance the decoder's state to , + // but guard against overflow + handledCPCountPlusOne = handledCPCount + 1; + if (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) { + error('overflow'); + } + + delta += (m - n) * handledCPCountPlusOne; + n = m; + + for (j = 0; j < inputLength; ++j) { + currentValue = input[j]; + + if (currentValue < n && ++delta > maxInt) { + error('overflow'); + } + + if (currentValue == n) { + // Represent delta as a generalized variable-length integer + for (q = delta, k = base; /* no condition */; k += base) { + t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias); + if (q < t) { + break; + } + qMinusT = q - t; + baseMinusT = base - t; + output.push( + stringFromCharCode(digitToBasic(t + qMinusT % baseMinusT, 0)) + ); + q = floor(qMinusT / baseMinusT); + } + + output.push(stringFromCharCode(digitToBasic(q, 0))); + bias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength); + delta = 0; + ++handledCPCount; + } + } + + ++delta; + ++n; + + } + return output.join(''); + } + + /** + * Converts a Punycode string representing a domain name or an email address + * to Unicode. Only the Punycoded parts of the input will be converted, i.e. + * it doesn't matter if you call it on a string that has already been + * converted to Unicode. + * @memberOf punycode + * @param {String} input The Punycoded domain name or email address to + * convert to Unicode. + * @returns {String} The Unicode representation of the given Punycode + * string. + */ + function toUnicode(input) { + return mapDomain(input, function(string) { + return regexPunycode.test(string) + ? decode(string.slice(4).toLowerCase()) + : string; + }); + } + + /** + * Converts a Unicode string representing a domain name or an email address to + * Punycode. Only the non-ASCII parts of the domain name will be converted, + * i.e. it doesn't matter if you call it with a domain that's already in + * ASCII. + * @memberOf punycode + * @param {String} input The domain name or email address to convert, as a + * Unicode string. + * @returns {String} The Punycode representation of the given domain name or + * email address. + */ + function toASCII(input) { + return mapDomain(input, function(string) { + return regexNonASCII.test(string) + ? 'xn--' + encode(string) + : string; + }); + } + + /*--------------------------------------------------------------------------*/ + + /** Define the public API */ + punycode = { + /** + * A string representing the current Punycode.js version number. + * @memberOf punycode + * @type String + */ + 'version': '1.4.1', + /** + * An object of methods to convert from JavaScript's internal character + * representation (UCS-2) to Unicode code points, and back. + * @see + * @memberOf punycode + * @type Object + */ + 'ucs2': { + 'decode': ucs2decode, + 'encode': ucs2encode + }, + 'decode': decode, + 'encode': encode, + 'toASCII': toASCII, + 'toUnicode': toUnicode + }; + + /** Expose `punycode` */ + // Some AMD build optimizers, like r.js, check for specific condition patterns + // like the following: + if ( + typeof define == 'function' && + typeof define.amd == 'object' && + define.amd + ) { + define('punycode', function() { + return punycode; + }); + } else if (freeExports && freeModule) { + if (module.exports == freeExports) { + // in Node.js, io.js, or RingoJS v0.8.0+ + freeModule.exports = punycode; + } else { + // in Narwhal or RingoJS v0.7.0- + for (key in punycode) { + punycode.hasOwnProperty(key) && (freeExports[key] = punycode[key]); + } + } + } else { + // in Rhino or a web browser + root.punycode = punycode; + } + +}(this)); + +}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) +},{}]},{},[2])(2) +}); diff --git a/node_modules/psl/dist/psl.min.js b/node_modules/psl/dist/psl.min.js new file mode 100644 index 0000000..d5c787e --- /dev/null +++ b/node_modules/psl/dist/psl.min.js @@ -0,0 +1 @@ +!function(a){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=a();else if("function"==typeof define&&define.amd)define([],a);else{("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).psl=a()}}(function(){return function s(m,t,u){function r(o,a){if(!t[o]){if(!m[o]){var i="function"==typeof require&&require;if(!a&&i)return i(o,!0);if(p)return p(o,!0);var e=new Error("Cannot find module '"+o+"'");throw e.code="MODULE_NOT_FOUND",e}var n=t[o]={exports:{}};m[o][0].call(n.exports,function(a){return r(m[o][1][a]||a)},n,n.exports,s,m,t,u)}return t[o].exports}for(var p="function"==typeof require&&require,a=0;a= 0x80 (not a basic code point)","invalid-input":"Invalid input"},c=b-y,x=Math.floor,q=String.fromCharCode;function A(a){throw new RangeError(k[a])}function l(a,o){for(var i=a.length,e=[];i--;)e[i]=o(a[i]);return e}function g(a,o){var i=a.split("@"),e="";return 1>>10&1023|55296),a=56320|1023&a),o+=q(a)}).join("")}function L(a,o){return a+22+75*(a<26)-((0!=o)<<5)}function I(a,o,i){var e=0;for(a=i?x(a/t):a>>1,a+=x(a/o);c*f>>1x((d-g)/m))&&A("overflow"),g+=u*m,!(u<(r=t<=j?y:j+f<=t?f:t-j));t+=b)m>x(d/(p=b-r))&&A("overflow"),m*=p;j=I(g-s,o=c.length+1,0==s),x(g/o)>d-h&&A("overflow"),h+=x(g/o),g%=o,c.splice(g++,0,h)}return _(c)}function j(a){var o,i,e,n,s,m,t,u,r,p,k,c,l,g,h,j=[];for(c=(a=O(a)).length,o=w,s=v,m=i=0;mx((d-i)/(l=e+1))&&A("overflow"),i+=(t-o)*l,o=t,m=0;md&&A("overflow"),k==o){for(u=i,r=b;!(u<(p=r<=s?y:s+f<=r?f:r-s));r+=b)h=u-p,g=b-p,j.push(q(L(p+h%g,0))),u=x(h/g);j.push(q(L(u,0))),s=I(i,l,e==n),i=0,++e}++i,++o}return j.join("")}if(n={version:"1.4.1",ucs2:{decode:O,encode:_},decode:h,encode:j,toASCII:function(a){return g(a,function(a){return r.test(a)?"xn--"+j(a):a})},toUnicode:function(a){return g(a,function(a){return u.test(a)?h(a.slice(4).toLowerCase()):a})}},0,o&&i)if(T.exports==o)i.exports=n;else for(s in n)n.hasOwnProperty(s)&&(o[s]=n[s]);else a.punycode=n}(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}]},{},[2])(2)}); diff --git a/node_modules/psl/index.js b/node_modules/psl/index.js new file mode 100644 index 0000000..da7bc12 --- /dev/null +++ b/node_modules/psl/index.js @@ -0,0 +1,269 @@ +/*eslint no-var:0, prefer-arrow-callback: 0, object-shorthand: 0 */ +'use strict'; + + +var Punycode = require('punycode'); + + +var internals = {}; + + +// +// Read rules from file. +// +internals.rules = require('./data/rules.json').map(function (rule) { + + return { + rule: rule, + suffix: rule.replace(/^(\*\.|\!)/, ''), + punySuffix: -1, + wildcard: rule.charAt(0) === '*', + exception: rule.charAt(0) === '!' + }; +}); + + +// +// Check is given string ends with `suffix`. +// +internals.endsWith = function (str, suffix) { + + return str.indexOf(suffix, str.length - suffix.length) !== -1; +}; + + +// +// Find rule for a given domain. +// +internals.findRule = function (domain) { + + var punyDomain = Punycode.toASCII(domain); + return internals.rules.reduce(function (memo, rule) { + + if (rule.punySuffix === -1){ + rule.punySuffix = Punycode.toASCII(rule.suffix); + } + if (!internals.endsWith(punyDomain, '.' + rule.punySuffix) && punyDomain !== rule.punySuffix) { + return memo; + } + // This has been commented out as it never seems to run. This is because + // sub tlds always appear after their parents and we never find a shorter + // match. + //if (memo) { + // var memoSuffix = Punycode.toASCII(memo.suffix); + // if (memoSuffix.length >= punySuffix.length) { + // return memo; + // } + //} + return rule; + }, null); +}; + + +// +// Error codes and messages. +// +exports.errorCodes = { + DOMAIN_TOO_SHORT: 'Domain name too short.', + DOMAIN_TOO_LONG: 'Domain name too long. It should be no more than 255 chars.', + LABEL_STARTS_WITH_DASH: 'Domain name label can not start with a dash.', + LABEL_ENDS_WITH_DASH: 'Domain name label can not end with a dash.', + LABEL_TOO_LONG: 'Domain name label should be at most 63 chars long.', + LABEL_TOO_SHORT: 'Domain name label should be at least 1 character long.', + LABEL_INVALID_CHARS: 'Domain name label can only contain alphanumeric characters or dashes.' +}; + + +// +// Validate domain name and throw if not valid. +// +// From wikipedia: +// +// Hostnames are composed of series of labels concatenated with dots, as are all +// domain names. Each label must be between 1 and 63 characters long, and the +// entire hostname (including the delimiting dots) has a maximum of 255 chars. +// +// Allowed chars: +// +// * `a-z` +// * `0-9` +// * `-` but not as a starting or ending character +// * `.` as a separator for the textual portions of a domain name +// +// * http://en.wikipedia.org/wiki/Domain_name +// * http://en.wikipedia.org/wiki/Hostname +// +internals.validate = function (input) { + + // Before we can validate we need to take care of IDNs with unicode chars. + var ascii = Punycode.toASCII(input); + + if (ascii.length < 1) { + return 'DOMAIN_TOO_SHORT'; + } + if (ascii.length > 255) { + return 'DOMAIN_TOO_LONG'; + } + + // Check each part's length and allowed chars. + var labels = ascii.split('.'); + var label; + + for (var i = 0; i < labels.length; ++i) { + label = labels[i]; + if (!label.length) { + return 'LABEL_TOO_SHORT'; + } + if (label.length > 63) { + return 'LABEL_TOO_LONG'; + } + if (label.charAt(0) === '-') { + return 'LABEL_STARTS_WITH_DASH'; + } + if (label.charAt(label.length - 1) === '-') { + return 'LABEL_ENDS_WITH_DASH'; + } + if (!/^[a-z0-9\-]+$/.test(label)) { + return 'LABEL_INVALID_CHARS'; + } + } +}; + + +// +// Public API +// + + +// +// Parse domain. +// +exports.parse = function (input) { + + if (typeof input !== 'string') { + throw new TypeError('Domain name must be a string.'); + } + + // Force domain to lowercase. + var domain = input.slice(0).toLowerCase(); + + // Handle FQDN. + // TODO: Simply remove trailing dot? + if (domain.charAt(domain.length - 1) === '.') { + domain = domain.slice(0, domain.length - 1); + } + + // Validate and sanitise input. + var error = internals.validate(domain); + if (error) { + return { + input: input, + error: { + message: exports.errorCodes[error], + code: error + } + }; + } + + var parsed = { + input: input, + tld: null, + sld: null, + domain: null, + subdomain: null, + listed: false + }; + + var domainParts = domain.split('.'); + + // Non-Internet TLD + if (domainParts[domainParts.length - 1] === 'local') { + return parsed; + } + + var handlePunycode = function () { + + if (!/xn--/.test(domain)) { + return parsed; + } + if (parsed.domain) { + parsed.domain = Punycode.toASCII(parsed.domain); + } + if (parsed.subdomain) { + parsed.subdomain = Punycode.toASCII(parsed.subdomain); + } + return parsed; + }; + + var rule = internals.findRule(domain); + + // Unlisted tld. + if (!rule) { + if (domainParts.length < 2) { + return parsed; + } + parsed.tld = domainParts.pop(); + parsed.sld = domainParts.pop(); + parsed.domain = [parsed.sld, parsed.tld].join('.'); + if (domainParts.length) { + parsed.subdomain = domainParts.pop(); + } + return handlePunycode(); + } + + // At this point we know the public suffix is listed. + parsed.listed = true; + + var tldParts = rule.suffix.split('.'); + var privateParts = domainParts.slice(0, domainParts.length - tldParts.length); + + if (rule.exception) { + privateParts.push(tldParts.shift()); + } + + parsed.tld = tldParts.join('.'); + + if (!privateParts.length) { + return handlePunycode(); + } + + if (rule.wildcard) { + tldParts.unshift(privateParts.pop()); + parsed.tld = tldParts.join('.'); + } + + if (!privateParts.length) { + return handlePunycode(); + } + + parsed.sld = privateParts.pop(); + parsed.domain = [parsed.sld, parsed.tld].join('.'); + + if (privateParts.length) { + parsed.subdomain = privateParts.join('.'); + } + + return handlePunycode(); +}; + + +// +// Get domain. +// +exports.get = function (domain) { + + if (!domain) { + return null; + } + return exports.parse(domain).domain || null; +}; + + +// +// Check whether domain belongs to a known public suffix. +// +exports.isValid = function (domain) { + + var parsed = exports.parse(domain); + return Boolean(parsed.domain && parsed.listed); +}; diff --git a/node_modules/psl/package.json b/node_modules/psl/package.json new file mode 100644 index 0000000..ee2da19 --- /dev/null +++ b/node_modules/psl/package.json @@ -0,0 +1,44 @@ +{ + "name": "psl", + "version": "1.8.0", + "description": "Domain name parser based on the Public Suffix List", + "repository": { + "type": "git", + "url": "git@github.com:lupomontero/psl.git" + }, + "main": "index.js", + "scripts": { + "pretest": "eslint .", + "test": "mocha test && karma start ./karma.conf.js --single-run", + "watch": "mocha test --watch", + "prebuild": "./scripts/update-rules.js", + "build": "browserify ./index.js --standalone=psl > ./dist/psl.js", + "postbuild": "cat ./dist/psl.js | uglifyjs -c -m > ./dist/psl.min.js", + "commit-and-pr": "commit-and-pr", + "changelog": "git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"%h %s (%an <%ae>)\"" + }, + "keywords": [ + "publicsuffix", + "publicsuffixlist" + ], + "author": "Lupo Montero (https://lupomontero.com/)", + "license": "MIT", + "devDependencies": { + "JSONStream": "^1.3.5", + "browserify": "^16.5.0", + "commit-and-pr": "^1.0.4", + "eslint": "^6.8.0", + "eslint-config-hapi": "^12.0.0", + "eslint-plugin-hapi": "^4.1.0", + "karma": "^4.4.1", + "karma-browserify": "^7.0.0", + "karma-mocha": "^1.3.0", + "karma-mocha-reporter": "^2.2.5", + "karma-phantomjs-launcher": "^1.0.4", + "mocha": "^7.1.1", + "phantomjs-prebuilt": "^2.1.16", + "request": "^2.88.2", + "uglify-js": "^3.8.0", + "watchify": "^3.11.1" + } +} diff --git a/node_modules/pump/.travis.yml b/node_modules/pump/.travis.yml new file mode 100644 index 0000000..17f9433 --- /dev/null +++ b/node_modules/pump/.travis.yml @@ -0,0 +1,5 @@ +language: node_js +node_js: + - "0.10" + +script: "npm test" diff --git a/node_modules/pump/LICENSE b/node_modules/pump/LICENSE new file mode 100644 index 0000000..757562e --- /dev/null +++ b/node_modules/pump/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2014 Mathias Buus + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. \ No newline at end of file diff --git a/node_modules/pump/README.md b/node_modules/pump/README.md new file mode 100644 index 0000000..4c81471 --- /dev/null +++ b/node_modules/pump/README.md @@ -0,0 +1,65 @@ +# pump + +pump is a small node module that pipes streams together and destroys all of them if one of them closes. + +``` +npm install pump +``` + +[![build status](http://img.shields.io/travis/mafintosh/pump.svg?style=flat)](http://travis-ci.org/mafintosh/pump) + +## What problem does it solve? + +When using standard `source.pipe(dest)` source will _not_ be destroyed if dest emits close or an error. +You are also not able to provide a callback to tell when then pipe has finished. + +pump does these two things for you + +## Usage + +Simply pass the streams you want to pipe together to pump and add an optional callback + +``` js +var pump = require('pump') +var fs = require('fs') + +var source = fs.createReadStream('/dev/random') +var dest = fs.createWriteStream('/dev/null') + +pump(source, dest, function(err) { + console.log('pipe finished', err) +}) + +setTimeout(function() { + dest.destroy() // when dest is closed pump will destroy source +}, 1000) +``` + +You can use pump to pipe more than two streams together as well + +``` js +var transform = someTransformStream() + +pump(source, transform, anotherTransform, dest, function(err) { + console.log('pipe finished', err) +}) +``` + +If `source`, `transform`, `anotherTransform` or `dest` closes all of them will be destroyed. + +Similarly to `stream.pipe()`, `pump()` returns the last stream passed in, so you can do: + +``` +return pump(s1, s2) // returns s2 +``` + +If you want to return a stream that combines *both* s1 and s2 to a single stream use +[pumpify](https://github.com/mafintosh/pumpify) instead. + +## License + +MIT + +## Related + +`pump` is part of the [mississippi stream utility collection](https://github.com/maxogden/mississippi) which includes more useful stream modules similar to this one. diff --git a/node_modules/pump/index.js b/node_modules/pump/index.js new file mode 100644 index 0000000..c15059f --- /dev/null +++ b/node_modules/pump/index.js @@ -0,0 +1,82 @@ +var once = require('once') +var eos = require('end-of-stream') +var fs = require('fs') // we only need fs to get the ReadStream and WriteStream prototypes + +var noop = function () {} +var ancient = /^v?\.0/.test(process.version) + +var isFn = function (fn) { + return typeof fn === 'function' +} + +var isFS = function (stream) { + if (!ancient) return false // newer node version do not need to care about fs is a special way + if (!fs) return false // browser + return (stream instanceof (fs.ReadStream || noop) || stream instanceof (fs.WriteStream || noop)) && isFn(stream.close) +} + +var isRequest = function (stream) { + return stream.setHeader && isFn(stream.abort) +} + +var destroyer = function (stream, reading, writing, callback) { + callback = once(callback) + + var closed = false + stream.on('close', function () { + closed = true + }) + + eos(stream, {readable: reading, writable: writing}, function (err) { + if (err) return callback(err) + closed = true + callback() + }) + + var destroyed = false + return function (err) { + if (closed) return + if (destroyed) return + destroyed = true + + if (isFS(stream)) return stream.close(noop) // use close for fs streams to avoid fd leaks + if (isRequest(stream)) return stream.abort() // request.destroy just do .end - .abort is what we want + + if (isFn(stream.destroy)) return stream.destroy() + + callback(err || new Error('stream was destroyed')) + } +} + +var call = function (fn) { + fn() +} + +var pipe = function (from, to) { + return from.pipe(to) +} + +var pump = function () { + var streams = Array.prototype.slice.call(arguments) + var callback = isFn(streams[streams.length - 1] || noop) && streams.pop() || noop + + if (Array.isArray(streams[0])) streams = streams[0] + if (streams.length < 2) throw new Error('pump requires two streams per minimum') + + var error + var destroys = streams.map(function (stream, i) { + var reading = i < streams.length - 1 + var writing = i > 0 + return destroyer(stream, reading, writing, function (err) { + if (!error) error = err + if (err) destroys.forEach(call) + if (reading) return + destroys.forEach(call) + callback(error) + }) + }) + + return streams.reduce(pipe) +} + +module.exports = pump diff --git a/node_modules/pump/package.json b/node_modules/pump/package.json new file mode 100644 index 0000000..0b838f9 --- /dev/null +++ b/node_modules/pump/package.json @@ -0,0 +1,24 @@ +{ + "name": "pump", + "version": "3.0.0", + "repository": "git://github.com/mafintosh/pump.git", + "license": "MIT", + "description": "pipe streams together and close all of them if one of them closes", + "browser": { + "fs": false + }, + "keywords": [ + "streams", + "pipe", + "destroy", + "callback" + ], + "author": "Mathias Buus Madsen ", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + }, + "scripts": { + "test": "node test-browser.js && node test-node.js" + } +} diff --git a/node_modules/pump/test-browser.js b/node_modules/pump/test-browser.js new file mode 100644 index 0000000..9a06c8a --- /dev/null +++ b/node_modules/pump/test-browser.js @@ -0,0 +1,66 @@ +var stream = require('stream') +var pump = require('./index') + +var rs = new stream.Readable() +var ws = new stream.Writable() + +rs._read = function (size) { + this.push(Buffer(size).fill('abc')) +} + +ws._write = function (chunk, encoding, cb) { + setTimeout(function () { + cb() + }, 100) +} + +var toHex = function () { + var reverse = new (require('stream').Transform)() + + reverse._transform = function (chunk, enc, callback) { + reverse.push(chunk.toString('hex')) + callback() + } + + return reverse +} + +var wsClosed = false +var rsClosed = false +var callbackCalled = false + +var check = function () { + if (wsClosed && rsClosed && callbackCalled) { + console.log('test-browser.js passes') + clearTimeout(timeout) + } +} + +ws.on('finish', function () { + wsClosed = true + check() +}) + +rs.on('end', function () { + rsClosed = true + check() +}) + +var res = pump(rs, toHex(), toHex(), toHex(), ws, function () { + callbackCalled = true + check() +}) + +if (res !== ws) { + throw new Error('should return last stream') +} + +setTimeout(function () { + rs.push(null) + rs.emit('close') +}, 1000) + +var timeout = setTimeout(function () { + check() + throw new Error('timeout') +}, 5000) diff --git a/node_modules/pump/test-node.js b/node_modules/pump/test-node.js new file mode 100644 index 0000000..561251a --- /dev/null +++ b/node_modules/pump/test-node.js @@ -0,0 +1,53 @@ +var pump = require('./index') + +var rs = require('fs').createReadStream('/dev/random') +var ws = require('fs').createWriteStream('/dev/null') + +var toHex = function () { + var reverse = new (require('stream').Transform)() + + reverse._transform = function (chunk, enc, callback) { + reverse.push(chunk.toString('hex')) + callback() + } + + return reverse +} + +var wsClosed = false +var rsClosed = false +var callbackCalled = false + +var check = function () { + if (wsClosed && rsClosed && callbackCalled) { + console.log('test-node.js passes') + clearTimeout(timeout) + } +} + +ws.on('close', function () { + wsClosed = true + check() +}) + +rs.on('close', function () { + rsClosed = true + check() +}) + +var res = pump(rs, toHex(), toHex(), toHex(), ws, function () { + callbackCalled = true + check() +}) + +if (res !== ws) { + throw new Error('should return last stream') +} + +setTimeout(function () { + rs.destroy() +}, 1000) + +var timeout = setTimeout(function () { + throw new Error('timeout') +}, 5000) diff --git a/node_modules/punycode/LICENSE-MIT.txt b/node_modules/punycode/LICENSE-MIT.txt new file mode 100644 index 0000000..a41e0a7 --- /dev/null +++ b/node_modules/punycode/LICENSE-MIT.txt @@ -0,0 +1,20 @@ +Copyright Mathias Bynens + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/punycode/README.md b/node_modules/punycode/README.md new file mode 100644 index 0000000..ee2f9d6 --- /dev/null +++ b/node_modules/punycode/README.md @@ -0,0 +1,122 @@ +# Punycode.js [![Build status](https://travis-ci.org/bestiejs/punycode.js.svg?branch=master)](https://travis-ci.org/bestiejs/punycode.js) [![Code coverage status](http://img.shields.io/codecov/c/github/bestiejs/punycode.js.svg)](https://codecov.io/gh/bestiejs/punycode.js) [![Dependency status](https://gemnasium.com/bestiejs/punycode.js.svg)](https://gemnasium.com/bestiejs/punycode.js) + +Punycode.js is a robust Punycode converter that fully complies to [RFC 3492](https://tools.ietf.org/html/rfc3492) and [RFC 5891](https://tools.ietf.org/html/rfc5891). + +This JavaScript library is the result of comparing, optimizing and documenting different open-source implementations of the Punycode algorithm: + +* [The C example code from RFC 3492](https://tools.ietf.org/html/rfc3492#appendix-C) +* [`punycode.c` by _Markus W. Scherer_ (IBM)](http://opensource.apple.com/source/ICU/ICU-400.42/icuSources/common/punycode.c) +* [`punycode.c` by _Ben Noordhuis_](https://github.com/bnoordhuis/punycode/blob/master/punycode.c) +* [JavaScript implementation by _some_](http://stackoverflow.com/questions/183485/can-anyone-recommend-a-good-free-javascript-for-punycode-to-unicode-conversion/301287#301287) +* [`punycode.js` by _Ben Noordhuis_](https://github.com/joyent/node/blob/426298c8c1c0d5b5224ac3658c41e7c2a3fe9377/lib/punycode.js) (note: [not fully compliant](https://github.com/joyent/node/issues/2072)) + +This project was [bundled](https://github.com/joyent/node/blob/master/lib/punycode.js) with Node.js from [v0.6.2+](https://github.com/joyent/node/compare/975f1930b1...61e796decc) until [v7](https://github.com/nodejs/node/pull/7941) (soft-deprecated). + +The current version supports recent versions of Node.js only. It provides a CommonJS module and an ES6 module. For the old version that offers the same functionality with broader support, including Rhino, Ringo, Narwhal, and web browsers, see [v1.4.1](https://github.com/bestiejs/punycode.js/releases/tag/v1.4.1). + +## Installation + +Via [npm](https://www.npmjs.com/): + +```bash +npm install punycode --save +``` + +In [Node.js](https://nodejs.org/): + +```js +const punycode = require('punycode'); +``` + +## API + +### `punycode.decode(string)` + +Converts a Punycode string of ASCII symbols to a string of Unicode symbols. + +```js +// decode domain name parts +punycode.decode('maana-pta'); // 'mañana' +punycode.decode('--dqo34k'); // '☃-⌘' +``` + +### `punycode.encode(string)` + +Converts a string of Unicode symbols to a Punycode string of ASCII symbols. + +```js +// encode domain name parts +punycode.encode('mañana'); // 'maana-pta' +punycode.encode('☃-⌘'); // '--dqo34k' +``` + +### `punycode.toUnicode(input)` + +Converts a Punycode string representing a domain name or an email address to Unicode. Only the Punycoded parts of the input will be converted, i.e. it doesn’t matter if you call it on a string that has already been converted to Unicode. + +```js +// decode domain names +punycode.toUnicode('xn--maana-pta.com'); +// → 'mañana.com' +punycode.toUnicode('xn----dqo34k.com'); +// → '☃-⌘.com' + +// decode email addresses +punycode.toUnicode('джумла@xn--p-8sbkgc5ag7bhce.xn--ba-lmcq'); +// → 'джумла@джpумлатест.bрфa' +``` + +### `punycode.toASCII(input)` + +Converts a lowercased Unicode string representing a domain name or an email address to Punycode. Only the non-ASCII parts of the input will be converted, i.e. it doesn’t matter if you call it with a domain that’s already in ASCII. + +```js +// encode domain names +punycode.toASCII('mañana.com'); +// → 'xn--maana-pta.com' +punycode.toASCII('☃-⌘.com'); +// → 'xn----dqo34k.com' + +// encode email addresses +punycode.toASCII('джумла@джpумлатест.bрфa'); +// → 'джумла@xn--p-8sbkgc5ag7bhce.xn--ba-lmcq' +``` + +### `punycode.ucs2` + +#### `punycode.ucs2.decode(string)` + +Creates an array containing the numeric code point values of each Unicode symbol in the string. While [JavaScript uses UCS-2 internally](https://mathiasbynens.be/notes/javascript-encoding), this function will convert a pair of surrogate halves (each of which UCS-2 exposes as separate characters) into a single code point, matching UTF-16. + +```js +punycode.ucs2.decode('abc'); +// → [0x61, 0x62, 0x63] +// surrogate pair for U+1D306 TETRAGRAM FOR CENTRE: +punycode.ucs2.decode('\uD834\uDF06'); +// → [0x1D306] +``` + +#### `punycode.ucs2.encode(codePoints)` + +Creates a string based on an array of numeric code point values. + +```js +punycode.ucs2.encode([0x61, 0x62, 0x63]); +// → 'abc' +punycode.ucs2.encode([0x1D306]); +// → '\uD834\uDF06' +``` + +### `punycode.version` + +A string representing the current Punycode.js version number. + +## Author + +| [![twitter/mathias](https://gravatar.com/avatar/24e08a9ea84deb17ae121074d0f17125?s=70)](https://twitter.com/mathias "Follow @mathias on Twitter") | +|---| +| [Mathias Bynens](https://mathiasbynens.be/) | + +## License + +Punycode.js is available under the [MIT](https://mths.be/mit) license. diff --git a/node_modules/punycode/package.json b/node_modules/punycode/package.json new file mode 100644 index 0000000..9202ccf --- /dev/null +++ b/node_modules/punycode/package.json @@ -0,0 +1,58 @@ +{ + "name": "punycode", + "version": "2.1.1", + "description": "A robust Punycode converter that fully complies to RFC 3492 and RFC 5891, and works on nearly all JavaScript platforms.", + "homepage": "https://mths.be/punycode", + "main": "punycode.js", + "jsnext:main": "punycode.es6.js", + "module": "punycode.es6.js", + "engines": { + "node": ">=6" + }, + "keywords": [ + "punycode", + "unicode", + "idn", + "idna", + "dns", + "url", + "domain" + ], + "license": "MIT", + "author": { + "name": "Mathias Bynens", + "url": "https://mathiasbynens.be/" + }, + "contributors": [ + { + "name": "Mathias Bynens", + "url": "https://mathiasbynens.be/" + } + ], + "repository": { + "type": "git", + "url": "https://github.com/bestiejs/punycode.js.git" + }, + "bugs": "https://github.com/bestiejs/punycode.js/issues", + "files": [ + "LICENSE-MIT.txt", + "punycode.js", + "punycode.es6.js" + ], + "scripts": { + "test": "mocha tests", + "prepublish": "node scripts/prepublish.js" + }, + "devDependencies": { + "codecov": "^1.0.1", + "istanbul": "^0.4.1", + "mocha": "^2.5.3" + }, + "jspm": { + "map": { + "./punycode.js": { + "node": "@node/punycode" + } + } + } +} diff --git a/node_modules/punycode/punycode.es6.js b/node_modules/punycode/punycode.es6.js new file mode 100644 index 0000000..4610bc9 --- /dev/null +++ b/node_modules/punycode/punycode.es6.js @@ -0,0 +1,441 @@ +'use strict'; + +/** Highest positive signed 32-bit float value */ +const maxInt = 2147483647; // aka. 0x7FFFFFFF or 2^31-1 + +/** Bootstring parameters */ +const base = 36; +const tMin = 1; +const tMax = 26; +const skew = 38; +const damp = 700; +const initialBias = 72; +const initialN = 128; // 0x80 +const delimiter = '-'; // '\x2D' + +/** Regular expressions */ +const regexPunycode = /^xn--/; +const regexNonASCII = /[^\0-\x7E]/; // non-ASCII chars +const regexSeparators = /[\x2E\u3002\uFF0E\uFF61]/g; // RFC 3490 separators + +/** Error messages */ +const errors = { + 'overflow': 'Overflow: input needs wider integers to process', + 'not-basic': 'Illegal input >= 0x80 (not a basic code point)', + 'invalid-input': 'Invalid input' +}; + +/** Convenience shortcuts */ +const baseMinusTMin = base - tMin; +const floor = Math.floor; +const stringFromCharCode = String.fromCharCode; + +/*--------------------------------------------------------------------------*/ + +/** + * A generic error utility function. + * @private + * @param {String} type The error type. + * @returns {Error} Throws a `RangeError` with the applicable error message. + */ +function error(type) { + throw new RangeError(errors[type]); +} + +/** + * A generic `Array#map` utility function. + * @private + * @param {Array} array The array to iterate over. + * @param {Function} callback The function that gets called for every array + * item. + * @returns {Array} A new array of values returned by the callback function. + */ +function map(array, fn) { + const result = []; + let length = array.length; + while (length--) { + result[length] = fn(array[length]); + } + return result; +} + +/** + * A simple `Array#map`-like wrapper to work with domain name strings or email + * addresses. + * @private + * @param {String} domain The domain name or email address. + * @param {Function} callback The function that gets called for every + * character. + * @returns {Array} A new string of characters returned by the callback + * function. + */ +function mapDomain(string, fn) { + const parts = string.split('@'); + let result = ''; + if (parts.length > 1) { + // In email addresses, only the domain name should be punycoded. Leave + // the local part (i.e. everything up to `@`) intact. + result = parts[0] + '@'; + string = parts[1]; + } + // Avoid `split(regex)` for IE8 compatibility. See #17. + string = string.replace(regexSeparators, '\x2E'); + const labels = string.split('.'); + const encoded = map(labels, fn).join('.'); + return result + encoded; +} + +/** + * Creates an array containing the numeric code points of each Unicode + * character in the string. While JavaScript uses UCS-2 internally, + * this function will convert a pair of surrogate halves (each of which + * UCS-2 exposes as separate characters) into a single code point, + * matching UTF-16. + * @see `punycode.ucs2.encode` + * @see + * @memberOf punycode.ucs2 + * @name decode + * @param {String} string The Unicode input string (UCS-2). + * @returns {Array} The new array of code points. + */ +function ucs2decode(string) { + const output = []; + let counter = 0; + const length = string.length; + while (counter < length) { + const value = string.charCodeAt(counter++); + if (value >= 0xD800 && value <= 0xDBFF && counter < length) { + // It's a high surrogate, and there is a next character. + const extra = string.charCodeAt(counter++); + if ((extra & 0xFC00) == 0xDC00) { // Low surrogate. + output.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000); + } else { + // It's an unmatched surrogate; only append this code unit, in case the + // next code unit is the high surrogate of a surrogate pair. + output.push(value); + counter--; + } + } else { + output.push(value); + } + } + return output; +} + +/** + * Creates a string based on an array of numeric code points. + * @see `punycode.ucs2.decode` + * @memberOf punycode.ucs2 + * @name encode + * @param {Array} codePoints The array of numeric code points. + * @returns {String} The new Unicode string (UCS-2). + */ +const ucs2encode = array => String.fromCodePoint(...array); + +/** + * Converts a basic code point into a digit/integer. + * @see `digitToBasic()` + * @private + * @param {Number} codePoint The basic numeric code point value. + * @returns {Number} The numeric value of a basic code point (for use in + * representing integers) in the range `0` to `base - 1`, or `base` if + * the code point does not represent a value. + */ +const basicToDigit = function(codePoint) { + if (codePoint - 0x30 < 0x0A) { + return codePoint - 0x16; + } + if (codePoint - 0x41 < 0x1A) { + return codePoint - 0x41; + } + if (codePoint - 0x61 < 0x1A) { + return codePoint - 0x61; + } + return base; +}; + +/** + * Converts a digit/integer into a basic code point. + * @see `basicToDigit()` + * @private + * @param {Number} digit The numeric value of a basic code point. + * @returns {Number} The basic code point whose value (when used for + * representing integers) is `digit`, which needs to be in the range + * `0` to `base - 1`. If `flag` is non-zero, the uppercase form is + * used; else, the lowercase form is used. The behavior is undefined + * if `flag` is non-zero and `digit` has no uppercase form. + */ +const digitToBasic = function(digit, flag) { + // 0..25 map to ASCII a..z or A..Z + // 26..35 map to ASCII 0..9 + return digit + 22 + 75 * (digit < 26) - ((flag != 0) << 5); +}; + +/** + * Bias adaptation function as per section 3.4 of RFC 3492. + * https://tools.ietf.org/html/rfc3492#section-3.4 + * @private + */ +const adapt = function(delta, numPoints, firstTime) { + let k = 0; + delta = firstTime ? floor(delta / damp) : delta >> 1; + delta += floor(delta / numPoints); + for (/* no initialization */; delta > baseMinusTMin * tMax >> 1; k += base) { + delta = floor(delta / baseMinusTMin); + } + return floor(k + (baseMinusTMin + 1) * delta / (delta + skew)); +}; + +/** + * Converts a Punycode string of ASCII-only symbols to a string of Unicode + * symbols. + * @memberOf punycode + * @param {String} input The Punycode string of ASCII-only symbols. + * @returns {String} The resulting string of Unicode symbols. + */ +const decode = function(input) { + // Don't use UCS-2. + const output = []; + const inputLength = input.length; + let i = 0; + let n = initialN; + let bias = initialBias; + + // Handle the basic code points: let `basic` be the number of input code + // points before the last delimiter, or `0` if there is none, then copy + // the first basic code points to the output. + + let basic = input.lastIndexOf(delimiter); + if (basic < 0) { + basic = 0; + } + + for (let j = 0; j < basic; ++j) { + // if it's not a basic code point + if (input.charCodeAt(j) >= 0x80) { + error('not-basic'); + } + output.push(input.charCodeAt(j)); + } + + // Main decoding loop: start just after the last delimiter if any basic code + // points were copied; start at the beginning otherwise. + + for (let index = basic > 0 ? basic + 1 : 0; index < inputLength; /* no final expression */) { + + // `index` is the index of the next character to be consumed. + // Decode a generalized variable-length integer into `delta`, + // which gets added to `i`. The overflow checking is easier + // if we increase `i` as we go, then subtract off its starting + // value at the end to obtain `delta`. + let oldi = i; + for (let w = 1, k = base; /* no condition */; k += base) { + + if (index >= inputLength) { + error('invalid-input'); + } + + const digit = basicToDigit(input.charCodeAt(index++)); + + if (digit >= base || digit > floor((maxInt - i) / w)) { + error('overflow'); + } + + i += digit * w; + const t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias); + + if (digit < t) { + break; + } + + const baseMinusT = base - t; + if (w > floor(maxInt / baseMinusT)) { + error('overflow'); + } + + w *= baseMinusT; + + } + + const out = output.length + 1; + bias = adapt(i - oldi, out, oldi == 0); + + // `i` was supposed to wrap around from `out` to `0`, + // incrementing `n` each time, so we'll fix that now: + if (floor(i / out) > maxInt - n) { + error('overflow'); + } + + n += floor(i / out); + i %= out; + + // Insert `n` at position `i` of the output. + output.splice(i++, 0, n); + + } + + return String.fromCodePoint(...output); +}; + +/** + * Converts a string of Unicode symbols (e.g. a domain name label) to a + * Punycode string of ASCII-only symbols. + * @memberOf punycode + * @param {String} input The string of Unicode symbols. + * @returns {String} The resulting Punycode string of ASCII-only symbols. + */ +const encode = function(input) { + const output = []; + + // Convert the input in UCS-2 to an array of Unicode code points. + input = ucs2decode(input); + + // Cache the length. + let inputLength = input.length; + + // Initialize the state. + let n = initialN; + let delta = 0; + let bias = initialBias; + + // Handle the basic code points. + for (const currentValue of input) { + if (currentValue < 0x80) { + output.push(stringFromCharCode(currentValue)); + } + } + + let basicLength = output.length; + let handledCPCount = basicLength; + + // `handledCPCount` is the number of code points that have been handled; + // `basicLength` is the number of basic code points. + + // Finish the basic string with a delimiter unless it's empty. + if (basicLength) { + output.push(delimiter); + } + + // Main encoding loop: + while (handledCPCount < inputLength) { + + // All non-basic code points < n have been handled already. Find the next + // larger one: + let m = maxInt; + for (const currentValue of input) { + if (currentValue >= n && currentValue < m) { + m = currentValue; + } + } + + // Increase `delta` enough to advance the decoder's state to , + // but guard against overflow. + const handledCPCountPlusOne = handledCPCount + 1; + if (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) { + error('overflow'); + } + + delta += (m - n) * handledCPCountPlusOne; + n = m; + + for (const currentValue of input) { + if (currentValue < n && ++delta > maxInt) { + error('overflow'); + } + if (currentValue == n) { + // Represent delta as a generalized variable-length integer. + let q = delta; + for (let k = base; /* no condition */; k += base) { + const t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias); + if (q < t) { + break; + } + const qMinusT = q - t; + const baseMinusT = base - t; + output.push( + stringFromCharCode(digitToBasic(t + qMinusT % baseMinusT, 0)) + ); + q = floor(qMinusT / baseMinusT); + } + + output.push(stringFromCharCode(digitToBasic(q, 0))); + bias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength); + delta = 0; + ++handledCPCount; + } + } + + ++delta; + ++n; + + } + return output.join(''); +}; + +/** + * Converts a Punycode string representing a domain name or an email address + * to Unicode. Only the Punycoded parts of the input will be converted, i.e. + * it doesn't matter if you call it on a string that has already been + * converted to Unicode. + * @memberOf punycode + * @param {String} input The Punycoded domain name or email address to + * convert to Unicode. + * @returns {String} The Unicode representation of the given Punycode + * string. + */ +const toUnicode = function(input) { + return mapDomain(input, function(string) { + return regexPunycode.test(string) + ? decode(string.slice(4).toLowerCase()) + : string; + }); +}; + +/** + * Converts a Unicode string representing a domain name or an email address to + * Punycode. Only the non-ASCII parts of the domain name will be converted, + * i.e. it doesn't matter if you call it with a domain that's already in + * ASCII. + * @memberOf punycode + * @param {String} input The domain name or email address to convert, as a + * Unicode string. + * @returns {String} The Punycode representation of the given domain name or + * email address. + */ +const toASCII = function(input) { + return mapDomain(input, function(string) { + return regexNonASCII.test(string) + ? 'xn--' + encode(string) + : string; + }); +}; + +/*--------------------------------------------------------------------------*/ + +/** Define the public API */ +const punycode = { + /** + * A string representing the current Punycode.js version number. + * @memberOf punycode + * @type String + */ + 'version': '2.1.0', + /** + * An object of methods to convert from JavaScript's internal character + * representation (UCS-2) to Unicode code points, and back. + * @see + * @memberOf punycode + * @type Object + */ + 'ucs2': { + 'decode': ucs2decode, + 'encode': ucs2encode + }, + 'decode': decode, + 'encode': encode, + 'toASCII': toASCII, + 'toUnicode': toUnicode +}; + +export { ucs2decode, ucs2encode, decode, encode, toASCII, toUnicode }; +export default punycode; diff --git a/node_modules/punycode/punycode.js b/node_modules/punycode/punycode.js new file mode 100644 index 0000000..ea61fd0 --- /dev/null +++ b/node_modules/punycode/punycode.js @@ -0,0 +1,440 @@ +'use strict'; + +/** Highest positive signed 32-bit float value */ +const maxInt = 2147483647; // aka. 0x7FFFFFFF or 2^31-1 + +/** Bootstring parameters */ +const base = 36; +const tMin = 1; +const tMax = 26; +const skew = 38; +const damp = 700; +const initialBias = 72; +const initialN = 128; // 0x80 +const delimiter = '-'; // '\x2D' + +/** Regular expressions */ +const regexPunycode = /^xn--/; +const regexNonASCII = /[^\0-\x7E]/; // non-ASCII chars +const regexSeparators = /[\x2E\u3002\uFF0E\uFF61]/g; // RFC 3490 separators + +/** Error messages */ +const errors = { + 'overflow': 'Overflow: input needs wider integers to process', + 'not-basic': 'Illegal input >= 0x80 (not a basic code point)', + 'invalid-input': 'Invalid input' +}; + +/** Convenience shortcuts */ +const baseMinusTMin = base - tMin; +const floor = Math.floor; +const stringFromCharCode = String.fromCharCode; + +/*--------------------------------------------------------------------------*/ + +/** + * A generic error utility function. + * @private + * @param {String} type The error type. + * @returns {Error} Throws a `RangeError` with the applicable error message. + */ +function error(type) { + throw new RangeError(errors[type]); +} + +/** + * A generic `Array#map` utility function. + * @private + * @param {Array} array The array to iterate over. + * @param {Function} callback The function that gets called for every array + * item. + * @returns {Array} A new array of values returned by the callback function. + */ +function map(array, fn) { + const result = []; + let length = array.length; + while (length--) { + result[length] = fn(array[length]); + } + return result; +} + +/** + * A simple `Array#map`-like wrapper to work with domain name strings or email + * addresses. + * @private + * @param {String} domain The domain name or email address. + * @param {Function} callback The function that gets called for every + * character. + * @returns {Array} A new string of characters returned by the callback + * function. + */ +function mapDomain(string, fn) { + const parts = string.split('@'); + let result = ''; + if (parts.length > 1) { + // In email addresses, only the domain name should be punycoded. Leave + // the local part (i.e. everything up to `@`) intact. + result = parts[0] + '@'; + string = parts[1]; + } + // Avoid `split(regex)` for IE8 compatibility. See #17. + string = string.replace(regexSeparators, '\x2E'); + const labels = string.split('.'); + const encoded = map(labels, fn).join('.'); + return result + encoded; +} + +/** + * Creates an array containing the numeric code points of each Unicode + * character in the string. While JavaScript uses UCS-2 internally, + * this function will convert a pair of surrogate halves (each of which + * UCS-2 exposes as separate characters) into a single code point, + * matching UTF-16. + * @see `punycode.ucs2.encode` + * @see + * @memberOf punycode.ucs2 + * @name decode + * @param {String} string The Unicode input string (UCS-2). + * @returns {Array} The new array of code points. + */ +function ucs2decode(string) { + const output = []; + let counter = 0; + const length = string.length; + while (counter < length) { + const value = string.charCodeAt(counter++); + if (value >= 0xD800 && value <= 0xDBFF && counter < length) { + // It's a high surrogate, and there is a next character. + const extra = string.charCodeAt(counter++); + if ((extra & 0xFC00) == 0xDC00) { // Low surrogate. + output.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000); + } else { + // It's an unmatched surrogate; only append this code unit, in case the + // next code unit is the high surrogate of a surrogate pair. + output.push(value); + counter--; + } + } else { + output.push(value); + } + } + return output; +} + +/** + * Creates a string based on an array of numeric code points. + * @see `punycode.ucs2.decode` + * @memberOf punycode.ucs2 + * @name encode + * @param {Array} codePoints The array of numeric code points. + * @returns {String} The new Unicode string (UCS-2). + */ +const ucs2encode = array => String.fromCodePoint(...array); + +/** + * Converts a basic code point into a digit/integer. + * @see `digitToBasic()` + * @private + * @param {Number} codePoint The basic numeric code point value. + * @returns {Number} The numeric value of a basic code point (for use in + * representing integers) in the range `0` to `base - 1`, or `base` if + * the code point does not represent a value. + */ +const basicToDigit = function(codePoint) { + if (codePoint - 0x30 < 0x0A) { + return codePoint - 0x16; + } + if (codePoint - 0x41 < 0x1A) { + return codePoint - 0x41; + } + if (codePoint - 0x61 < 0x1A) { + return codePoint - 0x61; + } + return base; +}; + +/** + * Converts a digit/integer into a basic code point. + * @see `basicToDigit()` + * @private + * @param {Number} digit The numeric value of a basic code point. + * @returns {Number} The basic code point whose value (when used for + * representing integers) is `digit`, which needs to be in the range + * `0` to `base - 1`. If `flag` is non-zero, the uppercase form is + * used; else, the lowercase form is used. The behavior is undefined + * if `flag` is non-zero and `digit` has no uppercase form. + */ +const digitToBasic = function(digit, flag) { + // 0..25 map to ASCII a..z or A..Z + // 26..35 map to ASCII 0..9 + return digit + 22 + 75 * (digit < 26) - ((flag != 0) << 5); +}; + +/** + * Bias adaptation function as per section 3.4 of RFC 3492. + * https://tools.ietf.org/html/rfc3492#section-3.4 + * @private + */ +const adapt = function(delta, numPoints, firstTime) { + let k = 0; + delta = firstTime ? floor(delta / damp) : delta >> 1; + delta += floor(delta / numPoints); + for (/* no initialization */; delta > baseMinusTMin * tMax >> 1; k += base) { + delta = floor(delta / baseMinusTMin); + } + return floor(k + (baseMinusTMin + 1) * delta / (delta + skew)); +}; + +/** + * Converts a Punycode string of ASCII-only symbols to a string of Unicode + * symbols. + * @memberOf punycode + * @param {String} input The Punycode string of ASCII-only symbols. + * @returns {String} The resulting string of Unicode symbols. + */ +const decode = function(input) { + // Don't use UCS-2. + const output = []; + const inputLength = input.length; + let i = 0; + let n = initialN; + let bias = initialBias; + + // Handle the basic code points: let `basic` be the number of input code + // points before the last delimiter, or `0` if there is none, then copy + // the first basic code points to the output. + + let basic = input.lastIndexOf(delimiter); + if (basic < 0) { + basic = 0; + } + + for (let j = 0; j < basic; ++j) { + // if it's not a basic code point + if (input.charCodeAt(j) >= 0x80) { + error('not-basic'); + } + output.push(input.charCodeAt(j)); + } + + // Main decoding loop: start just after the last delimiter if any basic code + // points were copied; start at the beginning otherwise. + + for (let index = basic > 0 ? basic + 1 : 0; index < inputLength; /* no final expression */) { + + // `index` is the index of the next character to be consumed. + // Decode a generalized variable-length integer into `delta`, + // which gets added to `i`. The overflow checking is easier + // if we increase `i` as we go, then subtract off its starting + // value at the end to obtain `delta`. + let oldi = i; + for (let w = 1, k = base; /* no condition */; k += base) { + + if (index >= inputLength) { + error('invalid-input'); + } + + const digit = basicToDigit(input.charCodeAt(index++)); + + if (digit >= base || digit > floor((maxInt - i) / w)) { + error('overflow'); + } + + i += digit * w; + const t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias); + + if (digit < t) { + break; + } + + const baseMinusT = base - t; + if (w > floor(maxInt / baseMinusT)) { + error('overflow'); + } + + w *= baseMinusT; + + } + + const out = output.length + 1; + bias = adapt(i - oldi, out, oldi == 0); + + // `i` was supposed to wrap around from `out` to `0`, + // incrementing `n` each time, so we'll fix that now: + if (floor(i / out) > maxInt - n) { + error('overflow'); + } + + n += floor(i / out); + i %= out; + + // Insert `n` at position `i` of the output. + output.splice(i++, 0, n); + + } + + return String.fromCodePoint(...output); +}; + +/** + * Converts a string of Unicode symbols (e.g. a domain name label) to a + * Punycode string of ASCII-only symbols. + * @memberOf punycode + * @param {String} input The string of Unicode symbols. + * @returns {String} The resulting Punycode string of ASCII-only symbols. + */ +const encode = function(input) { + const output = []; + + // Convert the input in UCS-2 to an array of Unicode code points. + input = ucs2decode(input); + + // Cache the length. + let inputLength = input.length; + + // Initialize the state. + let n = initialN; + let delta = 0; + let bias = initialBias; + + // Handle the basic code points. + for (const currentValue of input) { + if (currentValue < 0x80) { + output.push(stringFromCharCode(currentValue)); + } + } + + let basicLength = output.length; + let handledCPCount = basicLength; + + // `handledCPCount` is the number of code points that have been handled; + // `basicLength` is the number of basic code points. + + // Finish the basic string with a delimiter unless it's empty. + if (basicLength) { + output.push(delimiter); + } + + // Main encoding loop: + while (handledCPCount < inputLength) { + + // All non-basic code points < n have been handled already. Find the next + // larger one: + let m = maxInt; + for (const currentValue of input) { + if (currentValue >= n && currentValue < m) { + m = currentValue; + } + } + + // Increase `delta` enough to advance the decoder's state to , + // but guard against overflow. + const handledCPCountPlusOne = handledCPCount + 1; + if (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) { + error('overflow'); + } + + delta += (m - n) * handledCPCountPlusOne; + n = m; + + for (const currentValue of input) { + if (currentValue < n && ++delta > maxInt) { + error('overflow'); + } + if (currentValue == n) { + // Represent delta as a generalized variable-length integer. + let q = delta; + for (let k = base; /* no condition */; k += base) { + const t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias); + if (q < t) { + break; + } + const qMinusT = q - t; + const baseMinusT = base - t; + output.push( + stringFromCharCode(digitToBasic(t + qMinusT % baseMinusT, 0)) + ); + q = floor(qMinusT / baseMinusT); + } + + output.push(stringFromCharCode(digitToBasic(q, 0))); + bias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength); + delta = 0; + ++handledCPCount; + } + } + + ++delta; + ++n; + + } + return output.join(''); +}; + +/** + * Converts a Punycode string representing a domain name or an email address + * to Unicode. Only the Punycoded parts of the input will be converted, i.e. + * it doesn't matter if you call it on a string that has already been + * converted to Unicode. + * @memberOf punycode + * @param {String} input The Punycoded domain name or email address to + * convert to Unicode. + * @returns {String} The Unicode representation of the given Punycode + * string. + */ +const toUnicode = function(input) { + return mapDomain(input, function(string) { + return regexPunycode.test(string) + ? decode(string.slice(4).toLowerCase()) + : string; + }); +}; + +/** + * Converts a Unicode string representing a domain name or an email address to + * Punycode. Only the non-ASCII parts of the domain name will be converted, + * i.e. it doesn't matter if you call it with a domain that's already in + * ASCII. + * @memberOf punycode + * @param {String} input The domain name or email address to convert, as a + * Unicode string. + * @returns {String} The Punycode representation of the given domain name or + * email address. + */ +const toASCII = function(input) { + return mapDomain(input, function(string) { + return regexNonASCII.test(string) + ? 'xn--' + encode(string) + : string; + }); +}; + +/*--------------------------------------------------------------------------*/ + +/** Define the public API */ +const punycode = { + /** + * A string representing the current Punycode.js version number. + * @memberOf punycode + * @type String + */ + 'version': '2.1.0', + /** + * An object of methods to convert from JavaScript's internal character + * representation (UCS-2) to Unicode code points, and back. + * @see + * @memberOf punycode + * @type Object + */ + 'ucs2': { + 'decode': ucs2decode, + 'encode': ucs2encode + }, + 'decode': decode, + 'encode': encode, + 'toASCII': toASCII, + 'toUnicode': toUnicode +}; + +module.exports = punycode; diff --git a/node_modules/pupa/index.d.ts b/node_modules/pupa/index.d.ts new file mode 100644 index 0000000..762aae0 --- /dev/null +++ b/node_modules/pupa/index.d.ts @@ -0,0 +1,32 @@ +/** +Simple micro templating. + +@param template - Text with placeholders for `data` properties. +@param data - Data to interpolate into `template`. + +@example +``` +import pupa = require('pupa'); + +pupa('The mobile number of {name} is {phone.mobile}', { + name: 'Sindre', + phone: { + mobile: '609 24 363' + } +}); +//=> 'The mobile number of Sindre is 609 24 363' + +pupa('I like {0} and {1}', ['🦄', '🐮']); +//=> 'I like 🦄 and 🐮' + +// Double braces encodes the HTML entities to avoid code injection +pupa('I like {{0}} and {{1}}', ['
🦄
', '🐮']); +//=> 'I like <br>🦄</br> and <i>🐮</i>' +``` +*/ +declare function pupa( + template: string, + data: unknown[] | {[key: string]: any} +): string; + +export = pupa; diff --git a/node_modules/pupa/index.js b/node_modules/pupa/index.js new file mode 100644 index 0000000..85739eb --- /dev/null +++ b/node_modules/pupa/index.js @@ -0,0 +1,39 @@ +'use strict'; +const {htmlEscape} = require('escape-goat'); + +module.exports = (template, data) => { + if (typeof template !== 'string') { + throw new TypeError(`Expected a \`string\` in the first argument, got \`${typeof template}\``); + } + + if (typeof data !== 'object') { + throw new TypeError(`Expected an \`object\` or \`Array\` in the second argument, got \`${typeof data}\``); + } + + // The regex tries to match either a number inside `{{ }}` or a valid JS identifier or key path. + const doubleBraceRegex = /{{(\d+|[a-z$_][a-z\d$_]*?(?:\.[a-z\d$_]*?)*?)}}/gi; + + if (doubleBraceRegex.test(template)) { + template = template.replace(doubleBraceRegex, (_, key) => { + let result = data; + + for (const property of key.split('.')) { + result = result ? result[property] : ''; + } + + return htmlEscape(String(result)); + }); + } + + const braceRegex = /{(\d+|[a-z$_][a-z\d$_]*?(?:\.[a-z\d$_]*?)*?)}/gi; + + return template.replace(braceRegex, (_, key) => { + let result = data; + + for (const property of key.split('.')) { + result = result ? result[property] : ''; + } + + return String(result); + }); +}; diff --git a/node_modules/pupa/license b/node_modules/pupa/license new file mode 100644 index 0000000..e7af2f7 --- /dev/null +++ b/node_modules/pupa/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/pupa/package.json b/node_modules/pupa/package.json new file mode 100644 index 0000000..399ce6f --- /dev/null +++ b/node_modules/pupa/package.json @@ -0,0 +1,47 @@ +{ + "name": "pupa", + "version": "2.1.1", + "description": "Simple micro templating", + "license": "MIT", + "repository": "sindresorhus/pupa", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "string", + "formatting", + "template", + "object", + "format", + "interpolate", + "interpolation", + "templating", + "expand", + "simple", + "replace", + "placeholders", + "values", + "transform", + "micro" + ], + "dependencies": { + "escape-goat": "^2.0.0" + }, + "devDependencies": { + "ava": "^1.4.1", + "tsd": "^0.7.2", + "xo": "^0.24.0" + } +} diff --git a/node_modules/pupa/readme.md b/node_modules/pupa/readme.md new file mode 100644 index 0000000..bb9ab18 --- /dev/null +++ b/node_modules/pupa/readme.md @@ -0,0 +1,63 @@ +# pupa [![Build Status](https://travis-ci.org/sindresorhus/pupa.svg?branch=master)](https://travis-ci.org/sindresorhus/pupa) + +> Simple micro templating + +Useful when all you need is to fill in some placeholders. + + +## Install + +``` +$ npm install pupa +``` + + +## Usage + +```js +const pupa = require('pupa'); + +pupa('The mobile number of {name} is {phone.mobile}', { + name: 'Sindre', + phone: { + mobile: '609 24 363' + } +}); +//=> 'The mobile number of Sindre is 609 24 363' + +pupa('I like {0} and {1}', ['🦄', '🐮']); +//=> 'I like 🦄 and 🐮' + +// Double braces encodes the HTML entities to avoid code injection +pupa('I like {{0}} and {{1}}', ['
🦄
', '🐮']); +//=> 'I like <br>🦄</br> and <i>🐮</i>' +``` + + +## API + +### pupa(template, data) + +#### template + +Type: `string` + +Text with placeholders for `data` properties. + +#### data + +Type: `object | unknown[]` + +Data to interpolate into `template`. + + +## FAQ + +### What about template literals? + +Template literals expand on creation. This module expands the template on execution, which can be useful if either or both template and data are lazily created or user-supplied. + + +## Related + +- [pupa-cli](https://github.com/sindresorhus/pupa-cli) - CLI for this module diff --git a/node_modules/qs/.editorconfig b/node_modules/qs/.editorconfig new file mode 100644 index 0000000..2f08444 --- /dev/null +++ b/node_modules/qs/.editorconfig @@ -0,0 +1,43 @@ +root = true + +[*] +indent_style = space +indent_size = 4 +end_of_line = lf +charset = utf-8 +trim_trailing_whitespace = true +insert_final_newline = true +max_line_length = 160 +quote_type = single + +[test/*] +max_line_length = off + +[LICENSE.md] +indent_size = off + +[*.md] +max_line_length = off + +[*.json] +max_line_length = off + +[Makefile] +max_line_length = off + +[CHANGELOG.md] +indent_style = space +indent_size = 2 + +[LICENSE] +indent_size = 2 +max_line_length = off + +[coverage/**/*] +indent_size = off +indent_style = off +indent = off +max_line_length = off + +[.nycrc] +indent_style = tab diff --git a/node_modules/qs/.eslintrc b/node_modules/qs/.eslintrc new file mode 100644 index 0000000..3f84899 --- /dev/null +++ b/node_modules/qs/.eslintrc @@ -0,0 +1,37 @@ +{ + "root": true, + + "extends": "@ljharb", + + "ignorePatterns": [ + "dist/", + ], + + "rules": { + "complexity": 0, + "consistent-return": 1, + "func-name-matching": 0, + "id-length": [2, { "min": 1, "max": 25, "properties": "never" }], + "indent": [2, 4], + "max-lines-per-function": 0, + "max-params": [2, 12], + "max-statements": [2, 45], + "multiline-comment-style": 0, + "no-continue": 1, + "no-magic-numbers": 0, + "no-param-reassign": 1, + "no-restricted-syntax": [2, "BreakStatement", "DebuggerStatement", "ForInStatement", "LabeledStatement", "WithStatement"], + }, + + "overrides": [ + { + "files": "test/**", + "rules": { + "max-lines-per-function": 0, + "max-statements": 0, + "no-extend-native": 0, + "function-paren-newline": 0, + }, + }, + ], +} diff --git a/node_modules/qs/.github/FUNDING.yml b/node_modules/qs/.github/FUNDING.yml new file mode 100644 index 0000000..0355f4f --- /dev/null +++ b/node_modules/qs/.github/FUNDING.yml @@ -0,0 +1,12 @@ +# These are supported funding model platforms + +github: [ljharb] +patreon: # Replace with a single Patreon username +open_collective: # Replace with a single Open Collective username +ko_fi: # Replace with a single Ko-fi username +tidelift: npm/qs +community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry +liberapay: # Replace with a single Liberapay username +issuehunt: # Replace with a single IssueHunt username +otechie: # Replace with a single Otechie username +custom: # Replace with a single custom sponsorship URL diff --git a/node_modules/qs/.nycrc b/node_modules/qs/.nycrc new file mode 100644 index 0000000..1d57cab --- /dev/null +++ b/node_modules/qs/.nycrc @@ -0,0 +1,13 @@ +{ + "all": true, + "check-coverage": false, + "reporter": ["text-summary", "text", "html", "json"], + "lines": 86, + "statements": 85.93, + "functions": 82.43, + "branches": 76.06, + "exclude": [ + "coverage", + "dist" + ] +} diff --git a/node_modules/qs/CHANGELOG.md b/node_modules/qs/CHANGELOG.md new file mode 100644 index 0000000..849c92e --- /dev/null +++ b/node_modules/qs/CHANGELOG.md @@ -0,0 +1,250 @@ +## **6.5.3** +- [Fix] `parse`: ignore `__proto__` keys (#428) +- [Fix]` `utils.merge`: avoid a crash with a null target and a truthy non-array source +- [Fix] correctly parse nested arrays +- [Fix] `stringify`: fix a crash with `strictNullHandling` and a custom `filter`/`serializeDate` (#279) +- [Fix] `utils`: `merge`: fix crash when `source` is a truthy primitive & no options are provided +- [Fix] when `parseArrays` is false, properly handle keys ending in `[]` +- [Fix] fix for an impossible situation: when the formatter is called with a non-string value +- [Fix] `utils.merge`: avoid a crash with a null target and an array source +- [Refactor] `utils`: reduce observable [[Get]]s +- [Refactor] use cached `Array.isArray` +- [Refactor] `stringify`: Avoid arr = arr.concat(...), push to the existing instance (#269) +- [Refactor] `parse`: only need to reassign the var once +- [Robustness] `stringify`: avoid relying on a global `undefined` (#427) +- [readme] remove travis badge; add github actions/codecov badges; update URLs +- [Docs] Clean up license text so it’s properly detected as BSD-3-Clause +- [Docs] Clarify the need for "arrayLimit" option +- [meta] fix README.md (#399) +- [meta] add FUNDING.yml +- [actions] backport actions from main +- [Tests] always use `String(x)` over `x.toString()` +- [Tests] remove nonexistent tape option +- [Dev Deps] backport from main + +## **6.5.2** +- [Fix] use `safer-buffer` instead of `Buffer` constructor +- [Refactor] utils: `module.exports` one thing, instead of mutating `exports` (#230) +- [Dev Deps] update `browserify`, `eslint`, `iconv-lite`, `safer-buffer`, `tape`, `browserify` + +## **6.5.1** +- [Fix] Fix parsing & compacting very deep objects (#224) +- [Refactor] name utils functions +- [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `tape` +- [Tests] up to `node` `v8.4`; use `nvm install-latest-npm` so newer npm doesn’t break older node +- [Tests] Use precise dist for Node.js 0.6 runtime (#225) +- [Tests] make 0.6 required, now that it’s passing +- [Tests] on `node` `v8.2`; fix npm on node 0.6 + +## **6.5.0** +- [New] add `utils.assign` +- [New] pass default encoder/decoder to custom encoder/decoder functions (#206) +- [New] `parse`/`stringify`: add `ignoreQueryPrefix`/`addQueryPrefix` options, respectively (#213) +- [Fix] Handle stringifying empty objects with addQueryPrefix (#217) +- [Fix] do not mutate `options` argument (#207) +- [Refactor] `parse`: cache index to reuse in else statement (#182) +- [Docs] add various badges to readme (#208) +- [Dev Deps] update `eslint`, `browserify`, `iconv-lite`, `tape` +- [Tests] up to `node` `v8.1`, `v7.10`, `v6.11`; npm v4.6 breaks on node < v1; npm v5+ breaks on node < v4 +- [Tests] add `editorconfig-tools` + +## **6.4.0** +- [New] `qs.stringify`: add `encodeValuesOnly` option +- [Fix] follow `allowPrototypes` option during merge (#201, #201) +- [Fix] support keys starting with brackets (#202, #200) +- [Fix] chmod a-x +- [Dev Deps] update `eslint` +- [Tests] up to `node` `v7.7`, `v6.10`,` v4.8`; disable osx builds since they block linux builds +- [eslint] reduce warnings + +## **6.3.2** +- [Fix] follow `allowPrototypes` option during merge (#201, #200) +- [Dev Deps] update `eslint` +- [Fix] chmod a-x +- [Fix] support keys starting with brackets (#202, #200) +- [Tests] up to `node` `v7.7`, `v6.10`,` v4.8`; disable osx builds since they block linux builds + +## **6.3.1** +- [Fix] ensure that `allowPrototypes: false` does not ever shadow Object.prototype properties (thanks, @snyk!) +- [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `browserify`, `iconv-lite`, `qs-iconv`, `tape` +- [Tests] on all node minors; improve test matrix +- [Docs] document stringify option `allowDots` (#195) +- [Docs] add empty object and array values example (#195) +- [Docs] Fix minor inconsistency/typo (#192) +- [Docs] document stringify option `sort` (#191) +- [Refactor] `stringify`: throw faster with an invalid encoder +- [Refactor] remove unnecessary escapes (#184) +- Remove contributing.md, since `qs` is no longer part of `hapi` (#183) + +## **6.3.0** +- [New] Add support for RFC 1738 (#174, #173) +- [New] `stringify`: Add `serializeDate` option to customize Date serialization (#159) +- [Fix] ensure `utils.merge` handles merging two arrays +- [Refactor] only constructors should be capitalized +- [Refactor] capitalized var names are for constructors only +- [Refactor] avoid using a sparse array +- [Robustness] `formats`: cache `String#replace` +- [Dev Deps] update `browserify`, `eslint`, `@ljharb/eslint-config`; add `safe-publish-latest` +- [Tests] up to `node` `v6.8`, `v4.6`; improve test matrix +- [Tests] flesh out arrayLimit/arrayFormat tests (#107) +- [Tests] skip Object.create tests when null objects are not available +- [Tests] Turn on eslint for test files (#175) + +## **6.2.3** +- [Fix] follow `allowPrototypes` option during merge (#201, #200) +- [Fix] chmod a-x +- [Fix] support keys starting with brackets (#202, #200) +- [Tests] up to `node` `v7.7`, `v6.10`,` v4.8`; disable osx builds since they block linux builds + +## **6.2.2** +- [Fix] ensure that `allowPrototypes: false` does not ever shadow Object.prototype properties + +## **6.2.1** +- [Fix] ensure `key[]=x&key[]&key[]=y` results in 3, not 2, values +- [Refactor] Be explicit and use `Object.prototype.hasOwnProperty.call` +- [Tests] remove `parallelshell` since it does not reliably report failures +- [Tests] up to `node` `v6.3`, `v5.12` +- [Dev Deps] update `tape`, `eslint`, `@ljharb/eslint-config`, `qs-iconv` + +## [**6.2.0**](https://github.com/ljharb/qs/issues?milestone=36&state=closed) +- [New] pass Buffers to the encoder/decoder directly (#161) +- [New] add "encoder" and "decoder" options, for custom param encoding/decoding (#160) +- [Fix] fix compacting of nested sparse arrays (#150) + +## **6.1.2 +- [Fix] follow `allowPrototypes` option during merge (#201, #200) +- [Fix] chmod a-x +- [Fix] support keys starting with brackets (#202, #200) +- [Tests] up to `node` `v7.7`, `v6.10`,` v4.8`; disable osx builds since they block linux builds + +## **6.1.1** +- [Fix] ensure that `allowPrototypes: false` does not ever shadow Object.prototype properties + +## [**6.1.0**](https://github.com/ljharb/qs/issues?milestone=35&state=closed) +- [New] allowDots option for `stringify` (#151) +- [Fix] "sort" option should work at a depth of 3 or more (#151) +- [Fix] Restore `dist` directory; will be removed in v7 (#148) + +## **6.0.4** +- [Fix] follow `allowPrototypes` option during merge (#201, #200) +- [Fix] chmod a-x +- [Fix] support keys starting with brackets (#202, #200) +- [Tests] up to `node` `v7.7`, `v6.10`,` v4.8`; disable osx builds since they block linux builds + +## **6.0.3** +- [Fix] ensure that `allowPrototypes: false` does not ever shadow Object.prototype properties +- [Fix] Restore `dist` directory; will be removed in v7 (#148) + +## [**6.0.2**](https://github.com/ljharb/qs/issues?milestone=33&state=closed) +- Revert ES6 requirement and restore support for node down to v0.8. + +## [**6.0.1**](https://github.com/ljharb/qs/issues?milestone=32&state=closed) +- [**#127**](https://github.com/ljharb/qs/pull/127) Fix engines definition in package.json + +## [**6.0.0**](https://github.com/ljharb/qs/issues?milestone=31&state=closed) +- [**#124**](https://github.com/ljharb/qs/issues/124) Use ES6 and drop support for node < v4 + +## **5.2.1** +- [Fix] ensure `key[]=x&key[]&key[]=y` results in 3, not 2, values + +## [**5.2.0**](https://github.com/ljharb/qs/issues?milestone=30&state=closed) +- [**#64**](https://github.com/ljharb/qs/issues/64) Add option to sort object keys in the query string + +## [**5.1.0**](https://github.com/ljharb/qs/issues?milestone=29&state=closed) +- [**#117**](https://github.com/ljharb/qs/issues/117) make URI encoding stringified results optional +- [**#106**](https://github.com/ljharb/qs/issues/106) Add flag `skipNulls` to optionally skip null values in stringify + +## [**5.0.0**](https://github.com/ljharb/qs/issues?milestone=28&state=closed) +- [**#114**](https://github.com/ljharb/qs/issues/114) default allowDots to false +- [**#100**](https://github.com/ljharb/qs/issues/100) include dist to npm + +## [**4.0.0**](https://github.com/ljharb/qs/issues?milestone=26&state=closed) +- [**#98**](https://github.com/ljharb/qs/issues/98) make returning plain objects and allowing prototype overwriting properties optional + +## [**3.1.0**](https://github.com/ljharb/qs/issues?milestone=24&state=closed) +- [**#89**](https://github.com/ljharb/qs/issues/89) Add option to disable "Transform dot notation to bracket notation" + +## [**3.0.0**](https://github.com/ljharb/qs/issues?milestone=23&state=closed) +- [**#80**](https://github.com/ljharb/qs/issues/80) qs.parse silently drops properties +- [**#77**](https://github.com/ljharb/qs/issues/77) Perf boost +- [**#60**](https://github.com/ljharb/qs/issues/60) Add explicit option to disable array parsing +- [**#74**](https://github.com/ljharb/qs/issues/74) Bad parse when turning array into object +- [**#81**](https://github.com/ljharb/qs/issues/81) Add a `filter` option +- [**#68**](https://github.com/ljharb/qs/issues/68) Fixed issue with recursion and passing strings into objects. +- [**#66**](https://github.com/ljharb/qs/issues/66) Add mixed array and object dot notation support Closes: #47 +- [**#76**](https://github.com/ljharb/qs/issues/76) RFC 3986 +- [**#85**](https://github.com/ljharb/qs/issues/85) No equal sign +- [**#84**](https://github.com/ljharb/qs/issues/84) update license attribute + +## [**2.4.1**](https://github.com/ljharb/qs/issues?milestone=20&state=closed) +- [**#73**](https://github.com/ljharb/qs/issues/73) Property 'hasOwnProperty' of object # is not a function + +## [**2.4.0**](https://github.com/ljharb/qs/issues?milestone=19&state=closed) +- [**#70**](https://github.com/ljharb/qs/issues/70) Add arrayFormat option + +## [**2.3.3**](https://github.com/ljharb/qs/issues?milestone=18&state=closed) +- [**#59**](https://github.com/ljharb/qs/issues/59) make sure array indexes are >= 0, closes #57 +- [**#58**](https://github.com/ljharb/qs/issues/58) make qs usable for browser loader + +## [**2.3.2**](https://github.com/ljharb/qs/issues?milestone=17&state=closed) +- [**#55**](https://github.com/ljharb/qs/issues/55) allow merging a string into an object + +## [**2.3.1**](https://github.com/ljharb/qs/issues?milestone=16&state=closed) +- [**#52**](https://github.com/ljharb/qs/issues/52) Return "undefined" and "false" instead of throwing "TypeError". + +## [**2.3.0**](https://github.com/ljharb/qs/issues?milestone=15&state=closed) +- [**#50**](https://github.com/ljharb/qs/issues/50) add option to omit array indices, closes #46 + +## [**2.2.5**](https://github.com/ljharb/qs/issues?milestone=14&state=closed) +- [**#39**](https://github.com/ljharb/qs/issues/39) Is there an alternative to Buffer.isBuffer? +- [**#49**](https://github.com/ljharb/qs/issues/49) refactor utils.merge, fixes #45 +- [**#41**](https://github.com/ljharb/qs/issues/41) avoid browserifying Buffer, for #39 + +## [**2.2.4**](https://github.com/ljharb/qs/issues?milestone=13&state=closed) +- [**#38**](https://github.com/ljharb/qs/issues/38) how to handle object keys beginning with a number + +## [**2.2.3**](https://github.com/ljharb/qs/issues?milestone=12&state=closed) +- [**#37**](https://github.com/ljharb/qs/issues/37) parser discards first empty value in array +- [**#36**](https://github.com/ljharb/qs/issues/36) Update to lab 4.x + +## [**2.2.2**](https://github.com/ljharb/qs/issues?milestone=11&state=closed) +- [**#33**](https://github.com/ljharb/qs/issues/33) Error when plain object in a value +- [**#34**](https://github.com/ljharb/qs/issues/34) use Object.prototype.hasOwnProperty.call instead of obj.hasOwnProperty +- [**#24**](https://github.com/ljharb/qs/issues/24) Changelog? Semver? + +## [**2.2.1**](https://github.com/ljharb/qs/issues?milestone=10&state=closed) +- [**#32**](https://github.com/ljharb/qs/issues/32) account for circular references properly, closes #31 +- [**#31**](https://github.com/ljharb/qs/issues/31) qs.parse stackoverflow on circular objects + +## [**2.2.0**](https://github.com/ljharb/qs/issues?milestone=9&state=closed) +- [**#26**](https://github.com/ljharb/qs/issues/26) Don't use Buffer global if it's not present +- [**#30**](https://github.com/ljharb/qs/issues/30) Bug when merging non-object values into arrays +- [**#29**](https://github.com/ljharb/qs/issues/29) Don't call Utils.clone at the top of Utils.merge +- [**#23**](https://github.com/ljharb/qs/issues/23) Ability to not limit parameters? + +## [**2.1.0**](https://github.com/ljharb/qs/issues?milestone=8&state=closed) +- [**#22**](https://github.com/ljharb/qs/issues/22) Enable using a RegExp as delimiter + +## [**2.0.0**](https://github.com/ljharb/qs/issues?milestone=7&state=closed) +- [**#18**](https://github.com/ljharb/qs/issues/18) Why is there arrayLimit? +- [**#20**](https://github.com/ljharb/qs/issues/20) Configurable parametersLimit +- [**#21**](https://github.com/ljharb/qs/issues/21) make all limits optional, for #18, for #20 + +## [**1.2.2**](https://github.com/ljharb/qs/issues?milestone=6&state=closed) +- [**#19**](https://github.com/ljharb/qs/issues/19) Don't overwrite null values + +## [**1.2.1**](https://github.com/ljharb/qs/issues?milestone=5&state=closed) +- [**#16**](https://github.com/ljharb/qs/issues/16) ignore non-string delimiters +- [**#15**](https://github.com/ljharb/qs/issues/15) Close code block + +## [**1.2.0**](https://github.com/ljharb/qs/issues?milestone=4&state=closed) +- [**#12**](https://github.com/ljharb/qs/issues/12) Add optional delim argument +- [**#13**](https://github.com/ljharb/qs/issues/13) fix #11: flattened keys in array are now correctly parsed + +## [**1.1.0**](https://github.com/ljharb/qs/issues?milestone=3&state=closed) +- [**#7**](https://github.com/ljharb/qs/issues/7) Empty values of a POST array disappear after being submitted +- [**#9**](https://github.com/ljharb/qs/issues/9) Should not omit equals signs (=) when value is null +- [**#6**](https://github.com/ljharb/qs/issues/6) Minor grammar fix in README + +## [**1.0.2**](https://github.com/ljharb/qs/issues?milestone=2&state=closed) +- [**#5**](https://github.com/ljharb/qs/issues/5) array holes incorrectly copied into object on large index diff --git a/node_modules/qs/LICENSE.md b/node_modules/qs/LICENSE.md new file mode 100644 index 0000000..fecf6b6 --- /dev/null +++ b/node_modules/qs/LICENSE.md @@ -0,0 +1,29 @@ +BSD 3-Clause License + +Copyright (c) 2014, Nathan LaFreniere and other [contributors](https://github.com/ljharb/qs/graphs/contributors) +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/node_modules/qs/README.md b/node_modules/qs/README.md new file mode 100644 index 0000000..20fb9ca --- /dev/null +++ b/node_modules/qs/README.md @@ -0,0 +1,510 @@ +# qs [![Version Badge][2]][1] + +[![github actions][actions-image]][actions-url] +[![coverage][codecov-image]][codecov-url] +[![dependency status][deps-svg]][deps-url] +[![dev dependency status][dev-deps-svg]][dev-deps-url] +[![License][license-image]][license-url] +[![Downloads][downloads-image]][downloads-url] + +[![npm badge][npm-badge-png]][package-url] + +A querystring parsing and stringifying library with some added security. + +Lead Maintainer: [Jordan Harband](https://github.com/ljharb) + +The **qs** module was originally created and maintained by [TJ Holowaychuk](https://github.com/visionmedia/node-querystring). + +## Usage + +```javascript +var qs = require('qs'); +var assert = require('assert'); + +var obj = qs.parse('a=c'); +assert.deepEqual(obj, { a: 'c' }); + +var str = qs.stringify(obj); +assert.equal(str, 'a=c'); +``` + +### Parsing Objects + +[](#preventEval) +```javascript +qs.parse(string, [options]); +``` + +**qs** allows you to create nested objects within your query strings, by surrounding the name of sub-keys with square brackets `[]`. +For example, the string `'foo[bar]=baz'` converts to: + +```javascript +assert.deepEqual(qs.parse('foo[bar]=baz'), { + foo: { + bar: 'baz' + } +}); +``` + +When using the `plainObjects` option the parsed value is returned as a null object, created via `Object.create(null)` and as such you should be aware that prototype methods will not exist on it and a user may set those names to whatever value they like: + +```javascript +var nullObject = qs.parse('a[hasOwnProperty]=b', { plainObjects: true }); +assert.deepEqual(nullObject, { a: { hasOwnProperty: 'b' } }); +``` + +By default parameters that would overwrite properties on the object prototype are ignored, if you wish to keep the data from those fields either use `plainObjects` as mentioned above, or set `allowPrototypes` to `true` which will allow user input to overwrite those properties. *WARNING* It is generally a bad idea to enable this option as it can cause problems when attempting to use the properties that have been overwritten. Always be careful with this option. + +```javascript +var protoObject = qs.parse('a[hasOwnProperty]=b', { allowPrototypes: true }); +assert.deepEqual(protoObject, { a: { hasOwnProperty: 'b' } }); +``` + +URI encoded strings work too: + +```javascript +assert.deepEqual(qs.parse('a%5Bb%5D=c'), { + a: { b: 'c' } +}); +``` + +You can also nest your objects, like `'foo[bar][baz]=foobarbaz'`: + +```javascript +assert.deepEqual(qs.parse('foo[bar][baz]=foobarbaz'), { + foo: { + bar: { + baz: 'foobarbaz' + } + } +}); +``` + +By default, when nesting objects **qs** will only parse up to 5 children deep. This means if you attempt to parse a string like +`'a[b][c][d][e][f][g][h][i]=j'` your resulting object will be: + +```javascript +var expected = { + a: { + b: { + c: { + d: { + e: { + f: { + '[g][h][i]': 'j' + } + } + } + } + } + } +}; +var string = 'a[b][c][d][e][f][g][h][i]=j'; +assert.deepEqual(qs.parse(string), expected); +``` + +This depth can be overridden by passing a `depth` option to `qs.parse(string, [options])`: + +```javascript +var deep = qs.parse('a[b][c][d][e][f][g][h][i]=j', { depth: 1 }); +assert.deepEqual(deep, { a: { b: { '[c][d][e][f][g][h][i]': 'j' } } }); +``` + +The depth limit helps mitigate abuse when **qs** is used to parse user input, and it is recommended to keep it a reasonably small number. + +For similar reasons, by default **qs** will only parse up to 1000 parameters. This can be overridden by passing a `parameterLimit` option: + +```javascript +var limited = qs.parse('a=b&c=d', { parameterLimit: 1 }); +assert.deepEqual(limited, { a: 'b' }); +``` + +To bypass the leading question mark, use `ignoreQueryPrefix`: + +```javascript +var prefixed = qs.parse('?a=b&c=d', { ignoreQueryPrefix: true }); +assert.deepEqual(prefixed, { a: 'b', c: 'd' }); +``` + +An optional delimiter can also be passed: + +```javascript +var delimited = qs.parse('a=b;c=d', { delimiter: ';' }); +assert.deepEqual(delimited, { a: 'b', c: 'd' }); +``` + +Delimiters can be a regular expression too: + +```javascript +var regexed = qs.parse('a=b;c=d,e=f', { delimiter: /[;,]/ }); +assert.deepEqual(regexed, { a: 'b', c: 'd', e: 'f' }); +``` + +Option `allowDots` can be used to enable dot notation: + +```javascript +var withDots = qs.parse('a.b=c', { allowDots: true }); +assert.deepEqual(withDots, { a: { b: 'c' } }); +``` + +### Parsing Arrays + +**qs** can also parse arrays using a similar `[]` notation: + +```javascript +var withArray = qs.parse('a[]=b&a[]=c'); +assert.deepEqual(withArray, { a: ['b', 'c'] }); +``` + +You may specify an index as well: + +```javascript +var withIndexes = qs.parse('a[1]=c&a[0]=b'); +assert.deepEqual(withIndexes, { a: ['b', 'c'] }); +``` + +Note that the only difference between an index in an array and a key in an object is that the value between the brackets must be a number +to create an array. When creating arrays with specific indices, **qs** will compact a sparse array to only the existing values preserving +their order: + +```javascript +var noSparse = qs.parse('a[1]=b&a[15]=c'); +assert.deepEqual(noSparse, { a: ['b', 'c'] }); +``` + +Note that an empty string is also a value, and will be preserved: + +```javascript +var withEmptyString = qs.parse('a[]=&a[]=b'); +assert.deepEqual(withEmptyString, { a: ['', 'b'] }); + +var withIndexedEmptyString = qs.parse('a[0]=b&a[1]=&a[2]=c'); +assert.deepEqual(withIndexedEmptyString, { a: ['b', '', 'c'] }); +``` + +**qs** will also limit specifying indices in an array to a maximum index of `20`. Any array members with an index of greater than `20` will +instead be converted to an object with the index as the key. This is needed to handle cases when someone sent, for example, `a[999999999]` and it will take significant time to iterate over this huge array. + +```javascript +var withMaxIndex = qs.parse('a[100]=b'); +assert.deepEqual(withMaxIndex, { a: { '100': 'b' } }); +``` + +This limit can be overridden by passing an `arrayLimit` option: + +```javascript +var withArrayLimit = qs.parse('a[1]=b', { arrayLimit: 0 }); +assert.deepEqual(withArrayLimit, { a: { '1': 'b' } }); +``` + +To disable array parsing entirely, set `parseArrays` to `false`. + +```javascript +var noParsingArrays = qs.parse('a[]=b', { parseArrays: false }); +assert.deepEqual(noParsingArrays, { a: { '0': 'b' } }); +``` + +If you mix notations, **qs** will merge the two items into an object: + +```javascript +var mixedNotation = qs.parse('a[0]=b&a[b]=c'); +assert.deepEqual(mixedNotation, { a: { '0': 'b', b: 'c' } }); +``` + +You can also create arrays of objects: + +```javascript +var arraysOfObjects = qs.parse('a[][b]=c'); +assert.deepEqual(arraysOfObjects, { a: [{ b: 'c' }] }); +``` + +### Stringifying + +[](#preventEval) +```javascript +qs.stringify(object, [options]); +``` + +When stringifying, **qs** by default URI encodes output. Objects are stringified as you would expect: + +```javascript +assert.equal(qs.stringify({ a: 'b' }), 'a=b'); +assert.equal(qs.stringify({ a: { b: 'c' } }), 'a%5Bb%5D=c'); +``` + +This encoding can be disabled by setting the `encode` option to `false`: + +```javascript +var unencoded = qs.stringify({ a: { b: 'c' } }, { encode: false }); +assert.equal(unencoded, 'a[b]=c'); +``` + +Encoding can be disabled for keys by setting the `encodeValuesOnly` option to `true`: +```javascript +var encodedValues = qs.stringify( + { a: 'b', c: ['d', 'e=f'], f: [['g'], ['h']] }, + { encodeValuesOnly: true } +); +assert.equal(encodedValues,'a=b&c[0]=d&c[1]=e%3Df&f[0][0]=g&f[1][0]=h'); +``` + +This encoding can also be replaced by a custom encoding method set as `encoder` option: + +```javascript +var encoded = qs.stringify({ a: { b: 'c' } }, { encoder: function (str) { + // Passed in values `a`, `b`, `c` + return // Return encoded string +}}) +``` + +_(Note: the `encoder` option does not apply if `encode` is `false`)_ + +Analogue to the `encoder` there is a `decoder` option for `parse` to override decoding of properties and values: + +```javascript +var decoded = qs.parse('x=z', { decoder: function (str) { + // Passed in values `x`, `z` + return // Return decoded string +}}) +``` + +You can encode keys and values using different logic by using the type argument provided to the encoder: + +```javascript +var encoded = qs.stringify({ a: { b: 'c' } }, { encoder: function (str, defaultEncoder, charset, type) { + if (type === 'key') { + return // Encoded key + } else if (type === 'value') { + return // Encoded value + } +}}) +``` + +The type argument is also provided to the decoder: + +```javascript +var decoded = qs.parse('x=z', { decoder: function (str, defaultDecoder, charset, type) { + if (type === 'key') { + return // Decoded key + } else if (type === 'value') { + return // Decoded value + } +}}) +``` + +Examples beyond this point will be shown as though the output is not URI encoded for clarity. Please note that the return values in these cases *will* be URI encoded during real usage. + +When arrays are stringified, by default they are given explicit indices: + +```javascript +qs.stringify({ a: ['b', 'c', 'd'] }); +// 'a[0]=b&a[1]=c&a[2]=d' +``` + +You may override this by setting the `indices` option to `false`: + +```javascript +qs.stringify({ a: ['b', 'c', 'd'] }, { indices: false }); +// 'a=b&a=c&a=d' +``` + +You may use the `arrayFormat` option to specify the format of the output array: + +```javascript +qs.stringify({ a: ['b', 'c'] }, { arrayFormat: 'indices' }) +// 'a[0]=b&a[1]=c' +qs.stringify({ a: ['b', 'c'] }, { arrayFormat: 'brackets' }) +// 'a[]=b&a[]=c' +qs.stringify({ a: ['b', 'c'] }, { arrayFormat: 'repeat' }) +// 'a=b&a=c' +``` + +When objects are stringified, by default they use bracket notation: + +```javascript +qs.stringify({ a: { b: { c: 'd', e: 'f' } } }); +// 'a[b][c]=d&a[b][e]=f' +``` + +You may override this to use dot notation by setting the `allowDots` option to `true`: + +```javascript +qs.stringify({ a: { b: { c: 'd', e: 'f' } } }, { allowDots: true }); +// 'a.b.c=d&a.b.e=f' +``` + +Empty strings and null values will omit the value, but the equals sign (=) remains in place: + +```javascript +assert.equal(qs.stringify({ a: '' }), 'a='); +``` + +Key with no values (such as an empty object or array) will return nothing: + +```javascript +assert.equal(qs.stringify({ a: [] }), ''); +assert.equal(qs.stringify({ a: {} }), ''); +assert.equal(qs.stringify({ a: [{}] }), ''); +assert.equal(qs.stringify({ a: { b: []} }), ''); +assert.equal(qs.stringify({ a: { b: {}} }), ''); +``` + +Properties that are set to `undefined` will be omitted entirely: + +```javascript +assert.equal(qs.stringify({ a: null, b: undefined }), 'a='); +``` + +The query string may optionally be prepended with a question mark: + +```javascript +assert.equal(qs.stringify({ a: 'b', c: 'd' }, { addQueryPrefix: true }), '?a=b&c=d'); +``` + +The delimiter may be overridden with stringify as well: + +```javascript +assert.equal(qs.stringify({ a: 'b', c: 'd' }, { delimiter: ';' }), 'a=b;c=d'); +``` + +If you only want to override the serialization of `Date` objects, you can provide a `serializeDate` option: + +```javascript +var date = new Date(7); +assert.equal(qs.stringify({ a: date }), 'a=1970-01-01T00:00:00.007Z'.replace(/:/g, '%3A')); +assert.equal( + qs.stringify({ a: date }, { serializeDate: function (d) { return d.getTime(); } }), + 'a=7' +); +``` + +You may use the `sort` option to affect the order of parameter keys: + +```javascript +function alphabeticalSort(a, b) { + return a.localeCompare(b); +} +assert.equal(qs.stringify({ a: 'c', z: 'y', b : 'f' }, { sort: alphabeticalSort }), 'a=c&b=f&z=y'); +``` + +Finally, you can use the `filter` option to restrict which keys will be included in the stringified output. +If you pass a function, it will be called for each key to obtain the replacement value. Otherwise, if you +pass an array, it will be used to select properties and array indices for stringification: + +```javascript +function filterFunc(prefix, value) { + if (prefix == 'b') { + // Return an `undefined` value to omit a property. + return; + } + if (prefix == 'e[f]') { + return value.getTime(); + } + if (prefix == 'e[g][0]') { + return value * 2; + } + return value; +} +qs.stringify({ a: 'b', c: 'd', e: { f: new Date(123), g: [2] } }, { filter: filterFunc }); +// 'a=b&c=d&e[f]=123&e[g][0]=4' +qs.stringify({ a: 'b', c: 'd', e: 'f' }, { filter: ['a', 'e'] }); +// 'a=b&e=f' +qs.stringify({ a: ['b', 'c', 'd'], e: 'f' }, { filter: ['a', 0, 2] }); +// 'a[0]=b&a[2]=d' +``` + +### Handling of `null` values + +By default, `null` values are treated like empty strings: + +```javascript +var withNull = qs.stringify({ a: null, b: '' }); +assert.equal(withNull, 'a=&b='); +``` + +Parsing does not distinguish between parameters with and without equal signs. Both are converted to empty strings. + +```javascript +var equalsInsensitive = qs.parse('a&b='); +assert.deepEqual(equalsInsensitive, { a: '', b: '' }); +``` + +To distinguish between `null` values and empty strings use the `strictNullHandling` flag. In the result string the `null` +values have no `=` sign: + +```javascript +var strictNull = qs.stringify({ a: null, b: '' }, { strictNullHandling: true }); +assert.equal(strictNull, 'a&b='); +``` + +To parse values without `=` back to `null` use the `strictNullHandling` flag: + +```javascript +var parsedStrictNull = qs.parse('a&b=', { strictNullHandling: true }); +assert.deepEqual(parsedStrictNull, { a: null, b: '' }); +``` + +To completely skip rendering keys with `null` values, use the `skipNulls` flag: + +```javascript +var nullsSkipped = qs.stringify({ a: 'b', c: null}, { skipNulls: true }); +assert.equal(nullsSkipped, 'a=b'); +``` + +### Dealing with special character sets + +By default the encoding and decoding of characters is done in `utf-8`. If you +wish to encode querystrings to a different character set (i.e. +[Shift JIS](https://en.wikipedia.org/wiki/Shift_JIS)) you can use the +[`qs-iconv`](https://github.com/martinheidegger/qs-iconv) library: + +```javascript +var encoder = require('qs-iconv/encoder')('shift_jis'); +var shiftJISEncoded = qs.stringify({ a: 'こんにちは!' }, { encoder: encoder }); +assert.equal(shiftJISEncoded, 'a=%82%B1%82%F1%82%C9%82%BF%82%CD%81I'); +``` + +This also works for decoding of query strings: + +```javascript +var decoder = require('qs-iconv/decoder')('shift_jis'); +var obj = qs.parse('a=%82%B1%82%F1%82%C9%82%BF%82%CD%81I', { decoder: decoder }); +assert.deepEqual(obj, { a: 'こんにちは!' }); +``` + +### RFC 3986 and RFC 1738 space encoding + +RFC3986 used as default option and encodes ' ' to *%20* which is backward compatible. +In the same time, output can be stringified as per RFC1738 with ' ' equal to '+'. + +``` +assert.equal(qs.stringify({ a: 'b c' }), 'a=b%20c'); +assert.equal(qs.stringify({ a: 'b c' }, { format : 'RFC3986' }), 'a=b%20c'); +assert.equal(qs.stringify({ a: 'b c' }, { format : 'RFC1738' }), 'a=b+c'); +``` + +## Security + +Please email [@ljharb](https://github.com/ljharb) or see https://tidelift.com/security if you have a potential security vulnerability to report. + +## qs for enterprise + +Available as part of the Tidelift Subscription + +The maintainers of qs and thousands of other packages are working with Tidelift to deliver commercial support and maintenance for the open source dependencies you use to build your applications. Save time, reduce risk, and improve code health, while paying the maintainers of the exact dependencies you use. [Learn more.](https://tidelift.com/subscription/pkg/npm-qs?utm_source=npm-qs&utm_medium=referral&utm_campaign=enterprise&utm_term=repo) + +[package-url]: https://npmjs.org/package/qs +[npm-version-svg]: https://versionbadg.es/ljharb/qs.svg +[deps-svg]: https://david-dm.org/ljharb/qs.svg +[deps-url]: https://david-dm.org/ljharb/qs +[dev-deps-svg]: https://david-dm.org/ljharb/qs/dev-status.svg +[dev-deps-url]: https://david-dm.org/ljharb/qs#info=devDependencies +[npm-badge-png]: https://nodei.co/npm/qs.png?downloads=true&stars=true +[license-image]: https://img.shields.io/npm/l/qs.svg +[license-url]: LICENSE +[downloads-image]: https://img.shields.io/npm/dm/qs.svg +[downloads-url]: https://npm-stat.com/charts.html?package=qs +[codecov-image]: https://codecov.io/gh/ljharb/qs/branch/main/graphs/badge.svg +[codecov-url]: https://app.codecov.io/gh/ljharb/qs/ +[actions-image]: https://img.shields.io/endpoint?url=https://github-actions-badge-u3jn4tfpocch.runkit.sh/ljharb/qs +[actions-url]: https://github.com/ljharb/qs/actions diff --git a/node_modules/qs/bower.json b/node_modules/qs/bower.json new file mode 100644 index 0000000..7a58276 --- /dev/null +++ b/node_modules/qs/bower.json @@ -0,0 +1,21 @@ +{ + "name": "qs", + "main": "dist/qs.js", + "homepage": "https://github.com/hapijs/qs", + "authors": [ + "Nathan LaFreniere " + ], + "description": "A querystring parser that supports nesting and arrays, with a depth limit", + "keywords": [ + "querystring", + "qs" + ], + "license": "BSD-3-Clause", + "ignore": [ + "**/.*", + "node_modules", + "bower_components", + "test", + "tests" + ] +} diff --git a/node_modules/qs/component.json b/node_modules/qs/component.json new file mode 100644 index 0000000..dd13558 --- /dev/null +++ b/node_modules/qs/component.json @@ -0,0 +1,15 @@ +{ + "name": "qs", + "repository": "ljharb/qs", + "description": "query-string parser / stringifier with nesting support", + "version": "6.5.3", + "keywords": ["querystring", "query", "parser"], + "main": "lib/index.js", + "scripts": [ + "lib/index.js", + "lib/parse.js", + "lib/stringify.js", + "lib/utils.js" + ], + "license": "BSD-3-Clause" +} diff --git a/node_modules/qs/dist/qs.js b/node_modules/qs/dist/qs.js new file mode 100644 index 0000000..9f54e3f --- /dev/null +++ b/node_modules/qs/dist/qs.js @@ -0,0 +1,648 @@ +(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.Qs = f()}})(function(){var define,module,exports;return (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i= 0; --i) { + var obj; + var root = chain[i]; + + if (root === '[]' && options.parseArrays) { + obj = [].concat(leaf); + } else { + obj = options.plainObjects ? Object.create(null) : {}; + var cleanRoot = root.charAt(0) === '[' && root.charAt(root.length - 1) === ']' ? root.slice(1, -1) : root; + var index = parseInt(cleanRoot, 10); + if (!options.parseArrays && cleanRoot === '') { + obj = { 0: leaf }; + } else if ( + !isNaN(index) + && root !== cleanRoot + && String(index) === cleanRoot + && index >= 0 + && (options.parseArrays && index <= options.arrayLimit) + ) { + obj = []; + obj[index] = leaf; + } else if (cleanRoot !== '__proto__') { + obj[cleanRoot] = leaf; + } + } + + leaf = obj; + } + + return leaf; +}; + +var parseKeys = function parseQueryStringKeys(givenKey, val, options) { + if (!givenKey) { + return; + } + + // Transform dot notation to bracket notation + var key = options.allowDots ? givenKey.replace(/\.([^.[]+)/g, '[$1]') : givenKey; + + // The regex chunks + + var brackets = /(\[[^[\]]*])/; + var child = /(\[[^[\]]*])/g; + + // Get the parent + + var segment = brackets.exec(key); + var parent = segment ? key.slice(0, segment.index) : key; + + // Stash the parent if it exists + + var keys = []; + if (parent) { + // If we aren't using plain objects, optionally prefix keys + // that would overwrite object prototype properties + if (!options.plainObjects && has.call(Object.prototype, parent)) { + if (!options.allowPrototypes) { + return; + } + } + + keys.push(parent); + } + + // Loop through children appending to the array until we hit depth + + var i = 0; + while ((segment = child.exec(key)) !== null && i < options.depth) { + i += 1; + if (!options.plainObjects && has.call(Object.prototype, segment[1].slice(1, -1))) { + if (!options.allowPrototypes) { + return; + } + } + keys.push(segment[1]); + } + + // If there's a remainder, just add whatever is left + + if (segment) { + keys.push('[' + key.slice(segment.index) + ']'); + } + + return parseObject(keys, val, options); +}; + +module.exports = function (str, opts) { + var options = opts ? utils.assign({}, opts) : {}; + + if (options.decoder !== null && options.decoder !== undefined && typeof options.decoder !== 'function') { + throw new TypeError('Decoder has to be a function.'); + } + + options.ignoreQueryPrefix = options.ignoreQueryPrefix === true; + options.delimiter = typeof options.delimiter === 'string' || utils.isRegExp(options.delimiter) ? options.delimiter : defaults.delimiter; + options.depth = typeof options.depth === 'number' ? options.depth : defaults.depth; + options.arrayLimit = typeof options.arrayLimit === 'number' ? options.arrayLimit : defaults.arrayLimit; + options.parseArrays = options.parseArrays !== false; + options.decoder = typeof options.decoder === 'function' ? options.decoder : defaults.decoder; + options.allowDots = typeof options.allowDots === 'boolean' ? options.allowDots : defaults.allowDots; + options.plainObjects = typeof options.plainObjects === 'boolean' ? options.plainObjects : defaults.plainObjects; + options.allowPrototypes = typeof options.allowPrototypes === 'boolean' ? options.allowPrototypes : defaults.allowPrototypes; + options.parameterLimit = typeof options.parameterLimit === 'number' ? options.parameterLimit : defaults.parameterLimit; + options.strictNullHandling = typeof options.strictNullHandling === 'boolean' ? options.strictNullHandling : defaults.strictNullHandling; + + if (str === '' || str === null || typeof str === 'undefined') { + return options.plainObjects ? Object.create(null) : {}; + } + + var tempObj = typeof str === 'string' ? parseValues(str, options) : str; + var obj = options.plainObjects ? Object.create(null) : {}; + + // Iterate over the keys and setup the new object + + var keys = Object.keys(tempObj); + for (var i = 0; i < keys.length; ++i) { + var key = keys[i]; + var newObj = parseKeys(key, tempObj[key], options); + obj = utils.merge(obj, newObj, options); + } + + return utils.compact(obj); +}; + +},{"./utils":5}],4:[function(require,module,exports){ +'use strict'; + +var utils = require('./utils'); +var formats = require('./formats'); + +var arrayPrefixGenerators = { + brackets: function brackets(prefix) { + return prefix + '[]'; + }, + indices: function indices(prefix, key) { + return prefix + '[' + key + ']'; + }, + repeat: function repeat(prefix) { + return prefix; + } +}; + +var isArray = Array.isArray; +var push = Array.prototype.push; +var pushToArray = function (arr, valueOrArray) { + push.apply(arr, isArray(valueOrArray) ? valueOrArray : [valueOrArray]); +}; + +var toISO = Date.prototype.toISOString; + +var defaults = { + delimiter: '&', + encode: true, + encoder: utils.encode, + encodeValuesOnly: false, + serializeDate: function serializeDate(date) { + return toISO.call(date); + }, + skipNulls: false, + strictNullHandling: false +}; + +var stringify = function stringify( + object, + prefix, + generateArrayPrefix, + strictNullHandling, + skipNulls, + encoder, + filter, + sort, + allowDots, + serializeDate, + formatter, + encodeValuesOnly +) { + var obj = object; + if (typeof filter === 'function') { + obj = filter(prefix, obj); + } else if (obj instanceof Date) { + obj = serializeDate(obj); + } + + if (obj === null) { + if (strictNullHandling) { + return encoder && !encodeValuesOnly ? encoder(prefix, defaults.encoder) : prefix; + } + + obj = ''; + } + + if (typeof obj === 'string' || typeof obj === 'number' || typeof obj === 'boolean' || utils.isBuffer(obj)) { + if (encoder) { + var keyValue = encodeValuesOnly ? prefix : encoder(prefix, defaults.encoder); + return [formatter(keyValue) + '=' + formatter(encoder(obj, defaults.encoder))]; + } + return [formatter(prefix) + '=' + formatter(String(obj))]; + } + + var values = []; + + if (typeof obj === 'undefined') { + return values; + } + + var objKeys; + if (isArray(filter)) { + objKeys = filter; + } else { + var keys = Object.keys(obj); + objKeys = sort ? keys.sort(sort) : keys; + } + + for (var i = 0; i < objKeys.length; ++i) { + var key = objKeys[i]; + + if (skipNulls && obj[key] === null) { + continue; + } + + if (isArray(obj)) { + pushToArray(values, stringify( + obj[key], + generateArrayPrefix(prefix, key), + generateArrayPrefix, + strictNullHandling, + skipNulls, + encoder, + filter, + sort, + allowDots, + serializeDate, + formatter, + encodeValuesOnly + )); + } else { + pushToArray(values, stringify( + obj[key], + prefix + (allowDots ? '.' + key : '[' + key + ']'), + generateArrayPrefix, + strictNullHandling, + skipNulls, + encoder, + filter, + sort, + allowDots, + serializeDate, + formatter, + encodeValuesOnly + )); + } + } + + return values; +}; + +module.exports = function (object, opts) { + var obj = object; + var options = opts ? utils.assign({}, opts) : {}; + + if (options.encoder !== null && typeof options.encoder !== 'undefined' && typeof options.encoder !== 'function') { + throw new TypeError('Encoder has to be a function.'); + } + + var delimiter = typeof options.delimiter === 'undefined' ? defaults.delimiter : options.delimiter; + var strictNullHandling = typeof options.strictNullHandling === 'boolean' ? options.strictNullHandling : defaults.strictNullHandling; + var skipNulls = typeof options.skipNulls === 'boolean' ? options.skipNulls : defaults.skipNulls; + var encode = typeof options.encode === 'boolean' ? options.encode : defaults.encode; + var encoder = typeof options.encoder === 'function' ? options.encoder : defaults.encoder; + var sort = typeof options.sort === 'function' ? options.sort : null; + var allowDots = typeof options.allowDots === 'undefined' ? false : options.allowDots; + var serializeDate = typeof options.serializeDate === 'function' ? options.serializeDate : defaults.serializeDate; + var encodeValuesOnly = typeof options.encodeValuesOnly === 'boolean' ? options.encodeValuesOnly : defaults.encodeValuesOnly; + if (typeof options.format === 'undefined') { + options.format = formats['default']; + } else if (!Object.prototype.hasOwnProperty.call(formats.formatters, options.format)) { + throw new TypeError('Unknown format option provided.'); + } + var formatter = formats.formatters[options.format]; + var objKeys; + var filter; + + if (typeof options.filter === 'function') { + filter = options.filter; + obj = filter('', obj); + } else if (isArray(options.filter)) { + filter = options.filter; + objKeys = filter; + } + + var keys = []; + + if (typeof obj !== 'object' || obj === null) { + return ''; + } + + var arrayFormat; + if (options.arrayFormat in arrayPrefixGenerators) { + arrayFormat = options.arrayFormat; + } else if ('indices' in options) { + arrayFormat = options.indices ? 'indices' : 'repeat'; + } else { + arrayFormat = 'indices'; + } + + var generateArrayPrefix = arrayPrefixGenerators[arrayFormat]; + + if (!objKeys) { + objKeys = Object.keys(obj); + } + + if (sort) { + objKeys.sort(sort); + } + + for (var i = 0; i < objKeys.length; ++i) { + var key = objKeys[i]; + + if (skipNulls && obj[key] === null) { + continue; + } + pushToArray(keys, stringify( + obj[key], + key, + generateArrayPrefix, + strictNullHandling, + skipNulls, + encode ? encoder : null, + filter, + sort, + allowDots, + serializeDate, + formatter, + encodeValuesOnly + )); + } + + var joined = keys.join(delimiter); + var prefix = options.addQueryPrefix === true ? '?' : ''; + + return joined.length > 0 ? prefix + joined : ''; +}; + +},{"./formats":1,"./utils":5}],5:[function(require,module,exports){ +'use strict'; + +var has = Object.prototype.hasOwnProperty; + +var hexTable = (function () { + var array = []; + for (var i = 0; i < 256; ++i) { + array.push('%' + ((i < 16 ? '0' : '') + i.toString(16)).toUpperCase()); + } + + return array; +}()); + +var compactQueue = function compactQueue(queue) { + var obj; + + while (queue.length) { + var item = queue.pop(); + obj = item.obj[item.prop]; + + if (Array.isArray(obj)) { + var compacted = []; + + for (var j = 0; j < obj.length; ++j) { + if (typeof obj[j] !== 'undefined') { + compacted.push(obj[j]); + } + } + + item.obj[item.prop] = compacted; + } + } + + return obj; +}; + +var arrayToObject = function arrayToObject(source, options) { + var obj = options && options.plainObjects ? Object.create(null) : {}; + for (var i = 0; i < source.length; ++i) { + if (typeof source[i] !== 'undefined') { + obj[i] = source[i]; + } + } + + return obj; +}; + +var merge = function merge(target, source, options) { + if (!source) { + return target; + } + + if (typeof source !== 'object') { + if (Array.isArray(target)) { + target.push(source); + } else if (target && typeof target === 'object') { + if ((options && (options.plainObjects || options.allowPrototypes)) || !has.call(Object.prototype, source)) { + target[source] = true; + } + } else { + return [target, source]; + } + + return target; + } + + if (!target || typeof target !== 'object') { + return [target].concat(source); + } + + var mergeTarget = target; + if (Array.isArray(target) && !Array.isArray(source)) { + mergeTarget = arrayToObject(target, options); + } + + if (Array.isArray(target) && Array.isArray(source)) { + source.forEach(function (item, i) { + if (has.call(target, i)) { + var targetItem = target[i]; + if (targetItem && typeof targetItem === 'object' && item && typeof item === 'object') { + target[i] = merge(targetItem, item, options); + } else { + target.push(item); + } + } else { + target[i] = item; + } + }); + return target; + } + + return Object.keys(source).reduce(function (acc, key) { + var value = source[key]; + + if (has.call(acc, key)) { + acc[key] = merge(acc[key], value, options); + } else { + acc[key] = value; + } + return acc; + }, mergeTarget); +}; + +var assign = function assignSingleSource(target, source) { + return Object.keys(source).reduce(function (acc, key) { + acc[key] = source[key]; + return acc; + }, target); +}; + +var decode = function (str) { + try { + return decodeURIComponent(str.replace(/\+/g, ' ')); + } catch (e) { + return str; + } +}; + +var encode = function encode(str) { + // This code was originally written by Brian White (mscdex) for the io.js core querystring library. + // It has been adapted here for stricter adherence to RFC 3986 + if (str.length === 0) { + return str; + } + + var string = typeof str === 'string' ? str : String(str); + + var out = ''; + for (var i = 0; i < string.length; ++i) { + var c = string.charCodeAt(i); + + if ( + c === 0x2D // - + || c === 0x2E // . + || c === 0x5F // _ + || c === 0x7E // ~ + || (c >= 0x30 && c <= 0x39) // 0-9 + || (c >= 0x41 && c <= 0x5A) // a-z + || (c >= 0x61 && c <= 0x7A) // A-Z + ) { + out += string.charAt(i); + continue; + } + + if (c < 0x80) { + out = out + hexTable[c]; + continue; + } + + if (c < 0x800) { + out = out + (hexTable[0xC0 | (c >> 6)] + hexTable[0x80 | (c & 0x3F)]); + continue; + } + + if (c < 0xD800 || c >= 0xE000) { + out = out + (hexTable[0xE0 | (c >> 12)] + hexTable[0x80 | ((c >> 6) & 0x3F)] + hexTable[0x80 | (c & 0x3F)]); + continue; + } + + i += 1; + c = 0x10000 + (((c & 0x3FF) << 10) | (string.charCodeAt(i) & 0x3FF)); + /* eslint operator-linebreak: [2, "before"] */ + out += hexTable[0xF0 | (c >> 18)] + + hexTable[0x80 | ((c >> 12) & 0x3F)] + + hexTable[0x80 | ((c >> 6) & 0x3F)] + + hexTable[0x80 | (c & 0x3F)]; + } + + return out; +}; + +var compact = function compact(value) { + var queue = [{ obj: { o: value }, prop: 'o' }]; + var refs = []; + + for (var i = 0; i < queue.length; ++i) { + var item = queue[i]; + var obj = item.obj[item.prop]; + + var keys = Object.keys(obj); + for (var j = 0; j < keys.length; ++j) { + var key = keys[j]; + var val = obj[key]; + if (typeof val === 'object' && val !== null && refs.indexOf(val) === -1) { + queue.push({ obj: obj, prop: key }); + refs.push(val); + } + } + } + + return compactQueue(queue); +}; + +var isRegExp = function isRegExp(obj) { + return Object.prototype.toString.call(obj) === '[object RegExp]'; +}; + +var isBuffer = function isBuffer(obj) { + if (obj === null || typeof obj === 'undefined') { + return false; + } + + return !!(obj.constructor && obj.constructor.isBuffer && obj.constructor.isBuffer(obj)); +}; + +module.exports = { + arrayToObject: arrayToObject, + assign: assign, + compact: compact, + decode: decode, + encode: encode, + isBuffer: isBuffer, + isRegExp: isRegExp, + merge: merge +}; + +},{}]},{},[2])(2) +}); diff --git a/node_modules/qs/lib/formats.js b/node_modules/qs/lib/formats.js new file mode 100644 index 0000000..702da12 --- /dev/null +++ b/node_modules/qs/lib/formats.js @@ -0,0 +1,18 @@ +'use strict'; + +var replace = String.prototype.replace; +var percentTwenties = /%20/g; + +module.exports = { + 'default': 'RFC3986', + formatters: { + RFC1738: function (value) { + return replace.call(value, percentTwenties, '+'); + }, + RFC3986: function (value) { + return String(value); + } + }, + RFC1738: 'RFC1738', + RFC3986: 'RFC3986' +}; diff --git a/node_modules/qs/lib/index.js b/node_modules/qs/lib/index.js new file mode 100644 index 0000000..0d6a97d --- /dev/null +++ b/node_modules/qs/lib/index.js @@ -0,0 +1,11 @@ +'use strict'; + +var stringify = require('./stringify'); +var parse = require('./parse'); +var formats = require('./formats'); + +module.exports = { + formats: formats, + parse: parse, + stringify: stringify +}; diff --git a/node_modules/qs/lib/parse.js b/node_modules/qs/lib/parse.js new file mode 100644 index 0000000..cb7127d --- /dev/null +++ b/node_modules/qs/lib/parse.js @@ -0,0 +1,175 @@ +'use strict'; + +var utils = require('./utils'); + +var has = Object.prototype.hasOwnProperty; + +var defaults = { + allowDots: false, + allowPrototypes: false, + arrayLimit: 20, + decoder: utils.decode, + delimiter: '&', + depth: 5, + parameterLimit: 1000, + plainObjects: false, + strictNullHandling: false +}; + +var parseValues = function parseQueryStringValues(str, options) { + var obj = {}; + var cleanStr = options.ignoreQueryPrefix ? str.replace(/^\?/, '') : str; + var limit = options.parameterLimit === Infinity ? undefined : options.parameterLimit; + var parts = cleanStr.split(options.delimiter, limit); + + for (var i = 0; i < parts.length; ++i) { + var part = parts[i]; + + var bracketEqualsPos = part.indexOf(']='); + var pos = bracketEqualsPos === -1 ? part.indexOf('=') : bracketEqualsPos + 1; + + var key, val; + if (pos === -1) { + key = options.decoder(part, defaults.decoder); + val = options.strictNullHandling ? null : ''; + } else { + key = options.decoder(part.slice(0, pos), defaults.decoder); + val = options.decoder(part.slice(pos + 1), defaults.decoder); + } + if (has.call(obj, key)) { + obj[key] = [].concat(obj[key]).concat(val); + } else { + obj[key] = val; + } + } + + return obj; +}; + +var parseObject = function (chain, val, options) { + var leaf = val; + + for (var i = chain.length - 1; i >= 0; --i) { + var obj; + var root = chain[i]; + + if (root === '[]' && options.parseArrays) { + obj = [].concat(leaf); + } else { + obj = options.plainObjects ? Object.create(null) : {}; + var cleanRoot = root.charAt(0) === '[' && root.charAt(root.length - 1) === ']' ? root.slice(1, -1) : root; + var index = parseInt(cleanRoot, 10); + if (!options.parseArrays && cleanRoot === '') { + obj = { 0: leaf }; + } else if ( + !isNaN(index) + && root !== cleanRoot + && String(index) === cleanRoot + && index >= 0 + && (options.parseArrays && index <= options.arrayLimit) + ) { + obj = []; + obj[index] = leaf; + } else if (cleanRoot !== '__proto__') { + obj[cleanRoot] = leaf; + } + } + + leaf = obj; + } + + return leaf; +}; + +var parseKeys = function parseQueryStringKeys(givenKey, val, options) { + if (!givenKey) { + return; + } + + // Transform dot notation to bracket notation + var key = options.allowDots ? givenKey.replace(/\.([^.[]+)/g, '[$1]') : givenKey; + + // The regex chunks + + var brackets = /(\[[^[\]]*])/; + var child = /(\[[^[\]]*])/g; + + // Get the parent + + var segment = brackets.exec(key); + var parent = segment ? key.slice(0, segment.index) : key; + + // Stash the parent if it exists + + var keys = []; + if (parent) { + // If we aren't using plain objects, optionally prefix keys + // that would overwrite object prototype properties + if (!options.plainObjects && has.call(Object.prototype, parent)) { + if (!options.allowPrototypes) { + return; + } + } + + keys.push(parent); + } + + // Loop through children appending to the array until we hit depth + + var i = 0; + while ((segment = child.exec(key)) !== null && i < options.depth) { + i += 1; + if (!options.plainObjects && has.call(Object.prototype, segment[1].slice(1, -1))) { + if (!options.allowPrototypes) { + return; + } + } + keys.push(segment[1]); + } + + // If there's a remainder, just add whatever is left + + if (segment) { + keys.push('[' + key.slice(segment.index) + ']'); + } + + return parseObject(keys, val, options); +}; + +module.exports = function (str, opts) { + var options = opts ? utils.assign({}, opts) : {}; + + if (options.decoder !== null && options.decoder !== undefined && typeof options.decoder !== 'function') { + throw new TypeError('Decoder has to be a function.'); + } + + options.ignoreQueryPrefix = options.ignoreQueryPrefix === true; + options.delimiter = typeof options.delimiter === 'string' || utils.isRegExp(options.delimiter) ? options.delimiter : defaults.delimiter; + options.depth = typeof options.depth === 'number' ? options.depth : defaults.depth; + options.arrayLimit = typeof options.arrayLimit === 'number' ? options.arrayLimit : defaults.arrayLimit; + options.parseArrays = options.parseArrays !== false; + options.decoder = typeof options.decoder === 'function' ? options.decoder : defaults.decoder; + options.allowDots = typeof options.allowDots === 'boolean' ? options.allowDots : defaults.allowDots; + options.plainObjects = typeof options.plainObjects === 'boolean' ? options.plainObjects : defaults.plainObjects; + options.allowPrototypes = typeof options.allowPrototypes === 'boolean' ? options.allowPrototypes : defaults.allowPrototypes; + options.parameterLimit = typeof options.parameterLimit === 'number' ? options.parameterLimit : defaults.parameterLimit; + options.strictNullHandling = typeof options.strictNullHandling === 'boolean' ? options.strictNullHandling : defaults.strictNullHandling; + + if (str === '' || str === null || typeof str === 'undefined') { + return options.plainObjects ? Object.create(null) : {}; + } + + var tempObj = typeof str === 'string' ? parseValues(str, options) : str; + var obj = options.plainObjects ? Object.create(null) : {}; + + // Iterate over the keys and setup the new object + + var keys = Object.keys(tempObj); + for (var i = 0; i < keys.length; ++i) { + var key = keys[i]; + var newObj = parseKeys(key, tempObj[key], options); + obj = utils.merge(obj, newObj, options); + } + + return utils.compact(obj); +}; diff --git a/node_modules/qs/lib/stringify.js b/node_modules/qs/lib/stringify.js new file mode 100644 index 0000000..12a96e6 --- /dev/null +++ b/node_modules/qs/lib/stringify.js @@ -0,0 +1,217 @@ +'use strict'; + +var utils = require('./utils'); +var formats = require('./formats'); + +var arrayPrefixGenerators = { + brackets: function brackets(prefix) { + return prefix + '[]'; + }, + indices: function indices(prefix, key) { + return prefix + '[' + key + ']'; + }, + repeat: function repeat(prefix) { + return prefix; + } +}; + +var isArray = Array.isArray; +var push = Array.prototype.push; +var pushToArray = function (arr, valueOrArray) { + push.apply(arr, isArray(valueOrArray) ? valueOrArray : [valueOrArray]); +}; + +var toISO = Date.prototype.toISOString; + +var defaults = { + delimiter: '&', + encode: true, + encoder: utils.encode, + encodeValuesOnly: false, + serializeDate: function serializeDate(date) { + return toISO.call(date); + }, + skipNulls: false, + strictNullHandling: false +}; + +var stringify = function stringify( + object, + prefix, + generateArrayPrefix, + strictNullHandling, + skipNulls, + encoder, + filter, + sort, + allowDots, + serializeDate, + formatter, + encodeValuesOnly +) { + var obj = object; + if (typeof filter === 'function') { + obj = filter(prefix, obj); + } else if (obj instanceof Date) { + obj = serializeDate(obj); + } + + if (obj === null) { + if (strictNullHandling) { + return encoder && !encodeValuesOnly ? encoder(prefix, defaults.encoder) : prefix; + } + + obj = ''; + } + + if (typeof obj === 'string' || typeof obj === 'number' || typeof obj === 'boolean' || utils.isBuffer(obj)) { + if (encoder) { + var keyValue = encodeValuesOnly ? prefix : encoder(prefix, defaults.encoder); + return [formatter(keyValue) + '=' + formatter(encoder(obj, defaults.encoder))]; + } + return [formatter(prefix) + '=' + formatter(String(obj))]; + } + + var values = []; + + if (typeof obj === 'undefined') { + return values; + } + + var objKeys; + if (isArray(filter)) { + objKeys = filter; + } else { + var keys = Object.keys(obj); + objKeys = sort ? keys.sort(sort) : keys; + } + + for (var i = 0; i < objKeys.length; ++i) { + var key = objKeys[i]; + + if (skipNulls && obj[key] === null) { + continue; + } + + if (isArray(obj)) { + pushToArray(values, stringify( + obj[key], + generateArrayPrefix(prefix, key), + generateArrayPrefix, + strictNullHandling, + skipNulls, + encoder, + filter, + sort, + allowDots, + serializeDate, + formatter, + encodeValuesOnly + )); + } else { + pushToArray(values, stringify( + obj[key], + prefix + (allowDots ? '.' + key : '[' + key + ']'), + generateArrayPrefix, + strictNullHandling, + skipNulls, + encoder, + filter, + sort, + allowDots, + serializeDate, + formatter, + encodeValuesOnly + )); + } + } + + return values; +}; + +module.exports = function (object, opts) { + var obj = object; + var options = opts ? utils.assign({}, opts) : {}; + + if (options.encoder !== null && typeof options.encoder !== 'undefined' && typeof options.encoder !== 'function') { + throw new TypeError('Encoder has to be a function.'); + } + + var delimiter = typeof options.delimiter === 'undefined' ? defaults.delimiter : options.delimiter; + var strictNullHandling = typeof options.strictNullHandling === 'boolean' ? options.strictNullHandling : defaults.strictNullHandling; + var skipNulls = typeof options.skipNulls === 'boolean' ? options.skipNulls : defaults.skipNulls; + var encode = typeof options.encode === 'boolean' ? options.encode : defaults.encode; + var encoder = typeof options.encoder === 'function' ? options.encoder : defaults.encoder; + var sort = typeof options.sort === 'function' ? options.sort : null; + var allowDots = typeof options.allowDots === 'undefined' ? false : options.allowDots; + var serializeDate = typeof options.serializeDate === 'function' ? options.serializeDate : defaults.serializeDate; + var encodeValuesOnly = typeof options.encodeValuesOnly === 'boolean' ? options.encodeValuesOnly : defaults.encodeValuesOnly; + if (typeof options.format === 'undefined') { + options.format = formats['default']; + } else if (!Object.prototype.hasOwnProperty.call(formats.formatters, options.format)) { + throw new TypeError('Unknown format option provided.'); + } + var formatter = formats.formatters[options.format]; + var objKeys; + var filter; + + if (typeof options.filter === 'function') { + filter = options.filter; + obj = filter('', obj); + } else if (isArray(options.filter)) { + filter = options.filter; + objKeys = filter; + } + + var keys = []; + + if (typeof obj !== 'object' || obj === null) { + return ''; + } + + var arrayFormat; + if (options.arrayFormat in arrayPrefixGenerators) { + arrayFormat = options.arrayFormat; + } else if ('indices' in options) { + arrayFormat = options.indices ? 'indices' : 'repeat'; + } else { + arrayFormat = 'indices'; + } + + var generateArrayPrefix = arrayPrefixGenerators[arrayFormat]; + + if (!objKeys) { + objKeys = Object.keys(obj); + } + + if (sort) { + objKeys.sort(sort); + } + + for (var i = 0; i < objKeys.length; ++i) { + var key = objKeys[i]; + + if (skipNulls && obj[key] === null) { + continue; + } + pushToArray(keys, stringify( + obj[key], + key, + generateArrayPrefix, + strictNullHandling, + skipNulls, + encode ? encoder : null, + filter, + sort, + allowDots, + serializeDate, + formatter, + encodeValuesOnly + )); + } + + var joined = keys.join(delimiter); + var prefix = options.addQueryPrefix === true ? '?' : ''; + + return joined.length > 0 ? prefix + joined : ''; +}; diff --git a/node_modules/qs/lib/utils.js b/node_modules/qs/lib/utils.js new file mode 100644 index 0000000..6592e20 --- /dev/null +++ b/node_modules/qs/lib/utils.js @@ -0,0 +1,215 @@ +'use strict'; + +var has = Object.prototype.hasOwnProperty; + +var hexTable = (function () { + var array = []; + for (var i = 0; i < 256; ++i) { + array.push('%' + ((i < 16 ? '0' : '') + i.toString(16)).toUpperCase()); + } + + return array; +}()); + +var compactQueue = function compactQueue(queue) { + var obj; + + while (queue.length) { + var item = queue.pop(); + obj = item.obj[item.prop]; + + if (Array.isArray(obj)) { + var compacted = []; + + for (var j = 0; j < obj.length; ++j) { + if (typeof obj[j] !== 'undefined') { + compacted.push(obj[j]); + } + } + + item.obj[item.prop] = compacted; + } + } + + return obj; +}; + +var arrayToObject = function arrayToObject(source, options) { + var obj = options && options.plainObjects ? Object.create(null) : {}; + for (var i = 0; i < source.length; ++i) { + if (typeof source[i] !== 'undefined') { + obj[i] = source[i]; + } + } + + return obj; +}; + +var merge = function merge(target, source, options) { + if (!source) { + return target; + } + + if (typeof source !== 'object') { + if (Array.isArray(target)) { + target.push(source); + } else if (target && typeof target === 'object') { + if ((options && (options.plainObjects || options.allowPrototypes)) || !has.call(Object.prototype, source)) { + target[source] = true; + } + } else { + return [target, source]; + } + + return target; + } + + if (!target || typeof target !== 'object') { + return [target].concat(source); + } + + var mergeTarget = target; + if (Array.isArray(target) && !Array.isArray(source)) { + mergeTarget = arrayToObject(target, options); + } + + if (Array.isArray(target) && Array.isArray(source)) { + source.forEach(function (item, i) { + if (has.call(target, i)) { + var targetItem = target[i]; + if (targetItem && typeof targetItem === 'object' && item && typeof item === 'object') { + target[i] = merge(targetItem, item, options); + } else { + target.push(item); + } + } else { + target[i] = item; + } + }); + return target; + } + + return Object.keys(source).reduce(function (acc, key) { + var value = source[key]; + + if (has.call(acc, key)) { + acc[key] = merge(acc[key], value, options); + } else { + acc[key] = value; + } + return acc; + }, mergeTarget); +}; + +var assign = function assignSingleSource(target, source) { + return Object.keys(source).reduce(function (acc, key) { + acc[key] = source[key]; + return acc; + }, target); +}; + +var decode = function (str) { + try { + return decodeURIComponent(str.replace(/\+/g, ' ')); + } catch (e) { + return str; + } +}; + +var encode = function encode(str) { + // This code was originally written by Brian White (mscdex) for the io.js core querystring library. + // It has been adapted here for stricter adherence to RFC 3986 + if (str.length === 0) { + return str; + } + + var string = typeof str === 'string' ? str : String(str); + + var out = ''; + for (var i = 0; i < string.length; ++i) { + var c = string.charCodeAt(i); + + if ( + c === 0x2D // - + || c === 0x2E // . + || c === 0x5F // _ + || c === 0x7E // ~ + || (c >= 0x30 && c <= 0x39) // 0-9 + || (c >= 0x41 && c <= 0x5A) // a-z + || (c >= 0x61 && c <= 0x7A) // A-Z + ) { + out += string.charAt(i); + continue; + } + + if (c < 0x80) { + out = out + hexTable[c]; + continue; + } + + if (c < 0x800) { + out = out + (hexTable[0xC0 | (c >> 6)] + hexTable[0x80 | (c & 0x3F)]); + continue; + } + + if (c < 0xD800 || c >= 0xE000) { + out = out + (hexTable[0xE0 | (c >> 12)] + hexTable[0x80 | ((c >> 6) & 0x3F)] + hexTable[0x80 | (c & 0x3F)]); + continue; + } + + i += 1; + c = 0x10000 + (((c & 0x3FF) << 10) | (string.charCodeAt(i) & 0x3FF)); + /* eslint operator-linebreak: [2, "before"] */ + out += hexTable[0xF0 | (c >> 18)] + + hexTable[0x80 | ((c >> 12) & 0x3F)] + + hexTable[0x80 | ((c >> 6) & 0x3F)] + + hexTable[0x80 | (c & 0x3F)]; + } + + return out; +}; + +var compact = function compact(value) { + var queue = [{ obj: { o: value }, prop: 'o' }]; + var refs = []; + + for (var i = 0; i < queue.length; ++i) { + var item = queue[i]; + var obj = item.obj[item.prop]; + + var keys = Object.keys(obj); + for (var j = 0; j < keys.length; ++j) { + var key = keys[j]; + var val = obj[key]; + if (typeof val === 'object' && val !== null && refs.indexOf(val) === -1) { + queue.push({ obj: obj, prop: key }); + refs.push(val); + } + } + } + + return compactQueue(queue); +}; + +var isRegExp = function isRegExp(obj) { + return Object.prototype.toString.call(obj) === '[object RegExp]'; +}; + +var isBuffer = function isBuffer(obj) { + if (obj === null || typeof obj === 'undefined') { + return false; + } + + return !!(obj.constructor && obj.constructor.isBuffer && obj.constructor.isBuffer(obj)); +}; + +module.exports = { + arrayToObject: arrayToObject, + assign: assign, + compact: compact, + decode: decode, + encode: encode, + isBuffer: isBuffer, + isRegExp: isRegExp, + merge: merge +}; diff --git a/node_modules/qs/package.json b/node_modules/qs/package.json new file mode 100644 index 0000000..cc651b8 --- /dev/null +++ b/node_modules/qs/package.json @@ -0,0 +1,54 @@ +{ + "name": "qs", + "description": "A querystring parser that supports nesting and arrays, with a depth limit", + "homepage": "https://github.com/ljharb/qs", + "version": "6.5.3", + "repository": { + "type": "git", + "url": "https://github.com/ljharb/qs.git" + }, + "main": "lib/index.js", + "contributors": [ + { + "name": "Jordan Harband", + "email": "ljharb@gmail.com", + "url": "http://ljharb.codes" + } + ], + "keywords": [ + "querystring", + "qs" + ], + "engines": { + "node": ">=0.6" + }, + "devDependencies": { + "@ljharb/eslint-config": "^20.1.0", + "aud": "^1.1.5", + "browserify": "^16.5.2", + "eclint": "^2.8.1", + "eslint": "^8.6.0", + "evalmd": "^0.0.17", + "iconv-lite": "^0.4.24", + "in-publish": "^2.0.1", + "mkdirp": "^0.5.1", + "nyc": "^10.3.2", + "qs-iconv": "^1.0.4", + "safe-publish-latest": "^2.0.0", + "safer-buffer": "^2.1.2", + "tape": "^5.4.0" + }, + "scripts": { + "prepublishOnly": "safe-publish-latest && npm run dist", + "prepublish": "not-in-publish || npm run prepublishOnly", + "pretest": "npm run --silent readme && npm run --silent lint", + "test": "npm run --silent tests-only", + "tests-only": "nyc tape 'test/**/*.js'", + "posttest": "aud --production", + "readme": "evalmd README.md", + "postlint": "eclint check $(git ls-files | xargs find 2> /dev/null | grep -vE 'node_modules|\\.git')", + "lint": "eslint --ext=js,mjs .", + "dist": "mkdirp dist && browserify --standalone Qs lib/index.js > dist/qs.js" + }, + "license": "BSD-3-Clause" +} diff --git a/node_modules/qs/test/index.js b/node_modules/qs/test/index.js new file mode 100644 index 0000000..5e6bc8f --- /dev/null +++ b/node_modules/qs/test/index.js @@ -0,0 +1,7 @@ +'use strict'; + +require('./parse'); + +require('./stringify'); + +require('./utils'); diff --git a/node_modules/qs/test/parse.js b/node_modules/qs/test/parse.js new file mode 100644 index 0000000..7c19838 --- /dev/null +++ b/node_modules/qs/test/parse.js @@ -0,0 +1,649 @@ +'use strict'; + +var test = require('tape'); +var qs = require('../'); +var utils = require('../lib/utils'); +var iconv = require('iconv-lite'); +var SaferBuffer = require('safer-buffer').Buffer; + +test('parse()', function (t) { + t.test('parses a simple string', function (st) { + st.deepEqual(qs.parse('0=foo'), { 0: 'foo' }); + st.deepEqual(qs.parse('foo=c++'), { foo: 'c ' }); + st.deepEqual(qs.parse('a[>=]=23'), { a: { '>=': '23' } }); + st.deepEqual(qs.parse('a[<=>]==23'), { a: { '<=>': '=23' } }); + st.deepEqual(qs.parse('a[==]=23'), { a: { '==': '23' } }); + st.deepEqual(qs.parse('foo', { strictNullHandling: true }), { foo: null }); + st.deepEqual(qs.parse('foo'), { foo: '' }); + st.deepEqual(qs.parse('foo='), { foo: '' }); + st.deepEqual(qs.parse('foo=bar'), { foo: 'bar' }); + st.deepEqual(qs.parse(' foo = bar = baz '), { ' foo ': ' bar = baz ' }); + st.deepEqual(qs.parse('foo=bar=baz'), { foo: 'bar=baz' }); + st.deepEqual(qs.parse('foo=bar&bar=baz'), { foo: 'bar', bar: 'baz' }); + st.deepEqual(qs.parse('foo2=bar2&baz2='), { foo2: 'bar2', baz2: '' }); + st.deepEqual(qs.parse('foo=bar&baz', { strictNullHandling: true }), { foo: 'bar', baz: null }); + st.deepEqual(qs.parse('foo=bar&baz'), { foo: 'bar', baz: '' }); + st.deepEqual(qs.parse('cht=p3&chd=t:60,40&chs=250x100&chl=Hello|World'), { + cht: 'p3', + chd: 't:60,40', + chs: '250x100', + chl: 'Hello|World' + }); + st.end(); + }); + + t.test('allows enabling dot notation', function (st) { + st.deepEqual(qs.parse('a.b=c'), { 'a.b': 'c' }); + st.deepEqual(qs.parse('a.b=c', { allowDots: true }), { a: { b: 'c' } }); + st.end(); + }); + + t.deepEqual(qs.parse('a[b]=c'), { a: { b: 'c' } }, 'parses a single nested string'); + t.deepEqual(qs.parse('a[b][c]=d'), { a: { b: { c: 'd' } } }, 'parses a double nested string'); + t.deepEqual( + qs.parse('a[b][c][d][e][f][g][h]=i'), + { a: { b: { c: { d: { e: { f: { '[g][h]': 'i' } } } } } } }, + 'defaults to a depth of 5' + ); + + t.test('only parses one level when depth = 1', function (st) { + st.deepEqual(qs.parse('a[b][c]=d', { depth: 1 }), { a: { b: { '[c]': 'd' } } }); + st.deepEqual(qs.parse('a[b][c][d]=e', { depth: 1 }), { a: { b: { '[c][d]': 'e' } } }); + st.end(); + }); + + t.deepEqual(qs.parse('a=b&a=c'), { a: ['b', 'c'] }, 'parses a simple array'); + + t.test('parses an explicit array', function (st) { + st.deepEqual(qs.parse('a[]=b'), { a: ['b'] }); + st.deepEqual(qs.parse('a[]=b&a[]=c'), { a: ['b', 'c'] }); + st.deepEqual(qs.parse('a[]=b&a[]=c&a[]=d'), { a: ['b', 'c', 'd'] }); + st.end(); + }); + + t.test('parses a mix of simple and explicit arrays', function (st) { + st.deepEqual(qs.parse('a=b&a[]=c'), { a: ['b', 'c'] }); + st.deepEqual(qs.parse('a[]=b&a=c'), { a: ['b', 'c'] }); + st.deepEqual(qs.parse('a[0]=b&a=c'), { a: ['b', 'c'] }); + st.deepEqual(qs.parse('a=b&a[0]=c'), { a: ['b', 'c'] }); + + st.deepEqual(qs.parse('a[1]=b&a=c', { arrayLimit: 20 }), { a: ['b', 'c'] }); + st.deepEqual(qs.parse('a[]=b&a=c', { arrayLimit: 0 }), { a: ['b', 'c'] }); + st.deepEqual(qs.parse('a[]=b&a=c'), { a: ['b', 'c'] }); + + st.deepEqual(qs.parse('a=b&a[1]=c', { arrayLimit: 20 }), { a: ['b', 'c'] }); + st.deepEqual(qs.parse('a=b&a[]=c', { arrayLimit: 0 }), { a: ['b', 'c'] }); + st.deepEqual(qs.parse('a=b&a[]=c'), { a: ['b', 'c'] }); + + st.end(); + }); + + t.test('parses a nested array', function (st) { + st.deepEqual(qs.parse('a[b][]=c&a[b][]=d'), { a: { b: ['c', 'd'] } }); + st.deepEqual(qs.parse('a[>=]=25'), { a: { '>=': '25' } }); + st.end(); + }); + + t.test('allows to specify array indices', function (st) { + st.deepEqual(qs.parse('a[1]=c&a[0]=b&a[2]=d'), { a: ['b', 'c', 'd'] }); + st.deepEqual(qs.parse('a[1]=c&a[0]=b'), { a: ['b', 'c'] }); + st.deepEqual(qs.parse('a[1]=c', { arrayLimit: 20 }), { a: ['c'] }); + st.deepEqual(qs.parse('a[1]=c', { arrayLimit: 0 }), { a: { 1: 'c' } }); + st.deepEqual(qs.parse('a[1]=c'), { a: ['c'] }); + st.end(); + }); + + t.test('limits specific array indices to arrayLimit', function (st) { + st.deepEqual(qs.parse('a[20]=a', { arrayLimit: 20 }), { a: ['a'] }); + st.deepEqual(qs.parse('a[21]=a', { arrayLimit: 20 }), { a: { 21: 'a' } }); + st.end(); + }); + + t.deepEqual(qs.parse('a[12b]=c'), { a: { '12b': 'c' } }, 'supports keys that begin with a number'); + + t.test('supports encoded = signs', function (st) { + st.deepEqual(qs.parse('he%3Dllo=th%3Dere'), { 'he=llo': 'th=ere' }); + st.end(); + }); + + t.test('is ok with url encoded strings', function (st) { + st.deepEqual(qs.parse('a[b%20c]=d'), { a: { 'b c': 'd' } }); + st.deepEqual(qs.parse('a[b]=c%20d'), { a: { b: 'c d' } }); + st.end(); + }); + + t.test('allows brackets in the value', function (st) { + st.deepEqual(qs.parse('pets=["tobi"]'), { pets: '["tobi"]' }); + st.deepEqual(qs.parse('operators=[">=", "<="]'), { operators: '[">=", "<="]' }); + st.end(); + }); + + t.test('allows empty values', function (st) { + st.deepEqual(qs.parse(''), {}); + st.deepEqual(qs.parse(null), {}); + st.deepEqual(qs.parse(undefined), {}); + st.end(); + }); + + t.test('transforms arrays to objects', function (st) { + st.deepEqual(qs.parse('foo[0]=bar&foo[bad]=baz'), { foo: { 0: 'bar', bad: 'baz' } }); + st.deepEqual(qs.parse('foo[bad]=baz&foo[0]=bar'), { foo: { bad: 'baz', 0: 'bar' } }); + st.deepEqual(qs.parse('foo[bad]=baz&foo[]=bar'), { foo: { bad: 'baz', 0: 'bar' } }); + st.deepEqual(qs.parse('foo[]=bar&foo[bad]=baz'), { foo: { 0: 'bar', bad: 'baz' } }); + st.deepEqual(qs.parse('foo[bad]=baz&foo[]=bar&foo[]=foo'), { foo: { bad: 'baz', 0: 'bar', 1: 'foo' } }); + st.deepEqual(qs.parse('foo[0][a]=a&foo[0][b]=b&foo[1][a]=aa&foo[1][b]=bb'), { foo: [{ a: 'a', b: 'b' }, { a: 'aa', b: 'bb' }] }); + + st.deepEqual(qs.parse('a[]=b&a[t]=u&a[hasOwnProperty]=c', { allowPrototypes: false }), { a: { 0: 'b', t: 'u' } }); + st.deepEqual(qs.parse('a[]=b&a[t]=u&a[hasOwnProperty]=c', { allowPrototypes: true }), { a: { 0: 'b', t: 'u', hasOwnProperty: 'c' } }); + st.deepEqual(qs.parse('a[]=b&a[hasOwnProperty]=c&a[x]=y', { allowPrototypes: false }), { a: { 0: 'b', x: 'y' } }); + st.deepEqual(qs.parse('a[]=b&a[hasOwnProperty]=c&a[x]=y', { allowPrototypes: true }), { a: { 0: 'b', hasOwnProperty: 'c', x: 'y' } }); + st.end(); + }); + + t.test('transforms arrays to objects (dot notation)', function (st) { + st.deepEqual(qs.parse('foo[0].baz=bar&fool.bad=baz', { allowDots: true }), { foo: [{ baz: 'bar' }], fool: { bad: 'baz' } }); + st.deepEqual(qs.parse('foo[0].baz=bar&fool.bad.boo=baz', { allowDots: true }), { foo: [{ baz: 'bar' }], fool: { bad: { boo: 'baz' } } }); + st.deepEqual(qs.parse('foo[0][0].baz=bar&fool.bad=baz', { allowDots: true }), { foo: [[{ baz: 'bar' }]], fool: { bad: 'baz' } }); + st.deepEqual(qs.parse('foo[0].baz[0]=15&foo[0].bar=2', { allowDots: true }), { foo: [{ baz: ['15'], bar: '2' }] }); + st.deepEqual(qs.parse('foo[0].baz[0]=15&foo[0].baz[1]=16&foo[0].bar=2', { allowDots: true }), { foo: [{ baz: ['15', '16'], bar: '2' }] }); + st.deepEqual(qs.parse('foo.bad=baz&foo[0]=bar', { allowDots: true }), { foo: { bad: 'baz', 0: 'bar' } }); + st.deepEqual(qs.parse('foo.bad=baz&foo[]=bar', { allowDots: true }), { foo: { bad: 'baz', 0: 'bar' } }); + st.deepEqual(qs.parse('foo[]=bar&foo.bad=baz', { allowDots: true }), { foo: { 0: 'bar', bad: 'baz' } }); + st.deepEqual(qs.parse('foo.bad=baz&foo[]=bar&foo[]=foo', { allowDots: true }), { foo: { bad: 'baz', 0: 'bar', 1: 'foo' } }); + st.deepEqual(qs.parse('foo[0].a=a&foo[0].b=b&foo[1].a=aa&foo[1].b=bb', { allowDots: true }), { foo: [{ a: 'a', b: 'b' }, { a: 'aa', b: 'bb' }] }); + st.end(); + }); + + t.test('correctly prunes undefined values when converting an array to an object', function (st) { + st.deepEqual(qs.parse('a[2]=b&a[99999999]=c'), { a: { 2: 'b', 99999999: 'c' } }); + st.end(); + }); + + t.test('supports malformed uri characters', function (st) { + st.deepEqual(qs.parse('{%:%}', { strictNullHandling: true }), { '{%:%}': null }); + st.deepEqual(qs.parse('{%:%}='), { '{%:%}': '' }); + st.deepEqual(qs.parse('foo=%:%}'), { foo: '%:%}' }); + st.end(); + }); + + t.test('doesn\'t produce empty keys', function (st) { + st.deepEqual(qs.parse('_r=1&'), { _r: '1' }); + st.end(); + }); + + t.test('cannot access Object prototype', function (st) { + qs.parse('constructor[prototype][bad]=bad'); + qs.parse('bad[constructor][prototype][bad]=bad'); + st.equal(typeof Object.prototype.bad, 'undefined'); + st.end(); + }); + + t.test('parses arrays of objects', function (st) { + st.deepEqual(qs.parse('a[][b]=c'), { a: [{ b: 'c' }] }); + st.deepEqual(qs.parse('a[0][b]=c'), { a: [{ b: 'c' }] }); + st.end(); + }); + + t.test('allows for empty strings in arrays', function (st) { + st.deepEqual(qs.parse('a[]=b&a[]=&a[]=c'), { a: ['b', '', 'c'] }); + + st.deepEqual( + qs.parse('a[0]=b&a[1]&a[2]=c&a[19]=', { strictNullHandling: true, arrayLimit: 20 }), + { a: ['b', null, 'c', ''] }, + 'with arrayLimit 20 + array indices: null then empty string works' + ); + st.deepEqual( + qs.parse('a[]=b&a[]&a[]=c&a[]=', { strictNullHandling: true, arrayLimit: 0 }), + { a: ['b', null, 'c', ''] }, + 'with arrayLimit 0 + array brackets: null then empty string works' + ); + + st.deepEqual( + qs.parse('a[0]=b&a[1]=&a[2]=c&a[19]', { strictNullHandling: true, arrayLimit: 20 }), + { a: ['b', '', 'c', null] }, + 'with arrayLimit 20 + array indices: empty string then null works' + ); + st.deepEqual( + qs.parse('a[]=b&a[]=&a[]=c&a[]', { strictNullHandling: true, arrayLimit: 0 }), + { a: ['b', '', 'c', null] }, + 'with arrayLimit 0 + array brackets: empty string then null works' + ); + + st.deepEqual( + qs.parse('a[]=&a[]=b&a[]=c'), + { a: ['', 'b', 'c'] }, + 'array brackets: empty strings work' + ); + st.end(); + }); + + t.test('compacts sparse arrays', function (st) { + st.deepEqual(qs.parse('a[10]=1&a[2]=2', { arrayLimit: 20 }), { a: ['2', '1'] }); + st.deepEqual(qs.parse('a[1][b][2][c]=1', { arrayLimit: 20 }), { a: [{ b: [{ c: '1' }] }] }); + st.deepEqual(qs.parse('a[1][2][3][c]=1', { arrayLimit: 20 }), { a: [[[{ c: '1' }]]] }); + st.deepEqual(qs.parse('a[1][2][3][c][1]=1', { arrayLimit: 20 }), { a: [[[{ c: ['1'] }]]] }); + st.end(); + }); + + t.test('parses semi-parsed strings', function (st) { + st.deepEqual(qs.parse({ 'a[b]': 'c' }), { a: { b: 'c' } }); + st.deepEqual(qs.parse({ 'a[b]': 'c', 'a[d]': 'e' }), { a: { b: 'c', d: 'e' } }); + st.end(); + }); + + t.test('parses buffers correctly', function (st) { + var b = SaferBuffer.from('test'); + st.deepEqual(qs.parse({ a: b }), { a: b }); + st.end(); + }); + + t.test('parses jquery-param strings', function (st) { + // readable = 'filter[0][]=int1&filter[0][]==&filter[0][]=77&filter[]=and&filter[2][]=int2&filter[2][]==&filter[2][]=8' + var encoded = 'filter%5B0%5D%5B%5D=int1&filter%5B0%5D%5B%5D=%3D&filter%5B0%5D%5B%5D=77&filter%5B%5D=and&filter%5B2%5D%5B%5D=int2&filter%5B2%5D%5B%5D=%3D&filter%5B2%5D%5B%5D=8'; + var expected = { filter: [['int1', '=', '77'], 'and', ['int2', '=', '8']] }; + st.deepEqual(qs.parse(encoded), expected); + st.end(); + }); + + t.test('continues parsing when no parent is found', function (st) { + st.deepEqual(qs.parse('[]=&a=b'), { 0: '', a: 'b' }); + st.deepEqual(qs.parse('[]&a=b', { strictNullHandling: true }), { 0: null, a: 'b' }); + st.deepEqual(qs.parse('[foo]=bar'), { foo: 'bar' }); + st.end(); + }); + + t.test('does not error when parsing a very long array', function (st) { + var str = 'a[]=a'; + while (Buffer.byteLength(str) < 128 * 1024) { + str = str + '&' + str; + } + + st.doesNotThrow(function () { + qs.parse(str); + }); + + st.end(); + }); + + t.test('should not throw when a native prototype has an enumerable property', function (st) { + Object.prototype.crash = ''; + Array.prototype.crash = ''; + st.doesNotThrow(qs.parse.bind(null, 'a=b')); + st.deepEqual(qs.parse('a=b'), { a: 'b' }); + st.doesNotThrow(qs.parse.bind(null, 'a[][b]=c')); + st.deepEqual(qs.parse('a[][b]=c'), { a: [{ b: 'c' }] }); + delete Object.prototype.crash; + delete Array.prototype.crash; + st.end(); + }); + + t.test('parses a string with an alternative string delimiter', function (st) { + st.deepEqual(qs.parse('a=b;c=d', { delimiter: ';' }), { a: 'b', c: 'd' }); + st.end(); + }); + + t.test('parses a string with an alternative RegExp delimiter', function (st) { + st.deepEqual(qs.parse('a=b; c=d', { delimiter: /[;,] */ }), { a: 'b', c: 'd' }); + st.end(); + }); + + t.test('does not use non-splittable objects as delimiters', function (st) { + st.deepEqual(qs.parse('a=b&c=d', { delimiter: true }), { a: 'b', c: 'd' }); + st.end(); + }); + + t.test('allows overriding parameter limit', function (st) { + st.deepEqual(qs.parse('a=b&c=d', { parameterLimit: 1 }), { a: 'b' }); + st.end(); + }); + + t.test('allows setting the parameter limit to Infinity', function (st) { + st.deepEqual(qs.parse('a=b&c=d', { parameterLimit: Infinity }), { a: 'b', c: 'd' }); + st.end(); + }); + + t.test('allows overriding array limit', function (st) { + st.deepEqual(qs.parse('a[0]=b', { arrayLimit: -1 }), { a: { 0: 'b' } }); + st.deepEqual(qs.parse('a[-1]=b', { arrayLimit: -1 }), { a: { '-1': 'b' } }); + st.deepEqual(qs.parse('a[0]=b&a[1]=c', { arrayLimit: 0 }), { a: { 0: 'b', 1: 'c' } }); + st.end(); + }); + + t.test('allows disabling array parsing', function (st) { + var indices = qs.parse('a[0]=b&a[1]=c', { parseArrays: false }); + st.deepEqual(indices, { a: { 0: 'b', 1: 'c' } }); + st.equal(Array.isArray(indices.a), false, 'parseArrays:false, indices case is not an array'); + + var emptyBrackets = qs.parse('a[]=b', { parseArrays: false }); + st.deepEqual(emptyBrackets, { a: { 0: 'b' } }); + st.equal(Array.isArray(emptyBrackets.a), false, 'parseArrays:false, empty brackets case is not an array'); + + st.end(); + }); + + t.test('allows for query string prefix', function (st) { + st.deepEqual(qs.parse('?foo=bar', { ignoreQueryPrefix: true }), { foo: 'bar' }); + st.deepEqual(qs.parse('foo=bar', { ignoreQueryPrefix: true }), { foo: 'bar' }); + st.deepEqual(qs.parse('?foo=bar', { ignoreQueryPrefix: false }), { '?foo': 'bar' }); + st.end(); + }); + + t.test('parses an object', function (st) { + var input = { + 'user[name]': { 'pop[bob]': 3 }, + 'user[email]': null + }; + + var expected = { + user: { + name: { 'pop[bob]': 3 }, + email: null + } + }; + + var result = qs.parse(input); + + st.deepEqual(result, expected); + st.end(); + }); + + t.test('parses an object in dot notation', function (st) { + var input = { + 'user.name': { 'pop[bob]': 3 }, + 'user.email.': null + }; + + var expected = { + user: { + name: { 'pop[bob]': 3 }, + email: null + } + }; + + var result = qs.parse(input, { allowDots: true }); + + st.deepEqual(result, expected); + st.end(); + }); + + t.test('parses an object and not child values', function (st) { + var input = { + 'user[name]': { 'pop[bob]': { test: 3 } }, + 'user[email]': null + }; + + var expected = { + user: { + name: { 'pop[bob]': { test: 3 } }, + email: null + } + }; + + var result = qs.parse(input); + + st.deepEqual(result, expected); + st.end(); + }); + + t.test('does not blow up when Buffer global is missing', function (st) { + var tempBuffer = global.Buffer; + delete global.Buffer; + var result = qs.parse('a=b&c=d'); + global.Buffer = tempBuffer; + st.deepEqual(result, { a: 'b', c: 'd' }); + st.end(); + }); + + t.test('does not crash when parsing circular references', function (st) { + var a = {}; + a.b = a; + + var parsed; + + st.doesNotThrow(function () { + parsed = qs.parse({ 'foo[bar]': 'baz', 'foo[baz]': a }); + }); + + st.equal('foo' in parsed, true, 'parsed has "foo" property'); + st.equal('bar' in parsed.foo, true); + st.equal('baz' in parsed.foo, true); + st.equal(parsed.foo.bar, 'baz'); + st.deepEqual(parsed.foo.baz, a); + st.end(); + }); + + t.test('does not crash when parsing deep objects', function (st) { + var parsed; + var str = 'foo'; + + for (var i = 0; i < 5000; i++) { + str += '[p]'; + } + + str += '=bar'; + + st.doesNotThrow(function () { + parsed = qs.parse(str, { depth: 5000 }); + }); + + st.equal('foo' in parsed, true, 'parsed has "foo" property'); + + var depth = 0; + var ref = parsed.foo; + while ((ref = ref.p)) { + depth += 1; + } + + st.equal(depth, 5000, 'parsed is 5000 properties deep'); + + st.end(); + }); + + t.test('parses null objects correctly', { skip: !Object.create }, function (st) { + var a = Object.create(null); + a.b = 'c'; + + st.deepEqual(qs.parse(a), { b: 'c' }); + var result = qs.parse({ a: a }); + st.equal('a' in result, true, 'result has "a" property'); + st.deepEqual(result.a, a); + st.end(); + }); + + t.test('parses dates correctly', function (st) { + var now = new Date(); + st.deepEqual(qs.parse({ a: now }), { a: now }); + st.end(); + }); + + t.test('parses regular expressions correctly', function (st) { + var re = /^test$/; + st.deepEqual(qs.parse({ a: re }), { a: re }); + st.end(); + }); + + t.test('does not allow overwriting prototype properties', function (st) { + st.deepEqual(qs.parse('a[hasOwnProperty]=b', { allowPrototypes: false }), {}); + st.deepEqual(qs.parse('hasOwnProperty=b', { allowPrototypes: false }), {}); + + st.deepEqual( + qs.parse('toString', { allowPrototypes: false }), + {}, + 'bare "toString" results in {}' + ); + + st.end(); + }); + + t.test('can allow overwriting prototype properties', function (st) { + st.deepEqual(qs.parse('a[hasOwnProperty]=b', { allowPrototypes: true }), { a: { hasOwnProperty: 'b' } }); + st.deepEqual(qs.parse('hasOwnProperty=b', { allowPrototypes: true }), { hasOwnProperty: 'b' }); + + st.deepEqual( + qs.parse('toString', { allowPrototypes: true }), + { toString: '' }, + 'bare "toString" results in { toString: "" }' + ); + + st.end(); + }); + + t.test('params starting with a closing bracket', function (st) { + st.deepEqual(qs.parse(']=toString'), { ']': 'toString' }); + st.deepEqual(qs.parse(']]=toString'), { ']]': 'toString' }); + st.deepEqual(qs.parse(']hello]=toString'), { ']hello]': 'toString' }); + st.end(); + }); + + t.test('params starting with a starting bracket', function (st) { + st.deepEqual(qs.parse('[=toString'), { '[': 'toString' }); + st.deepEqual(qs.parse('[[=toString'), { '[[': 'toString' }); + st.deepEqual(qs.parse('[hello[=toString'), { '[hello[': 'toString' }); + st.end(); + }); + + t.test('add keys to objects', function (st) { + st.deepEqual( + qs.parse('a[b]=c&a=d'), + { a: { b: 'c', d: true } }, + 'can add keys to objects' + ); + + st.deepEqual( + qs.parse('a[b]=c&a=toString'), + { a: { b: 'c' } }, + 'can not overwrite prototype' + ); + + st.deepEqual( + qs.parse('a[b]=c&a=toString', { allowPrototypes: true }), + { a: { b: 'c', toString: true } }, + 'can overwrite prototype with allowPrototypes true' + ); + + st.deepEqual( + qs.parse('a[b]=c&a=toString', { plainObjects: true }), + { __proto__: null, a: { __proto__: null, b: 'c', toString: true } }, + 'can overwrite prototype with plainObjects true' + ); + + st.end(); + }); + + t.test('dunder proto is ignored', function (st) { + var payload = 'categories[__proto__]=login&categories[__proto__]&categories[length]=42'; + var result = qs.parse(payload, { allowPrototypes: true }); + + st.deepEqual( + result, + { + categories: { + length: '42' + } + }, + 'silent [[Prototype]] payload' + ); + + var plainResult = qs.parse(payload, { allowPrototypes: true, plainObjects: true }); + + st.deepEqual( + plainResult, + { + __proto__: null, + categories: { + __proto__: null, + length: '42' + } + }, + 'silent [[Prototype]] payload: plain objects' + ); + + var query = qs.parse('categories[__proto__]=cats&categories[__proto__]=dogs&categories[some][json]=toInject', { allowPrototypes: true }); + + st.notOk(Array.isArray(query.categories), 'is not an array'); + st.notOk(query.categories instanceof Array, 'is not instanceof an array'); + st.deepEqual(query.categories, { some: { json: 'toInject' } }); + st.equal(JSON.stringify(query.categories), '{"some":{"json":"toInject"}}', 'stringifies as a non-array'); + + st.deepEqual( + qs.parse('foo[__proto__][hidden]=value&foo[bar]=stuffs', { allowPrototypes: true }), + { + foo: { + bar: 'stuffs' + } + }, + 'hidden values' + ); + + st.deepEqual( + qs.parse('foo[__proto__][hidden]=value&foo[bar]=stuffs', { allowPrototypes: true, plainObjects: true }), + { + __proto__: null, + foo: { + __proto__: null, + bar: 'stuffs' + } + }, + 'hidden values: plain objects' + ); + + st.end(); + }); + + t.test('can return null objects', { skip: !Object.create }, function (st) { + var expected = Object.create(null); + expected.a = Object.create(null); + expected.a.b = 'c'; + expected.a.hasOwnProperty = 'd'; + st.deepEqual(qs.parse('a[b]=c&a[hasOwnProperty]=d', { plainObjects: true }), expected); + st.deepEqual(qs.parse(null, { plainObjects: true }), Object.create(null)); + var expectedArray = Object.create(null); + expectedArray.a = Object.create(null); + expectedArray.a[0] = 'b'; + expectedArray.a.c = 'd'; + st.deepEqual(qs.parse('a[]=b&a[c]=d', { plainObjects: true }), expectedArray); + st.end(); + }); + + t.test('can parse with custom encoding', function (st) { + st.deepEqual(qs.parse('%8c%a7=%91%e5%8d%e3%95%7b', { + decoder: function (str) { + var reg = /%([0-9A-F]{2})/ig; + var result = []; + var parts = reg.exec(str); + while (parts) { + result.push(parseInt(parts[1], 16)); + parts = reg.exec(str); + } + return String(iconv.decode(SaferBuffer.from(result), 'shift_jis')); + } + }), { 県: '大阪府' }); + st.end(); + }); + + t.test('receives the default decoder as a second argument', function (st) { + st.plan(1); + qs.parse('a', { + decoder: function (str, defaultDecoder) { + st.equal(defaultDecoder, utils.decode); + } + }); + st.end(); + }); + + t.test('throws error with wrong decoder', function (st) { + st['throws'](function () { + qs.parse({}, { decoder: 'string' }); + }, new TypeError('Decoder has to be a function.')); + st.end(); + }); + + t.test('does not mutate the options argument', function (st) { + var options = {}; + qs.parse('a[b]=true', options); + st.deepEqual(options, {}); + st.end(); + }); + + t.end(); +}); diff --git a/node_modules/qs/test/stringify.js b/node_modules/qs/test/stringify.js new file mode 100644 index 0000000..08f7843 --- /dev/null +++ b/node_modules/qs/test/stringify.js @@ -0,0 +1,642 @@ +'use strict'; + +var test = require('tape'); +var qs = require('../'); +var utils = require('../lib/utils'); +var iconv = require('iconv-lite'); +var SaferBuffer = require('safer-buffer').Buffer; + +test('stringify()', function (t) { + t.test('stringifies a querystring object', function (st) { + st.equal(qs.stringify({ a: 'b' }), 'a=b'); + st.equal(qs.stringify({ a: 1 }), 'a=1'); + st.equal(qs.stringify({ a: 1, b: 2 }), 'a=1&b=2'); + st.equal(qs.stringify({ a: 'A_Z' }), 'a=A_Z'); + st.equal(qs.stringify({ a: '€' }), 'a=%E2%82%AC'); + st.equal(qs.stringify({ a: '' }), 'a=%EE%80%80'); + st.equal(qs.stringify({ a: 'א' }), 'a=%D7%90'); + st.equal(qs.stringify({ a: '𐐷' }), 'a=%F0%90%90%B7'); + st.end(); + }); + + t.test('stringifies falsy values', function (st) { + st.equal(qs.stringify(undefined), ''); + st.equal(qs.stringify(null), ''); + st.equal(qs.stringify(null, { strictNullHandling: true }), ''); + st.equal(qs.stringify(false), ''); + st.equal(qs.stringify(0), ''); + st.end(); + }); + + t.test('adds query prefix', function (st) { + st.equal(qs.stringify({ a: 'b' }, { addQueryPrefix: true }), '?a=b'); + st.end(); + }); + + t.test('with query prefix, outputs blank string given an empty object', function (st) { + st.equal(qs.stringify({}, { addQueryPrefix: true }), ''); + st.end(); + }); + + t.test('stringifies nested falsy values', function (st) { + st.equal(qs.stringify({ a: { b: { c: null } } }), 'a%5Bb%5D%5Bc%5D='); + st.equal(qs.stringify({ a: { b: { c: null } } }, { strictNullHandling: true }), 'a%5Bb%5D%5Bc%5D'); + st.equal(qs.stringify({ a: { b: { c: false } } }), 'a%5Bb%5D%5Bc%5D=false'); + st.end(); + }); + + t.test('stringifies a nested object', function (st) { + st.equal(qs.stringify({ a: { b: 'c' } }), 'a%5Bb%5D=c'); + st.equal(qs.stringify({ a: { b: { c: { d: 'e' } } } }), 'a%5Bb%5D%5Bc%5D%5Bd%5D=e'); + st.end(); + }); + + t.test('stringifies a nested object with dots notation', function (st) { + st.equal(qs.stringify({ a: { b: 'c' } }, { allowDots: true }), 'a.b=c'); + st.equal(qs.stringify({ a: { b: { c: { d: 'e' } } } }, { allowDots: true }), 'a.b.c.d=e'); + st.end(); + }); + + t.test('stringifies an array value', function (st) { + st.equal( + qs.stringify({ a: ['b', 'c', 'd'] }, { arrayFormat: 'indices' }), + 'a%5B0%5D=b&a%5B1%5D=c&a%5B2%5D=d', + 'indices => indices' + ); + st.equal( + qs.stringify({ a: ['b', 'c', 'd'] }, { arrayFormat: 'brackets' }), + 'a%5B%5D=b&a%5B%5D=c&a%5B%5D=d', + 'brackets => brackets' + ); + st.equal( + qs.stringify({ a: ['b', 'c', 'd'] }), + 'a%5B0%5D=b&a%5B1%5D=c&a%5B2%5D=d', + 'default => indices' + ); + st.end(); + }); + + t.test('omits nulls when asked', function (st) { + st.equal(qs.stringify({ a: 'b', c: null }, { skipNulls: true }), 'a=b'); + st.end(); + }); + + t.test('omits nested nulls when asked', function (st) { + st.equal(qs.stringify({ a: { b: 'c', d: null } }, { skipNulls: true }), 'a%5Bb%5D=c'); + st.end(); + }); + + t.test('omits array indices when asked', function (st) { + st.equal(qs.stringify({ a: ['b', 'c', 'd'] }, { indices: false }), 'a=b&a=c&a=d'); + st.end(); + }); + + t.test('stringifies a nested array value', function (st) { + st.equal(qs.stringify({ a: { b: ['c', 'd'] } }, { arrayFormat: 'indices' }), 'a%5Bb%5D%5B0%5D=c&a%5Bb%5D%5B1%5D=d'); + st.equal(qs.stringify({ a: { b: ['c', 'd'] } }, { arrayFormat: 'brackets' }), 'a%5Bb%5D%5B%5D=c&a%5Bb%5D%5B%5D=d'); + st.equal(qs.stringify({ a: { b: ['c', 'd'] } }), 'a%5Bb%5D%5B0%5D=c&a%5Bb%5D%5B1%5D=d'); + st.end(); + }); + + t.test('stringifies a nested array value with dots notation', function (st) { + st.equal( + qs.stringify( + { a: { b: ['c', 'd'] } }, + { allowDots: true, encode: false, arrayFormat: 'indices' } + ), + 'a.b[0]=c&a.b[1]=d', + 'indices: stringifies with dots + indices' + ); + st.equal( + qs.stringify( + { a: { b: ['c', 'd'] } }, + { allowDots: true, encode: false, arrayFormat: 'brackets' } + ), + 'a.b[]=c&a.b[]=d', + 'brackets: stringifies with dots + brackets' + ); + st.equal( + qs.stringify( + { a: { b: ['c', 'd'] } }, + { allowDots: true, encode: false } + ), + 'a.b[0]=c&a.b[1]=d', + 'default: stringifies with dots + indices' + ); + st.end(); + }); + + t.test('stringifies an object inside an array', function (st) { + st.equal( + qs.stringify({ a: [{ b: 'c' }] }, { arrayFormat: 'indices' }), + 'a%5B0%5D%5Bb%5D=c', + 'indices => brackets' + ); + st.equal( + qs.stringify({ a: [{ b: 'c' }] }, { arrayFormat: 'brackets' }), + 'a%5B%5D%5Bb%5D=c', + 'brackets => brackets' + ); + st.equal( + qs.stringify({ a: [{ b: 'c' }] }), + 'a%5B0%5D%5Bb%5D=c', + 'default => indices' + ); + + st.equal( + qs.stringify({ a: [{ b: { c: [1] } }] }, { arrayFormat: 'indices' }), + 'a%5B0%5D%5Bb%5D%5Bc%5D%5B0%5D=1', + 'indices => indices' + ); + + st.equal( + qs.stringify({ a: [{ b: { c: [1] } }] }, { arrayFormat: 'brackets' }), + 'a%5B%5D%5Bb%5D%5Bc%5D%5B%5D=1', + 'brackets => brackets' + ); + + st.equal( + qs.stringify({ a: [{ b: { c: [1] } }] }), + 'a%5B0%5D%5Bb%5D%5Bc%5D%5B0%5D=1', + 'default => indices' + ); + + st.end(); + }); + + t.test('stringifies an array with mixed objects and primitives', function (st) { + st.equal( + qs.stringify({ a: [{ b: 1 }, 2, 3] }, { encode: false, arrayFormat: 'indices' }), + 'a[0][b]=1&a[1]=2&a[2]=3', + 'indices => indices' + ); + st.equal( + qs.stringify({ a: [{ b: 1 }, 2, 3] }, { encode: false, arrayFormat: 'brackets' }), + 'a[][b]=1&a[]=2&a[]=3', + 'brackets => brackets' + ); + st.equal( + qs.stringify({ a: [{ b: 1 }, 2, 3] }, { encode: false }), + 'a[0][b]=1&a[1]=2&a[2]=3', + 'default => indices' + ); + + st.end(); + }); + + t.test('stringifies an object inside an array with dots notation', function (st) { + st.equal( + qs.stringify( + { a: [{ b: 'c' }] }, + { allowDots: true, encode: false, arrayFormat: 'indices' } + ), + 'a[0].b=c', + 'indices => indices' + ); + st.equal( + qs.stringify( + { a: [{ b: 'c' }] }, + { allowDots: true, encode: false, arrayFormat: 'brackets' } + ), + 'a[].b=c', + 'brackets => brackets' + ); + st.equal( + qs.stringify( + { a: [{ b: 'c' }] }, + { allowDots: true, encode: false } + ), + 'a[0].b=c', + 'default => indices' + ); + + st.equal( + qs.stringify( + { a: [{ b: { c: [1] } }] }, + { allowDots: true, encode: false, arrayFormat: 'indices' } + ), + 'a[0].b.c[0]=1', + 'indices => indices' + ); + st.equal( + qs.stringify( + { a: [{ b: { c: [1] } }] }, + { allowDots: true, encode: false, arrayFormat: 'brackets' } + ), + 'a[].b.c[]=1', + 'brackets => brackets' + ); + st.equal( + qs.stringify( + { a: [{ b: { c: [1] } }] }, + { allowDots: true, encode: false } + ), + 'a[0].b.c[0]=1', + 'default => indices' + ); + + st.end(); + }); + + t.test('does not omit object keys when indices = false', function (st) { + st.equal(qs.stringify({ a: [{ b: 'c' }] }, { indices: false }), 'a%5Bb%5D=c'); + st.end(); + }); + + t.test('uses indices notation for arrays when indices=true', function (st) { + st.equal(qs.stringify({ a: ['b', 'c'] }, { indices: true }), 'a%5B0%5D=b&a%5B1%5D=c'); + st.end(); + }); + + t.test('uses indices notation for arrays when no arrayFormat is specified', function (st) { + st.equal(qs.stringify({ a: ['b', 'c'] }), 'a%5B0%5D=b&a%5B1%5D=c'); + st.end(); + }); + + t.test('uses indices notation for arrays when no arrayFormat=indices', function (st) { + st.equal(qs.stringify({ a: ['b', 'c'] }, { arrayFormat: 'indices' }), 'a%5B0%5D=b&a%5B1%5D=c'); + st.end(); + }); + + t.test('uses repeat notation for arrays when no arrayFormat=repeat', function (st) { + st.equal(qs.stringify({ a: ['b', 'c'] }, { arrayFormat: 'repeat' }), 'a=b&a=c'); + st.end(); + }); + + t.test('uses brackets notation for arrays when no arrayFormat=brackets', function (st) { + st.equal(qs.stringify({ a: ['b', 'c'] }, { arrayFormat: 'brackets' }), 'a%5B%5D=b&a%5B%5D=c'); + st.end(); + }); + + t.test('stringifies a complicated object', function (st) { + st.equal(qs.stringify({ a: { b: 'c', d: 'e' } }), 'a%5Bb%5D=c&a%5Bd%5D=e'); + st.end(); + }); + + t.test('stringifies an empty value', function (st) { + st.equal(qs.stringify({ a: '' }), 'a='); + st.equal(qs.stringify({ a: null }, { strictNullHandling: true }), 'a'); + + st.equal(qs.stringify({ a: '', b: '' }), 'a=&b='); + st.equal(qs.stringify({ a: null, b: '' }, { strictNullHandling: true }), 'a&b='); + + st.equal(qs.stringify({ a: { b: '' } }), 'a%5Bb%5D='); + st.equal(qs.stringify({ a: { b: null } }, { strictNullHandling: true }), 'a%5Bb%5D'); + st.equal(qs.stringify({ a: { b: null } }, { strictNullHandling: false }), 'a%5Bb%5D='); + + st.end(); + }); + + t.test('stringifies a null object', { skip: !Object.create }, function (st) { + var obj = Object.create(null); + obj.a = 'b'; + st.equal(qs.stringify(obj), 'a=b'); + st.end(); + }); + + t.test('returns an empty string for invalid input', function (st) { + st.equal(qs.stringify(undefined), ''); + st.equal(qs.stringify(false), ''); + st.equal(qs.stringify(null), ''); + st.equal(qs.stringify(''), ''); + st.end(); + }); + + t.test('stringifies an object with a null object as a child', { skip: !Object.create }, function (st) { + var obj = { a: Object.create(null) }; + + obj.a.b = 'c'; + st.equal(qs.stringify(obj), 'a%5Bb%5D=c'); + st.end(); + }); + + t.test('drops keys with a value of undefined', function (st) { + st.equal(qs.stringify({ a: undefined }), ''); + + st.equal(qs.stringify({ a: { b: undefined, c: null } }, { strictNullHandling: true }), 'a%5Bc%5D'); + st.equal(qs.stringify({ a: { b: undefined, c: null } }, { strictNullHandling: false }), 'a%5Bc%5D='); + st.equal(qs.stringify({ a: { b: undefined, c: '' } }), 'a%5Bc%5D='); + st.end(); + }); + + t.test('url encodes values', function (st) { + st.equal(qs.stringify({ a: 'b c' }), 'a=b%20c'); + st.end(); + }); + + t.test('stringifies a date', function (st) { + var now = new Date(); + var str = 'a=' + encodeURIComponent(now.toISOString()); + st.equal(qs.stringify({ a: now }), str); + st.end(); + }); + + t.test('stringifies the weird object from qs', function (st) { + st.equal(qs.stringify({ 'my weird field': '~q1!2"\'w$5&7/z8)?' }), 'my%20weird%20field=~q1%212%22%27w%245%267%2Fz8%29%3F'); + st.end(); + }); + + t.test('skips properties that are part of the object prototype', function (st) { + Object.prototype.crash = 'test'; + st.equal(qs.stringify({ a: 'b' }), 'a=b'); + st.equal(qs.stringify({ a: { b: 'c' } }), 'a%5Bb%5D=c'); + delete Object.prototype.crash; + st.end(); + }); + + t.test('stringifies boolean values', function (st) { + st.equal(qs.stringify({ a: true }), 'a=true'); + st.equal(qs.stringify({ a: { b: true } }), 'a%5Bb%5D=true'); + st.equal(qs.stringify({ b: false }), 'b=false'); + st.equal(qs.stringify({ b: { c: false } }), 'b%5Bc%5D=false'); + st.end(); + }); + + t.test('stringifies buffer values', function (st) { + st.equal(qs.stringify({ a: SaferBuffer.from('test') }), 'a=test'); + st.equal(qs.stringify({ a: { b: SaferBuffer.from('test') } }), 'a%5Bb%5D=test'); + st.end(); + }); + + t.test('stringifies an object using an alternative delimiter', function (st) { + st.equal(qs.stringify({ a: 'b', c: 'd' }, { delimiter: ';' }), 'a=b;c=d'); + st.end(); + }); + + t.test('doesn\'t blow up when Buffer global is missing', function (st) { + var tempBuffer = global.Buffer; + delete global.Buffer; + var result = qs.stringify({ a: 'b', c: 'd' }); + global.Buffer = tempBuffer; + st.equal(result, 'a=b&c=d'); + st.end(); + }); + + t.test('selects properties when filter=array', function (st) { + st.equal(qs.stringify({ a: 'b' }, { filter: ['a'] }), 'a=b'); + st.equal(qs.stringify({ a: 1 }, { filter: [] }), ''); + + st.equal( + qs.stringify( + { a: { b: [1, 2, 3, 4], c: 'd' }, c: 'f' }, + { filter: ['a', 'b', 0, 2], arrayFormat: 'indices' } + ), + 'a%5Bb%5D%5B0%5D=1&a%5Bb%5D%5B2%5D=3', + 'indices => indices' + ); + st.equal( + qs.stringify( + { a: { b: [1, 2, 3, 4], c: 'd' }, c: 'f' }, + { filter: ['a', 'b', 0, 2], arrayFormat: 'brackets' } + ), + 'a%5Bb%5D%5B%5D=1&a%5Bb%5D%5B%5D=3', + 'brackets => brackets' + ); + st.equal( + qs.stringify( + { a: { b: [1, 2, 3, 4], c: 'd' }, c: 'f' }, + { filter: ['a', 'b', 0, 2] } + ), + 'a%5Bb%5D%5B0%5D=1&a%5Bb%5D%5B2%5D=3', + 'default => indices' + ); + + st.end(); + }); + + t.test('supports custom representations when filter=function', function (st) { + var calls = 0; + var obj = { a: 'b', c: 'd', e: { f: new Date(1257894000000) } }; + var filterFunc = function (prefix, value) { + calls += 1; + if (calls === 1) { + st.equal(prefix, '', 'prefix is empty'); + st.equal(value, obj); + } else if (prefix === 'c') { + return void 0; + } else if (value instanceof Date) { + st.equal(prefix, 'e[f]'); + return value.getTime(); + } + return value; + }; + + st.equal(qs.stringify(obj, { filter: filterFunc }), 'a=b&e%5Bf%5D=1257894000000'); + st.equal(calls, 5); + st.end(); + }); + + t.test('can disable uri encoding', function (st) { + st.equal(qs.stringify({ a: 'b' }, { encode: false }), 'a=b'); + st.equal(qs.stringify({ a: { b: 'c' } }, { encode: false }), 'a[b]=c'); + st.equal(qs.stringify({ a: 'b', c: null }, { strictNullHandling: true, encode: false }), 'a=b&c'); + st.end(); + }); + + t.test('can sort the keys', function (st) { + var sort = function (a, b) { + return a.localeCompare(b); + }; + st.equal(qs.stringify({ a: 'c', z: 'y', b: 'f' }, { sort: sort }), 'a=c&b=f&z=y'); + st.equal(qs.stringify({ a: 'c', z: { j: 'a', i: 'b' }, b: 'f' }, { sort: sort }), 'a=c&b=f&z%5Bi%5D=b&z%5Bj%5D=a'); + st.end(); + }); + + t.test('can sort the keys at depth 3 or more too', function (st) { + var sort = function (a, b) { + return a.localeCompare(b); + }; + st.equal( + qs.stringify( + { a: 'a', z: { zj: { zjb: 'zjb', zja: 'zja' }, zi: { zib: 'zib', zia: 'zia' } }, b: 'b' }, + { sort: sort, encode: false } + ), + 'a=a&b=b&z[zi][zia]=zia&z[zi][zib]=zib&z[zj][zja]=zja&z[zj][zjb]=zjb' + ); + st.equal( + qs.stringify( + { a: 'a', z: { zj: { zjb: 'zjb', zja: 'zja' }, zi: { zib: 'zib', zia: 'zia' } }, b: 'b' }, + { sort: null, encode: false } + ), + 'a=a&z[zj][zjb]=zjb&z[zj][zja]=zja&z[zi][zib]=zib&z[zi][zia]=zia&b=b' + ); + st.end(); + }); + + t.test('can stringify with custom encoding', function (st) { + st.equal(qs.stringify({ 県: '大阪府', '': '' }, { + encoder: function (str) { + if (str.length === 0) { + return ''; + } + var buf = iconv.encode(str, 'shiftjis'); + var result = []; + for (var i = 0; i < buf.length; ++i) { + result.push(buf.readUInt8(i).toString(16)); + } + return '%' + result.join('%'); + } + }), '%8c%a7=%91%e5%8d%e3%95%7b&='); + st.end(); + }); + + t.test('receives the default encoder as a second argument', function (st) { + st.plan(2); + qs.stringify({ a: 1 }, { + encoder: function (str, defaultEncoder) { + st.equal(defaultEncoder, utils.encode); + } + }); + st.end(); + }); + + t.test('throws error with wrong encoder', function (st) { + st['throws'](function () { + qs.stringify({}, { encoder: 'string' }); + }, new TypeError('Encoder has to be a function.')); + st.end(); + }); + + t.test('can use custom encoder for a buffer object', { skip: typeof Buffer === 'undefined' }, function (st) { + st.equal(qs.stringify({ a: SaferBuffer.from([1]) }, { + encoder: function (buffer) { + if (typeof buffer === 'string') { + return buffer; + } + return String.fromCharCode(buffer.readUInt8(0) + 97); + } + }), 'a=b'); + + st.equal(qs.stringify({ a: SaferBuffer.from('a b') }, { + encoder: function (buffer) { + return buffer; + } + }), 'a=a b'); + st.end(); + }); + + t.test('serializeDate option', function (st) { + var date = new Date(); + st.equal( + qs.stringify({ a: date }), + 'a=' + date.toISOString().replace(/:/g, '%3A'), + 'default is toISOString' + ); + + var mutatedDate = new Date(); + mutatedDate.toISOString = function () { + throw new SyntaxError(); + }; + st['throws'](function () { + mutatedDate.toISOString(); + }, SyntaxError); + st.equal( + qs.stringify({ a: mutatedDate }), + 'a=' + Date.prototype.toISOString.call(mutatedDate).replace(/:/g, '%3A'), + 'toISOString works even when method is not locally present' + ); + + var specificDate = new Date(6); + st.equal( + qs.stringify( + { a: specificDate }, + { serializeDate: function (d) { return d.getTime() * 7; } } + ), + 'a=42', + 'custom serializeDate function called' + ); + + st.end(); + }); + + t.test('RFC 1738 spaces serialization', function (st) { + st.equal(qs.stringify({ a: 'b c' }, { format: qs.formats.RFC1738 }), 'a=b+c'); + st.equal(qs.stringify({ 'a b': 'c d' }, { format: qs.formats.RFC1738 }), 'a+b=c+d'); + st.equal(qs.stringify({ 'a b': SaferBuffer.from('a b') }, { format: qs.formats.RFC1738 }), 'a+b=a+b'); + st.end(); + }); + + t.test('RFC 3986 spaces serialization', function (st) { + st.equal(qs.stringify({ a: 'b c' }, { format: qs.formats.RFC3986 }), 'a=b%20c'); + st.equal(qs.stringify({ 'a b': 'c d' }, { format: qs.formats.RFC3986 }), 'a%20b=c%20d'); + st.equal(qs.stringify({ 'a b': SaferBuffer.from('a b') }, { format: qs.formats.RFC3986 }), 'a%20b=a%20b'); + st.end(); + }); + + t.test('Backward compatibility to RFC 3986', function (st) { + st.equal(qs.stringify({ a: 'b c' }), 'a=b%20c'); + st.equal(qs.stringify({ 'a b': SaferBuffer.from('a b') }), 'a%20b=a%20b'); + st.end(); + }); + + t.test('Edge cases and unknown formats', function (st) { + ['UFO1234', false, 1234, null, {}, []].forEach( + function (format) { + st['throws']( + function () { + qs.stringify({ a: 'b c' }, { format: format }); + }, + new TypeError('Unknown format option provided.') + ); + } + ); + st.end(); + }); + + t.test('encodeValuesOnly', function (st) { + st.equal( + qs.stringify( + { a: 'b', c: ['d', 'e=f'], f: [['g'], ['h']] }, + { encodeValuesOnly: true } + ), + 'a=b&c[0]=d&c[1]=e%3Df&f[0][0]=g&f[1][0]=h' + ); + st.equal( + qs.stringify( + { a: 'b', c: ['d', 'e'], f: [['g'], ['h']] } + ), + 'a=b&c%5B0%5D=d&c%5B1%5D=e&f%5B0%5D%5B0%5D=g&f%5B1%5D%5B0%5D=h' + ); + st.end(); + }); + + t.test('encodeValuesOnly - strictNullHandling', function (st) { + st.equal( + qs.stringify( + { a: { b: null } }, + { encodeValuesOnly: true, strictNullHandling: true } + ), + 'a[b]' + ); + st.end(); + }); + + t.test('does not mutate the options argument', function (st) { + var options = {}; + qs.stringify({}, options); + st.deepEqual(options, {}); + st.end(); + }); + + t.test('strictNullHandling works with custom filter', function (st) { + var filter = function (prefix, value) { + return value; + }; + + var options = { strictNullHandling: true, filter: filter }; + st.equal(qs.stringify({ key: null }, options), 'key'); + st.end(); + }); + + t.test('strictNullHandling works with null serializeDate', function (st) { + var serializeDate = function () { + return null; + }; + var options = { strictNullHandling: true, serializeDate: serializeDate }; + var date = new Date(); + st.equal(qs.stringify({ key: date }, options), 'key'); + st.end(); + }); + + t.end(); +}); diff --git a/node_modules/qs/test/utils.js b/node_modules/qs/test/utils.js new file mode 100644 index 0000000..2bfe03a --- /dev/null +++ b/node_modules/qs/test/utils.js @@ -0,0 +1,65 @@ +'use strict'; + +var test = require('tape'); +var utils = require('../lib/utils'); + +test('merge()', function (t) { + t.deepEqual(utils.merge(null, true), [null, true], 'merges true into null'); + + t.deepEqual(utils.merge(null, [42]), [null, 42], 'merges null into an array'); + + t.deepEqual(utils.merge({ a: 'b' }, { a: 'c' }), { a: ['b', 'c'] }, 'merges two objects with the same key'); + + var oneMerged = utils.merge({ foo: 'bar' }, { foo: { first: '123' } }); + t.deepEqual(oneMerged, { foo: ['bar', { first: '123' }] }, 'merges a standalone and an object into an array'); + + var twoMerged = utils.merge({ foo: ['bar', { first: '123' }] }, { foo: { second: '456' } }); + t.deepEqual(twoMerged, { foo: { 0: 'bar', 1: { first: '123' }, second: '456' } }, 'merges a standalone and two objects into an array'); + + var sandwiched = utils.merge({ foo: ['bar', { first: '123', second: '456' }] }, { foo: 'baz' }); + t.deepEqual(sandwiched, { foo: ['bar', { first: '123', second: '456' }, 'baz'] }, 'merges an object sandwiched by two standalones into an array'); + + var nestedArrays = utils.merge({ foo: ['baz'] }, { foo: ['bar', 'xyzzy'] }); + t.deepEqual(nestedArrays, { foo: ['baz', 'bar', 'xyzzy'] }); + + var noOptionsNonObjectSource = utils.merge({ foo: 'baz' }, 'bar'); + t.deepEqual(noOptionsNonObjectSource, { foo: 'baz', bar: true }); + + t.test( + 'avoids invoking array setters unnecessarily', + { skip: typeof Object.defineProperty !== 'function' }, + function (st) { + var setCount = 0; + var getCount = 0; + var observed = []; + Object.defineProperty(observed, 0, { + get: function () { + getCount += 1; + return { bar: 'baz' }; + }, + set: function () { setCount += 1; } + }); + utils.merge(observed, [null]); + st.equal(setCount, 0); + st.equal(getCount, 1); + observed[0] = observed[0]; // eslint-disable-line no-self-assign + st.equal(setCount, 1); + st.equal(getCount, 2); + st.end(); + } + ); + + t.end(); +}); + +test('assign()', function (t) { + var target = { a: 1, b: 2 }; + var source = { b: 3, c: 4 }; + var result = utils.assign(target, source); + + t.equal(result, target, 'returns the target'); + t.deepEqual(target, { a: 1, b: 3, c: 4 }, 'target and source are merged'); + t.deepEqual(source, { b: 3, c: 4 }, 'source is untouched'); + + t.end(); +}); diff --git a/node_modules/rc/LICENSE.APACHE2 b/node_modules/rc/LICENSE.APACHE2 new file mode 100644 index 0000000..6366c04 --- /dev/null +++ b/node_modules/rc/LICENSE.APACHE2 @@ -0,0 +1,15 @@ +Apache License, Version 2.0 + +Copyright (c) 2011 Dominic Tarr + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. diff --git a/node_modules/rc/LICENSE.BSD b/node_modules/rc/LICENSE.BSD new file mode 100644 index 0000000..96bb796 --- /dev/null +++ b/node_modules/rc/LICENSE.BSD @@ -0,0 +1,26 @@ +Copyright (c) 2013, Dominic Tarr +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +The views and conclusions contained in the software and documentation are those +of the authors and should not be interpreted as representing official policies, +either expressed or implied, of the FreeBSD Project. diff --git a/node_modules/rc/LICENSE.MIT b/node_modules/rc/LICENSE.MIT new file mode 100644 index 0000000..6eafbd7 --- /dev/null +++ b/node_modules/rc/LICENSE.MIT @@ -0,0 +1,24 @@ +The MIT License + +Copyright (c) 2011 Dominic Tarr + +Permission is hereby granted, free of charge, +to any person obtaining a copy of this software and +associated documentation files (the "Software"), to +deal in the Software without restriction, including +without limitation the rights to use, copy, modify, +merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom +the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR +ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/rc/README.md b/node_modules/rc/README.md new file mode 100644 index 0000000..e6522e2 --- /dev/null +++ b/node_modules/rc/README.md @@ -0,0 +1,227 @@ +# rc + +The non-configurable configuration loader for lazy people. + +## Usage + +The only option is to pass rc the name of your app, and your default configuration. + +```javascript +var conf = require('rc')(appname, { + //defaults go here. + port: 2468, + + //defaults which are objects will be merged, not replaced + views: { + engine: 'jade' + } +}); +``` + +`rc` will return your configuration options merged with the defaults you specify. +If you pass in a predefined defaults object, it will be mutated: + +```javascript +var conf = {}; +require('rc')(appname, conf); +``` + +If `rc` finds any config files for your app, the returned config object will have +a `configs` array containing their paths: + +```javascript +var appCfg = require('rc')(appname, conf); +appCfg.configs[0] // /etc/appnamerc +appCfg.configs[1] // /home/dominictarr/.config/appname +appCfg.config // same as appCfg.configs[appCfg.configs.length - 1] +``` + +## Standards + +Given your application name (`appname`), rc will look in all the obvious places for configuration. + + * command line arguments, parsed by minimist _(e.g. `--foo baz`, also nested: `--foo.bar=baz`)_ + * environment variables prefixed with `${appname}_` + * or use "\_\_" to indicate nested properties
_(e.g. `appname_foo__bar__baz` => `foo.bar.baz`)_ + * if you passed an option `--config file` then from that file + * a local `.${appname}rc` or the first found looking in `./ ../ ../../ ../../../` etc. + * `$HOME/.${appname}rc` + * `$HOME/.${appname}/config` + * `$HOME/.config/${appname}` + * `$HOME/.config/${appname}/config` + * `/etc/${appname}rc` + * `/etc/${appname}/config` + * the defaults object you passed in. + +All configuration sources that were found will be flattened into one object, +so that sources **earlier** in this list override later ones. + + +## Configuration File Formats + +Configuration files (e.g. `.appnamerc`) may be in either [json](http://json.org/example) or [ini](http://en.wikipedia.org/wiki/INI_file) format. **No** file extension (`.json` or `.ini`) should be used. The example configurations below are equivalent: + + +#### Formatted as `ini` + +``` +; You can include comments in `ini` format if you want. + +dependsOn=0.10.0 + + +; `rc` has built-in support for ini sections, see? + +[commands] + www = ./commands/www + console = ./commands/repl + + +; You can even do nested sections + +[generators.options] + engine = ejs + +[generators.modules] + new = generate-new + engine = generate-backend + +``` + +#### Formatted as `json` + +```javascript +{ + // You can even comment your JSON, if you want + "dependsOn": "0.10.0", + "commands": { + "www": "./commands/www", + "console": "./commands/repl" + }, + "generators": { + "options": { + "engine": "ejs" + }, + "modules": { + "new": "generate-new", + "backend": "generate-backend" + } + } +} +``` + +Comments are stripped from JSON config via [strip-json-comments](https://github.com/sindresorhus/strip-json-comments). + +> Since ini, and env variables do not have a standard for types, your application needs be prepared for strings. + +To ensure that string representations of booleans and numbers are always converted into their proper types (especially useful if you intend to do strict `===` comparisons), consider using a module such as [parse-strings-in-object](https://github.com/anselanza/parse-strings-in-object) to wrap the config object returned from rc. + + +## Simple example demonstrating precedence +Assume you have an application like this (notice the hard-coded defaults passed to rc): +``` +const conf = require('rc')('myapp', { + port: 12345, + mode: 'test' +}); + +console.log(JSON.stringify(conf, null, 2)); +``` +You also have a file `config.json`, with these contents: +``` +{ + "port": 9000, + "foo": "from config json", + "something": "else" +} +``` +And a file `.myapprc` in the same folder, with these contents: +``` +{ + "port": "3001", + "foo": "bar" +} +``` +Here is the expected output from various commands: + +`node .` +``` +{ + "port": "3001", + "mode": "test", + "foo": "bar", + "_": [], + "configs": [ + "/Users/stephen/repos/conftest/.myapprc" + ], + "config": "/Users/stephen/repos/conftest/.myapprc" +} +``` +*Default `mode` from hard-coded object is retained, but port is overridden by `.myapprc` file (automatically found based on appname match), and `foo` is added.* + + +`node . --foo baz` +``` +{ + "port": "3001", + "mode": "test", + "foo": "baz", + "_": [], + "configs": [ + "/Users/stephen/repos/conftest/.myapprc" + ], + "config": "/Users/stephen/repos/conftest/.myapprc" +} +``` +*Same result as above but `foo` is overridden because command-line arguments take precedence over `.myapprc` file.* + +`node . --foo barbar --config config.json` +``` +{ + "port": 9000, + "mode": "test", + "foo": "barbar", + "something": "else", + "_": [], + "config": "config.json", + "configs": [ + "/Users/stephen/repos/conftest/.myapprc", + "config.json" + ] +} +``` +*Now the `port` comes from the `config.json` file specified (overriding the value from `.myapprc`), and `foo` value is overriden by command-line despite also being specified in the `config.json` file.* + + + +## Advanced Usage + +#### Pass in your own `argv` + +You may pass in your own `argv` as the third argument to `rc`. This is in case you want to [use your own command-line opts parser](https://github.com/dominictarr/rc/pull/12). + +```javascript +require('rc')(appname, defaults, customArgvParser); +``` + +## Pass in your own parser + +If you have a special need to use a non-standard parser, +you can do so by passing in the parser as the 4th argument. +(leave the 3rd as null to get the default args parser) + +```javascript +require('rc')(appname, defaults, null, parser); +``` + +This may also be used to force a more strict format, +such as strict, valid JSON only. + +## Note on Performance + +`rc` is running `fs.statSync`-- so make sure you don't use it in a hot code path (e.g. a request handler) + + +## License + +Multi-licensed under the two-clause BSD License, MIT License, or Apache License, version 2.0 diff --git a/node_modules/rc/browser.js b/node_modules/rc/browser.js new file mode 100644 index 0000000..8c230c5 --- /dev/null +++ b/node_modules/rc/browser.js @@ -0,0 +1,7 @@ + +// when this is loaded into the browser, +// just use the defaults... + +module.exports = function (name, defaults) { + return defaults +} diff --git a/node_modules/rc/cli.js b/node_modules/rc/cli.js new file mode 100644 index 0000000..ab05b60 --- /dev/null +++ b/node_modules/rc/cli.js @@ -0,0 +1,4 @@ +#! /usr/bin/env node +var rc = require('./index') + +console.log(JSON.stringify(rc(process.argv[2]), false, 2)) diff --git a/node_modules/rc/index.js b/node_modules/rc/index.js new file mode 100644 index 0000000..65eb47a --- /dev/null +++ b/node_modules/rc/index.js @@ -0,0 +1,53 @@ +var cc = require('./lib/utils') +var join = require('path').join +var deepExtend = require('deep-extend') +var etc = '/etc' +var win = process.platform === "win32" +var home = win + ? process.env.USERPROFILE + : process.env.HOME + +module.exports = function (name, defaults, argv, parse) { + if('string' !== typeof name) + throw new Error('rc(name): name *must* be string') + if(!argv) + argv = require('minimist')(process.argv.slice(2)) + defaults = ( + 'string' === typeof defaults + ? cc.json(defaults) : defaults + ) || {} + + parse = parse || cc.parse + + var env = cc.env(name + '_') + + var configs = [defaults] + var configFiles = [] + function addConfigFile (file) { + if (configFiles.indexOf(file) >= 0) return + var fileConfig = cc.file(file) + if (fileConfig) { + configs.push(parse(fileConfig)) + configFiles.push(file) + } + } + + // which files do we look at? + if (!win) + [join(etc, name, 'config'), + join(etc, name + 'rc')].forEach(addConfigFile) + if (home) + [join(home, '.config', name, 'config'), + join(home, '.config', name), + join(home, '.' + name, 'config'), + join(home, '.' + name + 'rc')].forEach(addConfigFile) + addConfigFile(cc.find('.'+name+'rc')) + if (env.config) addConfigFile(env.config) + if (argv.config) addConfigFile(argv.config) + + return deepExtend.apply(null, configs.concat([ + env, + argv, + configFiles.length ? {configs: configFiles, config: configFiles[configFiles.length - 1]} : undefined, + ])) +} diff --git a/node_modules/rc/lib/utils.js b/node_modules/rc/lib/utils.js new file mode 100644 index 0000000..8b3beff --- /dev/null +++ b/node_modules/rc/lib/utils.js @@ -0,0 +1,104 @@ +'use strict'; +var fs = require('fs') +var ini = require('ini') +var path = require('path') +var stripJsonComments = require('strip-json-comments') + +var parse = exports.parse = function (content) { + + //if it ends in .json or starts with { then it must be json. + //must be done this way, because ini accepts everything. + //can't just try and parse it and let it throw if it's not ini. + //everything is ini. even json with a syntax error. + + if(/^\s*{/.test(content)) + return JSON.parse(stripJsonComments(content)) + return ini.parse(content) + +} + +var file = exports.file = function () { + var args = [].slice.call(arguments).filter(function (arg) { return arg != null }) + + //path.join breaks if it's a not a string, so just skip this. + for(var i in args) + if('string' !== typeof args[i]) + return + + var file = path.join.apply(null, args) + var content + try { + return fs.readFileSync(file,'utf-8') + } catch (err) { + return + } +} + +var json = exports.json = function () { + var content = file.apply(null, arguments) + return content ? parse(content) : null +} + +var env = exports.env = function (prefix, env) { + env = env || process.env + var obj = {} + var l = prefix.length + for(var k in env) { + if(k.toLowerCase().indexOf(prefix.toLowerCase()) === 0) { + + var keypath = k.substring(l).split('__') + + // Trim empty strings from keypath array + var _emptyStringIndex + while ((_emptyStringIndex=keypath.indexOf('')) > -1) { + keypath.splice(_emptyStringIndex, 1) + } + + var cursor = obj + keypath.forEach(function _buildSubObj(_subkey,i){ + + // (check for _subkey first so we ignore empty strings) + // (check for cursor to avoid assignment to primitive objects) + if (!_subkey || typeof cursor !== 'object') + return + + // If this is the last key, just stuff the value in there + // Assigns actual value from env variable to final key + // (unless it's just an empty string- in that case use the last valid key) + if (i === keypath.length-1) + cursor[_subkey] = env[k] + + + // Build sub-object if nothing already exists at the keypath + if (cursor[_subkey] === undefined) + cursor[_subkey] = {} + + // Increment cursor used to track the object at the current depth + cursor = cursor[_subkey] + + }) + + } + + } + + return obj +} + +var find = exports.find = function () { + var rel = path.join.apply(null, [].slice.call(arguments)) + + function find(start, rel) { + var file = path.join(start, rel) + try { + fs.statSync(file) + return file + } catch (err) { + if(path.dirname(start) !== start) // root + return find(path.dirname(start), rel) + } + } + return find(process.cwd(), rel) +} + + diff --git a/node_modules/rc/node_modules/ini/LICENSE b/node_modules/rc/node_modules/ini/LICENSE new file mode 100644 index 0000000..19129e3 --- /dev/null +++ b/node_modules/rc/node_modules/ini/LICENSE @@ -0,0 +1,15 @@ +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. diff --git a/node_modules/rc/node_modules/ini/README.md b/node_modules/rc/node_modules/ini/README.md new file mode 100644 index 0000000..33df258 --- /dev/null +++ b/node_modules/rc/node_modules/ini/README.md @@ -0,0 +1,102 @@ +An ini format parser and serializer for node. + +Sections are treated as nested objects. Items before the first +heading are saved on the object directly. + +## Usage + +Consider an ini-file `config.ini` that looks like this: + + ; this comment is being ignored + scope = global + + [database] + user = dbuser + password = dbpassword + database = use_this_database + + [paths.default] + datadir = /var/lib/data + array[] = first value + array[] = second value + array[] = third value + +You can read, manipulate and write the ini-file like so: + + var fs = require('fs') + , ini = require('ini') + + var config = ini.parse(fs.readFileSync('./config.ini', 'utf-8')) + + config.scope = 'local' + config.database.database = 'use_another_database' + config.paths.default.tmpdir = '/tmp' + delete config.paths.default.datadir + config.paths.default.array.push('fourth value') + + fs.writeFileSync('./config_modified.ini', ini.stringify(config, { section: 'section' })) + +This will result in a file called `config_modified.ini` being written +to the filesystem with the following content: + + [section] + scope=local + [section.database] + user=dbuser + password=dbpassword + database=use_another_database + [section.paths.default] + tmpdir=/tmp + array[]=first value + array[]=second value + array[]=third value + array[]=fourth value + + +## API + +### decode(inistring) + +Decode the ini-style formatted `inistring` into a nested object. + +### parse(inistring) + +Alias for `decode(inistring)` + +### encode(object, [options]) + +Encode the object `object` into an ini-style formatted string. If the +optional parameter `section` is given, then all top-level properties +of the object are put into this section and the `section`-string is +prepended to all sub-sections, see the usage example above. + +The `options` object may contain the following: + +* `section` A string which will be the first `section` in the encoded + ini data. Defaults to none. +* `whitespace` Boolean to specify whether to put whitespace around the + `=` character. By default, whitespace is omitted, to be friendly to + some persnickety old parsers that don't tolerate it well. But some + find that it's more human-readable and pretty with the whitespace. + +For backwards compatibility reasons, if a `string` options is passed +in, then it is assumed to be the `section` value. + +### stringify(object, [options]) + +Alias for `encode(object, [options])` + +### safe(val) + +Escapes the string `val` such that it is safe to be used as a key or +value in an ini-file. Basically escapes quotes. For example + + ini.safe('"unsafe string"') + +would result in + + "\"unsafe string\"" + +### unsafe(val) + +Unescapes the string `val` diff --git a/node_modules/rc/node_modules/ini/ini.js b/node_modules/rc/node_modules/ini/ini.js new file mode 100644 index 0000000..b576f08 --- /dev/null +++ b/node_modules/rc/node_modules/ini/ini.js @@ -0,0 +1,206 @@ +exports.parse = exports.decode = decode + +exports.stringify = exports.encode = encode + +exports.safe = safe +exports.unsafe = unsafe + +var eol = typeof process !== 'undefined' && + process.platform === 'win32' ? '\r\n' : '\n' + +function encode (obj, opt) { + var children = [] + var out = '' + + if (typeof opt === 'string') { + opt = { + section: opt, + whitespace: false, + } + } else { + opt = opt || {} + opt.whitespace = opt.whitespace === true + } + + var separator = opt.whitespace ? ' = ' : '=' + + Object.keys(obj).forEach(function (k, _, __) { + var val = obj[k] + if (val && Array.isArray(val)) { + val.forEach(function (item) { + out += safe(k + '[]') + separator + safe(item) + '\n' + }) + } else if (val && typeof val === 'object') + children.push(k) + else + out += safe(k) + separator + safe(val) + eol + }) + + if (opt.section && out.length) + out = '[' + safe(opt.section) + ']' + eol + out + + children.forEach(function (k, _, __) { + var nk = dotSplit(k).join('\\.') + var section = (opt.section ? opt.section + '.' : '') + nk + var child = encode(obj[k], { + section: section, + whitespace: opt.whitespace, + }) + if (out.length && child.length) + out += eol + + out += child + }) + + return out +} + +function dotSplit (str) { + return str.replace(/\1/g, '\u0002LITERAL\\1LITERAL\u0002') + .replace(/\\\./g, '\u0001') + .split(/\./).map(function (part) { + return part.replace(/\1/g, '\\.') + .replace(/\2LITERAL\\1LITERAL\2/g, '\u0001') + }) +} + +function decode (str) { + var out = {} + var p = out + var section = null + // section |key = value + var re = /^\[([^\]]*)\]$|^([^=]+)(=(.*))?$/i + var lines = str.split(/[\r\n]+/g) + + lines.forEach(function (line, _, __) { + if (!line || line.match(/^\s*[;#]/)) + return + var match = line.match(re) + if (!match) + return + if (match[1] !== undefined) { + section = unsafe(match[1]) + if (section === '__proto__') { + // not allowed + // keep parsing the section, but don't attach it. + p = {} + return + } + p = out[section] = out[section] || {} + return + } + var key = unsafe(match[2]) + if (key === '__proto__') + return + var value = match[3] ? unsafe(match[4]) : true + switch (value) { + case 'true': + case 'false': + case 'null': value = JSON.parse(value) + } + + // Convert keys with '[]' suffix to an array + if (key.length > 2 && key.slice(-2) === '[]') { + key = key.substring(0, key.length - 2) + if (key === '__proto__') + return + if (!p[key]) + p[key] = [] + else if (!Array.isArray(p[key])) + p[key] = [p[key]] + } + + // safeguard against resetting a previously defined + // array by accidentally forgetting the brackets + if (Array.isArray(p[key])) + p[key].push(value) + else + p[key] = value + }) + + // {a:{y:1},"a.b":{x:2}} --> {a:{y:1,b:{x:2}}} + // use a filter to return the keys that have to be deleted. + Object.keys(out).filter(function (k, _, __) { + if (!out[k] || + typeof out[k] !== 'object' || + Array.isArray(out[k])) + return false + + // see if the parent section is also an object. + // if so, add it to that, and mark this one for deletion + var parts = dotSplit(k) + var p = out + var l = parts.pop() + var nl = l.replace(/\\\./g, '.') + parts.forEach(function (part, _, __) { + if (part === '__proto__') + return + if (!p[part] || typeof p[part] !== 'object') + p[part] = {} + p = p[part] + }) + if (p === out && nl === l) + return false + + p[nl] = out[k] + return true + }).forEach(function (del, _, __) { + delete out[del] + }) + + return out +} + +function isQuoted (val) { + return (val.charAt(0) === '"' && val.slice(-1) === '"') || + (val.charAt(0) === "'" && val.slice(-1) === "'") +} + +function safe (val) { + return (typeof val !== 'string' || + val.match(/[=\r\n]/) || + val.match(/^\[/) || + (val.length > 1 && + isQuoted(val)) || + val !== val.trim()) + ? JSON.stringify(val) + : val.replace(/;/g, '\\;').replace(/#/g, '\\#') +} + +function unsafe (val, doUnesc) { + val = (val || '').trim() + if (isQuoted(val)) { + // remove the single quotes before calling JSON.parse + if (val.charAt(0) === "'") + val = val.substr(1, val.length - 2) + + try { + val = JSON.parse(val) + } catch (_) {} + } else { + // walk the val to find the first not-escaped ; character + var esc = false + var unesc = '' + for (var i = 0, l = val.length; i < l; i++) { + var c = val.charAt(i) + if (esc) { + if ('\\;#'.indexOf(c) !== -1) + unesc += c + else + unesc += '\\' + c + + esc = false + } else if (';#'.indexOf(c) !== -1) + break + else if (c === '\\') + esc = true + else + unesc += c + } + if (esc) + unesc += '\\' + + return unesc.trim() + } + return val +} diff --git a/node_modules/rc/node_modules/ini/package.json b/node_modules/rc/node_modules/ini/package.json new file mode 100644 index 0000000..c830a35 --- /dev/null +++ b/node_modules/rc/node_modules/ini/package.json @@ -0,0 +1,33 @@ +{ + "author": "Isaac Z. Schlueter (http://blog.izs.me/)", + "name": "ini", + "description": "An ini encoder/decoder for node", + "version": "1.3.8", + "repository": { + "type": "git", + "url": "git://github.com/isaacs/ini.git" + }, + "main": "ini.js", + "scripts": { + "eslint": "eslint", + "lint": "npm run eslint -- ini.js test/*.js", + "lintfix": "npm run lint -- --fix", + "test": "tap", + "posttest": "npm run lint", + "preversion": "npm test", + "postversion": "npm publish", + "prepublishOnly": "git push origin --follow-tags" + }, + "devDependencies": { + "eslint": "^7.9.0", + "eslint-plugin-import": "^2.22.0", + "eslint-plugin-node": "^11.1.0", + "eslint-plugin-promise": "^4.2.1", + "eslint-plugin-standard": "^4.0.1", + "tap": "14" + }, + "license": "ISC", + "files": [ + "ini.js" + ] +} diff --git a/node_modules/rc/package.json b/node_modules/rc/package.json new file mode 100644 index 0000000..887238f --- /dev/null +++ b/node_modules/rc/package.json @@ -0,0 +1,29 @@ +{ + "name": "rc", + "version": "1.2.8", + "description": "hardwired configuration loader", + "main": "index.js", + "browser": "browser.js", + "scripts": { + "test": "set -e; node test/test.js; node test/ini.js; node test/nested-env-vars.js" + }, + "repository": { + "type": "git", + "url": "https://github.com/dominictarr/rc.git" + }, + "license": "(BSD-2-Clause OR MIT OR Apache-2.0)", + "keywords": [ + "config", + "rc", + "unix", + "defaults" + ], + "bin": "./cli.js", + "author": "Dominic Tarr (dominictarr.com)", + "dependencies": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + } +} diff --git a/node_modules/rc/test/ini.js b/node_modules/rc/test/ini.js new file mode 100644 index 0000000..e6857f8 --- /dev/null +++ b/node_modules/rc/test/ini.js @@ -0,0 +1,16 @@ +var cc =require('../lib/utils') +var INI = require('ini') +var assert = require('assert') + +function test(obj) { + + var _json, _ini + var json = cc.parse (_json = JSON.stringify(obj)) + var ini = cc.parse (_ini = INI.stringify(obj)) + console.log(_ini, _json) + assert.deepEqual(json, ini) +} + + +test({hello: true}) + diff --git a/node_modules/rc/test/nested-env-vars.js b/node_modules/rc/test/nested-env-vars.js new file mode 100644 index 0000000..0ecd176 --- /dev/null +++ b/node_modules/rc/test/nested-env-vars.js @@ -0,0 +1,50 @@ + +var seed = Math.random(); +var n = 'rc'+ seed; +var N = 'RC'+ seed; +var assert = require('assert') + + +// Basic usage +process.env[n+'_someOpt__a'] = 42 +process.env[n+'_someOpt__x__'] = 99 +process.env[n+'_someOpt__a__b'] = 186 +process.env[n+'_someOpt__a__b__c'] = 243 +process.env[n+'_someOpt__x__y'] = 1862 +process.env[n+'_someOpt__z'] = 186577 + +// Should ignore empty strings from orphaned '__' +process.env[n+'_someOpt__z__x__'] = 18629 +process.env[n+'_someOpt__w__w__'] = 18629 + +// Leading '__' should ignore everything up to 'z' +process.env[n+'___z__i__'] = 9999 + +// should ignore case for config name section. +process.env[N+'_test_upperCase'] = 187 + +function testPrefix(prefix) { + var config = require('../')(prefix, { + option: true + }) + + console.log('\n\n------ nested-env-vars ------\n',{prefix: prefix}, '\n', config); + + assert.equal(config.option, true) + assert.equal(config.someOpt.a, 42) + assert.equal(config.someOpt.x, 99) + // Should not override `a` once it's been set + assert.equal(config.someOpt.a/*.b*/, 42) + // Should not override `x` once it's been set + assert.equal(config.someOpt.x/*.y*/, 99) + assert.equal(config.someOpt.z, 186577) + // Should not override `z` once it's been set + assert.equal(config.someOpt.z/*.x*/, 186577) + assert.equal(config.someOpt.w.w, 18629) + assert.equal(config.z.i, 9999) + + assert.equal(config.test_upperCase, 187) +} + +testPrefix(n); +testPrefix(N); diff --git a/node_modules/rc/test/test.js b/node_modules/rc/test/test.js new file mode 100644 index 0000000..4f63351 --- /dev/null +++ b/node_modules/rc/test/test.js @@ -0,0 +1,59 @@ + +var n = 'rc'+Math.random() +var assert = require('assert') + +process.env[n+'_envOption'] = 42 + +var config = require('../')(n, { + option: true +}) + +console.log(config) + +assert.equal(config.option, true) +assert.equal(config.envOption, 42) + +var customArgv = require('../')(n, { + option: true +}, { // nopt-like argv + option: false, + envOption: 24, + argv: { + remain: [], + cooked: ['--no-option', '--envOption', '24'], + original: ['--no-option', '--envOption=24'] + } +}) + +console.log(customArgv) + +assert.equal(customArgv.option, false) +assert.equal(customArgv.envOption, 24) + +var fs = require('fs') +var path = require('path') +var jsonrc = path.resolve('.' + n + 'rc'); + +fs.writeFileSync(jsonrc, [ + '{', + '// json overrides default', + '"option": false,', + '/* env overrides json */', + '"envOption": 24', + '}' +].join('\n')); + +var commentedJSON = require('../')(n, { + option: true +}) + +fs.unlinkSync(jsonrc); + +console.log(commentedJSON) + +assert.equal(commentedJSON.option, false) +assert.equal(commentedJSON.envOption, 42) + +assert.equal(commentedJSON.config, jsonrc) +assert.equal(commentedJSON.configs.length, 1) +assert.equal(commentedJSON.configs[0], jsonrc) diff --git a/node_modules/read/LICENSE b/node_modules/read/LICENSE new file mode 100644 index 0000000..19129e3 --- /dev/null +++ b/node_modules/read/LICENSE @@ -0,0 +1,15 @@ +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. diff --git a/node_modules/read/README.md b/node_modules/read/README.md new file mode 100644 index 0000000..5967fad --- /dev/null +++ b/node_modules/read/README.md @@ -0,0 +1,53 @@ +## read + +For reading user input from stdin. + +Similar to the `readline` builtin's `question()` method, but with a +few more features. + +## USAGE + +```javascript +var read = require("read") +read(options, callback) +``` + +The callback gets called with either the user input, or the default +specified, or an error, as `callback(error, result, isDefault)` +node style. + +## OPTIONS + +Every option is optional. + +* `prompt` What to write to stdout before reading input. +* `silent` Don't echo the output as the user types it. +* `replace` Replace silenced characters with the supplied character value. +* `timeout` Number of ms to wait for user input before giving up. +* `default` The default value if the user enters nothing. +* `edit` Allow the user to edit the default value. +* `terminal` Treat the output as a TTY, whether it is or not. +* `input` Readable stream to get input data from. (default `process.stdin`) +* `output` Writeable stream to write prompts to. (default: `process.stdout`) + +If silent is true, and the input is a TTY, then read will set raw +mode, and read character by character. + +## COMPATIBILITY + +This module works sort of with node 0.6. It does not work with node +versions less than 0.6. It is best on node 0.8. + +On node version 0.6, it will remove all listeners on the input +stream's `data` and `keypress` events, because the readline module did +not fully clean up after itself in that version of node, and did not +make it possible to clean up after it in a way that has no potential +for side effects. + +Additionally, some of the readline options (like `terminal`) will not +function in versions of node before 0.8, because they were not +implemented in the builtin readline module. + +## CONTRIBUTING + +Patches welcome. diff --git a/node_modules/read/lib/read.js b/node_modules/read/lib/read.js new file mode 100644 index 0000000..a93d1b3 --- /dev/null +++ b/node_modules/read/lib/read.js @@ -0,0 +1,113 @@ + +module.exports = read + +var readline = require('readline') +var Mute = require('mute-stream') + +function read (opts, cb) { + if (opts.num) { + throw new Error('read() no longer accepts a char number limit') + } + + if (typeof opts.default !== 'undefined' && + typeof opts.default !== 'string' && + typeof opts.default !== 'number') { + throw new Error('default value must be string or number') + } + + var input = opts.input || process.stdin + var output = opts.output || process.stdout + var prompt = (opts.prompt || '').trim() + ' ' + var silent = opts.silent + var editDef = false + var timeout = opts.timeout + + var def = opts.default || '' + if (def) { + if (silent) { + prompt += '(
+ + Get professional support for this package with a Tidelift subscription + +
+ + Tidelift helps make open source sustainable for maintainers while giving companies
assurances about security, maintenance, and licensing for their dependencies. +
+